491 lines
13 KiB
ObjectPascal
491 lines
13 KiB
ObjectPascal
unit U_QCRKList_SD;
|
||
|
||
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, cxCheckBox, cxCalendar, cxSplitter,
|
||
RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls,
|
||
Menus, cxButtonEdit, cxDropDownEdit, cxPC;
|
||
|
||
type
|
||
TfrmQCRKList_SD = class(TForm)
|
||
ToolBar1: TToolBar;
|
||
TBRafresh: TToolButton;
|
||
TBFind: TToolButton;
|
||
TBAdd: TToolButton;
|
||
TBClose: TToolButton;
|
||
Tv1: TcxGridDBTableView;
|
||
cxGrid1Level1: TcxGridLevel;
|
||
cxGrid1: TcxGrid;
|
||
cxGridPopupMenu1: TcxGridPopupMenu;
|
||
ADOQueryCmd: TADOQuery;
|
||
ADOQueryMain: TADOQuery;
|
||
ADOQueryTemp: TADOQuery;
|
||
DataSource1: TDataSource;
|
||
TBExport: TToolButton;
|
||
Order_Main: TClientDataSet;
|
||
Panel1: TPanel;
|
||
v1Column1: TcxGridDBColumn;
|
||
Label34: TLabel;
|
||
v1Column7: TcxGridDBColumn;
|
||
v1Column9: TcxGridDBColumn;
|
||
MYCode: TEdit;
|
||
BegDate: TDateTimePicker;
|
||
EndDate: TDateTimePicker;
|
||
ToolButton4: TToolButton;
|
||
RM1: TRMGridReport;
|
||
RMDBMain: TRMDBDataSet;
|
||
RMXLSExport2: TRMXLSExport;
|
||
CDS_PRT: TClientDataSet;
|
||
v1Column17: TcxGridDBColumn;
|
||
v1Column5: TcxGridDBColumn;
|
||
Label2: TLabel;
|
||
MYName: TEdit;
|
||
v1Column3: TcxGridDBColumn;
|
||
v1Column8: TcxGridDBColumn;
|
||
Label1: TLabel;
|
||
Note: TEdit;
|
||
v1GYLXName: TcxGridDBColumn;
|
||
Label5: TLabel;
|
||
GYLXName: TEdit;
|
||
labMYType: TLabel;
|
||
PopupMenu1: TPopupMenu;
|
||
N1: TMenuItem;
|
||
N2: TMenuItem;
|
||
CheckBox1: TCheckBox;
|
||
Label3: TLabel;
|
||
MYColor: TEdit;
|
||
ToolButton1: TToolButton;
|
||
cxGrid2: TcxGrid;
|
||
TV2: TcxGridDBTableView;
|
||
cxMYColorNo: TcxGridDBColumn;
|
||
cxGangQty: TcxGridDBColumn;
|
||
cxPS: TcxGridDBColumn;
|
||
cxKgQty: TcxGridDBColumn;
|
||
cxQty: TcxGridDBColumn;
|
||
cxNote: TcxGridDBColumn;
|
||
cxGridLevel1: TcxGridLevel;
|
||
cxMYColor: TcxGridDBColumn;
|
||
Order_MX: TClientDataSet;
|
||
DataSource2: TDataSource;
|
||
ADOQuery1: TADOQuery;
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure FormCreate(Sender: TObject);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure TBFindClick(Sender: TObject);
|
||
procedure TBDelClick(Sender: TObject);
|
||
procedure TBExportClick(Sender: TObject);
|
||
procedure TBRafreshClick(Sender: TObject);
|
||
procedure TBAddClick(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure CheckBox1Click(Sender: TObject);
|
||
procedure CheckBox2Click(Sender: TObject);
|
||
procedure ToolButton1Click(Sender: TObject);
|
||
procedure CustomerNoNameChange(Sender: TObject);
|
||
procedure N2Click(Sender: TObject);
|
||
procedure N1Click(Sender: TObject);
|
||
procedure cxTabControl1Change(Sender: TObject);
|
||
procedure ZJStatusChange(Sender: TObject);
|
||
procedure ToolButton4Click(Sender: TObject);
|
||
procedure TBEditClick(Sender: TObject);
|
||
procedure TV2CellDblClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton;
|
||
Shift: TShiftState; X, Y: Integer);
|
||
private
|
||
canshu1:string;
|
||
DQdate:TDateTime;
|
||
procedure InitGrid();
|
||
procedure InitForm();
|
||
function DelData():Boolean;
|
||
{ Private declarations }
|
||
public
|
||
FFInt,FCloth:Integer;
|
||
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmQCRKList_SD: TfrmQCRKList_SD;
|
||
|
||
implementation
|
||
uses
|
||
U_DataLink,U_RTFun,U_ZDYHelp,U_QCRKInPut_SD,U_LLRKInPut_SD;
|
||
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmQCRKList_SD.FormDestroy(Sender: TObject);
|
||
begin
|
||
frmQCRKList_SD:=nil;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.FormClose(Sender: TObject;
|
||
var Action: TCloseAction);
|
||
begin
|
||
Action:=caFree;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.FormCreate(Sender: TObject);
|
||
begin
|
||
canshu1:=Trim(DParameters1);
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.TBCloseClick(Sender: TObject);
|
||
begin
|
||
WriteCxGrid('<27>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD><EFBFBD>RS21',Tv1,'ó<><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
WriteCxGrid('<27>ڳ<EFBFBD><DAB3><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>RS21',Tv2,'ó<><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
Close;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.InitGrid();
|
||
begin
|
||
try
|
||
ADOQueryMain.DisableControls;
|
||
with ADOQueryMain do
|
||
begin
|
||
Filtered:=False;
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' select A.CRTime,A.MYCode,A.MYName,B.GYLXName,Sum(A.GangQty) GangQty ');
|
||
sql.Add(',Sum(PS) PS,Sum(KgQty) KgQty,Sum(Qty) Qty');
|
||
sql.Add(' from CK_MYSC_CR A ');
|
||
sql.Add(' inner join ML_Manage B on A.MLID=B.MLID');
|
||
sql.Add(' where 1=1 ');
|
||
if CheckBox1.Checked=False then
|
||
begin
|
||
sql.Add(' and CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date))+'''');
|
||
sql.Add(' and CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
|
||
BegDate.Visible:=false;
|
||
EndDate.Visible:=false;
|
||
end
|
||
else
|
||
begin
|
||
sql.Add(' and CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
|
||
sql.Add(' and CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
|
||
BegDate.Visible:=true;
|
||
EndDate.Visible:=true;
|
||
end;
|
||
sql.Add(' and isnull(CRType,'''')=''<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>'' ');
|
||
{if Trim(canshu1)<>'<27><>Ȩ<EFBFBD><C8A8>' then
|
||
begin
|
||
sql.Add(' and FillerCode='''+Trim(DCode)+'''');
|
||
end; }
|
||
sql.Add('group by A.CRTime,A.MYCode,A.MYName,B.GYLXName');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryMain,Order_Main);
|
||
SInitCDSData20(ADOQueryMain,Order_Main);
|
||
finally
|
||
ADOQueryMain.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
|
||
procedure TfrmQCRKList_SD.InitForm();
|
||
begin
|
||
BegDate.Date:=SGetServerDateMBeg(ADOQueryTemp);
|
||
EndDate.Date:=SGetServerDate(ADOQueryTemp);
|
||
ReadCxGrid('<27>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD><EFBFBD>RS21',Tv1,'ó<><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
ReadCxGrid('<27>ڳ<EFBFBD><DAB3><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>RS21',Tv2,'ó<><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.TBFindClick(Sender: TObject);
|
||
begin
|
||
if ADOQueryMain.Active=False then Exit;
|
||
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
|
||
SCreateCDS20(ADOQueryMain,Order_Main);
|
||
SInitCDSData20(ADOQueryMain,Order_Main);
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.TBDelClick(Sender: TObject);
|
||
begin
|
||
if Order_Main.IsEmpty then Exit;
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from CK_MYSC_CR_MX where MYID='''+Trim(Order_Main.fieldbyname('MYID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
if ADOQueryTemp.IsEmpty=False then
|
||
begin
|
||
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Application.MessageBox('ȷ<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
|
||
if DelData() then
|
||
begin
|
||
//Order_Main.Delete;
|
||
end;
|
||
end;
|
||
|
||
function TfrmQCRKList_SD.DelData():Boolean;
|
||
begin
|
||
try
|
||
Result:=false;
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
Order_Main.DisableControls;
|
||
with Order_Main do
|
||
begin
|
||
//First;
|
||
// while Order_Main.Locate('SSel',True,[]) do
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' insert into CK_MYSC_CR_Log ');
|
||
sql.Add(' select * from CK_MYSC_CR where MYID='''+Trim(Order_Main.fieldbyname('MYID').AsString)+'''');
|
||
sql.Add(' UPdate CK_MYSC_CR_Log Set DelTime=getdate(),DelerCode='''+Trim(DCode)+''',Deler='''+Trim(DName)+'''');
|
||
sql.Add(' where MYID='''+Trim(Order_Main.fieldbyname('MYID').AsString)+'''');
|
||
sql.Add('Delete CK_MYSC_CR where MYId='''+Trim(Order_Main.fieldbyname('MYId').AsString)+'''');
|
||
ExecSQL;
|
||
end;
|
||
Order_Main.Delete;
|
||
end;
|
||
end;
|
||
Order_Main.EnableControls;
|
||
|
||
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
Result:=True;
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Result:=False;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>쳣<EFBFBD><ECB3A3>','<27><>ʾ',0);
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.TBExportClick(Sender: TObject);
|
||
begin
|
||
if ADOQueryMain.IsEmpty then Exit;
|
||
TcxGridToExcel(Self.Caption,cxGrid1);
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.TBRafreshClick(Sender: TObject);
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.TBAddClick(Sender: TObject);
|
||
var
|
||
maxno:string;
|
||
begin
|
||
try
|
||
frmLLRKInPut_SD:=TfrmLLRKInPut_SD.Create(Application);
|
||
with frmLLRKInPut_SD do
|
||
begin
|
||
PState:=0;
|
||
FMainId:='';
|
||
FRead:='';
|
||
if ShowModal=1 then
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
finally
|
||
frmLLRKInPut_SD.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.FormShow(Sender: TObject);
|
||
begin
|
||
InitForm();
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.CheckBox1Click(Sender: TObject);
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.CheckBox2Click(Sender: TObject);
|
||
begin
|
||
TBRafresh.Click;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.ToolButton1Click(Sender: TObject);
|
||
begin
|
||
if Order_MX.IsEmpty then Exit;
|
||
try
|
||
frmQCRKInPut_SD:=TfrmQCRKInPut_SD.Create(Application);
|
||
with frmQCRKInPut_SD do
|
||
begin
|
||
PState:=1;
|
||
FMainId:=Trim(Self.Order_MX.fieldbyname('MYId').AsString);
|
||
TBSave.Visible:=False;
|
||
FRead:='';
|
||
BtnDel.Visible:=False;
|
||
cxGroupBox1.Visible:=False;
|
||
if ShowModal=1 then
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
finally
|
||
frmQCRKInPut_SD.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.CustomerNoNameChange(Sender: TObject);
|
||
begin
|
||
if ADOQueryMain.Active=False then Exit;
|
||
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
|
||
SCreateCDS20(ADOQueryMain,Order_Main);
|
||
SInitCDSData20(ADOQueryMain,Order_Main);
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.N2Click(Sender: TObject);
|
||
begin
|
||
if Order_Main.IsEmpty then Exit;
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from CK_MYSC_CR_MX where MYID='''+Trim(Order_Main.fieldbyname('MYID').AsString)+'''');
|
||
Open;
|
||
end;
|
||
if ADOQueryTemp.IsEmpty=False then
|
||
begin
|
||
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Application.MessageBox('ȷ<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
|
||
if DelData() then
|
||
begin
|
||
//Order_Main.Delete;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.N1Click(Sender: TObject);
|
||
begin
|
||
if Order_Main.IsEmpty then Exit;
|
||
try
|
||
frmQCRKInPut_SD:=TfrmQCRKInPut_SD.Create(Application);
|
||
with frmQCRKInPut_SD do
|
||
begin
|
||
PState:=1;
|
||
FMainId:=Trim(Self.Order_Main.fieldbyname('MYId').AsString);
|
||
if ShowModal=1 then
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
finally
|
||
frmQCRKInPut_SD.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.cxTabControl1Change(Sender: TObject);
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.ZJStatusChange(Sender: TObject);
|
||
begin
|
||
TBFind.Click;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.ToolButton4Click(Sender: TObject);
|
||
var
|
||
fPrintFile:string;
|
||
begin
|
||
if Order_Main.IsEmpty then Exit;
|
||
if Trim(Order_Main.fieldbyname('Chker').AsString)='' then exit;
|
||
fPrintFile:=ExtractFilePath(Application.ExeName)+'Report\<5C><><EFBFBD>ⱨ<EFBFBD><E2B1A8>.rmf';
|
||
RMXLSExport2:= TRMXLSExport.Create(RMXLSExport2);
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from Test_Report where TRId='''+Trim(Order_Main.fieldbyname('TRId').AsString)+'''');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryTemp,CDS_PRT);
|
||
SInitCDSData20(ADOQueryTemp,CDS_PRT);
|
||
if FileExists(fPrintFile) then
|
||
begin
|
||
//RMVariables['OrderUnit']:=Order_Main.fieldbyname('OrderUnit').Value;
|
||
RM1.LoadFromFile(fPrintFile);
|
||
RM1.ShowReport;
|
||
end else
|
||
begin
|
||
Application.MessageBox(PChar('û<><C3BB><EFBFBD><EFBFBD>'+ExtractFilePath(Application.ExeName)+'Report\<5C><><EFBFBD>ⱨ<EFBFBD><E2B1A8>.rmf'),'<27><>ʾ',0);
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.TBEditClick(Sender: TObject);
|
||
begin
|
||
if Order_Main.IsEmpty then Exit;
|
||
try
|
||
frmQCRKInPut_SD:=TfrmQCRKInPut_SD.Create(Application);
|
||
with frmQCRKInPut_SD do
|
||
begin
|
||
PState:=1;
|
||
FMainId:=Trim(Self.Order_Main.fieldbyname('MYId').AsString);
|
||
if ShowModal=1 then
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
finally
|
||
frmQCRKInPut_SD.Free;
|
||
end;
|
||
end;
|
||
|
||
|
||
procedure TfrmQCRKList_SD.TV2CellDblClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
begin
|
||
ToolButton1.Click;
|
||
end;
|
||
|
||
procedure TfrmQCRKList_SD.Tv1MouseDown(Sender: TObject; Button: TMouseButton;
|
||
Shift: TShiftState; X, Y: Integer);
|
||
begin
|
||
try
|
||
ADOQuery1.DisableControls;
|
||
with ADOQuery1 do
|
||
begin
|
||
Filtered:=False;
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' select A.*,B.GYLXName ');
|
||
sql.Add(' from CK_MYSC_CR A ');
|
||
sql.Add(' inner join ML_Manage B on A.MLID=B.MLID');
|
||
sql.Add(' where 1=1 ');
|
||
SQL.Add(' and A.MYCode='''+trim(Order_Main.fieldbyname('MYCode').AsString)+'''');
|
||
SQL.Add(' and A.MYName='''+trim(Order_Main.fieldbyname('MYName').AsString)+'''');
|
||
SQL.Add(' and B.GYLXName='''+trim(Order_Main.fieldbyname('GYLXName').AsString)+'''');
|
||
if CheckBox1.Checked=False then
|
||
begin
|
||
sql.Add(' and CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date))+'''');
|
||
sql.Add(' and CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
|
||
end
|
||
else
|
||
begin
|
||
sql.Add(' and CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
|
||
sql.Add(' and CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
|
||
end;
|
||
sql.Add(' and isnull(CRType,'''')=''<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>'' ');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQuery1,Order_MX);
|
||
SInitCDSData20(ADOQuery1,Order_MX);
|
||
finally;
|
||
ADOQuery1.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
end.
|
||
|
||
|