Tableauと4Dを連携させる方法
4D Webinar – How to Connect Tableau with 4D では、William Taylor (Technical Account Manager, 4D US)がTableauツールの概要と4Dデータの可視化に使用できる方法について説明しました。このブログ記事では、技術的な詳細を掘り下げ、その仕組みをより深く理解できるようにします。これにより、例えば、4D RESTとTableauだけで、最高額の請求書を表示するビジュアルを構築することができます。
Cross-Origin Resource Sharing (CORS)のサポート
HTTP データリクエストを作成したら、「HTMLリクエストへのアクセスはcorsポリシーによってブロック されています」という赤いエラーに見舞われたことはないだろうか?
あなたのサイトがWebサービスサーバーと同じドメインにある場合は問題ありません。しかし、クロスオリジンリクエストを実行するとそうはいきません。ブラウザのセキュリティにより、別のドメインへのHTTPリクエストが阻止されるため、アクセスが拒否されます。その結果は?CORSポリシーエラーです。
サーバー上で特定のクロスオリジンリクエストを明示的に許可するために、4Dは現在、CORSプロトコルをサポートしています。クロスオリジンリクエストでデータにアクセスすることが簡単になりました。
ORDAデータモデルクラスとREST
データモデルを処理するORDAクラス
前回の ブログでは、ORDAデータモデルクラスの世界について紹介しました。さて、いよいよ手を動かして、もっと勉強しましょう
ORDAの構造(データストア、データクラス、エンティティ、エンティティ選択)がオブジェクトで構成されていることは既にご存知でしょう。しかし、それらは単なるオブジェクトではなく、特定のORDAクラスにリンクされた強型オブジェクトなのです。つまり、データの物理的な実装の複雑さを隠蔽するための関数を書くことができるのです。
ORDAクラスの世界へようこそ
ORDAは、4D v17で革命を起こしました。それは、全く新しい可能性の世界を開き、あなたを別のプログラミングの次元に導きました。オブジェクト指向のアプローチで簡単にアプリケーションを開発できる次元です。
私たちは、そこで終わりませんでした!私たちは、その後の機能リリースごとに、一連の機能を通じてORDAの機能強化を続けてきました。そして今、4D v18 R4では、さらに一歩進んだORDA データモデルクラスが利用可能になりました。あなたのデータモデルに特化したクラスです。
これは、あなたのコードを大きく向上させるでしょう。あなたのアプリケーションは、簡単にサービスを公開し、より管理しやすく、保守しやすくなり、他のアプリケーションとシームレスに統合できるようになります。
これもプロジェクトのおかげで実現した大きな機能です
リモートデータストア – 実践的な使用例
4D v18で提供された最も興味深い機能の1つが、リモートデータストアです。このブログポストでは、実用的なユースケースを紹介します。
4D RESTセッションの理解を深める
以前のブログ記事で、4D RESTサーバを始める方法を紹介しました。Postmanを使った様々なCRUDオペレーションを紹介し、RESTの完全なドキュメントを紹介しました。今回のブログでは、4Dでセッションがどのように機能するかを説明します。この理解によって、4D RESTサーバを使用してセッションベースの認証システムを構築することができるようになります。
複数の 4Dデータソースに興味がありますか?
4D v18 のエキサイティングな新機能を発表します! タイトルからすでにヒントがあるかもしれませんね。
この機能は、クライアント/サーバーの新しい可能性を開きます。4D v18 のアプリケーションは、永続的なネットワーク接続を必要とするカレントデータベースに限定されるのではなく、4D Server 上に公開された別のリモート4Dデータベースからデータを取得することができます!
この機能により、選択肢が大きく広がります。たとえば、基本的にオフラインで動作するようにアプリケーションを構成し、リモートデータにアクセスできるときだけローカルデータを同期させることができます。あるいは、複数のサーバーでデータを公開し、必要に応じて切り替えることもできます。また、データモデルを異なるデータベースに分散させるという方法もあります (ローカルデータ、海外データなど)。異なる場所にデータを分散させながら、 1つの 4Dクライアントコード (プロジェクトメソッドやフォームオブジェクト) でアクセス可能にするのはどうでしょうか。このブログ記事では、これらのシナリオを実現する方法を紹介します。