/**********************************************************************/
/* インデックスの備考情報に、その定義情報をセットする。               */
/*  INDEX_BIKO( SYSTEM_ID,TBLSYU,TABLE_NAME,INDEX_NAME )              */
/*                                                                    */
/*	 SYSTEM_ID  in varchar2           システムID                      */
/*	 TBLSYU     in varchar2           テーブル種別                    */
/*	 TABLE_NAME in varchar2           テーブルID                      */
/*	 INDEX_NAME in varchar2           インデックスID                  */
/*                                                                    */
/*	データベースの縦型データを横型にします。                          */
/*                                                                    */
/**********************************************************************/
create or replace function INDEX_BIKO(
	XSYSTEM_ID   in varchar2 ,
	XTBLSYU      in varchar2 ,
	XTABLE_NAME  in varchar2 ,
	XINDEX_NAME  in varchar2  )
return varchar2
is
    rtn     varchar2(2000);

	CURSOR codeC1 IS SELECT CLM
					FROM	GF07
					WHERE	SYSTEM_ID   = XSYSTEM_ID
					AND		TBLSYU      = XTBLSYU
					AND		TABLE_NAME  = XTABLE_NAME
					AND		INDEX_NAME  = XINDEX_NAME
					AND		FGJ			= '1'
					ORDER BY SEQNO;

	codeRec codeC1%ROWTYPE;

begin
	rtn := '' ;

	OPEN	codeC1;

	LOOP
		FETCH codeC1 INTO codeRec;
		EXIT WHEN codeC1%NOTFOUND;

		rtn := rtn || codeRec.CLM || ',' ;

	END LOOP;
	CLOSE codeC1;

	rtn := substr( rtn,1,lengthb(rtn)-1 );

	return rtn;

end INDEX_BIKO;
/

/*

update GE06 set BIKO=INDEX_BIKO(SYSTEM_ID,TBLSYU,TABLE_NAME,INDEX_NAME)
where FGJ = '1' ;

*/
