イントラネット用のDelphi7とTMSスイートを使用してWebアプリケーションを作成しています。いくつかのクライアントデータセットコンポーネントがあり、データを表示するためにTTIWDBAdvWebGridを使用しています。TTIWDBAdvWebGridはデータベース対応コンポーネントですが、グリッド内の一部の値を変更すると、データは永続的ではありません(セルイベントでは、セルの値は古いものであり、私が設定した値ではありません)。
何か案は?
イントラネット用のDelphi7とTMSスイートを使用してWebアプリケーションを作成しています。いくつかのクライアントデータセットコンポーネントがあり、データを表示するためにTTIWDBAdvWebGridを使用しています。TTIWDBAdvWebGridはデータベース対応コンポーネントですが、グリッド内の一部の値を変更すると、データは永続的ではありません(セルイベントでは、セルの値は古いものであり、私が設定した値ではありません)。
何か案は?
イベントが適切にトリガーされていないようです。また、OnDirectEditUpdateイベントは発生しません。
次のコード(ClientEvents-> EditDoneに配置)が問題を解決しています。
if (IsEditing(obj))
{
valedt =GetEditValue(IWDBECRITCOUPLESObj,c,r);
i = GetEditRow(IWDBECRITCOUPLESObj);
SetEditValue(IWDBECRITCOUPLESObj,8,i,valedt);
}
この後、値がデータセットに設定されます。
IWDBECRITCOUPLESは、フォーム上のグリッドコンポーネントの名前です。GetEditValueおよびSetEditValueには、パラメーターgridname(Objサフィックスが続く)、column、row、およびValue(SetEditValue関数のみ)があります。GetEditRowには、パラメーターgridname(Objが続く)があります。