📄 easy_gasmain.pas
字号:
With TPNT_SET.Create(Application) do
Begin
try
FMT_PNT.Open;
if Not FMT_PNT.Locate('NAME',Obj_Name,[]) then
With FMT_PNT do
Begin
Append;
Edit;
Fieldbyname('NAME').asstring:=Obj_Name;
end;
if showmodal=mrok then
With FMT_PNT do
Begin
Edit;
Post;
end else FMT_PNT.Cancel;
finally
free;
end;
end;
end;
Function ExistsMDI(Const MDIMAIN:TForm;MDINAME:String):Boolean;
var MDI_INX:Integer;
Begin
Result:=False;
For MDI_INX:=0 to MDIMAIN.MDIChildCount-1 do
Begin
if MDIMAIN.MDIChildren[MDI_INX].Name=MDINAME then Result:=True;
end;
end;
Procedure CTick(BUTTLENO:LongInt;IsBack:Boolean=False);
Begin
With TMANGTICK.create(Application) do
Begin
try
BOTTLE_NO:=BUTTLENO;
MANGTICK.open;
MANGTYPE.Open;
YH.Open;
MANGTICK.Append;
With MANGTICK do
if showmodal=mrok then
Begin
//保存数据
Edit;Post;
//如果是退单
if IsBack then
Begin
COMM.commandtext:=format('UPDATE GAS_MANAGE SET 操作值 = - ABS(操作值),有效天数 = - ABS(有效天数) WHERE (票号 = %d)',[Fieldbyname('票号').asInteger]);
COMM.execute;
end;
Refresh;
B1.open;
if B1.locate('编码',BUTTLENO,[]) then
Begin
//托管日期更改
if MANGTick.FieldByName('归属').AsString='托管' then
Begin
B1.edit;
if B1.Fieldbyname('托管到期').IsNull then
B1.FieldByName('托管到期').AsDateTime:=TDate(B1.FieldByName('出厂时间').AsDateTime)+MANGTICK.fieldbyname('有效天数').asInteger else
B1.FieldByName('托管到期').AsDateTime:=TDate(B1.FieldByName('托管到期').AsDateTime)+MANGTICK.fieldbyname('有效天数').asInteger;
B1.Post;
end;
//年审日期更改
if MANGTick.FieldByName('归属').AsString='年审' then
Begin
B1.edit;
if B1.Fieldbyname('年审到期').IsNull then
B1.FieldByName('年审到期').AsDateTime:=TDate(B1.FieldByName('出厂时间').AsDateTime)+MANGTICK.fieldbyname('有效天数').asInteger else
B1.FieldByName('年审到期').AsDateTime:=TDate(B1.FieldByName('年审到期').AsDateTime)+MANGTICK.fieldbyname('有效天数').asInteger;
B1.Post;
end;
//写入押金信息
if MANGTick.FieldByName('归属').AsString='押金' then
With BUTTLE do
Begin
Open;
if Locate('编码',BUTTLENO,[]) then
Begin
Edit;
Fieldbyname('押金').AsCurrency:=Fieldbyname('押金').AsCurrency+MANGTICK.fieldbyname('操作值').AsCurrency;
Post;
end;
end;
b1.close;
end;
end else Cancel;
finally
free;
end;
end;
end;
Procedure GridExport(Grid:TDBGridEH);
var ExpClass:TDBGridEhExportClass;
Ext:String;
begin
With MAINFORM do
With Grid do
begin
SaveD.FileName := 'file1';
if SaveD.Execute then
begin
case SaveD.FilterIndex of
1: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
5: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
else ExpClass := nil; Ext := '';
end;
if ExpClass <> nil then
begin
if UpperCase(Copy(SaveD.FileName,Length(SaveD.FileName)-2,3)) <>
UpperCase(Ext) then
SaveD.FileName := SaveD.FileName + '.' + Ext;
SaveDBGridEhToExportFile(ExpClass,Grid,SaveD.FileName,True);
end;
end;
end;
end;
Procedure GridFind(Grid:TDBGridEH);
var SelText:string;
begin
// inherited;
SelText:=GRID.DataSource.DataSet.FieldByName(GRID.Columns[GRID.SelectedIndex].FieldName).AsString;
ExecuteDBGridEhFindDialogProc(GRID,SelText,'',nil,GRID.IsFindDialogShowAsModal);
end;
procedure GridTitleClick(Sender: TObject; ACol: Integer; Column: TColumnEh);
var sortstring:string;
begin
with Column do
begin
if FieldName = '' then Exit;
case Title.SortMarker of
smNoneEh:
begin
Title.SortMarker := smDownEh;
sortstring := Column.FieldName + ' ASC';
end;
smDownEh: sortstring := Column.FieldName + ' ASC';
smUpEh: sortstring := Column.FieldName + ' DESC';
end;
try
TADODataset(TDBGridEH(Sender).DataSource.DataSet).Sort := sortstring;
except
end;
end;
end;
Function GetCountFormName(NameS:String):Real;
Begin
With MAINFORM.BTT do
Begin
Result:=0;
Open;
try
if Locate('钢瓶类型',Names,[]) then
Begin
Result:=Fieldbyname('灌装规格').asFloat;
end;
finally
Close;
end;
end;
end;
Function SelArea:TArea;
var Stream:TStream;
begin
With TAREADlg.create(Application) do
Begin
Stream:=ReadBlob('区域设置');
TV.LoadFromStream(Stream);
try
if showmodal=mrok then
Begin
Result.AREA:=TV.Selected.Parent.Text;
Result.SUB_AREA:=TV.Selected.Text;
end;
finally
Stream.free;
free;
end;
end;
end;
Function GetFull(TreeView:TTreeView;Node:TTreeNode):String;
var I:Integer;
TEMP:TTreenode;
Begin
Temp:=Node;
Result:='';
With TreeView do
For I:=0 to Node.Level do
Begin
if TEMP<>nil then
Result:=Result+'<='+Temp.Text;
Temp:=Temp.Parent;
end;
Result:=Copy(Result,3,Length(Result));
end;
Function ReadBool(SName:String):Boolean;
Begin
Result:=False;
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Locate('名称',SName,[]) then Result:=Fieldbyname('VAR_BOOL').asBoolean;
finally
close;
end;
end;
end;
Function ReadFloat(SName:String):Real;
Begin
Result:=0;
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Locate('名称',SName,[]) then Result:=Fieldbyname('VAR_FLOAT').asFloat;
finally
close;
end;
end;
end;
Function ReadStr(SName:String):String;
Begin
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Locate('名称',SName,[]) then Result:=Fieldbyname('VAR_STR').asString;
finally
close;
end;
end;
end;
Function ReadBlob(SName:String):TStream;
Begin
With MAINFORM.SYS_VALUES do
Begin
Result:=TMemoryStream.Create;
Open;
try
if Locate('名称',SName,[]) then TBlobField(Fieldbyname('VAR_BLOB')).SaveToStream(Result);
Result.Position:=0;
finally
close;
end;
end;
end;
Function Readtext(SName:String):TStrings;
Begin
With MAINFORM.SYS_VALUES do
Begin
Result:=TStringList.Create;
Open;
try
if Locate('名称',SName,[]) then Result.assign(TBlobField(Fieldbyname('VAR_TEXT')));
finally
close;
end;
end;
end;
Procedure WriteStr(SName:String;Value:String);
Begin
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Not Locate('名称',SName,[]) then
Append;
Edit;
Fieldbyname('名称').AsString:=SName;
Fieldbyname('VAR_STR').AsString:=Value;
Post;
finally
close;
end;
end;
end;
Procedure WriteBool(SName:String;Value:Boolean);
Begin
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Not Locate('名称',SName,[]) then
Append;
Edit;
Fieldbyname('名称').AsString:=SName;
Fieldbyname('VAR_Bool').AsBoolean:=Value;
Post;
finally
close;
end;
end;
end;
Procedure WriteFloat(SName:String;Value:Real);
Begin
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Not Locate('名称',SName,[]) then
Append;
Edit;
Fieldbyname('名称').AsString:=SName;
Fieldbyname('VAR_FLOAT').AsFloat:=Value;
Post;
finally
close;
end;
end;
end;
Procedure WriteTEXT(SName:String;var TEXT:TStrings);
Begin
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Not Locate('名称',SName,[]) then
Append;
Edit;
Fieldbyname('名称').AsString:=SName;
TBlobField(Fieldbyname('VAR_TEXT')).Assign(Text);
Post;
finally
close;
end;
end;
end;
Procedure WriteBLOB(SName:String;var BLOB:TStream);
Begin
With MAINFORM.SYS_VALUES do
Begin
Open;
try
if Not Locate('名称',SName,[]) then Append;
Edit;
Fieldbyname('名称').AsString:=SName;
TBlobField(Fieldbyname('VAR_BLOB')).LoadFromStream(BLOB);
Post;
finally
close;
end;
end;
end;
Function ClientDir:String;
var TempStr:String;
Begin
TempStr:=ExtractFileDir(Application.Exename);
if Copy(TempStr,Length(TempStr),1)='\' then Result:=TempStr else Result:=TempStr+'\';
end;
Function PCName:String;
var pcComputer:PChar;
dwCSize:DWORD;
begin
dwCSize := MAX_COMPUTERNAME_LENGTH+1;
result:='';
GetMem(pcComputer,dwCSize);
try
if Windows.GetComputerName(pcComputer,dwCSize) then Result:=pcComputer;
finally
FreeMem(pcComputer);
end;
end;
procedure TMAINFORM.AREA_SETExecute(Sender: TObject);
var Stream:TStream;
begin
With TAREADlg.create(Application) do
Begin
Stream:=ReadBlob('区域设置');
Editing:=True;
TV.LoadFromStream(Stream);
Stream.Free;
Stream:=TMemoryStream.Create;
try
if showmodal=mrok then
Begin
TV.saveToStream(Stream);
Stream.Position:=0;
WriteBlob('区域设置',Stream);
end;
finally
Stream.free;
free;
end;
end;
end;
procedure TMAINFORM.BOTTLE_TYPEExecute(Sender: TObject);
begin
With TBOTTLETYPE.create(Application) do
Begin
try
TYPES.open;
if showmodal=mrok then
Begin
TYPES.edit;
TYPES.post;
end else TYPES.cancel;
finally
free;
end;
end;
end;
procedure TMAINFORM.SaveDataAccept(Sender: TObject);
begin
DeleteFile(Savedata.Dialog.FileName);
ADOCOMM.commandtext:='BACKUP DATABASE EASYPOS TO DISK = '+#39+SaveData.Dialog.FileName+#39;
ADOCOMM.Execute;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -