
AI — 4D Vector
データ内で直接意味をモデル化する
AI対応ベクターを新しい4D.Vectorオブジェクトに直接格納して、よりスマートで応答性の高いエクスペリエンスの構築を開始します。これらは単なる数字ではなく、比較のために設計された、意味の圧縮表現です。そして、それがすべての違いを生み出します。
正確な単語を検索するのではなく、ユーザーが実際に意味することに応答します。ユーザーが「employee exit」と入力した時に、正しいHRポリシーを提供します。「プリンタサービス」のような漠然としたクエリから、適切なサプライヤ契約を抽出します。表現が大きく異なる場合でも、一貫性のない製品リストで重複に近いものを検出します。
新しい4D.Vectorクラスは、コサイン類似度、ドット積、ユークリッド距離などの組み込み演算をアプリ内で使用できます。これらを使用すると、文字列の一致だけでなく、概念の類似性によってレコードのランク付け、フィルター処理、およびグループ化を行うことができます。
また、クラスはメモリ効率とクラス互換性の両方を備えているため、スキーマに直接統合されます。型指定されたフィールドに追加し、高速なローカル比較を実行し、ミドルウェアを完全にスキップします。

4D AI KIT
ひとつのメソッドコールで自然言語からベクトルを生成
ユーザーがすでに入力している単語(クエリ、説明、メモ、ログ)から始めて、アプリが推論できるものに変換します。OpenAIEmbeddingsAPI.create(),というひとつのメソッドコールで、プレーンテキストからセマンティックベクトルを生成します。
これらはストリングではなく、エンコードされた意味です。これらを4D.Vectorフィールドに格納してすぐに使用できます。目的別の結果のランク付け、関連項目の照合、コンテキストの分類など、すべて4Dコード内から実行できます。
追加の設定は必要ありません。APIの組み込みもありません。OpenAIのような互換性のあるクラウドベースのAIサービス、またはOllamaのようなローカルで動作するAIモデルに接続するだけで、現在の主要な製品を動かしているのと同じAIインフラストラクチャを使い始めることができます。

ORDA
データモデルにライフサイクル認識を追加
変更がデータベースに到達する前に対応します。新しいonTouch()イベントとエンティティコンスタクラタのサポートにより、エンティティがメモリ内で作成、ロード、または変更された瞬間にビジネスロジックを実行できるようになりました。
つまり、エンティティがインスタンス化されるとすぐに値を初期化し、データにアクセスするときにカスタム検証ルールを適用し、リアルタイムで関連するフィールドを自動的に調整できます。安全策を待つのではなく、相互作用に基づいて行動します。
これを使用して、フィールドの自動入力、タイムスタンプの適用、アクセス許可の確認、またはシステム内でデータが入力または移動された正確な瞬間に依存ロジックをトリガーします。
また、これらのライフサイクルフックはデフォルトでサーバー側で実行されるため(オプションでクライアント側をサポート)、拡張性と安全性の両方を備えた動作を一元的に制御できます。

データベース
クラスをオブジェクトフィールドにバインドし、スケーリング用に構築されたUUIDを生成する
ストラクチャにデータを保持するだけでなく、ロジックを適用します。ストラクチャエディタのオブジェクトフィールドにクラスを割り当てると、4Dは実行時とコンパイル時の両方でその形状を維持します。
これにより、スキーマからプロパティレベルの自動補完、シンタックスチェック、およびデータ検証を行うことができます。ストラクチャは保存するだけでなく、保護も行います。
バージョン7 UUIDのサポートを追加すると、時系列でソート可能で、タイムスタンプが付与され、分散システムで使用できる識別子が得られます。両方を配置すると、データモデルが予測可能、スケーラブル、自己認識されるようになります。

ユーザーインターフェイス
ハードコードされた値ではなく、ロジックに応答するフォームを作成
リジッドバインドから解放されます。OBJECT SET DATA SOURCE FORMULAを使用すると、任意のフォームオブジェクトを、コンテキスト、計算、または条件によって駆動されるフォーミュラにリンクできるようになりました。
これをlk selected items expressionのようなリストボックス定数と組み合わせることで、手動のトリガーや固定リンクなしでリアルタイムに反応するインターフェイスが得られます。
結果は、ハードコーディングされた前提ではなく、ロジックに応答する、よりクリーンで動的なUIとなります。

ネットワーク処理
プロトコルを完全に制御してリアルタイム通信を処理
新しい4D.UDPSocketクラスを使用してコネクションレス型パケットを送受信します。onDataを使用してイベントを監視し、onErrorを使用してエラーを追跡し、4DTCPUDPLog.txtを使用してアクティビティを監視します。UDPは現在、完全に統合され、イベント駆動型であり、デバイスシグナリング、リアルタイムメッセージング、または低オーバーヘッドの内部プロトコルに最適です。
また、TCPConnectionの新しい .connectionTimeoutプロパティを使用すると、応答時間の正確な制限を定義できます。長時間実行されるリクエストを終了し、UIの応答性を維持し、信頼性の低い接続を自信を持って管理します。
これらのツールを組み合わせると、ステートレスプロトコルと接続ベースのプロトコルの両方をきめ細かく制御できるため、アプリケーションのすべての層で回復力のある通信が可能になります。

依存関係マネージャー
コンポーネントチェーンを自動的に解決してロード
コンポーネントを追加して、その依存関係を4Dで自動的に処理します。更新されたComponent Managerは、再帰的な検出を実行し、必要なすべてのサブコンポーネントを正しい順序でロードし、循環参照が問題を引き起こすまでにブロックするようになりました。
更新されたインターフェイスを使用して、バージョンの互換性を適用し、ロード順序を解決し、依存関係ツリー内のすべてのリンク(宣言または継承)を表示します。
アーキテクチャーをモジュール化し、ビルドを予測可能にし、コードを構成ではなく動作に集中させます。

4D NETKIT
アプリからMicrosoft365とGoogleのカレンダーを管理
更新されたcs.NetKit.Office365.calendarとcs.NetKit.Google.calendarクラスを使用して、出席者、反復ルール、通知、および会議リンクを完全にサポートする予定表イベントを作成、更新、または削除します。
すべてがOAuth2認証を介して実行され、アプリ内から正確なイベントライフサイクル制御が提供されます。ミドルウェアは必要ありません。

セキュリティー
不要なロジックがアプリケーションに入らないようにする
ワークフローを中断することなく、挿入された動作を防止します。外部ソースから数式を貼り付けると、未処理のソース(未評価の場合)または評価結果のいずれかが挿入され、両方が挿入されることはありません。
これにより、隠しロジックが4D Write Proやマルチスタイル入力などのフィールドに紛れ込むのを防ぐことができます。
セーフガードはサイレントですが、その影響は明らかで、より信頼性が高く、安全な編集体験を実現します。
ブローシャーを見る
ブログを見る
ダウンロード
アップグレード