D7gmYongjin/纱线加弹管理(YarnTexturing.dll)/U_ShuttleClothSCList.pas
DESKTOP-E401PHE\Administrator 8452f471f5 新建3-04
2026-03-04 09:51:44 +08:00

454 lines
12 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_ShuttleClothSCList;
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;
type
TfrmShuttleClothSCList = 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;
Label5: TLabel;
P_CodeName: TEdit;
TBExport: TToolButton;
Order_Main: TClientDataSet;
RM1: TRMGridReport;
RMXLSExport1: TRMXLSExport;
CDS_PM: TClientDataSet;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1OrderNo: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1PRTMF: TcxGridDBColumn;
v1PRTKZ: TcxGridDBColumn;
v1PRTOrderQty: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column6: TcxGridDBColumn;
RMDB_Main: TRMDBDataSet;
TBCopy: TToolButton;
TBView: TToolButton;
v1Column19: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
Label10: TLabel;
P_Code: TEdit;
v1Column20: TcxGridDBColumn;
Label6: TLabel;
BatchNo: TEdit;
v1Column31: TcxGridDBColumn;
v1Column30: TcxGridDBColumn;
KHNAME: TEdit;
Label7: TLabel;
v1Column1: TcxGridDBColumn;
RMDB_JS: TRMDBDataSet;
CDS_PJS: TClientDataSet;
RMDB_WS: TRMDBDataSet;
CDS_PWS: TClientDataSet;
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 TBViewClick(Sender: TObject);
procedure TBCopyClick(Sender: TObject);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
private
FInt, PFInt: Integer;
procedure InitGrid();
procedure InitForm();
function DelData(): Boolean;
procedure InitButton();
{ Private declarations }
public
canshu1, FCheJian: string;
{ Public declarations }
end;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp, U_ShuttleClothSCInPut;
{$R *.dfm}
procedure TfrmShuttleClothSCList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmShuttleClothSCList.InitButton();
begin
if Trim(canshu1) = '<27><>ѯ' then
begin
TBAdd.Visible := False;
TBCopy.Visible := False;
TBEdit.Visible := False;
TBDel.Visible := False;
end;
end;
procedure TfrmShuttleClothSCList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(Trim(self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmShuttleClothSCList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('select A.*,B.* ');
sql.Add(' from PD_Plan_Main A inner join PD_Plan_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)) + '''');
sql.Add(' and A.OrdType=''<27><>֯<EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD>''');
if Trim(canshu1) = <><C2BC>' then
sql.Add(' and A.Filler=' + quotedstr(DName));
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmShuttleClothSCList.InitForm();
begin
InitButton();
ReadCxGrid(Trim(self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 30;
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
InitGrid();
end;
procedure TfrmShuttleClothSCList.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 TfrmShuttleClothSCList.TBEditClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
frmClothSCInPut := TfrmClothSCInPut.Create(Application);
with frmClothSCInPut do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
FSubId := Trim(Self.Order_Main.fieldbyname('SubId').AsString);
if ShowModal = 1 then
begin
InitGrid();
Self.Order_Main.Locate('MainId', frmClothSCInPut.FMainId, []);
end;
end;
finally
frmClothSCInPut.Free;
end;
end;
procedure TfrmShuttleClothSCList.TBDelClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
SQL.Add('select A.*');
sql.Add('from PD_Plan_Card A');
sql.Add(' where A.SubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + '''');
sql.Add(' and A.MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
SQL.Add('select TOP 1 A.*');
sql.Add('from CK_Cloth_CR A');
sql.Add(' where A.SubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + '''');
sql.Add(' and A.MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><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 TfrmShuttleClothSCList.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete PD_Plan_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
sql.Add('delete PD_Plan_Sub where SubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + '''');
sql.Add('delete PD_Plan_Yarn where SubId=''' + Trim(Order_Main.fieldbyname('SubId').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 TfrmShuttleClothSCList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', cxGrid1);
end;
procedure TfrmShuttleClothSCList.TBPrintClick(Sender: TObject);
var
fPrintFile, FWeiZhi: string;
i, j, k: integer;
begin
if Order_Main.IsEmpty then
Exit;
ExportFtErpFile('<27><>֯<EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD>.rmf', ADOQueryTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><>֯<EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD>.rmf';
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from PD_Plan_Main A inner join PD_Plan_Sub B on A.Mainid=B.MainId where A.MainId=' + Quotedstr(Trim(Order_Main.fieldbyname('MainId').AsString)));
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_PM);
SInitCDSData20(ADOQueryTemp, CDS_PM);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from PD_Plan_Yarn where PYType=''<27><>˿'' and MainId=' + Quotedstr(Trim(Order_Main.fieldbyname('MainId').AsString)));
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_PJS);
SInitCDSData20(ADOQueryTemp, CDS_PJS);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from PD_Plan_Yarn where PYType=''γ˿'' and MainId=' + Quotedstr(Trim(Order_Main.fieldbyname('MainId').AsString)));
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_PWS);
SInitCDSData20(ADOQueryTemp, CDS_PWS);
if FileExists(fPrintFile) then
begin
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
procedure TfrmShuttleClothSCList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmShuttleClothSCList.TBAddClick(Sender: TObject);
begin
try
frmClothSCInPut := TfrmClothSCInPut.Create(Application);
with frmClothSCInPut do
begin
PState := 0;
FMainId := '';
FSubId := '';
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmClothSCInPut.Free;
end;
end;
procedure TfrmShuttleClothSCList.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 TfrmShuttleClothSCList.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmShuttleClothSCList.conPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
if Length(Trim(ConNo.Text)) < 4 then
Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
//sql.Add('exec Cloth_QryList :MainId,:WSql');
// Parameters.ParamByName('WSql').Value:=' and OM.conNo like '''+'%'+Trim(ConNoM.Text)+'%'+''''
// +' and ConType=''<27><><EFBFBD><EFBFBD>'' ';
sql.Add('select * from Cloth_Main A inner join CLoth_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 TfrmShuttleClothSCList.TBViewClick(Sender: TObject);
begin
try
frmClothSCInPut := TfrmClothSCInPut.Create(Application);
with frmClothSCInPut do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
FSubId := Trim(Self.Order_Main.fieldbyname('SubId').AsString);
FConNo := Trim(Self.Order_Main.fieldbyname('ConNo').AsString);
TBSave.Visible := False;
ScrollBox1.Enabled := False;
if ShowModal = 1 then
begin
end;
end;
finally
frmClothSCInPut.Free;
end;
end;
procedure TfrmShuttleClothSCList.TBCopyClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
frmClothSCInPut := TfrmClothSCInPut.Create(Application);
with frmClothSCInPut do
begin
PState := 1;
FCopyInt := 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
frmClothSCInPut.Free;
end;
end;
procedure TfrmShuttleClothSCList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
FDDZT: string;
begin
// if AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('DDZT').Index] = null then
// Exit;
//
// FDDZT := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('DDZT').Index];
//
// if FDDZT = '<27>ѿ<EFBFBD>ʼ' then
// ACanvas.Font.Color := $FF0000;
// if FDDZT = '<27>ѽ<EFBFBD><D1BD><EFBFBD>' then
// ACanvas.Font.Color := $0000FF;
end;
end.