4D for iOSは、スマートフォン上のイベントとリンクした4Dメソッドを自動的に呼び出すアクションを定義する機能を提供します。例えば、4Dコードを実行したり、パラメータを使ってアプリのコンテンツを管理・編集したり、最近では、ソートアクションを使ってアプリのコンテンツを簡単にソートしたりすることができます!
ソート条件とアクション・パラメーターの定義は、より簡単に、より速く、より効率的に作業できるように改善されました。
アクションパラメータ
ご存知のように、4D for iOSは、開発プロセスを容易にするために、様々なタイプのプリセットアクションを提供します。
- 追加
- 編集
- 削除
- 共有
- ソート
新機能は?
ソート条件
ソートアクションについて、ドロップボックスを使って簡単にソート基準を変更できるようになりました。これにより、利用可能なフィールドの中から別のフィールドを選択することができます。
アクションのパラメータをフィールドにリンク
プリセットアクションのAdd …と Edit …の場合、Action Parametersパネルの下部に、パラメータが既存のフィールドにリンクされていることを示すメッセージが表示されます。
アクションパラメータをフィールドにリンクさせる理由は?
パラメータをフィールドにリンクすることで、MobileAppServerコンポーネントは、On Mobile App Actionデータベースメソッドの4Dコードを簡素化するのに役立ちます。
注意点として、4Dで構築されたMobileAppServerコンポーネントは、4Dモバイルアプリのバックエンドコーディングをスピードアップするための様々なユーティリティメソッドにアクセスすることができます。
今回のケースでは、汎用的なコードを使ってdataClassやエンティティを取得したり、パラメータやフィールドを汎用的にマッピングしたりすることができるようになります。つまり、もう特定のコードを書く必要はないのです!
以下は、プリセットアクションの追加とMobileAppServerコンポーネントを使用して取得できるOn Mobile App Actionの例です。
#DECLARE($request : Object)->$response : Object $action:=MobileAppServer.Action.new($request) $response:=New object("success"; False) Case of : ($action.name="addEmployees") // add@ var $entity; $status : Object $entity:=$action.newEntity() $status:=$entity.save() // save the entity If ($status.success) $response.success:=True // notify App that action success $response.dataSynchro:=True // notify App to refresh the selection $response.statusText:="Employee added" Else $response.statusText:="Failed to add" // $status.statusText $response.errors:=$status.errors End if End case
注意点として、フィールドにリンクされたパラメータを追加するには、アクションパラメータのパネルの下部にあるプラスボタンの矢印をクリックします。
また、データベースにないパラメータは、メニューのNew parameteritemをクリックして自由に作成することができます。
4D for iOSは、パラメータ名が既存のフィールド名と一致するかどうかを自動的に検出します。そして何より、4D for iOSは、オートコンプリートを助け、どのフィールドが利用可能で、あなたのパラメータとリンクしているかを教えてくれます。一度リンクされると、全てのパラメータのプロパティは、リンクされたフィールドタイプに応じて自動的に適応されます。
すでにアクションを使用していた人は、もちろんすべてのロジックが保持されます。
この機能は、とてもシンプルに見えますが、4D for iOSアプリの作成プロセスをより快適にしてくれることを、私は完全に保証します
詳細は、4Dフォーラムにコメントし、専用ドキュメントを参照してください。