Delphi-7、Delphi.BCB v5.8 最終版向け DevExpress ExpressQuantumGrid スイート
cxGrid に emaillist_id という名前の lookupcombobox 列があります。emaillist_idは KeyField で、EmailはListField です。ユーザーは、リストから電子メールを選択するか、新しい電子メールを入力できます。ユーザーが新しい電子メールを入力すると、SPを使用してデータベーステーブルに追加したいと考えています。そのためには、編集された値を取得する必要があります。どうやってやるの?
あるいは、この問題に対するより良い解決策があるかもしれません。
procedure TfrmClientEmail.grdClientEMailDBTableViewEditValueChanged(
Sender: TcxCustomGridTableView; AItem: TcxCustomGridTableItem);
begin
if AItem.Index=(Sender as TcxGridDBTableView).GetColumnByFieldName('emaillist_id').Index then
with ADOSP_ClientEmailEdit do
begin
Parameters.ParamValues['@KodClient']:=ADOSP_ClientEmail['KodClient'];
Parameters.ParamValues['@email']:=Sender.Controller.EditingController.Edit.EditValue;//This return KeyFieldValue
ExecProc();
end;
ADOSP_ClientEmailRefresh();
end;
ありがとう。