名札 メイン  変数宣言 局所,文字列{ &mTargetWfmName, &mTargetTblName }  変数宣言 局所,文字列{ &mTargetFileType = "フォーム", &mTargetFileTypeDim[3] = { "フォーム","表", "" }}  変数宣言 局所,文字列{ &mOpenFileName }  変数宣言 局所,文字列{ &mFileHistoryDim[20] }  変数宣言 局所,整数 { &mPathNameDisappear = 1 }  変数宣言 局所,整数 { &mTargetHdl }  ** INF_Launch_Set では、最終的に prcLaunch を呼び出しています。  **  ** cmdファイルを開くClick      →┐  ** cmdウィンドウ一覧ClickRETURN   →┼→ prcLaunch( INF_Launch_Set共通 ) → prcLaunchRun( アプリケーション固有 )  ** cmd以前開いたファイルClickRETURN →┘  変数宣言 局所,整数 { &targetEventKeyDown, &targetEventSystemKeyDown }  変数宣言 局所,整数 { &targetVKmKeyDownLive, &targetVKmSystemKeyDownLive, &targetVKmOnKey }  変数宣言 局所,文字列{ &mTempDataTblName }  &mTempDataTblName = #一括パス名 + "VK_variable_checker_temp.tbl"  **---------- ---------------**  *---------- begin IPS_form 名札 メイン ---------------*  ** Title : IPS_form 第 5.4 版 for 桐9-2012 / 桐9s / 桐10 / 桐10s ※ IPS_form はフリーソフト( free software ) です.  変数宣言 局所,整数 { &INFmLive = 1 } /* INF Framework を有効にする Yes:1 No:0 */  変数宣言 局所,整数 { &ONEmLive = 1 } /* IPS_form を有効にする Yes:1 No:0 */  if ( #変数( "ONEmLive" ) )   変数宣言 局所,文字列{ &ONEmLibraryName }   &ONEmLibraryName = #一括パス名 + "IPS_Framework.cmd"   if ( #ファイルサイズ( &ONEmLibraryName ) < 0 .and #バージョン番号 >= 10 )    &ONEmLibraryName = #ファイル名( &ONEmLibraryName, 5 ) + #ファイル名( &ONEmLibraryName, 2 ) + ".cmx"   end   if ( #ファイルサイズ( &ONEmLibraryName ) > 0 )    ライブラリ &ONEmLibraryName   else    &INFmLive = 0 /* INF Framework を無効にする Yes:1 No:0 */    &ONEmLive = 0 /* IPS_form を無効にする Yes:1 No:0 */    &ONEmLibraryName = "IPS_formライブラリが見つかりません\n\nフォルダ: "\     + #文字置換( #ファイル名( &ONEmLibraryName, 5), "\", "\\" ) \     + "\n\nファイル: " + #文字置換( #ファイル名( &ONEmLibraryName, 3), "\", "\\" )    メッセージボックス "IPS_form 名札 メイン", &ONEmLibraryName + "\n\nコメント: IPS + INF_Framework は停止しました", アイコン=E, ボタン指定=1, 制御文字展開 = する   end  end  if ( #変数( "ONEmLive" ) )   変数宣言 局所,整数 { &UTLmLive = 1 }  /* 拡張ライブラリを有効にする Yes:1 No:0 */   変数宣言 局所,整数 { &ONEmFieldWidthRestore }   **変数宣言 局所,整数 { &ONEmGroupObjectSeek = 1 } /* グループ項目のソースの項目を明細部から除外する */   変数宣言 局所,整数 { &ONEmNoCaptionColorUse = 1 } /* 項目名行・UTLCMDcmd改行キー方向・行セレクタの色を設定をしない 2016.02.05 */   変数宣言 局所,整数 { &ONEmNoFocusFieldObjectReset = 1 } /* 表示条件を読み込んだ時にフォーカス中の項目が見つかった場合、一番左の項目へフォーカスを移動しない 2017.04.21 */   ** 「項目ジャンプ」機能 / 「列固定」機能で使用する変数   変数宣言 局所,文字列{ &UTLJMPmFieldName = "項目", &UTLJMPmFieldNameDim[100], &UTLJMPmTargetFieldName, &UTLLOCKmFieldLockString = "固定", &UTLLOCKmFieldLockStringDim[10] }   変数宣言 局所,整数 { &INFmRestoreMode }   ** 「コマンドボタンリピート」機能で使用する変数   変数宣言 局所,文字列{ &SPNmRecordUpDownParameterList }   変数宣言 局所,整数 { &SPNmOnRecordUpDown } /* タイマー参照フラグ */   ** 「スピンボタン」機能で使用する変数   変数宣言 局所,文字列{ &SPNmSpinButtonParameterList }   変数宣言 局所,整数 { &SPNmOnSpinButton }  /* タイマー参照フラグ */   ** 「項目の表示条件」機能で使用する変数 2017.03.21   変数宣言 局所,文字列{ &ONEmCondition, &ONEmConditionBak, &ONEmConditionDIM[ 50 ], &ONEmFieldWidthMenuDIM[ 3 ] }   ***---------- begin FormSectionColor 名札 メイン ---------------*   変数宣言 局所,整数 { &FSCmUse = 1 } /* 「フォーム背景色」機能を有効にする Yes:1 No:0 */   条件 ( #変数( "FSCmUse" ) ) 変数宣言 局所,文字列{ &FSCmFormColor, &FSCmFormColorParameter, &FSCmPaletteColorName }   条件 ( #変数( "FSCmUse" ) ) 変数宣言 局所,整数 { &FSCmSave = 1 } /* 「フォーム背景色」を保存する Yes:1 No:0 */   条件 ( #変数( "FSCmUse" ) ) 変数宣言 局所,文字列{ &FSCmModalFormColor = "白百合色" }   ***---------- end FormSectionColor 名札 メイン ---------------*   ***---------- begin クラシックUIモード ⇔ モダンUIモード 名札 メイン ---------------*   if ( #バージョン番号 => 10.1 ) /* 桐10s 以降 */    変数宣言 局所,整数 { &UImConvertLive = 1 } /* クラシックUIモード ⇔ モダンUIモードを有効にする Yes:1 No:0 */    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,整数 { &UImModernUse = 0 } /* モダンUIモードで変換:1 クラシックUIモードで変換:0 */    **条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,文字列{ &UImHoverColorName = "RGB(229,243,255)" } /* 薄い色"RGB(229,243,255)" 濃い色"RGB(204,232,255)" */    **条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,文字列{ &UImHoverColorName = "RGB(180,216,238)" } /* 2022.01.20 */    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,文字列{ &UImBackgroundColorMode, &UImBackgroundColorName, &UImThis }    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,整数 { &UImColorButtonUse = 1 }             /* コマンドボタンの色を指定する Yes:1 No:0 */    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,文字列{ &UImModernColorNameButton = "RGB(225,225,225)" } /* モダンUIの時のボタンの色 "RGB(225,225,225)" */    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,整数 { &UImClassicColorButtonNum = 2 }          /* クラシックUIの時のボタンの色 ボタンの表面色:1 継承:2 */    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,整数 { &UImIsfamModernUI }          /* ファミリ:famModernUI が存在するか否か */    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,文字列{ &UImFlatButtonBorderObjectName } /* lblFlatButtonBorder_1, _2, _3 */    条件 ( #変数( "UImConvertLive" ) ) 変数宣言 局所,文字列{ &UImHoverColorName = "RGB(229,243,255)" } /* 2022.12.21 薄い色"RGB(229,243,255)" */   end   ***---------- end クラシックUIモード ⇔ モダンUIモード 名札 メイン ---------------*   **---------- begin VK 名札 メイン ---------------**   変数宣言 局所,整数 { &VKmLive = 1 } /* VK機能を有効にする Yes:1 No:0 */   if ( #変数( "VKmLive" ) )    ** VK Variable    変数宣言 局所,文字列{ &VKmScanString, &VKmChr, &VKmFlagKeyName, &VKmKeyString, &VKmMouseString }    変数宣言 局所,文字列{ &VKmKeyNameKeyDownDim[8], &VKmKeyNameSystemKeyDownDim[8], &VKmKeyNameKeyUpDim[8], &VKmKeyNameSystemKeyUpDim[8] }    変数宣言 局所,文字列{ &VKmKeyMacroKeyDownDim[8], &VKmKeyMacroSystemKeyDownDim[8], &VKmKeyMacroKeyUpDim[8], &VKmKeyMacroSystemKeyUpDim[8] }    変数宣言 局所,文字列{ &VKmKeyCancelKeyDownDim[8], &VKmKeyCancelSystemKeyDownDim[8], &VKmConstantNumList, &VKmConstantChrList }    変数宣言 局所,長整数{ &VKmKeyNum, &VKmScanNum, &VKmFlagNum, &VKmLongNum }    変数宣言 局所,整数 { &VKmAltKey, &VKmRepeat, &VKmExtendKey, &VKmNoKeyboard }    変数宣言 局所,整数 { &VKmKeyDownLive, &VKmSystemKeyDownLive, &VKmKeyUpLive, &VKmSystemKeyUpLive, &VKmOnKey, &VKmConstantDimNum }    エラー処理 手続き名 = "VKprcOnErrorVKprcConstantDefine"    手続き実行 VKprcConstantDefine( &VKmConstantNumList, &VKmConstantChrList, &VKmConstantDimNum )    エラー処理 /* 解除を忘れずに */    ** option 変数宣言 局所,整数 { &VKmKeyMask, &VKmCustomizeKeyMask, &VKmSpecialKeyMask, &VKmFunctionKeyMask }    ** option 変数宣言 局所,文字列{ &VKmConstantChrDim[ &VKmConstantDimNum ] }    ** option 手続き実行 VKprcConstantDimStore( &VKmConstantChrList, &VKmConstantChrDim )   end   **---------- end VK 名札 メイン ---------------**   ***---------- begin EditPermission 名札 メイン ---------------*   変数宣言 局所, 整数{ &ONEmPropertyRecordInsert, &ONEmPropertyRecordEdit, &ONEmPropertyRecordDelete, &ONEmPropertyRecordRecall, &ONEmPropertyRecordSlect, &ONEmPropertyRecordUpdate }   変数宣言 局所, 整数{ &ONEmPropertyRecordView, &ONEmPropertyRecordSort, &ONEmPropertyRecordMulti, &ONEmPropertyRecordOut, &ONEmPropertyRecordZero, &ONEmPropertyRecordGoup, &ONEmPropertyRecordNull }   変数宣言 局所, 整数{ &ONEmEditPermissionUse }   &ONEmEditPermissionUse = 1   変数宣言 局所,文字列{ &ONEmEditPermissionWfm }   ***---------- end EditPermission 名札 メイン ---------------*   ** Rev.190 2016.11.18 IPS_form 名札 メイン に追加 変数宣言 局所,整数{ &INFmKnjForm }   条件 ( #バージョン番号 >= 10 .and #配列要素数( "INFmKnjForm" ) = -1 ) 変数宣言 局所,整数{ &INFmKnjForm }   手続き実行 ONEforLNCprcPropertyEditTblNameSet( ) /* ランチャー機能( HDLLNC )に対応する部分です */  end  *---------- end IPS_form 名札 メイン ---------------*  ** IPS_form 特記事項: コメントアウト → ** IPS_form 変数宣言 局所,整数 { &INFmLive = 1 } /* INF Framework を有効にする Yes:1 No:0 */  ** IPS_form 特記事項: 追加      → 条件 ( #変数( "INFmLive" ) ) &INFmTblNameUse = 1  *---------- begin INF Framework 名札 メイン ---------------*  ** Title : INF Framework 第 3.3 版 for 桐9-2012 / 桐9s / 桐10 / 桐10s ※ INF Framework はフリーソフト( free software ) です.  **変数宣言 局所,整数 { &INFmLive = 1 } /* INF Framework を有効にする Yes:1 No:0 */  if ( #変数( "INFmLive" ) )   *---------- begin INF Framework Library Load ---------------*   変数宣言 局所,文字列{ &INFmLibraryName }   &INFmLibraryName = #一括パス名 + "INF_Framework.cmd" /* Rev.88~142は INF_Tools_Framework.cmd ※Rev.73 までは INF_Tools_library.cmd */   if ( #ファイルサイズ( &INFmLibraryName ) < 0 .and #バージョン番号 >= 10 )    &INFmLibraryName = #ファイル名( &INFmLibraryName, 5 ) + #ファイル名( &INFmLibraryName, 2 ) + ".cmx"   end   if ( #ファイルサイズ( &INFmLibraryName ) > 0 )    ライブラリ &INFmLibraryName    if ( #バージョン番号 >= 10 )     if ( #配列要素数( "INFmKnjForm" ) = -1 )      変数宣言 局所,整数{ &INFmKnjForm }      ** Rev.143 2015.07.08 オブジェクト操作コマンド @フォーム 等を変数指定に変更      エラー処理 手続き名 = "INFprcOnErrorEventFormBeginON"      オブジェクト操作 @フォーム{ フォーム開始 = 1 }      エラー処理 /* 解除を忘れずに */     else      条件 ( #変数( "INFmKnjForm" ) ) オブジェクト操作 @フォーム{ フォーム開始 = 1 } /* 全角のフォーム */      条件 ( .not #変数( "INFmKnjForm" ) ) オブジェクト操作 @フォーム{ フォーム開始 = 1 } /* 半角のフォーム */     end    else /* 桐9-2012 / 桐9s */     オブジェクト操作 @フォーム{ フォーム開始 = 1 } /* 半角のフォーム */    end   else    &INFmLive = 0, &INFmLibraryName = "ライブラリが見つかりません\n\nフォルダ: " + #文字置換( #ファイル名( &INFmLibraryName, 5), "\", "\\" ) + "\n\nファイル: " + #文字置換( #ファイル名( &INFmLibraryName, 3), "\", "\\" )    メッセージボックス "INF Framework 名札 メイン", &INFmLibraryName + "\n\nコメント: INF Framework は停止しました", アイコン=i, ボタン指定=1, 制御文字展開 = する   end   *---------- end INF Framework Library Load ---------------*  end  if ( #変数( "INFmLive" ) )   *---------- begin Handle Variable Define and Store ---------------*   **変数宣言 局所,整数 { &HDLVARmOkOnly = 1 }/* OKのみのダイアログボックスとして動作、[×][Esc][閉じる]等が[OK]と同等になる。但し exit の値は -1 */   変数宣言 局所,文字列{ &HDLVARmStoreParameter, &HDLVARmReturnParameter, &HDLVARmProcedureParameter, &HDLVARmDefineVariableList, &HDLVARmReturnVariableList, &HDLVARmSendProcedureName, &HDLVARmVarType, &HDLVARmVarMacro, &HDLVARmVarStoreMacro, &HDLVARmReferWfmFileName }   変数宣言 局所,整数 { &HDLVARmReferWfmHdl, &HDLVARmVarCount, &HDLVARmVarDim, &HDLVARmExitButtonUse }   手続き実行 HDLVARprcReferWfmHdlGet( &HDLVARmReferWfmFileName, &HDLVARmReferWfmHdl )   if ( #ウィンドウハンドル( &HDLVARmReferWfmHdl ) ) /* 呼び出し元フォームのウィンドウが存在すれば… */    手続き実行 HDLVARprcParameterGet( )    if ( #trim( &HDLVARmDefineVariableList, 4 ) )     手続き実行 HDLVARprcVarParameterReform( &HDLVARmDefineVariableList )     &HDLVARmVarCount = 1     繰り返し ( &HDLVARmVarCount )      手続き実行 HDLVARprcMacroVarRun( &HDLVARmReferWfmHdl, &HDLVARmDefineVariableList, &HDLVARmVarCount, &HDLVARmVarType, &HDLVARmVarMacro, &HDLVARmVarStoreMacro, &HDLVARmVarDim )      条件 ( &HDLVARmVarMacro   ) コマンド &HDLVARmVarMacro      条件 ( &HDLVARmVarStoreMacro ) 手続き実行 HDLVARprcMacroStoreRun( &HDLVARmVarStoreMacro, &HDLVARmVarDim )     繰り返し終了    end    &HDLVARmProcedureParameter = #u /* Rev.111 2013.06.15 名札メイン &HDLVARmProcedureParameter をクリア */   end   *---------- end Handle Variable Define and Store ---------------*   *---------- begin INF Framework Variable Define ---------------*   **第 3.0 版で廃止された変数 変数宣言 局所,文字列{ &INFmDataTypeEvalObjectName = "INFtxtCommon" } /* *_info.txt を読み込む時に使用するテキストオブジェクト名 オブジェクト名は任意 */   変数宣言 局所,文字列{ &INFmSaveVariableNameList }/* 第 2.1 版で追加された局所変数 *_info.txt に値を保存する変数名 変数名を半角コンマで区切った文字列 */   変数宣言 局所,整数 { &EZWmFieldMagnification }/* 行の高さを記憶 */   **変数宣言 局所,整数{ &EZWmNoFieldLockSave = 1 }/* &INFmSaveVariableNameList の中の &EZWmFieldLock を保存しない */   **変数宣言 局所,整数{ &LNCmNoCommandButtonUse = 1 }/* ランチャー機能でフォームを開く時に INFcmdCommon を使わない */   **変数宣言 局所,整数{ &EZWmSeparatorPointWidth = 8 }/* キャプションでマウスカーソルを左右矢印にする範囲 単位は point */   **変数宣言 局所,整数{ &INFmWindowNoLocate = 1 }/* フォームの位置を復元しない */   **変数宣言 局所,整数{ &INFmWindowNoResize = 1 }/* フォームのサイズを復元しない */   **変数宣言 局所,整数{ &INFmWindowNoZoom = 1 }/* フォームの倍率を復元しない */   変数宣言 局所,文字列{ &INFmTraceModuleNameList = "xTIMER,xALL" }/* 第 3.0 版で追加された局所変数 トレース出力するモジュール名 ALL,INF,EZW,UTLSORT,TIMER */   変数宣言 局所,整数 { &INFmTraceFormPathAdd = 0 }/* 第 3.0 版で追加された局所変数 トレース出力のフォーム名にパス名を付ける */   変数宣言 局所,整数 { &INFmInchToDot = #u }/* Rev.89 以降では値は自動的に取得するので未定義値のままでOK */   変数宣言 局所,文字列{ &INFmMyWsUserName, &INFmMyTblinfo, &INFmMyAlias = #u, &INFmCmdStartupObjList }   変数宣言 局所,整数 { &INFmWsUserNameUse = 0, &INFmTblNameUse = 0, &INFmContorlChrUse }   ** INF var   変数宣言 局所,文字列{ &INFmMyWfmName, &INFmMyWfmPath, &INFmMyWinType, &INFmMyWfmType, &INFmTimerSecondaryStatusDefault, &INFmOnErrorInfoReadMsg, &INFmMyWfmMagnification,&INFmMyKevName, &INFmMyInfoName }   変数宣言 局所,整数 { &INFmMyTblNum, &INFmOnErrorWindowSizeSet, &INFmOnErrorInfoRead, &INFmOnStartupCmdObjUse, &INFmMyWinMinimize, &INFmMyWinMaximize, &INFmMyWinMaximizeSave = 0, &INFmEZWidthUse = 0, &INFmMyWfmLinesDefault, &INFmIsMyTbl }   変数宣言 局所,長整数{ &INFmTimerSecondaryIntervalDefault } /* Rev.126 2014.12.26 名札メイン &INFmTimerSecondaryIntervalDefault を 整数型 → 長整数型 に変更 */   変数宣言 局所,数値 { &INFmMyWinPos[2], &INFmMyWinSize[2] }   変数宣言 局所,文字列{ &INFmMacro }   /* 第 2.1 版で追加された局所変数 */   変数宣言 局所,整数 { &INFmOnMacro } /* 第 2.1 版で追加された局所変数 */   変数宣言 局所, 整数 { &INFmModalControl = 1 } /* 第 3.0 版で追加された局所変数 */   ** EZW var   変数宣言 局所,文字列{ &EZWmRecScrollBar, &EZWmWfmEdge, &EZWmMarkerHead, &EZWmMarkerBody, &EZWmMarkerFoot, &EZWmFieldName, &EZWmCaptionName, &EZWmSeparatorName, &EZWmMoveFieldList, &EZWmMoveCaptionList, &EZWmRedrawSection, &EZWmVariableField = "EZWmFieldList", &EZWmVariableCaption = "EZWmCaptionList", &EZWmVariableLink = "EZWmLinkList", &EZWmTargetFieldListName, &EZWmFieldList1, &EZWmCaptionList1, &EZWmSeparatorHead, &EZWmSeparatorBody, &EZWmSeparatorFoot, &EZWmLinkList1, &EZWmClickedObjName, &EZWmReadFieldList1, &EZWmKeyDownStatusDefault, &EZWmSystemKeyDownStatusDefault, &EZWmFamilyEZW, &EZWmFamilyFLD, &EZWmFamilyCAP, &EZWmCaptionExtendList, &EZWmCaptionOffsetList, &EZWmMarkerColor, &EZWmLockCaptionColor }   変数宣言 局所,文字列{ &EZWmFieldList2, &EZWmCaptionList2 } /* EZW+用のサブ定義リストの変数 末尾Nは 2 から 連続する整数:&EZWmFieldListN と &EZWmCaptionListN */   ** Rev.89 使用頻度が低いので3~6の変数を削除 変数宣言 局所,文字列{ &EZWmFieldList3, &EZWmCaptionList3, &EZWmFieldList4, &EZWmCaptionList4, &EZWmFieldList5, &EZWmCaptionList5, &EZWmFieldList6, &EZWmCaptionList6 }   変数宣言 局所,整数 { &EZWmIsSeparatorHead, &EZWmIsSeparatorBody, &EZWmIsSeparatorFoot, &EZWmIsMarkerHead, &EZWmIsMarkerBody, &EZWmIsMarkerFoot, &EZWmDoubleClick = 0, &EZWmMouseMove, &EZWmFieldLock = 0, &EZWmIsFamilyEZW, &EZWmIsFamilyFLD, &EZWmIsFamilyCAP, &EZWmFieldLive, &EZWmDebugSeparatorAppear = 0 }   変数宣言 局所,数値 { &EZWmMagnification = 100, &EZWmReadMagnification, &EZWmFieldWidth, &EZWmFieldPosX, &EZWmMousePosX, &EZWmMarkerPosX, &EZWmWfmWidth, &EZWmBorderPosX, &EZWmBorderless = 1, &EZWmMarkerWidth = 20, &EZWmIntervalDoubleClickSecond, &EZWmFieldHomePosX, &EZWmFieldHeightDefault, &EZWmExtendWidth }   変数宣言 局所,日時 { &EZWmClickedObjDate }   変数宣言 局所,時間 { &EZWmIntervalDoubleClickDefault = i"0時間 0分 0.8秒", &EZWmIntervalDoubleClick }   ** EZW var 第 2.1 版で追加された変数   変数宣言 局所,整数 { &EZWmFieldMouseDownLast }   ** FLD var   変数宣言 局所,文字列{ &EZWmFocusField, &EZWmFocusFieldLast, &EZWmFieldWidthList, &EZWmFieldStackList, &EZWmFieldStatusList }   変数宣言 局所,整数 { &EZWmOnFieldFocusGet, &EZWmOnFieldFocusReset, &EZWmFieldMouseDown }   変数宣言 局所,長整数{ &EZWmRecNow, &EZWmRecFocus }   ** LNC var 第 2.1 版で追加された変数   変数宣言 局所,文字列{ &LNCmModuleName, &LNCmOnErrorMsg, &LNCmOpenPathName }   変数宣言 局所,整数 { &LNCmOnError, &LNCmMyWinMinimize = 0, &LNCmWindowFoundMyWinMinimize = 0, &LNCmOpenPathLock = 0, &LNCmKiriVariableUse = 0 }   ** 廃止された変数(旧LNC機能) 変数宣言 局所,整数 { &LNCmTblClose = 0, &LNCmPopupToChild = 0, &LNCmModeZero = 0 }   ** HDLSEL var 第 2.1 版で追加された変数   変数宣言 局所,文字列{ &HDLSELmSelectFileName, &HDLSELmWfmFileName, &HDLSELmTblFileName, &HDLSELmAction }   変数宣言 局所,整数 { &HDLSELmTargetHdlNum, &HDLSELmOnHdlSet, &HDLSELmTblInfoAdd = 1 }   ** HDLCOM var 第 2.1 版で追加された変数   変数宣言 局所,文字列{ &HDLCOMmSendMacro, &HDLCOMmReceiveMacro }   変数宣言 局所,整数 { &HDLCOMmOnMacro, &HDLCOMmReceiveReady = 1 }   ** UTLSORT var 第 2.1 版で追加された変数   変数宣言 局所,整数 { &UTLSORTmLive = 1 } /* 「項目ソート」機能を有効にする Yes:1 No:0 */   if ( #変数( "UTLSORTmLive" ) )    変数宣言 局所,文字列{ &UTLSORTmSortParameter, &UTLSORTmButton, &UTLSORTmClickObjectNow, &UTLSORTmClickObjectLast } /* &UTLSORTmPrefixList */    変数宣言 局所,整数 { &UTLSORTmKeep, &UTLSORTmSize, &UTLSORTmPos, &UTLSORTmRun, &UTLSORTmDictionaryOrder }   end   ** UTLFLD var 第 3.1 版で追加された変数   変数宣言 局所,整数 { &UTLFLDmTextSelect = 1 } /* 桐ver.9以降:famFLD::編集開始( )で[編集選択位置設定]メソッドを実行する */   *---------- end INF Framework Variable Define ---------------*  end  *---------- end INF Framework 名札 メイン ---------------*  条件 ( #変数( "INFmLive" ) ) &INFmTblNameUse = 1 /* IPS_form */  **---------- ---------------** * 手続き定義開始 cmdStartupClick( )  変数宣言 自動,文字列{ &icon, &title = "cmdStartupClick( )", &msg }  変数宣言 自動,数値 { &formWidth }  変数宣言 自動,文字列{ &formObjectName = "フォーム" }  条件 ( #変数( "INFmKnjForm" ) ) &formObjectName = #全角( &formObjectName )  ** 幅を狭くしてフォームスクロールバーが現れ易くする  オブジェクト操作 &formObjectName{ &formWidth = フォームの幅 }  &formWidth = #int( &formWidth / 4 )  オブジェクト操作 &formObjectName{ フォームの幅 = &formWidth }  オブジェクト操作 &formObjectName{ &EZWmWfmWidth = フォームの幅 }  **IPS:org &INFmSaveVariableNameList = "&EZWmFieldLock, &UTLSORTmKeep, &UTLSORTmDictionaryOrder, &UTLFLDmTextSelect"  &INFmSaveVariableNameList = &INFmSaveVariableNameList + ", &mOpenFileName, &mFileHistoryDim, &mPathNameDisappear, &mTargetFileType" 手続き定義終了 手続き定義開始 cmdウィンドウ一覧Click( )  変数宣言 自動,文字列{ &icon, &title = "cmdウィンドウ一覧Click", &msg }  変数宣言 自動,文字列{ &extention, &extensionList }  変数宣言 自動,文字列{ &titlebarCaption, &operationGuide }  変数宣言 自動,整数 { &modalControl, &hdlExcept, &done }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 1  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  &extention = #lc2( #ファイル名( &INFmMyWfmName, 4 ) )  **   機能名   機能パラメータリスト  **[1]表示  **[2]手続き実行 cmdウィンドウ一覧Click  **[3]なし  **[4]なし  ** HDLAPIprcHandle:パラメータ1:モーダル( 1 ) または モードレス( 0 )  &modalControl = 1  ** HDLAPIprcHandle:パラメータ2:タイトルバーの表題  &titlebarCaption = &title  ** HDLAPIprcHandle:パラメータ3:作業メッセージ  ** 例:&operationGuide = "ファイル名をクリックしてください (F1:ヘルプ)"  &operationGuide = ""  ** HDLAPIprcHandle:パラメータ4:半角コンマで区切った拡張子リスト  ** 例:&extensionList = #cond( #バージョン番号 >= 10, "wfx,tbx,vix,xvx," ) + "wfm,tbl,viw,xvw"  &extensionList = ""  &extensionList = #lc2( #ファイル名( &INFmMyWfmName, 4 ) )  ケース開始   ケース ( &mTargetFileType = "フォーム" .and &extention = "wfm" )    &extensionList = "wfm"   ケース ( &mTargetFileType = "フォーム" .and &extention = "wfx" )    &extensionList = "wfx"   ケース ( &mTargetFileType = "表" .and &extention = "wfm" )    &extensionList = "tbl"   ケース ( &mTargetFileType = "表" .and &extention = "wfx" )    &extensionList = "tbx"  ケース終了  ** HDLAPIprcHandle:パラメータ5:除外するハンドル番号  ** 例:&hdlExcept = &hwindow  &hdlExcept = ""  &hdlExcept = &hwindow  ** リターン時に実行するコマンド ※キャンセル や Esc の場合には &HDLSELmAction は実行されません  ** 例:&HDLSELmAction = "確認"  &HDLSELmAction = "手続き実行 cmdウィンドウ一覧ClickRETURN( &HDLSELmTargetHdlNum, &HDLSELmSelectFileName, &HDLSELmWfmFileName, &HDLSELmTblFileName )"  ** 注意:変数名の &HDLSELmTargetHdlNum, &HDLSELmSelectFileName, &HDLSELmWfmFileName, &HDLSELmTblFileName はINF_Frameworkの規定値  条件 ( &traceON ) トレース出力 "&HDLSELmAction = " + &HDLSELmAction  条件 ( &traceON ) トレース出力 "手続き実行 HDLAPIprcHandle( &modalControl, &titlebarCaption, &operationGuide, &extensionList, &hdlExcept, &done )"  ** 引数の意味:1.モーダル 2.タイトルバー文字 3.操作ガイド 4.拡張子リスト 5. 除外ハンドル 6.終了状態(1:実行 0:キャンセル)  手続き実行 HDLAPIprcHandle( &modalControl, &titlebarCaption, &operationGuide, &extensionList, &hdlExcept, &done )  条件 ( &traceON ) トレース出力 "&done = " + #str( &done )  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 cmdウィンドウ一覧ClickRETURN( 整数 &hdl, 文字列 &windowName, 文字列 &wfmName, 文字列 &tblName )  変数宣言 自動,文字列{ &icon, &title = "cmdウィンドウ一覧ClickRETURN( )", &msg }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 1  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  条件 ( &traceON ) トレース出力 "引数:&hdl = " + #str( &hdl )  条件 ( &traceON ) トレース出力 "引数:&windowName = " + &windowName  条件 ( &traceON ) トレース出力 "引数:&wfmName = " + &wfmName  条件 ( &traceON ) トレース出力 "引数:&tblName = " + &tblName  条件 ( &traceON ) トレース出力 "これらはINF_Frameworkの変数 &HDLSELmTargetHdlNum, &HDLSELmSelectFileName, &HDLSELmWfmFileName, &HDLSELmTblFileName に対応します"  手続き実行 prcLaunch( &wfmName, &tblName )  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 cmdファイルを開くClick( )  変数宣言 自動,文字列{ &icon, &title = "cmdファイルを開くClick( )", &msg }  変数宣言 自動,文字列{ &wfmName, &tblName }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 1  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  ** cmdファイルを開く  **   機能名   機能パラメータリスト  **[1]表示  **[2]手続き実行 prcファイルを開くのプロパティ変更  **[3]ファイル名入力 &mOpenFileName, "ファイルを開く", "", "フォーム (*.wfm)|*.wfm", "", "開く(&O)"  **[4]手続き実行 cmdファイルを開くClick  if ( &mTargetFileType = "フォーム" )   &wfmName = &mOpenFileName  else   &tblName = &mOpenFileName  end  手続き実行 prcLaunch( &wfmName, &tblName )  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 cmd以前開いたファイルClick( )  変数宣言 自動,文字列{ &icon, &title = "cmd以前開いたファイルClick( )", &msg }  変数宣言 自動,文字列{ &workMsg, &titlebarMsg, &procedureNameForItem }  変数宣言 自動,整数 { &done, &i, &loop }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 1  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  **   機能名   機能パラメータリスト  **[1]表示  **[2]手続き実行 cmd以前開いたファイルClick  **[3]なし  **[4]なし  if ( &mFileHistoryDim[1] <> #u )   &procedureNameForItem = "cmd以前開いたファイルClickRETURN" /* 手続き実行 cmd以前開いたファイルClickReturn( n ) */   &titlebarMsg = "以前開いたファイル"   &workMsg = "開くファイルをクリックしてください (F1:ヘルプ)"   if ( .not &mPathNameDisappear )    手続き実行 HDLAPIprcItemWindowAppear( &INFmModalControl, &titlebarMsg, &workMsg, &mFileHistoryDim, &procedureNameForItem, &done )   else    &loop = #配列要素数( "mFileHistoryDim" )    変数宣言 自動,文字列{ &fileHistoryDim[ &loop ] }    &fileHistoryDim = &mFileHistoryDim    繰り返し &i = 1, &loop     &fileHistoryDim[ &i ] = #ファイル名( &fileHistoryDim[ &i ], 3 )     &msg = &msg + "&fileHistoryDim[ " + #str( &i ) + " ] = " + &fileHistoryDim[ &i ] + "\n"     *手続き実行 INFprcMsgPause( &icon, &title, &msg )    繰り返し終了    手続き実行 HDLAPIprcItemWindowAppear( &INFmModalControl, &titlebarMsg, &workMsg, &fileHistoryDim, &procedureNameForItem, &done )   end  else   &msg = "以前開いたファイルが見つかりません"   &icon = "i"   手続き実行 INFprcMsgPause( &icon, &title, &msg )  end  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 cmd以前開いたファイルClickRETURN( 整数 &buttonNum )  変数宣言 自動,文字列{ &icon, &title = "cmd以前開いたファイルClickRETURN( )", &msg }  変数宣言 自動,文字列{ &wfmName, &tblName, &fileName, &extention }  変数宣言 自動,整数 { &ans, &debug = 0 }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 1  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  if ( &debug )   &msg = "&buttonNum = " + #str( &buttonNum )   &msg = &msg + "\n" + #複写( "-", 50 )   &msg = &msg + "\n\n&mFileHistoryDim = " + #文字置換( &mFileHistoryDim[ &buttonNum ], "\", "\\" )   &icon = "i"   手続き実行 INFprcMsgPause( &icon, &title, &msg )  end  if ( #ファイルサイズ( &mFileHistoryDim[ &buttonNum ] ) > 0 )   &fileName = &mFileHistoryDim[ &buttonNum ]   &extention = #lc2( #ファイル名( &fileName, 4 ) )   if ( &extention = "wfm" .or &extention = "wfx" )    &wfmName = &fileName    &tblName = #u   end   if ( &extention = "tbl" .or &extention = "tbx" )    &wfmName = #u    &tblName = &fileName   end   手続き実行 prcLaunch( &wfmName, &tblName )  else   &msg = "ファイルが見つかりません"   &msg = &msg + "\n" + #複写( "-", 50 )   &msg = &msg + "\n\nフォルダ: " + #文字置換( #ファイル名( &mFileHistoryDim[ &buttonNum ], 5 ), "\", "\\" )   &msg = &msg + "\n\nファイル: " + #ファイル名( &mFileHistoryDim[ &buttonNum ], 3 )   &msg = &msg + "\n\n&buttonNum = " + #str( &buttonNum )   &msg = &msg + "\n\n[以前開いたファイル]から削除しますか?"   &icon = "!"   手続き実行 INFprcMsgOKCancel( &icon, &title, &msg, &ans )   if ( &ans )    手続き実行 prcHistoryDimErase( &buttonNum, &mFileHistoryDim )   end  end  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 prcHistoryDimErase( 整数 &dimNum, 参照 文字列 &varDim[] )  変数宣言 自動,文字列{ &icon, &title = "prcHistoryDimErase( )", &msg }  変数宣言 自動,整数 { &bottom = #配列要素数( "varDim" ), &i, &next = 1 }  if ( &dimNum < &bottom )   繰り返し &i = &dimNum, &bottom -1, &next    &varDim[ &i ] = &varDim[ &i + 1 ]   繰り返し終了  end  &varDim[ &bottom ] = #u 手続き定義終了 手続き定義開始 prcHistoryDimSet( 文字列 &string, 参照 文字列 &varDim[] )  変数宣言 自動,文字列{ &icon, &title = "prcHistoryDimSet( )", &msg }  変数宣言 自動,整数 { &top = 1, &bottom = #配列要素数( "varDim" ), &i, &next = 1, &before = -1, &found }  if ( &string <> #u )   if ( &varDim[ &top ] <> &string .and &top <> &bottom )    繰り返し &i = &top + 1, &bottom, &next     &found = &i     if ( &varDim[ &i ] = &string )      繰り返し中止     end    繰り返し終了    繰り返し &i = &found, &top + 1, &before     &varDim[ &i ] = &varDim[ &i - 1 ]    繰り返し終了   end   &varDim[ &top ] = &string  else   &msg = "引数:&string の値が未定義値です"   &msg = &msg + "\n\nヒストリーへの登録をキャンセルしました"   &icon = "e"   手続き実行 INFprcMsgPause( &icon, &title, &msg )  end 手続き定義終了 手続き定義開始 prcLaunch( 文字列 &wfmName, 文字列 &tblName )  変数宣言 自動,文字列{ &icon, &title = "prcLaunch( )", &msg }  変数宣言 自動,文字列{ &windowName }  変数宣言 自動,整数 { &hdl, &openStatus }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 0  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  条件 ( &traceON ) トレース出力 "&wfmName = " + &wfmName  条件 ( &traceON ) トレース出力 "&tblName = " + &tblName  手続き実行 HDLLNCprcWindowAppear( &wfmName, &tblName, &hdl, &openStatus )  条件 ( &traceON ) トレース出力 "&hdl = " + #str( &hdl )  条件 ( &traceON ) トレース出力 "&openStatus = " + #str( &openStatus )  if ( &hdl )   &mTargetHdl = &hdl   &mTargetWfmName = &wfmName   &mTargetTblName = &tblName   条件 ( &traceON ) トレース出力 "if ( #ウィンドウ状態( &hdl ) = 2 ) … " + #str( ( #ウィンドウ状態( &hdl ) = 2 ) )   if ( #ウィンドウ状態( &hdl ) = 2 )    ウィンドウ位置 復元, &hdl   end   &windowName = #cond( &wfmName <> #u, &wfmName, &tblName <> #u, &tblName )   if ( &windowName <> #u )    手続き実行 prcHistoryDimSet( &windowName, &mFileHistoryDim )   end  end  &msg = "&wfmName = " + #文字置換( &wfmName, "\", "\\" )  &msg = &msg + "\n\n&tblName = " + #文字置換( &tblName, "\", "\\" )  &msg = &msg + "\n\n&hdl = " + #str( &hdl )  &msg = &msg + "\n\n&openStatus = " + #str( &openStatus )  &msg = &msg + "\n\n&mTargetHdl = " + #str( &mTargetHdl )  &icon = "i"  **手続き実行 INFprcMsgPause( &icon, &title, &msg )  if ( &hdl <> 0 )   手続き実行 prcLaunchRun( &hdl )  end  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 prcファイルを開くのプロパティ変更( )  変数宣言 自動,文字列{ &icon, &title = "pcrファイルを開くのプロパティ変更( )", &msg }  変数宣言 自動,文字列{ &extention, &property, &fileFilter }  変数宣言 自動,文字列{ &WQ = #jis( #hex("22") ) }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 1  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  ** cmdファイルを開く  **   機能名   機能パラメータリスト  **[1]表示  **[2]手続き実行 prcファイルを開くのプロパティ変更  **[3]ファイル名入力 &mOpenFileName, "ファイルを開く", "", "フォーム (*.wfm)|*.wfm", "", "開く(&O)"  **[4]手続き実行 cmdファイルを開くClick  ** 参考[3]ファイル名入力 &mTargetFileName,"ファイルを開く utx_list3","kev",  ** 参考   "イベント(*.kev)|*.kev|一括 (*.cmd)|*.cmd|テキスト (*.txt)|*.txt|K3ファイル (*.k3)|*.k3|すべて (*.kev *.cmd *.txt *.k3)|*.kev;*.cmd;*.txt;*.k3|"  ** 重要:機能名の[ファイル名入力]のパラメータに関して詳しいことは、ヘルプの[入力支援ボタン]の[リストの種別:ファイル名選択]を参照すること  &extention = #lc2( #ファイル名( &INFmMyWfmName, 4 ) )  if ( &extention = "wfm" .and &mTargetFileType = "フォーム" )   **&fileFilter = """,""フォーム (*.wfm)|*.wfm"", """", ""開く(&O)"""   **条件 ( &traceON ) トレース出力 "&fileFilter = " + &fileFilter   ** 2018.09.26 2重引用符の重ね打ち( "" )を変数:&WQ に置き換えた   &fileFilter = &WQ + "," + &WQ + "フォーム (*.wfm)|*.wfm" + &WQ + ", " + &WQ + &WQ + ", " + &WQ + "開く(&O)" + &WQ   条件 ( &traceON ) トレース出力 "&fileFilter = " + &fileFilter  end  if ( &extention = "wfx" .and &mTargetFileType = "フォーム" )   ** 2018.09.26 2重引用符の重ね打ち( "" )を変数:&WQ に置き換えた   **&fileFilter = """,""フォーム (*.wfx)|*.wfx"", """", ""開く(&O)"""   &fileFilter = &WQ + "," + &WQ + "フォーム (*.wfx)|*.wfx" + &WQ + ", " + &WQ + &WQ + ", " + &WQ + "開く(&O)" + &WQ   条件 ( &traceON ) トレース出力 "&fileFilter = " + &fileFilter  end  if ( &extention = "wfm" .and &mTargetFileType = "表" )   &fileFilter = &WQ + "," + &WQ + "表 (*.tbl)|*.tbl" + &WQ + ", " + &WQ + &WQ + ", " + &WQ + "開く(&O)" + &WQ   条件 ( &traceON ) トレース出力 "&fileFilter = " + &fileFilter  end  if ( &extention = "wfx" .and &mTargetFileType = "表" )   &fileFilter = &WQ + "," + &WQ + "表 (*.tbx)|*.tbx" + &WQ + ", " + &WQ + &WQ + ", " + &WQ + "開く(&O)" + &WQ   条件 ( &traceON ) トレース出力 "&fileFilter = " + &fileFilter  end  ** 2018.09.26 2重引用符の重ね打ち( "" )を変数:&WQ に置き換えた  **&property = "&mOpenFileName,""ファイルを開く"",""" + &extention + &fileFilter  &property = "&mOpenFileName," + &WQ + "ファイルを開く"+ &WQ + "," + &WQ + &extention + &fileFilter  条件 ( &traceON ) トレース出力 "&property = " + &property  オブジェクト操作 @cmdファイルを開く{ 機能パラメータリスト3 = &property }  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 prcTargetWfmVariableGet( 整数 &hdl, 文字列 &variableList )  変数宣言 自動,文字列{ &icon, &title = "prcTargetWfmVariableGet( )", &msg }  変数宣言 自動,文字列{ &keyName, &cancel, ¯o }  変数宣言 自動,文字列{ &keyNameList, &cancelList, ¯oList }  変数宣言 自動,文字列{ &keyNameListDim[8], &cancelListDim[8], ¯oListDim[8] }  変数宣言 自動,文字列{ &mode, &modeList = "0/表示,2/訂正,4/行挿入,6/行追加,8/項目訂正,33/グループ検索,34/グループ値訂正,36/グループ追加" }  変数宣言 自動,文字列{ &string, &comma = #jis( #hex("2C") ), &plus = #jis( #hex("2B") ) }  変数宣言 自動,整数 { &i, &loop, &at, &count }  &loop = 8  繰り返し &i = 1, &loop   &keyNameListDim[ &i ] = #局所変数( &hdl, #対応文字列( &variableList, 1) , &i )   &cancelListDim[ &i ] = #局所変数( &hdl, #対応文字列( &variableList, 2) , &i )   ¯oListDim[ &i ] = #局所変数( &hdl, #対応文字列( &variableList, 3) , &i )   &msg = "&hdl = " + #str( &hdl )   &msg = &msg + "\n\n&mTargetWfmName = " + #文字置換( &mTargetWfmName, "\", "\\" )   &msg = &msg + "\n\n&keyNameList = " + &keyNameListDim[ &i ]   &msg = &msg + "\n\n&cancelList = " + &cancelListDim[ &i ]   &msg = &msg + "\n\n¯oList = " + ¯oListDim[ &i ]   *手続き実行 INFprcMsgPause( &icon, &title, &msg )  繰り返し終了  &loop = 8  繰り返し &i = 1, &loop   &keyNameList = &keyNameListDim[ &i ]   &cancelList = &cancelListDim[ &i ]   ¯oList = ¯oListDim[ &i ]   &at = 1   繰り返し ( #対応文字列( &keyNameList, &at ) )    &keyName = #対応文字列( &keyNameList, &at )    &cancel = #対応文字列( &cancelList, &at )    &mode = #対応文字列( &modeList, &i )    ¯o = #対応文字列( ¯oList, &at )    if ( #文字位置( &keyName, &plus ) )     &keyName = #文字置換( &keyName, &plus, &comma )     &count = 1     繰り返し ( #対応文字列( &keyName, &count ) )      &string = #initcap( #対応文字列( &keyName, &count ) )      &keyName = #文字置換( &keyName, &count, &string )      &count = &count + 1     繰り返し終了     &keyName = #文字置換( &keyName, &comma, &plus )    else     &keyName = #initcap( &keyName )    end    行追加 [キーの名前] = &keyName, [処理中止] = #num( &cancel ), [更新モード] = &mode, [コマンド] = ¯o, [formMode] = #num( &mode )    &at = &at + 1   繰り返し終了  繰り返し終了 手続き定義終了 手続き定義開始 prcLaunchRun( 整数 &hdl )  変数宣言 自動,文字列{ &icon, &title = "prcLaunchRun( )", &msg }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 0  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  手続き実行 prcデータ読み込み( &hdl )  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 prcデータ読み込み( 整数 &hdl )  変数宣言 自動,文字列{ &icon, &title = "prcLaunchRun( )", &msg }  変数宣言 自動,文字列{ &variableList = "VKmKeyNameKeyDownDim,VKmKeyCancelKeyDownDim,VKmKeyMacroKeyDownDim" }  変数宣言 自動,整数 { ©Status, &packStatus, &appendStatus, &eraseStatus }  変数宣言 自動,整数 { &traceON = #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "ALL" ) .or #対応番号( #uc2( #変数( "INFmTraceModuleNameList" ) ), "APL" ) }  変数宣言 自動,文字列{ &traceMsg = #cond( #変数( "INFmTraceFormPathAdd" ), &INFmMyWfmPath ) + &INFmMyWfmName + " hdl=" + #last( " " + #str( &hwindow ), 2 ) + ">" + &title }  &traceON = 0  条件 ( &traceON ) トレース出力 &traceMsg + "を実行開始しました"  &msg = "&hdl = " + #str( &hdl )  &icon = "i"  **手続き実行 INFprcMsgPause( &icon, &title, &msg )  手続き実行 prcTargetWfmSwitchGet( &hdl )  書き出し 枠組み, &mTempDataTblName, 終了状態 = ©Status  表 &mTempDataTblName  手続き実行 prcTargetWfmVariableGet( &hdl, &variableList )  &variableList = #文字置換( &variableList, "KeyDown", "SystemKeyDown" )  手続き実行 prcTargetWfmVariableGet( &hdl, &variableList )  終了 表 編集対象表  編集表 &INFmMyTblNum  解除 *  行削除 *, 圧縮, 終了状態 = &packStatus  読み込み 表, &mTempDataTblName, 終了状態 = &appendStatus, *  ファイル削除 &mTempDataTblName, 終了状態 = &eraseStatus  条件 ( &traceON ) トレース出力 &traceMsg + "を実行終了しました" 手続き定義終了 手続き定義開始 prcTargetWfmSwitchGet( 整数 &hdl )  ** 2025.08.22 流用 prcObjectNameList INF_ObjectList.kex  変数宣言 自動,文字列{ &formObjectName }  変数宣言 自動,文字列{ &objectName }  変数宣言 自動,整数 { &isKnjForm }  変数宣言 自動,整数 { &isObject }  &isKnjForm = 0  if ( #バージョン番号 >= 10 .and #lc2( #ファイル名( &INFmLibraryName, 4 ) ) = "cmx" )   &formObjectName = #半角( "フォーム" )   &objectName = #半角( "フォーム" )   手続き実行 INFMTDprcオブジェクト検査( &hdl, &formObjectName, &objectName, &isObject )   if ( &isObject )    &formObjectName = #半角( "フォーム" )   else    &formObjectName = #全角( "フォーム" )    **&isKnjForm = 1   end  end  ** 2025.08.22 流用 prcObjectNameList INF_ObjectList.kex  &targetVKmKeyDownLive = #局所変数( &hdl, "VKmKeyDownLive" )  &targetVKmSystemKeyDownLive = #局所変数( &hdl, "VKmSystemKeyDownLive" )  &targetVKmOnKey = #局所変数( &hdl, "VKmOnKey" )  ** 2025.08.22 @フォーム → &formObjectName  **オブジェクト操作 ハンドル = &hdl, @フォーム{ &targetEventKeyDown = キーダウン, &targetEventSystemKeyDown = システムキーダウン }  オブジェクト操作 ハンドル = &hdl, &formObjectName{ &targetEventKeyDown = キーダウン, &targetEventSystemKeyDown = システムキーダウン } 手続き定義終了