データエクスプローラー – プレビュー
4D v18 R6 は、4D Data Explorer のプレビュー版を提供します。4D開発者または管理者は、Webブラウザで簡単にアプリケーションデータを探索できるようになりました。詳細はこちらのブログポストをご覧ください。
4D WEBサーバー
スケーラブルなウェブセッション
4D v18 R6で、4D Web Serverは、Webアプリケーションのパフォーマンスを大幅に向上させる新しいタイプのWebセッションを提供します: スケーラブルWebセッションです。
スケーラブルウェブセッションは、プリエンプティブモードで複数のプロセスを処理することができます。つまり、複数のユーザーエージェントのリクエストを同時に処理することができ、これらのプロセス間でデータを共有することができます。
iOS用4D
データ同期を伴うプッシュ通知
プッシュ通知は、iOSアプリのユーザーを魅了し、情報を提供し続けるための完璧な方法です。
4D v18 R6では、iOSデバイスの同期をトリガーするプッシュ通知を設定することができるようになりました。これにより、ユーザーインターフェースが即座に更新され、通知を受け取ったユーザーが確認できるリアルタイムのデータを提供することができます。
多対多関係
構造セクションで、Many to OneリレーションからOne to Manyリレーションにアクセスし、公開することができるようになりました。つまり、Many toManyリレーションを表示できるようになり、これまで以上に人間工学に基づいたiOSアプリを提供できるようになります!(※)。フィールドにリレーションをドロップしてインタラクションを追加したり、One to Manyリレーションをクリックして対応するレコード番号を表示するなどの機能が追加されます。
バーコードスキャンのサポート
4D v18 R6では、バーコードスキャンのサポートが追加されたことにより、検索機能が大幅に強化されました。これにより、現場の状況に合わせたアプリが可能になります(例えば、倉庫の在庫管理ニーズなど)。
より専門的に言えば、この機能で可能なことは
- コードの値によってリストフォームをフィルタリングする。バーコードの値に一致するレコードがあれば、そのレコードの詳細フォームを直接開くことができます。
- ディープリンクと組み合わせると、URLスキームやユニバーサルリンクの値を持つバーコードをスキャンするだけで、特定のリストや詳細フォームを表示することができます。
新しいパラメータフォーマット。署名とバーコード
4D v18 R6では、アプリケーションをよりインタラクティブにするために、4D for iOSに新しいパラメータフォーマットが追加されました。
- 署名フォーマット:指先で署名して、アプリからサーバーに直接署名を送信します。これは、例えば、荷物の配達後に顧客のサインを集めるのに便利です。
- バーコードフォーマット:任意の値をバーコード(EAN13、EAN8、QRコードなど)に関連付け、Actionフォームからスキャンするだけで抽出できるようにします。これは、例えば、アプリから直接QRコードをスキャンしてアイテムリファレンスを追加するような、非常に便利な方法です。
メール
OAuth 2.0のサポート
OAuth 2.0は 、認証と認可の標準規格で、ユーザーの身元や認証情報を明らかにせずにデータへのアクセスを提供し、ユーザーデータを保護するものです。最近、メールサーバーは、セキュリティを高めるためにこの規格に移行し始めています。
4D v18 R6から、接続にOAuth 2.0認証モードを設定する方法を提供しています。IMAP、SMTP、POP3トランスポーターは、OAuth 2.0プロトコルをネイティブにサポートするようになりました!4D v18 R6では、OAuth 2.0認証モードを設定できるようになりました。
IMAPフラグの管理
IMAPプロトコルは、追加情報を管理するために、フラグのリストをメッセージに関連付けることができます。4D v18 R6では、IMAPトランスポーターオブジェクトに、IMAPフラグを追加・削除するための関数を追加しました。
IMAPプロトコルでは、5つのフラグを管理することができます。
- \¦メッセージが読まれた。メッセージは読み込まれました。
- \¦Answered:メッセージに応答しました。
- \¦フラグ付き。メッセージに緊急/特別な注意のための “フラグ “が設定されています。
- \¦消去しました。メッセージに “削除” のマークが付けられました。削除はexpunge()関数が呼ばれたとき、メールボックスを切り替えたとき、または接続を閉じたときに有効に なります。このフラグはdelete()関数で既に付加されています。
- \Όταμμαメッセージの作成が完了していない(下書きとしてマークされている)。
特定のメールボックスにEメールを保存する
4Dからメールを送信する際、OutlookやApple Mailで表示される「送信済み」メールボックスにコピーを取得することを期待している顧客のために、4D v18 R6ではその答えを用意しています。送信後にメールのコピーを保存するために
- まず、2つのトランスポーターを作成します。クライアントにメールを送信するためのSMTPトランスポーターと、メールサーバーにメールをアップロードするためのIMAPトランスポーターです。
- SMTPでメールを送信した後、IMAPトランスポーターのappend()関数を使用します。
4D言語
文字列比較の改良
4Dは、開発者が遭遇するコンテキストや状況に適応できる、文字列の検索や比較のための非常に多機能なツールを提供します。
4D v18 R6では、Positionコマンドのアップデートと、新しいCompare stringsコマンドが追加されました。
- 位置:このコマンドは、「大文字と小文字を区別する」や「アクセントを区別する」、日本語(ひらがな/カタカナ)、文字幅も検索オプションとして「単語全体」とともに利用できるなど、比較能力が向上しています。
- 文字列の比較:この新しいコマンドでは、位置コマンドに追加されたものと同じオプションで文字列を比較することができます。このコマンドは、データベースの設定で定義された言語に基づいています。これは、例えば、特定のソートを可能にするために、本当に便利です。
コードエディター
関数のプロトタイプと簡単な説明の表示
エディタでのコード作成を簡単にするために、関数のプロトタイプと短い説明がコードエディタに表示されます。
サジェストリストには、インテリジェントなコード補完(短い説明付き)とプロトタイプが表示されるので、より迅速かつ正確にコードを記述することができます。また、関数を書いている間、4Dは関数のプロトタイプと簡単な説明を表示します。また、現在完成しているパラメータもハイライト表示されます。
4Dデバッガ
より多くの情報を自由に使えるように
4D v18 R6には、新しいオプションと追加情報が含まれており、コードのトレースと解析がより簡単になります。
- パラメータメソッドや関数の入出力パラメータとその型を知ることは、コードのデバッグに欠かせません。宣言行は、デバッガーウィンドウの左上に表示されます。コールチェーンペインでは、パラメータの型を表示する (またはしない) かどうかを選択できます。
- コメントメソッドや関数の説明を容易にするために、コードブロックの先頭にコメントを記述することが一般的に行われています。このコメントは、デバッガで表示されるようになりました。
4Dビュープロ
もう、終わりですか?
4D v18 R6には、計算が完了したことを知ることができる2つの新しいイベントが搭載されています。 VP Range Changedと Timerイベントです。
例えば、多くの数式を含む大きな4D View Proをロードし、計算が完了するまでに時間がかかる場合に便利です。また、オフスクリーンエリアを使用して、例えば、ドキュメントをPDFやExcel形式でエクスポートする場合、これらの計算の終了を待ってから実行する必要があります。
検索と置換
4D View Proのドキュメントを初期化する際に、いくつかの値やタグを検索して、4Dから発行されたデータに置き換える必要がある場合があります。VPの検索コマンドを使えば、簡単にできます。このコマンドのおかげで、データ、数式、タグを検索し、シート全体または特定の部分のみを置換することができます。
リストボックス
編集したセル内のクリックを管理
4D v18 R6から、セルが編集されているかどうかに関わらず、クリックされた フォームのイベントがトリガーされるようになり、コントロールが向上し、インターフェイスが改善されました。これは、例えば、編集中のセルに対して、コンテクストメニューを使って可能な値を表示させたい場合に便利でしょう。行が選択されると、その行やセルに対して色の選択を提供することができます。
互換性については、on clickedイベントで実行されるコードをすでに持っている場合、編集中のセル内でクリックが発生したときにそのコードの実行を停止させたい場合があります。このような場合は、あらかじめis editing text関数でセルの状態をテストしておけばよいでしょう。
4D Write Pro
UIの改善
4D v18 R6では、より速く、より簡単にドキュメントを作成できるように、ツールバーとサイドバーを新たに強化しました。以下のことが可能になりました。
- テキストの増加、減少
- ルーラーをコピー/貼り付け
- 段落の背景色を変更する
- 単語のスタイルを変更 (大文字、小文字、その他)