You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

ステップ 3. フォーム iiiFRM06 を作成する

INT011 - Excelドキュメントの作成
このファンクションは、部門コードと課コードを受け入れ、これらのコードが有効かどうかを確認した後、ファンクション iiiFN12 を呼び出します。
1.      フォーム iiiFRM06 –Excel 作成の呼び出しを作成します。  テンプレートは使用しないでください。
2.      以下のコーディング概要をベースにフォームを作成します。
ユーザーの入力データをフィールド DEPTMENT、SECTION に入れる。
ユーザーがキャプションの付いたプッシュ・ボタンをクリックしたら、以下を作成します。
          BEGINCHECK ループと FILECHECK を使用して、ファイル SECTAB に対してこれらのフィールドを検証します。
          フィールド DEPTMENT と SECTION を交換し、ファンクション iiiFN12 を呼び出します。
フォーム下のステータスバーにメッセージを表示します。
3.      完了したコードは以下のようになります
Function Options(*DIRECT)
Begin_Com Role(*EXTENDS #PRIM_FORM) Clientwidth(484) Clientheight(150) Componentversion(2) Left(620) Top(175)
Define_Com Class(#DEPTMENT.Visual) Name(#DEPTMENT) Displayposition(1) Left(24) Parent(#COM_OWNER) Tabposition(1) Top(17)
Define_Com Class(#SECTION.Visual) Name(#SECTION) Displayposition(2) Left(29) Parent(#COM_OWNER) Tabposition(2) Top(46)
Define_Com Class(#PRIM_PHBN) Name(#Button1) Caption('Create') Displayposition(3) Left(291) Parent(#COM_OWNER) Tabposition(3) Top(23)
Define_Com Class(#PRIM_STBR) Name(#StatusBar1) Displayposition(4) Height(28) Left(0) Messageposition(1) Parent(#COM_OWNER) Tabposition(4) Tabstop(False) Top(272) Width(476)
 
Evtroutine Handling(#com_owner.CreateInstance)
 
Set Com(#com_owner) Caption(*component_desc)
 
Endroutine
 
Evtroutine Handling(#Button1.Click)
Begincheck
Filecheck Field(#SECTION) Using_File(SECTAB) Using_Key(#DEPTMENT #SECTION) Msgtxt('部門/課が見つかりませんでした')
Filecheck Field(#SECTION) Using_File(PSLMST1) Using_Key(#DEPTMENT #SECTION) Msgtxt('この部門/課の社員は存在しません')
Endcheck
 

  • JSM ファンクションを呼び出し、Excel を作成
    Exchange Fields(#DEPTMENT #SECTION)
    Call Process(*DIRECT) Function(iiifn12)
     
    Endroutine
    End_Com
     
    4.      フォームをコンパイルします。
             Excel 作成のアプリケーションをテストします。ドキュメントはJSMインスタンスのtrainingサブディレクトリに書き込まれます。必要であれば、フォルダ …/jsm/instance/training を作成します。
             ドキュメントをExcelで開きます。以下のようになります。

             注意:IBM i サーバーで JSM サーバーを使用している場合、/training フォルダにドライブをマッピングする必要があります。ローカル JSM サーバーを使用している場合、フォルダは \JSMInstance\training になります。
    5.      問題が発生した場合は、デバッグを使用してプログラム・ロジックを追跡できます。また、トレース付きで ExcelService を開始して、トレース・ファイルを確認することもできます。これを行うには、ExcelService の SERVICE_LOAD に TRACE(*YES) を追加します。
    #jsmxcmd := 'SERVICE_LOAD SERVICE(ExcelService) TRACE(*YES)'
     
  • No labels