メインコンテンツまでスキップ
バージョン: 開発中

METHOD RESOLVE PATH

METHOD RESOLVE PATH ( path ; methodType ; ptrTable ; objectName ; formObjectName {; *} )

引数説明
pathText解決するパス
methodTypeIntegerオブジェクトタイプセレクター
ptrTablePointerテーブル参照
objectNameTextフォームまたはデータベースメソッド名
formObjectNameTextフォームオブジェクト名
*演算子指定時 = コンポーネントで実行されたとき、コマンドはホストデータベースに適用される (コンポーネントのコンテキスト以外ではこの引数は無視されます)

このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。

説明

METHOD RESOLVE PATHコマンドはpath引数に渡された内部パス名を解決し、methodTypeptrTableobjectName、そして formObjectName引数にそれぞれ情報を返します。

methodType 引数はメソッドのタイプを示す値を受け取ります。この値をDesign Object Accessテーマの定数と比較することができます:

定数コメント
Path database method倍長整数2指定したデータベースメソッド名。以下のメソッドのリスト:
[databaseMethod]/onStartup
[databaseMethod]/onExit
[databaseMethod]/onDrop
[databaseMethod]/onBackupStartup
[databaseMethod]/onBackupShutdown
[databaseMethod]/onWebConnection
[databaseMethod]/onWebAuthentication
[databaseMethod]/onWebSessionSuspend
[databaseMethod]/onServerStartup
[databaseMethod]/onServerShutdown
[databaseMethod]/onServerOpenConnection
[databaseMethod]/onServerCloseConnection
[databaseMethod]/onSystemEvent
[databaseMethod]/onSqlAuthentication
[databaseMethod]/ onHostDatabaseEvent
[databaseMethod]/ onRESTAuthentication
[databaseMethod]/ onMobileAppAuthentication
[databaseMethod]/ onMobileAppAction
Path project form倍長整数4プロジェクトフォームメソッドとすべてのフォームオブジェクトメソッドのパス。例:
[projectForm]/myForm/{formMethod}
[projectForm]/myForm/button1
[projectForm]/myForm/mylist
[projectForm]/myForm/button1
Path project method倍長整数1メソッド名。
例: MyProjectMethod
Path table form倍長整数16テーブルフォームメソッドとすべてのフォームオブジェクトメソッド。例:
[tableForm]/table_1/Form1/{formMethod}
[tableForm]/table_1/Form1/button1
[tableForm]/table_1/Form1/mylist
[tableForm]/table_2/Form1/mylist
Path trigger倍長整数8データベーストリガーのパス。例:
[trigger]/table_1
[trigger]/table_2

注意: コマンドはあ、実際にメソッドがデータベース/プロジェクト内に存在するかどうかはチェックしません。エラーは無効なテーブル名が渡されたときにのみ生成されます。

ptrTable 引数は、パスがテーブルフォームメソッドやトリガーを参照する場合、データベーステーブルへのポインターを受け取ります。

objectName 引数は以下のいずれかを受け取ります:

  • パスがテーブルフォームまたはプロジェクトフォームを参照する場合、フォーム名
  • パスがデータベースメソッドを参照する場合、データベースメソッド名

formObjectName 引数は、パスがオブジェクトメソッドを参照する場合、フォームオブジェクト名を受け取ります。

コマンドがコンポーネントから実行された場合、デフォルトではコンポーネントメソッドに関する情報を返します。* 引数を渡すと、ホストデータベースメソッドに関する情報を返します。

例題 1

データベースメソッドパスの解決:

 var $methodType : Integer
 var $tablePtr : Pointer
 var $objectName : Text
 var $formObjectName : Text
 
 METHOD RESOLVE PATH("[databaseMethod]/onStartup";$methodType;$tablePtr;$objectName;$formObjectName)
  // $methodType: 2
  // $tablePtr: Nil ポインター
  // $objectName: "onStartup"
  // $formObjectName: ""

例題 2

テーブルフォームのオブジェクトメソッドのパス解決:

 var $methodType : Integer
 var $tablePtr : Pointer
 var $objectName : Text
 var $formObjectName : Text
 
 METHOD RESOLVE PATH("[tableForm]/Table1/output1/myVar1";$methodType;$tablePtr;$objectName;$formObjectName)
  // $methodType: 16
  // $tablePtr: -> [Table1]
  // $objectName: "output*1"
  // $formObjectName: "Btn*1"

参照

METHOD Get path