自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 问答 (1)
  • 收藏
  • 关注

原创 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 555

原创 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 387

原创 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 2364

原创 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 335

原创 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 282

原创 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 465

原创 DELPHI XE7 Dbgrid 读取 excel显示external error 40000015

测试环境, win10家庭版, XE7,窗体FORM上有一个dbgrid,clientdataset, 通过ole读取excel的数据,总共42行,每次读取到26行左右,就会显示external error 40000015,然后主程序异常自动退出了。如果少于这么多行,就能顺利读取到cds。后来通过反复测试,知道到原因如下:cds上字段编辑器里面除了物理表的字段以外,增加了3个字段(vendorname, desen,deschn),都设置为内部计算字段,没有cds的计算事件写代码,只是在这三个字段

2021-08-25 16:42:57 273

原创 delphi 操作excel,设置range的表示

delphi xe7,通过OLE操作excel,设置 某个range的单元格颜色excelApp.activesheet.range[excelApp.cells[i + startRow, 1], excelApp.cells[i + startRow, gridcol]] .interior.colorindex := 43range要用[],不是(),range[cell1,cell2]的单元格地址,不能从0开始。

2021-06-26 19:04:19 454

原创 delphi Xe7 Dbgrid前面增加一列显示行号

dbgrid-->datasource-->clientdataset, 如果在数据库的表中没有行号这个字段的话,要在dbgrid前面一列增加一列显示行号1,2,3.。。。可以如下操作,个人觉得比较简单:按照步骤:1.clientdataset字段编辑器双击打开,先把数据库中要显示的字段都添加进来addall fields, 然后增加一个字段id,类型fieldkind为fkInternalCalc (fkcalculate不行会出错),然后在这个字段的onGetText事件中写上如

2021-04-29 23:07:05 896

原创 delphi的form 窗体返回值modalResult值问题

主窗体FORM1窗体调用模态显示form2之后,需要根据form2.showmodal返回值判断。form1窗体的button1click事件中:procedure TfmMain.mmLogonClick(Sender: TObject);var mr:TModalResult;begin try fmLogon := tfmlogon.Create(self); mr:=fmLogon.ShowModal; if mr= m

2021-04-26 22:44:54 618

原创 delphi XE7+ INDY 10.6测试邮件发送接收功能

记录如下的关键地方,存档xe7自带的indy 组件是10.6版本,1. 接收邮件时, 如果邮箱容量超过2GB的话,idpop3的检查检索邮件数量的函数返回值就会出错。今天2019.12.3在indy 官网看到 indy 10已经更新了组件的 相关类型从integer 改为 int64.vari:integer;begin i:=0; self.IdPOP31.H...

2019-12-03 15:22:29 677

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除