私は、Delphi 7で書かれた3層アプリケーションをWebBrokerベースのSOAPサーバー(スタンドアロンのexe)とHTTPRIOコンポーネントを介して通信するSOAPクライアントプログラムで使用しています。Delphiのレコードセット/データセットを切断しました
これはDataSnapアプリケーションではありません。代わりに、サーバーはSOAP要求に渡されたSQL文字列に対応するADTG形式の切断されたADOレコードセットとしてクライアントにデータを送信します。 (サーバーは最初に圧縮し、Base64に変換してクライアントに簡単に戻すことができます)。
返されたレコードセットを使用して、行とフィールドを繰り返し処理します。 DataSetコンポーネント)は、VBAを使用してMicrosoft Accessで長年にわたりプログラミングしているために快適なことです。 幸いなことに、TADODatasetコンポーネントのRecordsetプロパティに直接割り当てて、QuickReportにバインドすることもできます。
クライアントプログラムをFireMonkeyにアップグレードして、WindowsとOSXの両方でコンパイルできるようにし、少なくともMac環境ではADOレコードセットを使用できなくなるとします。
「手で」I a)は切断を と送信することができる最高のデータ形式であるものFireMonkeyのへの変換のための準備において、 b)は荷重データセットコンポーネントに私はそれについてのレポートをベースできるように、そして c)可能であれば、コード内のデータを最初にコンポーネントにロードする必要はありませんか?
この最後の項目は、コンポーネントを使用せずにデータを処理するのに慣れているだけでなく、ユーザーインターフェイスをロックせずにバックグラウンドでデータを取得するために頻繁にデータを要求するためです。私が理解しているように、コンポーネントとスレッドは一緒には行きません。
今後の最善の方法についてのアドバイスはありますか?
コンポーネントとスレッドに問題はありません。スレッドから* visual *コンポーネントにアクセスする際に問題がありますが、データセットコンポーネントは視覚的ではありません。あなたの質問は私にとってはかなり広範で多少曖昧ですが、TClientDataSetを探しているようです。 –
@KenWhiteあなたはうまくいった[ここ](http://chat.stackoverflow.com/rooms/129020/rad-studio-for-android) – Sami
はい。ありがとうKen。 TClientDataSetは確かに最善の方法と思われます。 –