📄 univttd.pas
字号:
unit UNIVTTD;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBTables;
type
TFMIVTTD = class(TDataModule)
QIVTA: TQuery;
QINS: TQuery;
QIVTT: TQuery;
DSIVTT: TDataSource;
DSIVTA: TDataSource;
QRBRNA: TQuery;
DSRBRNA: TDataSource;
UIVTT: TUpdateSQL;
QIVTT_BGNAM: TStringField;
Database: TDatabase;
QIVTABGENO: TStringField;
QIVTAIACNT: TFloatField;
QIVTAIADAT: TDateTimeField;
QIVTAIATME: TStringField;
QIVTA_BGNAM: TStringField;
QIVTA_BGQTS: TIntegerField;
QIVTA_BGCNT: TIntegerField;
QIVTTITENO: TStringField;
QIVTTBGENO: TStringField;
QIVTTITCNR: TFloatField;
QIVTTITCNV: TFloatField;
QIVTTITCNT: TFloatField;
QIVTTITDAT: TDateTimeField;
QIVTTITTME: TStringField;
QIVTTITTRN: TBooleanField;
procedure QIVTACalcFields(DataSet: TDataSet);
procedure QIVTTAfterPost(DataSet: TDataSet);
procedure QIVTTBeforePost(DataSet: TDataSet);
procedure QIVTTCalcFields(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FMIVTTD: TFMIVTTD;
implementation
uses MAIND, DB_UTL, FM_UTL, MAINU;
{$R *.DFM}
procedure TFMIVTTD.QIVTACalcFields(DataSet: TDataSet);
begin
FMMAIND.QUERY.SQL.CLEAR;
FMMAIND.QUERY.SQL.ADD('SELECT * FROM BGDS');
FMMAIND.QUERY.SQL.ADD('WHERE BGENO = '''+QIVTABGENO.VALUE+'''');
FMMAIND.QUERY.CLOSE;
FMMAIND.QUERY.OPEN;
QIVTA_BGNAM.Value := FMMAIND.QUERY.FieldByName('BGNAM').AsString;
QIVTA_BGQTS.Value := FMMAIND.QUERY.FieldByName('BGQTS').AsINTEGER;
QIVTA_BGCNT.Value := FMMAIND.QUERY.FieldByName('BGCST').AsINTEGER;
end;
procedure TFMIVTTD.QIVTTAfterPost(DataSet: TDataSet);
begin
FMMAIND.QUPD.SQL.CLEAR;
FMMAIND.QUPD.SQL.Add('UPDATE IVTT ');
FMMAIND.QUPD.SQL.Add('SET ');
FMMAIND.QUPD.SQL.Add('ITCN1 = '+QIVTT.FieldByName('ITCN1').AsString+' ,');
FMMAIND.QUPD.SQL.Add('ITCN2 = '+QIVTT.FieldByName('ITCN2').AsString+' ,');
FMMAIND.QUPD.SQL.Add('ITCNT = '+QIVTT.FieldByName('ITCNT').AsString+' ');
FMMAIND.QUPD.SQL.Add('WHERE ITENO = '''+QIVTT.FieldByName('ITENO').AsString+'''');
//SHOWMESSAGE(FMMAIND.QUPD.SQL.TEXT);
FMMAIND.QUPD.ExecSQL;
end;
procedure TFMIVTTD.QIVTTBeforePost(DataSet: TDataSet);
begin
QIVTT.EDIT;
QIVTT.FieldByName('ITCNT').ASINTEGER :=
QIVTT.FieldByName('ITCN1').ASINTEGER -
QIVTT.FieldByName('ITCN2').ASINTEGER ;
end;
procedure TFMIVTTD.QIVTTCalcFields(DataSet: TDataSet);
begin
QIVTT_BGNAM.Value := DB_QUERY_FIND_VALUE('BGDS','BGENO',QIVTTBGENO.Value,'BGNAM');
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -