📄 untaddoil.pas
字号:
unit untAddOil;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BaseEdit, MSNPopUp, FR_DSet, FR_DBSet, FR_Class, Menus, DB,
DBClient, ActnList, Grids, DBGridEh, StdCtrls, ExtCtrls, Mask, wwdbedit,
wwdblook, DBCtrlsEh, FR_Desgn;
type
TfrmAddOil = class(TfrmBaseEdit)
Label7: TLabel;
Label3: TLabel;
wwDBEdit2: TwwDBEdit;
wwDBLookupCombo1: TwwDBLookupCombo;
Label4: TLabel;
wwDBEdit1: TwwDBEdit;
Label6: TLabel;
DBDateTimeEditEh1: TDBDateTimeEditEh;
Label8: TLabel;
wwDBEdit3: TwwDBEdit;
Label9: TLabel;
wwDBEdit4: TwwDBEdit;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
wwDBEdit6: TwwDBEdit;
wwDBLookupCombo2: TwwDBLookupCombo;
CDSVehicle: TClientDataSet;
CDShandle: TClientDataSet;
CDSVehiclefid: TAutoIncField;
CDSVehiclefcode: TWideStringField;
CDSVehiclefname: TWideStringField;
CDSVehiclefmodel: TWideStringField;
CDSVehiclefcolor: TWideStringField;
CDSVehicleffuel: TBCDField;
CDSVehiclefengineno: TWideStringField;
CDSVehiclefvehicleno: TWideStringField;
CDSVehiclefprovider: TWideStringField;
CDSVehiclefbuydate: TDateTimeField;
CDSVehiclefsafeno: TWideStringField;
CDSVehiclefsafetype: TWideStringField;
CDSVehiclefsafecompany: TWideStringField;
CDSVehiclefsafedate: TDateTimeField;
CDSVehiclefsafelastdate: TDateTimeField;
CDSVehiclefdriver: TWideStringField;
CDSVehiclefbusinessno: TWideStringField;
CDSVehiclefannexno: TWideStringField;
CDSVehicleftwomaintenancestart: TDateTimeField;
CDSVehicleftwomaintenancelast: TDateTimeField;
CDSVehiclefdeposit: TBCDField;
CDSVehiclefrentday: TBCDField;
CDSVehiclefrentweek: TBCDField;
CDSVehiclefrentmonth: TBCDField;
CDSVehiclefkilometreday: TBCDField;
CDSVehiclefreceipthour: TBCDField;
CDSVehiclefreceiptkilometre: TBCDField;
CDSVehiclefmaxkilometre: TBCDField;
CDSVehiclefoutoil: TBCDField;
CDSVehiclefhandle: TWideStringField;
CDSVehiclefstate: TBooleanField;
CDSVehiclefdesc: TWideStringField;
CDSVehiclefremark: TWideStringField;
CDSVehiclefpicture: TWideStringField;
CDSVehiclefoutk: TBCDField;
CDSVehiclefoutf: TBCDField;
CDShandlefID: TAutoIncField;
CDShandlefCode: TWideStringField;
CDShandlefName: TWideStringField;
CDShandlefDeptCode: TWideStringField;
CDShandlefDriveID: TWideStringField;
CDShandlefSex: TWideStringField;
CDShandlefPosition: TWideStringField;
CDShandlefAddress: TWideStringField;
CDShandlefEmail: TWideStringField;
CDShandlefTel: TWideStringField;
CDShandlefMobile: TWideStringField;
CDShandlefBP: TWideStringField;
CDShandlefDegree: TWideStringField;
CDShandlefCollege: TWideStringField;
CDShandlefBirthAddress: TWideStringField;
CDShandlefBirthday: TDateTimeField;
CDShandlefInTime: TDateTimeField;
CDShandlefOutTime: TDateTimeField;
CDShandlefMoney: TBCDField;
CDShandlefStatus: TBooleanField;
CDShandlefNotes: TWideStringField;
CDShandlefPicture: TWideStringField;
procedure FormDestroy(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure acNewExecute(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CDSBaseinfoBeforePost(DataSet: TDataSet);
procedure wwDBLookupCombo1Change(Sender: TObject);
procedure CDSBaseinfoAfterPost(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmAddOil: TfrmAddOil;
implementation
uses DataProcess, Global;
{$R *.dfm}
procedure TfrmAddOil.FormDestroy(Sender: TObject);
begin
inherited;
frmAddOil:=nil;
end;
procedure TfrmAddOil.FormCreate(Sender: TObject);
begin
inherited;
iFunctionID:=35;
MainTable:='tAddOil';
MainView:='vAddOil';
KeyField:='fid';
ReportName:='frAddOil.frf';
end;
procedure TfrmAddOil.acNewExecute(Sender: TObject);
begin
inherited;
wwDBEdit2.SetFocus;
end;
procedure TfrmAddOil.FormShow(Sender: TObject);
begin
inherited;
GetsqlData(CDSVehicle,'tVehicle','fid','fid>0',20);
GetsqlData(CDSHandle,'tEmployee','fid','fid>0',20);
end;
procedure TfrmAddOil.CDSBaseinfoBeforePost(DataSet: TDataSet);
begin
inherited;
with CDSBaseinfo do
begin
if VarisNUll(FieldValues['fcode']) then
Raise Exception.Create('车名不能为空 !');
if VarisNUll(FieldValues['fqty']) then
Raise Exception.Create('加油数量不能为空 !');
if VarisNUll(FieldValues['fprice']) then
Raise Exception.Create('油单价不能为空 !');
end;
with CDSBaseinfo do
Fieldbyname('famount').AsFloat:=fieldbyname('fqty').AsFloat*
fieldbyname('fprice').AsFloat;
end;
procedure TfrmAddOil.wwDBLookupCombo1Change(Sender: TObject);
begin
inherited;
if CDSBaseinfo.State in [dsEdit,dsInsert] then
CDSBaseinfo.FieldByName('fVehicleID').AsInteger:=
CDSVehicle.fieldbyname('fid').AsInteger;
end;
procedure TfrmAddOil.CDSBaseinfoAfterPost(DataSet: TDataSet);
begin
inherited;
if FormStatus = 'Add' then
WriteBalance(1,3,CDSBaseinfo.fieldbyname('fno').AsString,self.Caption,
0,
CDSBaseinfo.fieldbyname('fRemark').AsString+'--加油付款',
0,
0,
0,
0,
0,
0,
0,
CDSBaseinfo.FieldByName('famount').AsFloat,
0);
if FormStatus = 'Edit' then
WriteBalance(2,3,CDSBaseinfo.fieldbyname('fno').AsString,self.Caption,
0,
CDSBaseinfo.fieldbyname('fRemark').AsString+'--加油付款',
0,
0,
0,
0,
0,
0,
0,
CDSBaseinfo.FieldByName('famount').AsFloat,
0);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -