FDMemTable.post 出错“[FireDAC][DApt]-402.Operation cannot be performed without ass

delphi-爱好者 2019-01-20 04:41:37
提示“[FireDAC][DApt]-402.Operation cannot be performed without assigned SelectCommand”
代码如下:
var lStream:TMemoryStream;
i:integer;
begin
i:=1;
try
mtTheCs.Edit;
mtTheCs.FieldByName('cs_name').Value := edit2.Text;
mtTheCs.FieldByName('ordid').Value :=strtoint(edit3.Text);
mtTheCs.FieldByName('inuse').Value := Checkbox1.IsChecked;
mtTheCs.Post;
i:=2;
lstream:=TMEmorystream.Create;

FDSchemaAdapter1.ResourceOptions.StoreItems :=[siDelta,siMeta] ;
FDSchemaAdapter1.SaveToStream(lStream,TFDStorageFormat.sfBinary );
i:=3;

lstream.Position :=0;
spPostTheCs.Params[0].AsStream :=lStream;
spPostTheCs.ExecProc ;
==========
请高手指教问题出在哪里了?

...全文
747 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
elqshhh 2019-11-18
  • 打赏
  • 举报
回复
mtTheCs.FieldByName('cs_name').AsString:= edit2.Text; mtTheCs.FieldByName('ordid').AsString:=strtoint(edit3.Text); mtTheCs.FieldByName('inuse').AsBoolean:= Checkbox1.IsChecked;
crazy_boom 2019-08-25
  • 打赏
  • 举报
回复
mtTheCs.FieldByName('inuse').Value := Checkbox1.IsChecked; 这句有没有问题?
delphi-爱好者 2019-01-21
  • 打赏
  • 举报
回复
执行到 mtTheCs.Post;这句出错的
delphi-爱好者 2019-01-21
  • 打赏
  • 举报
回复
问题已找到:
将客户端的TFDTableAdapter控件 taTheCs 的DataSTableName设置为服务器对应的table或query控件名,然后最关键的是,将客户端TFDMemTable的cachedUpdates设置为true, 好了,全部代码 全部顺利执行,客户端 更新成功
看那山瞧那水 2019-01-20
  • 打赏
  • 举报
回复
mtTheCs.FieldByName('cs_name').Value := QuotedStr(edit2.Text); 试试

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧