4D v19On Mobile App Action データベースメソッド |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19
On Mobile App Action データベースメソッド
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| $1 -> On Mobile App Action データベースメソッド -> 戻り値 | ||||||||
| 引数 | 型 | 説明 | ||||||
| $1 | オブジェクト |
|
モバイルアプリケーションから渡された情報 | |||||
| 戻り値 | オブジェクト |
|
アクションステータス&データ同期 | |||||
On Mobile App Action データベースメソッド 特定のセッションにおいて、モバイルアプリケーションからリクエストされたアクションを管理するためのものです。
注: モバイルアプリケーションはOn Mobile App Authentication データベースメソッド によって認証されている必要があります。
このデータベースメソッドは、モバイルアプリケーションがアクションリクエストを送信したとき、4D によって呼び出されます。
注: 詳細な情報については、4D for iOS のドキュメント を参照してください。
このデータベースメソッドはモバイルアプリケーションから必要な情報を$1 引数(オブジェクト)として受け取り、アクションのステータスを$0 引数(オブジェクト)として返す必要があります。以下の引数を宣言して初期化しなければなりません:
//On Mobile App Action データベースメソッド
C_OBJECT($0;$1)
// ...メソッドのコード
$0:=New object //返すオブジェクトの作成を忘れないこと$1 オブジェクト引数に受け取られるプロパティは以下の通りです:
| プロパティ名 | 型 | 詳細 | |
| action | テキスト | アクショッン名 | |
| session | オブジェクト | セッション情報 | |
| id | テキスト | セッション識別ID | |
| ip | テキスト | セッションIP | |
| application | オブジェクト | モバイル認証情報 | |
| id | テキスト | アプリケーションID | |
| userInfo | テキスト | ユーザー情報 | |
| context | オブジェクト | リクエストされたアクションのコンテキスト引数 | |
| dataClass | テキスト | 4D のデータクラス名 | |
| entity.primaryKey | テキスト | 倍長整数 | (オプション;選択されたエンティティに関連するアクションの場合に返されます) エンティティのプライマリキー | |
| entity.relationName | テキスト | (オプション;リンクされたエンティティに関連するアクションの場合に返されます) N対1リレーション名 | |
| parent.primaryKey | テキスト | 倍長整数 | (オプション;リンクされたエンティティに関連するアクションの場合に返されます) 親エンティティのプライマリキー | |
| parent.relationName | テキスト | (オプション;リンクされたエンティティに関連するアクションの場合に返されます) 1対Nリレーション名 | |
| parent.dataClass | テキスト | (オプション;リンクされたエンティティに関連するアクションの場合に返されます) 親エンティティのデータクラス |
情報の処理後、データベースメソッドは、以下のプロパティを持つオブジェクトを$0 に返す必要があります:
| プロパティ名 | 型 | 詳細 |
| success | ブール | アクションが正常に処理された場合にはTrue。それ以外の場合にはFalse |
| statusText | テキスト | (任意) モバイルアプリケーションに表示するメッセージ。success=true であれば成功とのメッセージを表示し、success=false であれば、このメッセージを使用してユーザーに詳細な説明を提供することができます。 |
| dataSynchro | ブール | エンティティまたはテーブルのセレクションが更新される必要がある場合にはTrue、そうでない場合にはFalse。Trueの場合には、モバイルアプリケーションは自動的にデータ同期をトリガーします。 |
// On Mobile App アクション
// 2つのアクションが定義されています: "done" と "postponeAll"
C_OBJECT($0)
C_OBJECT($1)
C_OBJECT($o;$context;$request;$result)
$request:=$1 //モバイルアプリから提供された情報
$context:=$request.context
Case of
:($request.action="done")
$o:=New object(\
"dataClass";$context.dataClass;\
"ID";$context.entity.primaryKey;\
"CompletePercentage";100)
$result:=modifyStatus($o) // エンティティのステータスを変更するプロジェクトメソッドを呼び出し
:($request.action="postponeAll")
$o:=New object("dataClass";$context.dataClass)
$result:=postponeAll($o) // データクラスの全てのエンティティを延期するプロジェクトメソッドを呼び出し
Else // 未知のリクエスト
$result:=New object("success";False)
End case
$0:=$result // モバイルアプリに返される情報
プロダクト: 4D
テーマ: データベースメソッド
初出: 4D v17 R5
ランゲージリファレンス ( 4D v19)
ランゲージリファレンス ( 4D v19.1)
コメントを追加