4D v16 R5 の新機能

Deeplからの自動翻訳

過去のR-leasesの新機能を取得する > R-leasesの新機能を取得する

セキュリティ

4Dサーバーのセキュリティ強化

4Dは、クライアントとサーバー間の暗号化通信を可能にするTLS v1.0, TLS v1.1, TLS v1.2をサポートします。4D v16 R5から、デフォルトの最小サポートバージョンはTLS v1.2で、それ以前のバージョンは安全でない可能性があるため、拒否されます。4Dサーバーのセキュリティを高めるには、4D v16 R5へアップグレードするだけです。Webページやメソッドの変更は必要ありませんし、クライアント・サーバーアプリケーションも同様です。

しかし、TLS v1.2をサポートしていない古いブラウザ(またはツール)をサポートしたい場合、Get database parameterSET DATABASE PARAMETERコマンドの新しいMin TLS versionselectorで、セキュリティレベルを下げることができます。

ダイジェスト生成コマンドとSHA-2のサポート

ダイジェスト関数は、データ交換や比較の際に、データの整合性をチェックするのに便利です。Generate digestコマンドは、SHA-2をサポートするように改良されました。SHA-2ファミリーの2つの新しいアルゴリズムに対応しています。SHA-256 と SHA-512 です。構文は同じですが、2つの新しい定数が追加されました。SHA256 digest SHA512 digestです

ウェブユーザーのログインのためのハッシュとパスワードの検証

ハッシュ化機構は、パスワードを保存するための理想的な方法です。ハッシュ化されたパスワードを生成し、検証するために2つの新しいコマンドが作成されました。パスワードハッシュの生成とパスワードハッシュの検証です。どちらもbcryptアルゴリズムに基づいており、設計上低速です。このため、ブルートフォースアタックの速度が遅くなり、影響を最小限に抑えることができます。

プリエンプティブプロセスのためのその他のコマンド

プリエンプティブプロセスでメソッドを実行することは、アプリケーションがより高速になり、より多くの接続ユーザーをサポートできることを意味します。4D v16 R5では、20以上の既存のコマンドが強化され、プリエンプティブプロセスで使用できるようになりました。デフォルトでは、プロジェクトメソッドは、協調モードで実行されることに留意してください。もし、プリエンプティブモードに切り替えたい場合は、メソッドのプロパティでExecution mode propertyのオプション「can be run in preemptive mode」をチェックする必要があります。

JSONポインタの管理

JSONポインターは、JSONドキュメントを再利用可能な小さなパーツに分割し、構造化するのに便利です。

4Dは、新しいJSON resolve pointersコマンドでJSONポインターをサポートするようになりました。これは、パラメータとして渡されたオブジェクトで見つかったJSONポインタを解析し、成功ステータス、結果値、潜在的なエラーのリストを含むオブジェクトを返します。

未定義値の処理

4D言語では、式のどこでも未定義値を受け入れるようになったため、オブジェクト記法での未定義プロパティや値の使用が簡素化されました。また、変数に未定義値を代入すると、その変数には型に応じたデフォルト値が設定されます。つまり、存在しないオブジェクトのプロパティを読み込んでも、エラーが発生したり、コードの実行が止まったりすることはないのです。

フォーム間のデータ受け渡し

オブジェクトをフォームにバインドして、 Form コマンドで内部的に使用することができます。必要なことは、DIALOGコマンドを使って、オブジェクトのパラメータをフォームに渡すことだけです。このオブジェクトのどのプロパティも、Formコマンドを使って、フォーム内から利用できるようになります。同じことが、サブフォームエリアにもできます。

リストボックスのヘルプ

4D v16 R5では、リストボックスのセルにヘルプヒントを表示するための2つのコマンドが強化されました。まず、OBJECT SET HELP TIPは、リストボックスをサポートするように拡張されました。また、LISTBOX GET CELL POSITIONコマンドは、2つの新しいオプションのパラメータ(xとyの位置、ピクセル単位)をサポートし、対応する列と行の番号を返します。

4D Write Pro

ヘッダーとフッターのプログラムによる管理

新しいコマンドにより、4D Write Proのヘッダーとフッターをプログラムで管理し、テンプレートに基づいた他のドキュメントを作成することができます。これらのコマンドは、2つのカテゴリに分かれています。

  • ドキュメント内のヘッダー、フッター、ボディの参照を取得するコマンドで、関連する範囲を取得したり、特定のセクションのドキュメントを作成するために使用できます。これらのコマンドは次のとおりです。WP Get headerWP Get body WP Get footer
  • カーソルを特定の位置に移動させるコマンド。WP SET FRAMEは、カーソルを特定のフレームに設定するコマンドです。

ピクチャーエクスプレッションのサポート

4D Write Proは、ピクチャーエクスプレッションをサポートするようになりました。4D v16 R5から、ST INSERT EXPRESSIONコマンドが拡張され、画像を返すあらゆる式をサポートするようになりました。式は、4D変数、フィールド、関数、ユーザー定義メソッドになります。

式で4Dメソッドを使用する前に、まずSET ALLOWED METHODSコマンドを使用して、このメソッドの使用を有効にする必要があることに留意してください。

フルサイズの背景画像

4D Write Proでは、新たに追加された画像のクリッピングとオリジン用の背景スタイル属性により、ページ全体を埋め尽くす背景画像を作成することが可能になりました。画像は、ボーダー、パディング、コンテンツだけでなく、紙面にもクリッピングできるようになったことが利点です。

この属性は、以下の方法で制御できます。

  • 4D言語WP SET ATTRIBUTESコマンドを使用し、背景画像のクリッピングやオリジンに新しいwk paper box値を設定することができます。
  • 標準的なアクションINVOKE ACTION コマンドを使用するか、デザインモードでは他の標準アクションと同様に使用することができます。
  • 4D Write Proウィジェット。背景画像 “と “ドキュメント “の項目を選択すると、クリップと原点のオプションに新しいペーパーボックスのオプションが使用できるようになります。

4D view Pro: 自動的な行の高さ

4D View Proは、すでに配列ベースのリストボックスの行の高さを変更することができます。4D v16 R5では、完全に自動化された行の高さをサポートしています。これは、リストボックスが各行の高さをその内容に適応させ、あらゆる種類の折り返し問題を避けて、テキストや画像を完全に表示できるようにすることを意味します。

プロパティ・リストに3つの新しいプロパティが追加されました。Automatic Row Height」、「Min Row Height」、「Max Row Height」です。これらの設定により、開発者はリストボックスが自動行高さモードを使用するかどうか、また、許容される最小行高さと最大行高さを定義することができます。

これらの設定は、LISTBOX SET PROPERTYコマンドと新しいコマンドLISTBOX SET AUTO ROW HEIGHT を使用してプログラム的に管理することもできます。

カスタムサーバー管理ダイアログ

4D Webサーバーの詳細情報

新しいWEBサーバー情報取得コマンドは、4D Webサーバーの詳細情報を取得します。このコマンドには、オプションでwithCacheInfoという入力パラメータがありWebサーバーのキャッシュ情報が必要な場合に便利です。この属性は、デフォルトで “False “に設定されています。

プロセスアクティビティの取得コマンドの改良

プロセスアクティビティの取得コマンドは、結果の解析がより簡単になるように改良されました。また、新しいsystemID属性が追加され、ユーザー、4D、スペアなど、あらゆるプロセスを一意に識別できるようになりました。

もっと知りたいですか?4D v16 R5に関する全てのブログ記事を読む!