問題タブ [tclientdataset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 変更された行を追跡し、TClientDataSet のデルタから手動で更新する
clientdataset のデルタに対して行われた変更を手動で追跡し、その変更を手動で db に更新する方法はありますか? クライアントデータセットを動的に作成し、プロバイダーなしでtqueryでロードできます。ユーザーはcdで利用可能なデータに対していくつかの挿入更新および削除操作を実行し、最終段階でこれらのデータ(変更された)はtquery を使用してデータベースに投稿します (更新を適用しません)。
delphi - クエリ完了時にメッセージを表示する
実行に時間がかかる比較的複雑なクエリを使用してfirebirdデータベースにクエリを実行していますが、ユーザーがクエリの進行状況に関する何らかのフィードバックを得ることができれば役立つと思いました。クエリの開始時にステータスバーに適切な「お待ちください」というメッセージを表示し、クエリがデータを返すときにステータスバーをクリアするつもりです。
TSQLDataSet、TDataSetProvider、およびTClientDataSetを使用しています。クエリが終了し、データを表示する準備ができたことを示すために、どのコンポーネントでどのイベントが発生しますか?
TIA、ノーアム
delphi - ネストされた TClientDataSet で「外部キー」フィールド名を見つける方法は?
ネストされた TClientDataSet が与えられた場合、詳細 TClientDataSet でリンク フィールド名を見つけるにはどうすればよいですか?
ある TClientDataSet から別の TClientDataSet に (レコードごとに) データをコピーしていますが、リンク フィールドを自動的に無視したいと考えています。
TClientDataSet.Data プロパティを使用してデータをコピーすることもできますが、それでもリンクとキー フィールドをクリアする必要があります。
delphi - Delphi-TClientDataSet:applyupdates()への2回目の呼び出しは、更新を適用しません
ここでも、TClientDataSetに問題があります。とてもシンプルなことだと思いますが、しばらく苦労しています。
これが私がやりたいことを示すいくつかのコードです:
コードは自明だと思います。button1を押すと、レコードが作成され、applyUpdatesを呼び出した後、データベースに書き込まれます。button2を押すと、このレコードに変更を加えてデータベースに更新を適用したいのですが、それは機能しません。しかし、button1のapplyUpdatesをコメントアウトすると、button2のapplyUpdatesは正しく機能します。
delphi - Datasnap サーバーでデータセットを「フリーズ」するにはどうすればよいですか?
開くのに非常に時間がかかるデータセット (ストアド プロシージャ) の場合、Datasnap サーバーに何らかのキャッシュを実装したいと考えています。
したがって、このデータセットが最初にロードされ、クライアント (TClientDataSet) に転送された場合、サーバーが再起動するか、サーバーで「リロード」プロシージャが呼び出されない限り、次の要求のためにデータセットを閉じてから再度開くべきではありません。
そのため、最初に開いた後、すべての新しいクライアントは、サーバー側のデータセットを更新/再ロードすることなく、データセットのコピー (クローン) のみを受け取ります。
このデータセット「キャッシュ」を簡単に実装するには、Datasnap サーバー データモジュールをセッションごとに作成しないでください (新しいセッションごとに、クライアントが DatasetProvider を開く要求を送信するまでサーバー側のデータセットが閉じられるため)。セッションデータモジュール用にもデータセットを複製する解決策を見つけることができるかもしれませんが、私の基本的な質問は次のとおりです。
クライアントがサーバー側のデータセットを開くことはできますが、閉じることはできないように、DatasetProvider のメソッドをオーバーライドする方法はありますか?
delphi - Object Pascal: TClientDataset の削除
TClientDataset を使用してメモリ内データセットを作成し、受信バッファとして使用しています。データを追加するのは素晴らしいことですが、処理を開始したら、データセットから行を削除できるようにしたいと考えています。delete を呼び出すと、行/インデックスには引き続きアクセスできますが、有効な情報は含まれていません。
このバッファーを処理しているときに、エントリが実際に削除されるとは限らないため、これは少し難しくなります。最初のエントリからバッファのスキャンを開始して空のアイテムをスキップしたくないので、データセットからアイテムを永久に「削除」するより良い方法はありますか? 私の考えは、行を削除しても空のレコードが残らない実際の SQL テーブルのように機能するはずだということでした。
これを達成する最善の方法は何ですか、または間違ったコンポーネントを完全に使用していますか?
xml - Delphi7 TClientDataSetの使用:XMLコンテンツをインデントされた形式で保存することは可能ですか?
TClientDataSet
一部のデータのXMLファイルの読み取りと書き込みにDelphi7を使用しています。
ただし、これをプログラムの外部で参照したい場合(WindowsエクスプローラーでXMLをダブルクリックすると)、'テキストコンテンツに無効な文字が見つかりました。リソースの処理中にエラーが発生しました'-データはDelphi内から正常に読み書きできますが。
TClientDataSet
1行ではなくインデントされた方法でコンテンツを強制的に書き込む方法はありますか?
そうすれば、テキストエディタで簡単に開いて、上記のエラーを引き起こす文字を見つけることができます。
とにかく:XMLファイルをCR / LFで記述し、とにかくインデントする方がはるかに明確だと思います。
xml - XML ファイルの読み取りと書き込み
Delphi を使用して XML ファイルで作業する必要があります。
DBGrid の xml データをユーザーに提示し、ユーザーが行った変更を XML ファイルに保存したいと考えています。
たとえば、次の xml (ユーザーに提示されたもの) では、ユーザーchanged City of ABC under client
とadded a new customer with NickName as "AAA"
その変更を XML ファイルに反映する必要があります。
これを達成するために XMLDocument と ClientDataSet を使用していますが、成功していません。
これを達成するために誰かが私を助けることができますか?
delphi - TClientDatasetからすべてのレコードを一度に削除するにはどうすればよいですか?
からすべてのレコードTClientDataset
を一度に削除することは可能ですか?
database - MyBaseのドキュメント?
Delphi(新しいバージョン)で使用されるドキュメントまたはMyBaseのいくつかの例、特に基本的な操作(追加、変更、削除、検索など)へのリンクを教えてもらえますか?
ありがとうございました。