delphi
  • n-tier
  • datasnap
  • 2012-05-06 4 views 3 likes 
    3

    をフィルタリング。は動的に私は自分自身に3層のDataSnapアーキテクチャのClientDataSetののコンテンツをフィルタリングする方法について質問をしていClientDataSetのコンテンツ

    複数のクライアントが、"clientId"という名前のフィールドを含むデータセットを使用しています。 私は各クライアントに行を要求することを望みます(SQL文のWHERE clientId = 'Client1'のように)。

    もし私が右手にすると、フィルターを使用してもオーバーヘッドは減少しません。

    myclientdataset.Filter:= 'ClientId = Client1'; 
    myclientdataset.Filtered:= true; 
    

    これはすべてのクライアントに合格します。私はサーバーに送信されたものをフィルタリングしたい。

    しかし、これらのコンポーネントを使用してこれを達成する方法はわかりません。

    ご迷惑をおかけして申し訳ございません。

    よろしくthis etutorialに記載されているように、

    JP

    答えて

    2

    は、パラメータ化クエリのタスクのように聞こえます。各クライアントが独自のパラメータを設定すると、要求されたデータのみが各クライアントに転送されます。

    +0

    私にこの記事を指摘してくれてありがとうUwe。 – JPR

    0

    Filterプロパティは、ClientDataSetにロードされた内容をフィルタリングします。基になるデータベースから取得するデータには何の影響もありません。

    ClientDataSetを基になるリレーショナルデータベースから取得したデータに影響させるには、CommandTextプロパティでクエリを指定するか、CommandTextプロパティにパラメータ化クエリ(またはストアドプロシージャ呼び出し)を含めてからParamsプロパティを使用しますパラメータの値を定義します。

    関連する問題