D7gmYongjin/成品仓库(FinishedClothWarehouse.dll)/U_CPFHSQDZList.pas

608 lines
16 KiB
ObjectPascal
Raw Permalink Normal View History

2026-03-04 09:51:44 +08:00
unit U_CPFHSQDZList;
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, cxPC, cxButtonEdit,
RM_E_llPDF, cxDropDownEdit, cxTextEdit, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdHTTP, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu;
type
TfrmCPFHSQDZList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
v1OrdDate: TcxGridDBColumn;
v1OrdPerson1: TcxGridDBColumn;
Order_Main: TClientDataSet;
RMDB_Main: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
ToolButton1: TToolButton;
ADOQueryPrint: TADOQuery;
CDS_PM: TClientDataSet;
v1Column4: TcxGridDBColumn;
Panel1: TPanel;
Label1: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
Label9: TLabel;
Label12: TLabel;
Label13: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
SHDanWei: TEdit;
Filler: TEdit;
MPRTCodeName: TEdit;
OrderNo: TEdit;
MPRTKZ: TEdit;
MPRTMF: TEdit;
cxTabControl1: TcxTabControl;
cxSplitter1: TcxSplitter;
ADOQuerySub: TADOQuery;
DataSource2: TDataSource;
v1Column8: TcxGridDBColumn;
Label2: TLabel;
//RMllPDFExport1: TRMllPDFExport;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
v1Column5: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
ClientDataSet2: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
CDS_Note: TClientDataSet;
RM1: TRMGridReport;
v1Column11: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
v1Column24: TcxGridDBColumn;
v1Column25: TcxGridDBColumn;
v2Column12: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
CDSUser: TClientDataSet;
IdHTTP1: TIdHTTP;
v2Column6: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
btnOK: TToolButton;
btnOKCX: TToolButton;
v2Column4: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
RMDB_XZC: TRMDBDataSet;
CDS_PS: TClientDataSet;
v1Column9: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
ToolButton2: TToolButton;
Panel5: TPanel;
Label28: TLabel;
Button5: TButton;
Button6: TButton;
edtTruckId: TEdit;
v1Column14: TcxGridDBColumn;
v2Column10: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
Label3: TLabel;
FHYWY: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure SHDanWeiChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure btnOKClick(Sender: TObject);
procedure btnOKCXClick(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
private
procedure InitGrid();
procedure InitSubGrid();
procedure InitForm();
procedure SetStatus();
function DelData(): Boolean;
{ Private declarations }
public
FFInt: Integer;
canshu1, FFSID: string;
{ Public declarations }
end;
implementation
uses
U_DataLink, U_CPFHSQInPut, U_Fun, U_ZDYHelp, U_CPFHSQXZ, U_LabelList,U_RTFun;
{$R *.dfm}
procedure TfrmCPFHSQDZList.SetStatus();
begin
btnOK.Visible := False;
btnOKCX.Visible := False;
case cxTabControl1.TabIndex of
0:
begin
btnOK.Visible := true;
end;
1:
begin
btnOKCX.Visible := true;
end;
end;
end;
procedure TfrmCPFHSQDZList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCPFHSQDZList.TBCloseClick(Sender: TObject);
begin
if Trim(DName)='ADMIN' then
begin
WriteCxGridAll(trim(self.Caption), Tv1,ADOQueryCmd,ADOQueryTemp);
WriteCxGridAll(trim(self.Caption)+'2', Tv2,ADOQueryCmd,ADOQueryTemp);
end;
Close;
end;
procedure TfrmCPFHSQDZList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
Sql.Add(' select A.*');
sql.Add(' from FHSQ_Main_CP A');
sql.Add(' where SQType=''<27><>Ʒ<EFBFBD><C6B7>''');
case cxTabControl1.TabIndex of
0:
begin
SQL.Add(' and isnull(A.Chker,'''')<>'''' ');
SQL.Add(' and isnull(A.Status,'''')=''<27><>ȷ<EFBFBD><C8B7>'' ');
sql.Add(' and CKConfirmtime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + '''');
sql.Add(' and CKConfirmtime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + '''');
end;
1:
begin
sql.Add(' and CKConfirmtime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + '''');
sql.Add(' and CKConfirmtime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + '''');
SQL.Add(' and isnull(A.Chker,'''')<>'''' ');
SQL.Add(' and isnull(A.Status,'''')=''<27>ѷ<EFBFBD><D1B7><EFBFBD>'' ');
end;
end;
// showmessage(SQL.Text);
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCPFHSQDZList.InitForm();
begin
ReadCxGridAll(trim(self.Caption), Tv1);
ReadCxGridAll(trim(self.Caption)+'2', Tv2);
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
SetStatus();
InitGrid();
end;
procedure TfrmCPFHSQDZList.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;
function TfrmCPFHSQDZList.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Sub_CP where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Main_CP where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
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 TfrmCPFHSQDZList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
TBFind.Click;
InitSubGrid();
end;
procedure TfrmCPFHSQDZList.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmCPFHSQDZList.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCPFHSQDZList.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmCPFHSQDZList.ToolButton1Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
frmPBFHSQInPut := TfrmPBFHSQInPut.Create(Application);
with frmPBFHSQInPut do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('FSID').AsString);
ToolBar2.Visible := False;
TBSave.Visible := False;
ScrollBox1.Enabled := False;
Tv1.OptionsSelection.CellSelect := False;
if ShowModal = 1 then
begin
end;
end;
finally
frmPBFHSQInPut.Free;
end;
end;
procedure TfrmCPFHSQDZList.SHDanWeiChange(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 TfrmCPFHSQDZList.InitSubGrid();
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
sql.Add('select * from FHSQ_Sub_CP A where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''')
else
sql.Add('select * from FHSQ_Sub_CP A where 1=2');
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmCPFHSQDZList.cxTabControl1Change(Sender: TObject);
begin
SetStatus();
InitGrid();
InitSubGrid();
end;
procedure TfrmCPFHSQDZList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
begin
sql.Add('select A.* from FHSQ_Sub_CP A ');
sql.Add(' where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
end
else
begin
sql.Add('select A.* from FHSQ_Sub_CP A ');
sql.Add(' where 1=2');
end;
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmCPFHSQDZList.btnOKClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main_CP SET Status=''<27>ѷ<EFBFBD><D1B7><EFBFBD>'' ');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
execsql;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPDATE CK_BanCP_CR Set ');
sql.add(' CRTime=getdate(),CRType='<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'',CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add(' ,XSType='''+Trim(Order_Main.fieldbyname('CRType').AsString)+''' ');
sql.Add(' ,XSKHName='''+Trim(Order_Main.fieldbyname('SHDanWei').AsString)+''' ');
sql.Add(' ,XSYWY='''+Trim(Order_Main.fieldbyname('FHYWY').AsString)+''' ');
sql.add(',Filler='''+Trim(DName)+''' ');
sql.Add(' where CK_BanCP_CR.CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CKOrdNo= ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPDATE CK_BanCP_KC Set ');
sql.add(' KCValid=''N'' , CKDate=DATEDIFF(DD,0,getdate()) ');
sql.Add(' where exists(select MJID from CK_BanCP_CR X where CK_BanCP_KC.MJID=X.MJID and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.CKOrdNo= ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)) + ') ');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPDATE WFB_MJJY Set MJStr2=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' ');
sql.Add(' where exists(select MJID from CK_BanCP_CR X where WFB_MJJY.MJID=X.MJID and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.CKOrdNo= ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)) + ') ');
SQL.Add(' and WFB_MJJY.MJStr2=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('exec P_DB_UPFH ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Mainid from CK_BanCP_CR where CKOrdNo='+ quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
sql.Add(' Group by MainId');
Open;
end;
with ADOQueryTemp do
begin
First;
while not eof do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_Update_OrderHZ :MainId');
Parameters.ParamByName('MainId').Value:=Trim(ADOQueryTemp.FieldByName('MainId').AsString);
ExecSQL;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Order_Main.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmCPFHSQDZList.btnOKCXClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main_CP SET Status=''<27><>ȷ<EFBFBD><C8B7>'' ');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
execsql;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPDATE CK_BanCP_CR Set ');
sql.add(' CRTime=null,CRType=null,CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.Add(' where CK_BanCP_CR.CRFlag=''<27><><EFBFBD><EFBFBD>'' and CKOrdNo= ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPDATE CK_BanCP_KC Set ');
sql.add(' KCValid=''Y'' , CKDate=0 ');
sql.Add(' where exists(select MJID from CK_BanCP_CR X where CK_BanCP_KC.MJID=X.MJID and X.CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and X.CKOrdNo= ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)) + ') ');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPDATE WFB_MJJY Set MJStr2=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.Add(' where exists(select MJID from CK_BanCP_CR X where WFB_MJJY.MJID=X.MJID and X.CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and X.CKOrdNo= ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)) + ') ');
SQL.Add(' and WFB_MJJY.MJStr2=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' ');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('exec P_DB_UPFH ' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Mainid from CK_BanCP_CR where CKOrdNo='+ quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
sql.Add(' Group by MainId');
Open;
end;
with ADOQueryTemp do
begin
First;
while not eof do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_Update_OrderHZ :MainId');
Parameters.ParamByName('MainId').Value:=Trim(ADOQueryTemp.FieldByName('MainId').AsString);
ExecSQL;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Order_Main.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmCPFHSQDZList.Button5Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
if trim(edtTruckId.Text) = '' then
begin
Application.MessageBox('<27><>װ<EFBFBD><D7B0><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
try
cxGrid1.Enabled := False;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main_CP SET TruckId=' + quotedstr(Trim(edtTruckId.Text)));
sql.Add('where FSID=' + quotedstr(FFSID));
execsql;
end;
ADOQueryCmd.Connection.CommitTrans;
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
Order_Main.Locate('FSID', FFSID, []);
with Order_Main do
begin
Edit;
FieldByName('TruckId').Value := Trim(edtTruckId.Text);
end;
Panel5.Visible := True;
cxGrid1.Enabled := True;
except
ADOQueryCmd.Connection.RollbackTrans;
cxGrid1.Enabled := True;
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmCPFHSQDZList.ToolButton2Click(Sender: TObject);
begin
FFSID := trim(Order_Main.fieldbyname('FSID').AsString);
Panel5.Visible := True;
end;
procedure TfrmCPFHSQDZList.Button6Click(Sender: TObject);
begin
Panel5.Visible := False;
end;
end.