D7wmhengming/坯布码单待检(PBMDDJ.dll)/U_ClothContractListHZCX.pas

400 lines
11 KiB
ObjectPascal
Raw Normal View History

2025-04-16 09:11:01 +08:00
unit U_ClothContractListHZCX;
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;
type
TfrmClothContractListHZCX = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBAdd: TToolButton;
TBEdit: TToolButton;
TBDel: TToolButton;
TBPrint: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
Label1: TLabel;
Label2: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Label3: TLabel;
ConNo: TEdit;
TBExport: TToolButton;
Order_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
CDS_PRT: TClientDataSet;
ToolButton1: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1OrderNo: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1DeliveryDate: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1FactoryNo1Name: TcxGridDBColumn;
v1PRTSpec: TcxGridDBColumn;
v1Qty1: TcxGridDBColumn;
v1PRTOrderQty: TcxGridDBColumn;
v1OrderUnit: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1PRTQty: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column3: TcxGridDBColumn;
ToolButton2: TToolButton;
v1Column6: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
Label5: TLabel;
Label4: TLabel;
Label14: TLabel;
C_Code: TEdit;
FactoryNoName: TEdit;
ConType: TComboBox;
v1Column8: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBPrintClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure ConNoChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure conPress(Sender: TObject; var Key: Char);
procedure cxPageControl1Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
private
FInt,PFInt:Integer;
procedure InitGrid();
procedure InitForm();
function DelData():Boolean;
{ Private declarations }
public
{ Public declarations }
end;
var
frmClothContractListHZCX: TfrmClothContractListHZCX;
implementation
uses
U_DataLink,U_RTFun,U_ClothContractInPutSXMX
{U_ClothContractInPutSX,
U_ProductOrderList,U_ZDYHelp,
,U_ClothContractInPutHZ,U_ClothContractInPutPB};
{$R *.dfm}
procedure TfrmClothContractListHZCX.FormDestroy(Sender: TObject);
begin
frmClothContractListHZCX:=nil;
end;
procedure TfrmClothContractListHZCX.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmClothContractListHZCX.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27>ɹ<EFBFBD><C9B9><EFBFBD>ͬ',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>');
end;
procedure TfrmClothContractListHZCX.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select A.*,B.*,Money=B.C_Qty*B.Price from Contract_Main A inner join Contract_Sub B on A.MainId=B.MainId ');
sql.Add(' where A.FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''');
sql.Add(' and A.FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmClothContractListHZCX.InitForm();
var
FSJ:string;
begin
ReadCxGrid('<27>ɹ<EFBFBD><C9B9><EFBFBD>ͬ',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>');
EndDate.DateTime:=SGetServerDate10(ADOQueryTemp);
BegDate.DateTime:=EndDate.DateTime-30;
FSJ:='select ZdyName Name,ZdyName Code from KH_Zdy where TYpe=''JGGX'' and ZdyName not like ''%<25>ؼ<EFBFBD>%'' ';
SInitComBoxBySql(ADOQueryTemp,ConType,False,Fsj);
end;
procedure TfrmClothContractListHZCX.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 TfrmClothContractListHZCX.TBEditClick(Sender: TObject);
begin
try
frmClothContractInPutSXMX:=TfrmClothContractInPutSXMX.Create(Application);
with frmClothContractInPutSXMX do
begin
PState:=1;
FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString);
FConNo:=Trim(Self.Order_Main.fieldbyname('ConNo').AsString);
if ShowModal=1 then
begin
end;
end;
finally
frmClothContractInPutSXMX.Free;
end;
end;
procedure TfrmClothContractListHZCX.TBDelClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
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 TfrmClothContractListHZCX.DelData():Boolean;
begin
try
Result:=false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+'''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
ExecSQL;
end;
end;
if Trim(Order_Main.fieldbyname('SubId').AsString)='' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
ExecSQL;
end;
end;
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 TfrmClothContractListHZCX.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',cxGrid1);
end;
procedure TfrmClothContractListHZCX.TBPrintClick(Sender: TObject);
var
fPrintFile,FConNoM:string;
begin
if Order_Main.IsEmpty then Exit;
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ɴ<>߶<EFBFBD><DFB6><EFBFBD><EFBFBD><EFBFBD>ͬ.rmf' ;
with ADOQueryTemp do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('exec ClothContractSX_QryList :MainId,:WSql');
Parameters.ParamByName('WSql').Value:=' and FillTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+''''
+' and FillTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+'''';
Parameters.ParamByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString);
Parameters.ParamByName('WSql').Value:='';
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_PRT);
SInitCDSData20(ADOQueryTemp,CDS_PRT);
FConNoM:=Trim(CDS_PRT.fieldbyname('ConNoM').AsString);
if FileExists(fPrintFile) then
begin
//RMVariables['begindate']:=begindate.DateTime;
//RMVariables['enddate']:=enddate.DateTime;
//RMVariables['printtime']:=Now;
//RMVariables['printer']:=Trim(gUserName);
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>'+ExtractFilePath(Application.ExeName)+'Report\<5C><><EFBFBD><EFBFBD>Ӧ<EFBFBD>ĺ<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>.rmf'),'<27><>ʾ',0);
end;
end;
procedure TfrmClothContractListHZCX.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmClothContractListHZCX.TBAddClick(Sender: TObject);
begin
try
frmClothContractInPutSXMX:=TfrmClothContractInPutSXMX.Create(Application);
with frmClothContractInPutSXMX do
begin
PState:=0;
FMainId:='';
if ShowModal=1 then
begin
end;
end;
finally
frmClothContractInPutSXMX.Free;
end;
end;
procedure TfrmClothContractListHZCX.ConNoChange(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 TfrmClothContractListHZCX.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmClothContractListHZCX.conPress(Sender: TObject;
var Key: Char);
begin
if Key=#13 then
begin
if Length(Trim(ConNo.Text))<3 then Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select A.*,B.*,Money=B.C_Qty*B.Price from Contract_Main A inner join Contract_Sub B on A.MainId=B.MainId ');
sql.Add(' where A.ConNo like '''+'%'+Trim(ConNo.text)+'%'+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
end;
procedure TfrmClothContractListHZCX.cxPageControl1Change(Sender: TObject);
begin
// InitGrid();
end;
procedure TfrmClothContractListHZCX.ToolButton1Click(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
try
frmClothContractInPutSXMX:=TfrmClothContractInPutSXMX.Create(Application);
with frmClothContractInPutSXMX do
begin
PState:=1;
FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString);
FConNo:=Trim(Self.Order_Main.fieldbyname('ConNo').AsString);
PCopyInt:=1;
if ShowModal=1 then
begin
end;
end;
finally
frmClothContractInPutSXMX.Free;
end;
end;
procedure TfrmClothContractListHZCX.ToolButton2Click(Sender: TObject);
begin
try
frmClothContractInPutSXMX:=TfrmClothContractInPutSXMX.Create(Application);
with frmClothContractInPutSXMX do
begin
PState:=1;
FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString);
FConNo:=Trim(Self.Order_Main.fieldbyname('ConNo').AsString);
TBSave.Visible:=False;
ToolBar2.Visible:=False;
if ShowModal=1 then
begin
end;
end;
finally
frmClothContractInPutSXMX.Free;
end;
end;
end.