Visual LANSA フレームワーク ガイド > フレームワーク・プログラミング > インスタンスリストとインスタンスリスト・マネージャー > 独自のスナップイン・インスタンスリストの作成 > インスタンスリストに 11 個以上の英数字列や数値列を追加 > スナップイン・インスタンスリスト・ブラウザのマッチング
スナップイン・インスタンスリスト・ブラウザのマッチング

 

独自の VLF-ONE スナップイン・リストの作成は「独自の VLF-ONE インスタンスリスト・ブラウザの作成」を参照してください。

 

 

BEGIN_COM ROLE(*EXTENDS #VF_AC012) HEIGHT(218) HINT(*MTXTDF_INST1) LAYOUTMANAGER(#ATTACHMENT_MANAGER) WIDTH(504)

 

* 基本添付レイアウト・マネージャー

 

DEFINE_COM CLASS(#PRIM_ATLM) NAME(#ATTACHMENT_MANAGER)

 

* グリッドは VID1、2、および 3 英字列と 3 数値列を表示

 

DEFINE_COM CLASS(#PRIM_GRID) NAME(#grid) COLUMNBUTTONHEIGHT(18) DISPLAYPOSITION(1) HEIGHT(218) HINT(*MTXTDF_INST1) LEFT(0) PARENT(#COM_OWNER) SELECTIONSTYLE(Multiple) SHOWLINES(False) SHOWSELECTION(True) SHOWSORTARROW(True) TABPOSITION(1) TABSTOP(False) TOP(0) WIDTH(504)

DEFINE_COM CLASS(#PRIM_ATLI) NAME(#GRID_ATTACHMENT_ITEM) ATTACHMENT(Center) MANAGE(#grid) PARENT(#ATTACHMENT_MANAGER)

DEFINE_COM CLASS(#PRIM_GDCL) NAME(#GDCL_1) CAPTION('VisualID1') CAPTIONTYPE(Caption) DISPLAYPOSITION(1) PARENT(#grid) SORTONCLICK(True) SOURCE(#STD_TEXTS)

DEFINE_COM CLASS(#PRIM_GDCL) NAME(#GDCL_2) CAPTION('VisualID2') CAPTIONTYPE(Caption) DISPLAYPOSITION(2) PARENT(#grid) SORTONCLICK(True) SOURCE(#STD_TEXT)

DEFINE_COM CLASS(#PRIM_GDCL) NAME(#GDCL_3) CAPTION('ACol-BILL') CAPTIONTYPE(Caption) DISPLAYPOSITION(3) PARENT(#grid) SORTONCLICK(True) SOURCE(#VF_ELXA01)

DEFINE_COM CLASS(#PRIM_GDCL) NAME(#GDCL_4) CAPTION('ACol-CUSTNO') CAPTIONTYPE(Caption) DISPLAYPOSITION(4) PARENT(#grid) SORTONCLICK(True) SOURCE(#VF_ELXA02)

DEFINE_COM CLASS(#PRIM_GDCL) NAME(#GDCL_5) CAPTION('ACol-A16') CAPTIONTYPE(Caption) DISPLAYPOSITION(5) PARENT(#grid) SORTONCLICK(True) SOURCE(#VF_ELXA03)

DEFINE_COM CLASS(#PRiM_GDCL) NAME(#GDCL_6) CAPTION('NCol-BILL') CAPTIONTYPE(Caption) DISPLAYPOSITION(6) PARENT(#grid) SORTONCLICK(True) SOURCE(#VF_ELXNK1)

DEFINE_COM CLASS(#PRIM_GDCL) NAME(#GDCL_7) CAPTION('NCol-CUSTNUM') CAPTIONTYPE(Caption) DISPLAYPOSITION(7) PARENT(#grid) SORTONCLICK(True) SOURCE(#VF_ELXNK2)

DEFINE_COM CLASS(#PRIM_GDCL) NAME(#GDCL_8) CAPTION('NCol-N16') CAPTIONTYPE(Caption) DISPLAYPOSITION(8) PARENT(#grid) SORTONCLICK(True) SOURCE(#VF_ELXNK3)

 

* -----------------------------------------------

* 標準 uClearInstanceList メソッドの再定義

* -----------------------------------------------

 

MthRoutine uClearInstanceList Options(*Redefine)

 

* すべてのエントリーの表示セクションをクリア

 

Clr_List #Grid

 

EndRoutine

 

* ------------------------------------------

* 標準 uAddListEntry メソッドの再定義

* ------------------------------------------

 

Mthroutine Name(uAddListEntry) Options(*Redefine)

 

* ビジュアル識別子の設定

 

#STD_TEXTS := #VisualID1

#STD_TEXT := #VisualID2

 

* 追加の英数字列の取得

* 3 列のみビジュアライズ。必要であれば 16 列すべて表示も可能

 

#VF_ELXA01 := #AvListManager.Acolumn<BILL>

#VF_ELXA02 := #AvListManager.Acolumn<CUSTNO>

#VF_ELXA03 := #AvListManager.Acolumn<A16>

 

* 追加の数値列の取得

* 3 列のみビジュアライズ。必要であれば 16 列すべて表示も可能

 

#VF_ELXNK1 := #AvListManager.Ncolumn<BILL>

#VF_ELXNK2 := #AvListManager.Ncolumn<CUSTNUM>

#VF_ELXNK3 := #AvListManager.Ncolumn<N16>

 

* エントリーを表示グリッドに追加

 

Add_Entry #GRID

 

* 終了

 

Endroutine

 

* -----------------------------------------

* グリッド内のセクション選択処理

* -----------------------------------------

 

EVTROUTINE HANDLING(#Grid.ItemGotSelection) OPTIONS(*NOCLEARMESSAGES *NOCLEARERRORS)

* 適切なコードの追加が必要

ENDROUTINE

 

* -----------------------------------------

* グリッド内のセクション非選択処理

* -----------------------------------------

 

EVTROUTINE HANDLING(#Grid.ItemLostSelection) OPTIONS(*NOCLEARMESSAGES *NOCLEARERRORS)

* 適切なコードの追加が必要

ENDROUTINE

 

* -----------------------------------------

* グリッド内セクションのフォーカス処理

* -----------------------------------------

 

EVTROUTINE HANDLING(#Grid.ItemGotFocus) OPTIONS(*NOCLEARMESSAGES *NOCLEARERRORS)

* 適切なコード追加が必要

ENDROUTINE

 

* -----------------------------------------

* グリッド内のセクションのフォーカスが失われた際の処理

* -----------------------------------------

 

EVTROUTINE HANDLING(#Grid.ItemLostFocus) OPTIONS(*NOCLEARMESSAGES *NOCLEARERRORS)

* 適切なコード追加が必要

ENDROUTINE

 

EVTROUTINE HANDLING(#Grid.ItemGotFocusAccept #Grid.ItemGotSelectionAccept) Accept(#ACCEPT) OPTIONS(*NOCLEARMESSAGES *NOCLEARERRORS)

* 適切なコード追加が必要

Set Com(#ACCEPT) Value(TRUE)

ENDROUTINE

 

END_COM