【LANSA Tips】検索機能付きのドロップダウンに該当の項目がなくても入力できるようにする方法

World WideのLANSA技術フォーラムに投稿されたトピックと、日本のお客様からのお問い合わせへの回答の中から、皆様にお役に立つLANSAの開発テクニックやトラブルシュートに関する情報をご紹介します。

質問

LongRangeアプリにおいて、検索機能付きのドロップダウンを実装し、該当の項目がない場合にも入力できるようにすることはできますか?

回答

LongRangeによる検索機能付きドロップダウン
可能です。
テキストボックスエレメントにItem%n.valueとtextを設定することにより、検索機能付きドロップダウンとして機能します。
その上で、該当の項目がない場合に入力できるようにするには、Textbox エレメントのFreeItemプロパティにTrueを設定します。

コーディング例)
□LANSA版
#COM_OWNER.Set_TextBox Name(DDown1) Layout_Row(1) Layout_Col(2) Onvaluechange(VALUECHANGE)
#COM_OWNER.set Property('DDown1.FreeItem’) To('Y’)

#uEntry := 0
Selectlist Named(#Countries)
#uEntry += 1
#COM_OWNER.set Property('DDown1.Item%’ + #uEntry.AsString + '.value’) To(#CValue)
#COM_OWNER.set Property('DDown1.Item%’ + #uEntry.AsString + '.Text’) To(#CText)
Endselect

□RPG版
■DDS
HTML('<<COUNTRY>>
  Type : TEXTBOX
  FreeItem : Y
   ')

■RPG
Item = 0;
Setll *Loval CountryRec;
Read CountryRec;
Dow NOT %EOF(Countries);
 Item += 1;
 LRNG_Using('/Form.Fields.COUNTRY.Item%’ + %char(Item) );
  LRNG_AssignStrToProp(CNTRYVALUE : 'Value’);
  LRNG_AssignStrToProp(%trimr(CNTRYTEXT) : 'Text’);
  Read CountryRec;
 LRNG_EndUsing();
EndDo;

有償の「LANSAテクニカル・ホットライン・サービス」をご契約いただければ、過去データベースの検索から今回ご紹介した以外の技術情報を探すことも出来ます。 「LANSAテクニカル・ホットライン・サービス」のご契約についてはお問い合わせフォーム(https://www.lansa.jp/inquiryform/)よりお問い合わせください。

LANSAコミュニティに登録する

IBMi(AS/400)をご利用の企業様必読!
LANSAを利用したIBM iの活用方法・成功事例をお届け致します。