AssignFile(ddsf,filename);
Reset(ddsf);
flen:=filesize(ddsf);
closefile(ddsf);
handle:=fileopen(filename,fmopenread);
if flen1<=0 then showmessage('打开文件时出错,请重试') else
begin
for k:=0 to (flen div 116) do
begin
fpos:=k*116;
fileseek(handle,fpos1+k,0);
fileread(handle1,buffer,116);
if not(IBTS_HxData.InTransaction) then IBTS_HxData.StartTransaction;
if not(IBPread.Prepared) then IBPread.Prepare;
str:='';
for i:=0 to 5 do str:=str+buffer[i];
IBPRead.ParamByName('INREAD_DATE').Value:=str;
IBPRead.ParamByName('INREAD_TYPE').Value:=1;
str:='';
for i:=6 to 15 do str:=str+buffer[i];
IBPRead.ParamByName('INMETER_CODE').Value:=str;
str:='';
for i:=20 to 31 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMZ').Value:=strtofloat(str);
str:='';
for i:=32 to 43 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMF').Value:=strtofloat(str);
str:='';
for i:=44 to 55 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMP').Value:=strtofloat(str);
str:='';
for i:=56 to 67 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMG').Value:=strtofloat(str);
str:='';
for i:=68 to 79 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERZ').Value:=strtofloat(str);
str:='';
for i:=80 to 91 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERF').Value:=strtofloat(str);
str:='';
for i:=92 to 103 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERP').Value:=strtofloat(str);
str:='';
for i:=104 to 115 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERG').Value:=strtofloat(str);
IBPRead.ExecProc;
IBTS_HXData.Commit;
end;
循环没错,在窗体上我用的组件有ibstoredproc,ibdatabase,datasource,我该怎么应用这些组件的属性或方法存数据/
Reset(ddsf);
flen:=filesize(ddsf);
closefile(ddsf);
handle:=fileopen(filename,fmopenread);
if flen1<=0 then showmessage('打开文件时出错,请重试') else
begin
for k:=0 to (flen div 116) do
begin
fpos:=k*116;
fileseek(handle,fpos1+k,0);
fileread(handle1,buffer,116);
if not(IBTS_HxData.InTransaction) then IBTS_HxData.StartTransaction;
if not(IBPread.Prepared) then IBPread.Prepare;
str:='';
for i:=0 to 5 do str:=str+buffer[i];
IBPRead.ParamByName('INREAD_DATE').Value:=str;
IBPRead.ParamByName('INREAD_TYPE').Value:=1;
str:='';
for i:=6 to 15 do str:=str+buffer[i];
IBPRead.ParamByName('INMETER_CODE').Value:=str;
str:='';
for i:=20 to 31 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMZ').Value:=strtofloat(str);
str:='';
for i:=32 to 43 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMF').Value:=strtofloat(str);
str:='';
for i:=44 to 55 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMP').Value:=strtofloat(str);
str:='';
for i:=56 to 67 do str:=str+buffer[i];
IBPRead.ParamByName('INNUMG').Value:=strtofloat(str);
str:='';
for i:=68 to 79 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERZ').Value:=strtofloat(str);
str:='';
for i:=80 to 91 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERF').Value:=strtofloat(str);
str:='';
for i:=92 to 103 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERP').Value:=strtofloat(str);
str:='';
for i:=104 to 115 do str:=str+buffer[i];
IBPRead.ParamByName('INPOWERG').Value:=strtofloat(str);
IBPRead.ExecProc;
IBTS_HXData.Commit;
end;
循环没错,在窗体上我用的组件有ibstoredproc,ibdatabase,datasource,我该怎么应用这些组件的属性或方法存数据/
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货