データエクスプローラー – プレビュー
4D v18 R6 では4D データエクスプローラーのプレビュー版が提供されます。4D デベロッパーまたは管理者は、Web ブラウザを使用してアプリケーションのデータを容易に閲覧することができるようになります。詳細についてはこちらのビデオをご覧になり、是非ご意見をお聞かせください。
Learn more and find examples in blog post >
4D WEB サーバー
スケーラブルなWEB セッション
4D v18 R6 では、4D Web サーバーにWebアプリケーションのパフォーマンスを飛躍的に改善する新しい種類のWebセッションが用意されています:スケーラブルWeb セッションです。
スケーラブルWeb セッションは複数のプロセスをプリエンプティブモードで管理することが可能です。これはつまりサーバーが複数のユーザーエージェントリクエストを同時に管理でき、またこれらのプロセス間でデータを共有することができるということです。
4D for iOS
プッシュ通知とデータ同期
プッシュ通知は、iOS アプリユーザーに周知をしてエンゲージ率を上げるためには最高の方法です。
4D v18 R6では、プッシュ通知でiOSデバイスのデータ同期をトリガーするように設定することができます。これによってユーザーインターフェースを即時にアップデートすることができるようになり、ユーザーが通知を受け取ったときにリアルタイムにデータをチェックできるようになります。
N 対 N リレーション
ストラクチャーセクション内でN対1リレーションから1対Nリレーションにアクセスし、またそれを公開することができるようになりました。つまり、N対Nリレーションを表示することができるということです。これにより今まで以上に使いやすいiOSアプリを配信することができるようになります。またこれには、リレーションをフィールドにドロップすることで相互作用を追加したり、あるいは1対Nリレーションをクリックすることで対応するレコード番号を表示するなどの追加の機能も備わっています。
バーコードスキャンのサポート
4D v18 R6では、バーコードスキャンサポートの追加により、検索が大幅に強化されています。これによりアプリをより汎用的な状況へと適応させることができます(例:倉庫の在庫管理など)。
具体的には、この機能により以下のようなことが可能になります:
- バーコードの値に応じてリストフォームをフィルターすることができます。レコードがバーコードの値に合致すれば、それによってレコードの詳細フォームが直接開きます。
- ディープリンクと組み合わせることで、値がURLスキームまたはリンクであるバーコードをスキャンするだけで、特定のリスト/詳細フォームを表示することができるようになります。
新しいパラメーターフォーマット: 署名フォーマットとバーコードフォーマット
アプリをより直感的に使用できるようにするため、4D v18 R6 では4D for iOSに新しいパラメーターフォーマットを追加しました:
- 署名フォーマット: 指紋で署名をし、その署名をアプリから直接サーバーへと送信することができます。これにより例えばパッケージを配信したあとにカスタマーの署名を収集するのに有用です。
- バーコードフォーマット: バーコード(EAN13、EAN8、QRコード、など)に任意の値を割り当て、それをアクションフォームからスキャンすることで値を容易に取得することができます。これは例えばQRコードをアプリから読み込むことで商品参照を追加するためなどにはとても便利な方法です。
Eメール
OAuth 2.0 のサポート
OAuth 2.0 とは、ユーザーの身元情報や資格情報を発露することなくデータへのアクセスを提供することで、ユーザー情報を保護するための認証/承認規格です。最近ではセキュリティの強化のためにメールサーバーもこの規格へと移行し始めています。
4D v18 R6以降、4D では接続にOAuth 2.0 認証を設定する方法を提供しています。IMAP、SMTP、そしてPOP3 トランスポーターは今後OAuth 2.0 プロトコルをネイティブにサポートするようになります!
IMAP フラグを管理
IMAP プロトコルでは、追加の情報を管理するために、フラグのリストをメッセージに割り当てることができます。4D v18 R6 では、IMAP フラグを追加/削除するための複数の機能がIMAP トランスポーターオブジェクトに追加されました。
IMAP プロトコルでは、以下の5つのフラグを管理することができます:
- \Seen: メッセージは既に開封されています(既読)。
- \Answered: メッセージは既に返信済みです。
- \Flagged: メッセージは緊急/特殊な注意のために”フラグ付き”とマークされています。
- \Deleted: メッセージは”削除予定”とマークされています。実際の削除は、expunge() 関数が呼ばれたとき、メールボックスを切り替えたとき、あるいは接続を閉じたと時に行われます。このフラグはdelete() 関数によって既に実装されています。
- \Draft: メッセージは作成が完了していません(下書きとマークされています)。
Eメールを特定のメールボックスに保存する
あなたのユーザーが、4D からメールを送信した後にOutlookやAppleのメールソフトの”送信済み”ボックスに送信したメールのコピーを表示してほしいような場合のために、4D v18 R6 ではその答えを用意しています。4Dでは送信後にEメールのコピーを保存することができます:
- 最初に、2つのトランスポーターを作成します。Eメールをクライアントに送信するSMTP トランスポーターと、Eメールを自分のメールサーバーにアップロードするためのIMAP トランスポーターです。
- SMTP でEメールを送信後、IMAP トランスポーターのappend() メソッドを使用してください。
4D ランゲージ
文字列比較の改善
4D では文字列を検索し比較するための多用なツールを提供しています。デベロッパーはこれをコンテキストや状況に応じて適応することができます。
4D v18 R6 では、Position コマンドにアップデートが行われ、新しいCompare strings コマンドが追加されました:
- Position: このコマンドでは”大文字と小文字を区別”や”アクセントの有無を区別”、または日本語のひらがな/カタカナを区別、そして全角半角を区別するなどのより多くの比較指定に加え、”単語全体を指定”などの指定も可能です。
- Compare strings: この新しいコマンドを使用すると、Position コマンドに追加されたものと同じオプションを使用して文字列を比較することができるようになります。このコマンドはデータベース設定で定義された言語設定に基づいています。これは例えば特定の並び替えを許可する場合などに特に有用です。
コードエディター
ファンクションのプロトタイプと、短い説明を表示する
エディター内でコードを書くのをシンプルにかつ容易にするため、コードエディター内ではファンクションのプロトタイプと短い説明が表示されるようになりました。
サジェストリストはコード補完(+短い説明)とプロトタイプを表示するため、コードをより速く、正確に書けるようになります。またファンクションを書いている間、4D はファンクションのプロトタイプとそのファンクションの短い説明を表示します。また現在入力している引数もハイライトするようになります。
4D デバッガ
より簡単に多くの情報を
4d v18 R6 ではコードをトレースし解析するのを容易にするためのオプションや追加の情報を提供します。
- 引数: コードをデバッグするためには、メソッドや関数の入力/出力引数とその型を知っているということは大事です。今後はデバッガウィンドウの左上に宣言行が表示されるようになります。呼び出しチェーンエリアでは、引数の型の表示(あるいは非表示)を選択することができます。
- コメント: メソッドまたは関数の説明を手助けするために良く使われる手法は、コードブロックの最初にコメントを入れることです。これらのコメントはデバッガ内で見ることができるようになりました。
4D View Pro
計算の終了を検知
4D v18 R6では、計算が完了したかどうかを知ることができる、二つの新しいイベントが追加されました: On VP Range Changed と on Timer event です。
これは例えば、たくさんのフォーミュラを含んだ大きな4D View Pro を読み込む際、計算が完了するまでに少し時間がかかりそうな場合などに有用です。あるいはオフスクリーンエリアを使用していて、ドキュメントをPDF またはExcel フォーマットに書き出したいため、その前に計算が完了するまで待つ必要がある場合などにも有用です。
検索と置換
4D View Pro ドキュメントを初期化する際に、特定の値やタグを検索し、それを4Dから発行されたデータで置き換える必要があることがあります。VP Find コマンドを使用すればごく簡単にできるようになります。このコマンドを使用すれば、データやフォーミュラやタグの検索をし、シート全体またシートの特定の部分にだけそれらを置き換えることができます。
リストボックス
編集中のセル内でのクリックを管理
4D v18 R6 以降、リストボックスのセルが編集中かどうかに関わらず、on clicked フォームイベントが発生するようになりました。これによりデベロッパーはよりコントロールをしやすくなり、インターフェースを改善することができます。これは例えば、編集中のセルでコンテキストメニューを使用して入力可能な値を表示するためには有用です。あるいは行が選択されていれば、その特定の行またはセルに対してカラー選択を提示するなどということも可能です。
互換性のため、データベース内にon clicked イベント中に実行されるコードがすでにある場合、セルが編集中にクリックが発生したときにはコードの実行を止めたい場合があるでしょう。この場合、事前にis editing text 関数を使用するだけでセルの編集状態をテストすることができます。
4D Write Pro
UIの改善
ドキュメントの作成をより速く、より簡単にするために、4D v18 R6 ではツールバーとサイドバーに新たな改善が加えられます。次のようなことが可能になります:
- テキストをインクリメント/デクリメントする
- ルーラーをコピー/ペーストする
- 段落の背景色を変える
- 単語のスタイル(大文字、小文字、など)を変える