📄 inv_journalqry.pas
字号:
unit Inv_JournalQry;
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Base_Qry, Menus, ExtPrintReport, Db, ActnList, AdODB, Grids, DBGridEh,
StdCtrls, ExtCtrls, ComCtrls, ToolWin, DBCtrls, jpeg;
Type
TFrm_Inv_JournalQry = Class(TFrm_Base_Qry)
Label1: TLabel;
DBText1: TDBText;
procedure DBGridEhGetCellParams(Sender: TObject; Column: TColumnEh;
AFont: TFont; var Background: TColor; State: TGridDrawState);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Act_LookExecute(Sender: TObject);
private
{ Private declarations }
Date1,Date2:String;
public
{ Public declarations }
procedure InitForm(AdOConnection:TAdOConnection;ShowExtendColumn:Boolean);Override;
procedure SetFormParam(FrmParam1,FrmParam2,FrmParam3,FrmParam4,
FrmParam5,FrmParam6:String);Override;
end;
var
Frm_Inv_JournalQry: TFrm_Inv_JournalQry;
implementation
uses Inv_JournalQry_C, Inv_SaleBillQry, Inv_MnInBillQry,
Inv_PurchaseInBillQry, Inv_OpOutBillQry, Inv_MnOutBillQry,
Inv_OtherOutBillQry, Inv_OtherInBillQry, Inv_WhPMoveBillQry,
Inv_CheckInBillQry, Sys_Global, Inv_JournalQry_D, Inv_OpBillQry;
{$R *.DFM}
procedure TFrm_Inv_JournalQry.InitForm(AdOConnection:TAdOConnection;ShowExtendColumn:Boolean);
begin
AmountFields:='InvBillAmount,OInvBillAmount,InvBlncAmount,';
PriceFields:='InvBillPrice,OInvBillPrice,InvBlncPrice,';
inherited;
try
AdoQry_Tmp.Close;
AdoQry_Tmp.SQL.Text:='Drop TABLE #JournalQry';
AdoQry_Tmp.ExecSQL;
except
end;
AdoQry_Tmp.Close;
AdoQry_Tmp.SQL.Text:='CREATE TABLE #JournalQry ('
+' [JournalQryId] [numeric](18, 0) IDENTITY (1, 1) NOT NULL'
+',[DateSting] [varchAr] (10) NULL'
+',[MonthSting] [varchAr] (10) NULL'
+',[BillTypeCode] [varchAr] (4) NULL'
+',[InvBillNo] [varchAr] (30) NULL'
+',[MoPoNo] [varchAr] (30) NULL'
+',[InvBillRemArk] [varchAr] (200) NULL'
+',[InvBillQty] [float] NULL'
+',[OInvBillQty] [float] NULL'
+',[InvBlncQty] [float] NULL'
+',[InvBillPrice] [float] NULL'
+',[OInvBillPrice] [float] NULL'
+',[InvBlncPrice] [float] NULL'
+',[InvBillAmount] [float] NULL'
+',[OInvBillAmount] [float] NULL'
+',[InvBlncAmount] [float] NULL'
+',[InvBillCreateTime] [datetime] NULL'
+',[Valuation] [int] NULL'
+',[WHCode] [varchAr] (4) NULL'
+' )';
AdoQry_Tmp.ExecSQL;
SelectFromSQL:='Select DateSting'
+',MonthSting'
+',BillTypeCode'
+',InvBillNo'
+',MoPoNo'
+',InvBillRemArk'
+',InvBillQty'
+',OInvBillQty'
+',InvBlncQty'
+',InvBillPrice'
+',OInvBillPrice'
+',InvBlncPrice'
+',InvBillAmount'
+',OInvBillAmount'
+',InvBlncAmount'
+',InvBillCreateTime'
+',Valuation'
+',WHCode'
+' From #JournalQry';
OrderByFields:='MonthSting,InvBillCreateTime';
Frm_Sys_Condition:=TFrm_Inv_JournalQry_C.Create(Self);
if Param1='' then
Act_Filter.Execute
else
begin
FormStyle:=fsNormal;
Windowstate:=wsMaximized;
end;
end;
procedure TFrm_Inv_JournalQry.DBGridEhGetCellParams(Sender: TObject;
Column: TColumnEh; AFont: TFont; var Background: TColor;
State: TGridDrawState);
begin
inherited;
if (gdSelected in State)or(gdFocused in State) then
begin
Background:=clNavy;
AFont.Color:=clWindow;
end
else
begin
if AdoQry_Main.fieldbyname('Valuation').AsInteger=1 then
begin
AFont.Color:=clBlue;
end
else
AFont.Color:=clBlack;
end;
if (Column.FieldName='InvBillRemArk')
and((AdoQry_Main.fieldbyname('InvBillRemArk').AsString='本月合计')
Or(AdoQry_Main.fieldbyname('InvBillRemArk').AsString='本月合计(未结帐)')) then
begin
AFont.Color:=clRed;
end
end;
procedure TFrm_Inv_JournalQry.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
AdoQry_Tmp.Close;
AdoQry_Tmp.SQL.Text:='Drop TABLE #JournalQry';
AdoQry_Tmp.ExecSQL;
if Param1<>'' then
begin
Frm_Inv_JournalQry.Release;
Frm_Inv_JournalQry:=nil;
end;
end;
procedure TFrm_Inv_JournalQry.Act_LookExecute(Sender: TObject);
begin
inherited;
if AdoQry_Main.Active=False then
Exit;
if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0203')
or(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0204')then
begin
Application.CreateForm(TFrm_Inv_SaleBillQry,Frm_Inv_SaleBillQry);
Frm_Inv_SaleBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString,'Stk');
Frm_Inv_SaleBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0105')
or(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0104')then
begin
Application.CreateForm(TFrm_Inv_MnInBillQry,Frm_Inv_MnInBillQry);
Frm_Inv_MnInBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString);
Frm_Inv_MnInBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0101')
or(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0102')
or(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0103')then
begin
Application.CreateForm(TFrm_Inv_PurchaseInBillQry,Frm_Inv_PurchaseInBillQry);
Frm_Inv_PurchaseInBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString);
Frm_Inv_PurchaseInBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0202')then
begin
Application.CreateForm(TFrm_Inv_OpOutBillQry,Frm_Inv_OpOutBillQry);
Frm_Inv_OpOutBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString);
Frm_Inv_OpOutBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0201')then
begin
Application.CreateForm(TFrm_Inv_MnOutBillQry,Frm_Inv_MnOutBillQry);
Frm_Inv_MnOutBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString);
Frm_Inv_MnOutBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0299')then
begin
Application.CreateForm(TFrm_Inv_OtherOutBillQry,Frm_Inv_OtherOutBillQry);
Frm_Inv_OtherOutBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString);
Frm_Inv_OtherOutBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0199')then
begin
Application.CreateForm(TFrm_Inv_OtherInBillQry,Frm_Inv_OtherInBillQry);
Frm_Inv_OtherInBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString,
AdoQry_Main.fieldbyname('DateSting').AsString);
Frm_Inv_OtherInBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='1101')then
begin
Application.CreateForm(TFrm_Inv_WhPMoveBillQry,Frm_Inv_WhPMoveBillQry);
Frm_Inv_WhPMoveBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString,
AdoQry_Main.fieldbyname('BillTypeCode').AsString);
Frm_Inv_WhPMoveBillQry.InitForm(DBConnect,True);
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='1102')then
begin
Application.CreateForm(TFrm_Inv_CheckInBillQry,Frm_Inv_CheckInBillQry);
Frm_Inv_CheckInBillQry.Getvar(GetCode(AdoQry_Main.fieldbyname('InvBillNo').AsString),
AdoQry_Main.fieldbyname('WHCode').AsString);
Frm_Inv_CheckInBillQry.InitForm(DBConnect,'ReadOnly',AdoQry_Main);
Frm_Inv_CheckInBillQry.ShowModal;
Frm_Inv_CheckInBillQry.Release;
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='0000')then
begin
Frm_Inv_JournalQry_D:=TFrm_Inv_JournalQry_D.Create(Self);
Frm_Inv_JournalQry_D.InitForm(DBConnect,'ReadOnly',AdoQry_Main);
Frm_Inv_JournalQry_D.ShowModal;
Frm_Inv_JournalQry_D.Release;
end
else if(AdoQry_Main.fieldbyname('BillTypeCode').AsString='1201')
or(AdoQry_Main.fieldbyname('BillTypeCode').AsString='1202')then
begin
Frm_Inv_OpBillQry:=TFrm_Inv_OpBillQry.Create(Self);
Frm_Inv_OpBillQry.InitForm(DBConnect,'ReadOnly',AdoQry_Main);
Frm_Inv_OpBillQry.SetFormParam(Date1,Date2,'','','','');
Frm_Inv_OpBillQry.ShowModal;
Frm_Inv_OpBillQry.Release;
end;
end;
procedure TFrm_Inv_JournalQry.SetFormParam(FrmParam1, FrmParam2, FrmParam3,
FrmParam4, FrmParam5, FrmParam6: String);
begin
inherited;
Date1:=FrmParam1;
Date2:=FrmParam2;
if FrmParam1='' then
begin
Frm_Sys_Condition.SetDBConnect(DBConnect);
Frm_Sys_Condition.SetSysParam(UserCode,ModuleCode,MenuId,LoginDate);
Frm_Sys_Condition.FatherForm:=self;
Frm_Sys_Condition.SetFormParam(FrmParam1, FrmParam2, FrmParam3,
FrmParam4, FrmParam5, FrmParam6);
Condition:=Frm_Sys_Condition.Condition;
Lbl_Condition.Caption:=Frm_Sys_Condition.ConditionHint;
GetData;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -