347 lines
9.9 KiB
ObjectPascal
347 lines
9.9 KiB
ObjectPascal
unit U_GRYearPFList_ZPF;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
|
||
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
|
||
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses,
|
||
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
|
||
cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter,
|
||
RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport,
|
||
cxTextEdit, cxPC, cxCheckBox, Menus;
|
||
|
||
|
||
type
|
||
TfrmGRYearPFList_ZPF = class(TForm)
|
||
ToolBar1: TToolBar;
|
||
TBRafresh: TToolButton;
|
||
TBClose: TToolButton;
|
||
cxGridPopupMenu1: TcxGridPopupMenu;
|
||
ADOQueryCmd: TADOQuery;
|
||
ADOQueryMain: TADOQuery;
|
||
ADOQueryTemp: TADOQuery;
|
||
DataSource1: TDataSource;
|
||
TBExport: TToolButton;
|
||
Order_Main: TClientDataSet;
|
||
RM1: TRMGridReport;
|
||
RMDBMain: TRMDBDataSet;
|
||
RMXLSExport1: TRMXLSExport;
|
||
CDS_PRT: TClientDataSet;
|
||
Panel1: TPanel;
|
||
BegDate: TDateTimePicker;
|
||
EndDate: TDateTimePicker;
|
||
Label1: TLabel;
|
||
ToolButton1: TToolButton;
|
||
ToolButton4: TToolButton;
|
||
ADOQueryPrint: TADOQuery;
|
||
lbl1: TLabel;
|
||
lbl3: TLabel;
|
||
GRName: TEdit;
|
||
Dept: TEdit;
|
||
Source1: TDataSource;
|
||
Order_Sub: TClientDataSet;
|
||
cxGrid1: TcxGrid;
|
||
Tv1: TcxGridDBTableView;
|
||
v1Filltime: TcxGridDBColumn;
|
||
v1GRName: TcxGridDBColumn;
|
||
v1YWNum: TcxGridDBColumn;
|
||
v1XZNum: TcxGridDBColumn;
|
||
v1SCNum: TcxGridDBColumn;
|
||
v1CWNum: TcxGridDBColumn;
|
||
TVZPFNum: TcxGridDBColumn;
|
||
v1Dept: TcxGridDBColumn;
|
||
v1GangWei: TcxGridDBColumn;
|
||
v1RZDate: TcxGridDBColumn;
|
||
cxGrid1Level1: TcxGridLevel;
|
||
v1PFSumNum: TcxGridDBColumn;
|
||
v1WPFSumNum: TcxGridDBColumn;
|
||
cxGrid3: TcxGrid;
|
||
TV2: TcxGridDBTableView;
|
||
TPFYDian: TcxGridDBColumn;
|
||
TPFMNum: TcxGridDBColumn;
|
||
TPFYWNum: TcxGridDBColumn;
|
||
TPFXZNum: TcxGridDBColumn;
|
||
TPFSCNum: TcxGridDBColumn;
|
||
V2FPCWNum: TcxGridDBColumn;
|
||
cxGridLevel2: TcxGridLevel;
|
||
cxGrid2: TcxGrid;
|
||
Tv3: TcxGridDBTableView;
|
||
cxGridDBColumn1: TcxGridDBColumn;
|
||
cxGridDBColumn2: TcxGridDBColumn;
|
||
TPFZPNum: TcxGridDBColumn;
|
||
TPFSJNum: TcxGridDBColumn;
|
||
TPFXJNum: TcxGridDBColumn;
|
||
cxGridLevel1: TcxGridLevel;
|
||
DataSource3: TDataSource;
|
||
ADOQuery1: TADOQuery;
|
||
v1PFMonth: TcxGridDBColumn;
|
||
Label3: TLabel;
|
||
PFYear: TEdit;
|
||
Label4: TLabel;
|
||
PFMonth: TEdit;
|
||
v1PFYear: TcxGridDBColumn;
|
||
Label2: TLabel;
|
||
ZDept: TEdit;
|
||
v1ZDept: TcxGridDBColumn;
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure TBExportClick(Sender: TObject);
|
||
procedure TBRafreshClick(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure ToolButton1Click(Sender: TObject);
|
||
procedure ToolButton4Click(Sender: TObject);
|
||
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
procedure GRNameChange(Sender: TObject);
|
||
|
||
private
|
||
FInt,PFInt:Integer;
|
||
canshu1,canshu2:string;
|
||
FNowDate:TDateTime;
|
||
procedure InitGrid();
|
||
procedure InitForm();
|
||
{ Private declarations }
|
||
public
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmGRYearPFList_ZPF: TfrmGRYearPFList_ZPF;
|
||
|
||
implementation
|
||
uses
|
||
U_DataLink,U_RTFun,U_KDInPut,U_ModuleNote, U_ZDYHelp,U_GRYearPFList_Sub,
|
||
U_ZDYHelpSel;
|
||
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmGRYearPFList_ZPF.FormDestroy(Sender: TObject);
|
||
begin
|
||
frmGRYearPFList_ZPF:=nil;
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.FormClose(Sender: TObject;
|
||
var Action: TCloseAction);
|
||
begin
|
||
Action:=caFree;
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.TBCloseClick(Sender: TObject);
|
||
begin
|
||
Close;
|
||
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȿ<EFBFBD><C8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',Tv1,'н<><D0BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.InitGrid();
|
||
var Fint: integer;
|
||
FDEPT,ZDept: string;
|
||
begin
|
||
if trim(DParameters1)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
with ADOQuery1 do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select A.*,B.* from OA_YG_DangAn A ');
|
||
sql.Add('inner join SY_Dept B on A.DPID=B.DPID');
|
||
SQL.Add('where isnull(A.YGEName,YGName)='''+trim(DName)+'''');
|
||
Open;
|
||
end;
|
||
FDEPT:=ADOQuery1.fieldbyname('DPParent').AsString;
|
||
for Fint:=2 to ADOQuery1.fieldbyname('DPlevel').AsInteger-1 do
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from SY_Dept where DPID='''+trim(FDEPT)+'''');
|
||
open;
|
||
end;
|
||
FDEPT:=Trim(ADOQueryCmd.fieldbyname('DPParent').AsString);
|
||
end;
|
||
if ADOQueryCmd.IsEmpty=False then
|
||
ZDept:=trim(ADOQueryCmd.fieldbyname('DPName').asstring);
|
||
end;
|
||
with ADOQueryMain DO
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select A.*,B.*, ');
|
||
sql.add('ZPFNum=isnull(A.PFSumNum*0.6+B.WPFSumNum*0.4,0) ');
|
||
sql.add('from GRYearPF_Sub A ');
|
||
sql.Add('inner join GRYearPFWB_Sub B on B.PFSubid=A.PFSubid ');
|
||
sql.Add('where A.Filltime>='''+formatdatetime('yyyy-MM-dd',BegDate.Time)+''' ');
|
||
sql.Add('and A.Filltime<'''+formatdatetime('yyyy-MM-dd',enddate.Time+1)+''' ');
|
||
sql.Add('and (isnull(A.PFStatus,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
|
||
sql.Add('or isnull(B.PFStatus,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
|
||
if trim(DParameters1)='' then
|
||
begin
|
||
sql.Add('and B.GRName='''+trim(DName)+''' ');
|
||
end;
|
||
if trim(DParameters1)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
sql.Add('and A.ZDept='''+trim(ZDept)+''' ');
|
||
//sql.Add('and B.ZDept='''+trim(ZDept)+'''')
|
||
end;
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryMain,Order_Main);
|
||
SInitCDSData20(ADOQueryMain,Order_Main);
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from GRYearPFWB_SubMX ');
|
||
sql.Add('where PFSubID='''+trim(Order_Main.fieldbyname('PFSubID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryCmd,Order_Sub);
|
||
SInitCDSData20(ADOQueryCmd,Order_Sub);
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from GRYearPF_SubMX ');
|
||
sql.Add('where PFSubID='''+trim(Order_Main.fieldbyname('PFSubID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryCmd,CDS_PRT);
|
||
SInitCDSData20(ADOQueryCmd,CDS_PRT);
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.InitForm();
|
||
begin
|
||
EndDate.Date:=SGetServerDate(ADOQueryTemp);
|
||
BegDate.Date:=SGetServerDate(ADOQueryTemp)-7;
|
||
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȿ<EFBFBD><C8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',Tv1,'н<><D0BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.TBExportClick(Sender: TObject);
|
||
begin
|
||
if Order_Main.IsEmpty then Exit;
|
||
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',cxGrid1);
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.TBRafreshClick(Sender: TObject);
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.FormShow(Sender: TObject);
|
||
var
|
||
i:Integer;
|
||
begin
|
||
InitForm();
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.ToolButton1Click(Sender: TObject);
|
||
begin
|
||
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
|
||
SCreateCDS20(ADOQueryMain,Order_Main);
|
||
SInitCDSData20(ADOQueryMain,Order_Main);
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.ToolButton4Click(Sender: TObject);
|
||
var
|
||
fPrintFile:String;
|
||
begin
|
||
if Order_Main.IsEmpty then Exit;
|
||
if Order_Main.Locate('SSel',True,[])=False then
|
||
begin
|
||
Application.MessageBox('û<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩ.rmf' ;
|
||
Order_Main.DisableControls;
|
||
with Order_Main do
|
||
begin
|
||
First;
|
||
while not eof do
|
||
begin
|
||
if Order_Main.FieldByName('SSel').AsBoolean=True then
|
||
begin
|
||
{with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from JYOrder_Main_MD where MDID='''+Trim(Order_Main.fieldbyname('MDID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
if ADOQueryTemp.FieldByName('NotPrint').AsBoolean=True then
|
||
begin
|
||
Order_Main.EnableControls;
|
||
Application.MessageBox('<27><><EFBFBD>ܴ<EFBFBD>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӡ<EFBFBD><D3A1><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
|
||
Exit;
|
||
end; }
|
||
if FileExists(fPrintFile) then
|
||
begin
|
||
with ADOQueryPrint do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select B.OrderNo,B.MPRTCodeName,B.MPRTMF,B.MPRTKZ,C.PRTHX,C.PRTColorNo,C.PRTColor,GangNo=A.GangNo,A.PS,A.Qty,A.QtyUnit,A.MDID ');
|
||
SQL.Add(',B.MPRTCode,B.MPRTGY,C.PRTColorEng,A.SelfGangNo');
|
||
sql.Add('from JYOrder_Main_MD A');
|
||
sql.Add('inner join JYOrder_Main B on A.OrdMainid=B.Mainid');
|
||
sql.Add(' inner join JYOrder_Sub C on A.OrdSubid=C.SubId');
|
||
sql.Add(' where A.MDID='''+Trim(Order_Main.fieldbyname('MDID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
RM1.LoadFromFile(fPrintFile);
|
||
//RM1.ShowReport;
|
||
RM1.PrintReport;
|
||
end else
|
||
begin
|
||
Order_Main.DisableControls;
|
||
Application.MessageBox(PChar('û<><C3BB><EFBFBD><EFBFBD>'+ExtractFilePath(Application.ExeName)+'Report\<5C><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>ǩ.rmf'),'<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end;
|
||
|
||
Next;
|
||
end;
|
||
end;
|
||
Order_Main.EnableControls;
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.Tv1CellClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from GRYearPFWB_SubMX ');
|
||
sql.Add('where PFSubID='''+trim(Order_Main.fieldbyname('PFSubID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryCmd,Order_Sub);
|
||
SInitCDSData20(ADOQueryCmd,Order_Sub);
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from GRYearPF_SubMX ');
|
||
sql.Add('where PFSubID='''+trim(Order_Main.fieldbyname('PFSubID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryCmd,CDS_PRT);
|
||
SInitCDSData20(ADOQueryCmd,CDS_PRT);
|
||
end;
|
||
|
||
procedure TfrmGRYearPFList_ZPF.GRNameChange(Sender: TObject);
|
||
begin
|
||
if ADOQueryMain.Active=False then Exit;
|
||
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
|
||
SCreateCDS20(ADOQueryMain,Order_Main);
|
||
SInitCDSData20(ADOQueryMain,Order_Main);
|
||
end;
|
||
|
||
end.
|