
DELPHI
g58521547
这个作者很懒,什么都没留下…
展开
-
delphi 复制粘贴excel的单元格内容到stringgrid
从stringgrid复制到粘贴板时,如果stringgrid的单元格内有换行的话,需要在字符串的前后加上双引号,并且行内的换行符替换为#10,因为delphi认可#13#10,而excel用#10表示换行",粘贴到stringgrid的时候,需要把excel的#10换为#13。原创 2024-06-19 21:51:59 · 322 阅读 · 0 评论 -
delphi xe10.4.2 datasnap fdmemtable如果传输的stream超过32kb 显示错误712
如题,delphi datasnap三层,服务器端 fdconnection+fdquery, +mysql 使用 getdata函数根据sql语句查询数据表并且返回stream给客户端,客户端 使用sqlconnection+dsproviderconnection链接,如果取得的stream超过32kb(32768)的话,会显示 stream.size=-1,并且 fdmemtable不能读取流。procedure TMainForm.Button1Click(Sender: TObjec原创 2022-05-22 20:35:09 · 684 阅读 · 0 评论 -
delphi xe10.4.2 tabletojson函数显示E2033错误
如题,测试了一下使用tdbxjsontools.tabletojson函数,第一个参数如果如下写法acommand.executequery那么显示function TServerMethods1.getData: string;var acommand:tdbxcommand; areader:TDBXReader;begin result:=''; self.SQLConnection1.open; //self.SQLConnection1.Param原创 2022-04-17 12:45:33 · 547 阅读 · 0 评论 -
delphi xe10.4.2 datasnap客户端接收dataset返回值
datasnap 服务器端使用 fdquery+fdconnection,服务器端有一个服务方法getdataset(sqltext:string):tdataset;客户端使用dbgrid+datasource+datasetprovider+sqlservermethod+sqlconnection如果self.ClientDataSet1.Close; self.ClientDataSet1.RemoteServer := nil; self.ClientDataSet1...原创 2022-01-29 12:30:31 · 2495 阅读 · 0 评论 -
delphi clientdataset.appenddata不能用于有聚合字段的数据集
delphi xe7, 有两个cds(cds1, cds2),cds1.commandtext='select a.id,sum(b.price*b.qty) from table1 left join table2 on a.orderno=b.orderno group by a.ordernocds1的查询语句中有sum函数,查出的数据值正确的。cds2.appenddata(cds1.data,true);但是如果复制给cds2,就不正确了。比如cds1的记录sum值是825,原创 2021-11-02 16:54:53 · 443 阅读 · 0 评论 -
delphi tclientdataset字段显示type mismatch
delphi xe7, MYSQL 5.6,表中有个自增长字段 ’id',unsigned,not null三层客户端的tclientdataset的设计阶段添加所有的字段,包括一个自增长字段id, 运行时就显示 type mismatch for field 'id', expecting autoinc, actual longword.然后把cds的字段编辑器中id字段删除,手动添加,也不行。最后只能把表的字段定义改为SIGNED(无符号改为有符号);cds就正常了。...原创 2021-10-03 10:43:58 · 378 阅读 · 0 评论 -
delphi 调用dll,添加sharemem的位置。
如题delphi 调用外部的dll,需要在项目的dpr文件中uses第一个添加sharemem,而不是窗体form的pas文件中添加,否则程序关闭后无法正常结束进程。program Project1;uses ShareMem,Vcl.Forms, Unit1 in 'Unit1.pas' {Form1};另外在form中申明dll的函数/过程时,函数名必须和dll中的保持一致,但是形参的名称可以不同:var Form1: TForm1;implementatio原创 2021-09-11 17:14:01 · 614 阅读 · 0 评论