D7fhyuhan/染整计划(DyeingFinishingPlan.dll)/U_SCJDList.pas

440 lines
12 KiB
ObjectPascal
Raw Normal View History

2025-09-21 08:59:38 +08:00
unit U_SCJDList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo,
cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit,
StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils,
cxCurrencyEdit, cxImage, cxDBEdit, Menus, RM_Common, RM_Class, RM_e_Xls,
RM_Dataset, RM_System, RM_GridReport, cxGridCustomPopupMenu, cxGridPopupMenu,
cxPC, cxSplitter, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
IdFTP, ShellAPI, cxCheckBox, cxDropDownEdit, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator;
type
TfrmSCJDList = 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;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
ADOQueryPrint: TADOQuery;
CDS_Print: TClientDataSet;
ToolButton4: TToolButton;
N1: TMenuItem;
Panel1: TPanel;
Label1: TLabel;
Label4: TLabel;
Label10: TLabel;
Label12: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CustomerNoName: TEdit;
JYXH: TEdit;
MPRTKZ: TEdit;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1CustomerNoName: TcxGridDBColumn;
v1MPRTCodeName: TcxGridDBColumn;
v1MPRTSpec: TcxGridDBColumn;
v1MPRTMF: TcxGridDBColumn;
v1MPRTKZ: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column3: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
Label6: TLabel;
v1Column20: TcxGridDBColumn;
Label7: TLabel;
APID: TEdit;
v1Column23: TcxGridDBColumn;
v1Column24: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
MPRTCodeName: TEdit;
Label2: TLabel;
Label3: TLabel;
Tv1Column2: TcxGridDBColumn;
ToolButton1: TToolButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBTPClick(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure OrderNoKeyPress(Sender: TObject; var Key: Char);
procedure cxTabControl2Change(Sender: TObject);
procedure MPRTCodeNameKeyPress(Sender: TObject; var Key: Char);
procedure MPRTCodeNameChange(Sender: TObject);
procedure PRTColorChange(Sender: TObject);
procedure CustomerNoNameKeyPress(Sender: TObject; var Key: Char);
procedure v1Column15PropertiesEditValueChanged(Sender: TObject);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure Tv1DblClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
DQdate: TDateTime;
procedure InitForm();
function DelData(): Boolean;
procedure InitGridFH();
procedure SetStatus();
procedure InitGrid();
{ Private declarations }
public
FFInt, FCloth: Integer;
canshu1, canshu2: string;
fFlileFlag: string;
{ Public declarations }
end;
implementation
uses
U_DataLink, U_OrderInPut, U_Fun, U_FjList_RZ, U_FjList10, U_SysLogHelp,
U_JYMXInfo;
{$R *.dfm}
procedure TfrmSCJDList.InitGrid();
var
strwhere: string;
begin
strwhere := SGetFilters(Panel1, 1, 2);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('SELECT * FROM V_VIEW_JD A ');
sql.Add('where A.FILLTime>=' + Quotedstr(formatdateTime('yyyy-MM-dd', begdate.Date)));
sql.Add('and A.FILLTime<' + Quotedstr(formatdateTime('yyyy-MM-dd', enddate.Date + 1)));
if strwhere <> '' then
SQL.Add(' AND ' + strwhere);
sql.Add(' order by APID DESC ');
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmSCJDList.SetStatus();
begin
end;
procedure TfrmSCJDList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmSCJDList.FormCreate(Sender: TObject);
begin
cxgrid1.Align := alClient;
DQdate := SGetServerDate(ADOQueryTemp);
end;
procedure TfrmSCJDList.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid(ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD>ѯFF', Tv1, '<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmSCJDList.InitGridFH();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('exec Order_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)) + '''';
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmSCJDList.InitForm();
begin
ReadCxGrid(ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD>ѯFF', Tv1, '<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 30;
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
end;
function TfrmSCJDList.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete JYOrder_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
sql.Add('delete JYOrder_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim(ʾ<D6B8><CABE>ɾ<EFBFBD><C9BE>')));
sql.Add(',' + quotedstr(trim(ʾ<D6B8><CABE><EFBFBD>ţ<EFBFBD>' + trim(Order_Main.FieldByName('OrderNO').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
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 TfrmSCJDList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
SelExportData(Tv1, ADOQueryMain, '<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD>б<EFBFBD>');
end;
procedure TfrmSCJDList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmSCJDList.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmSCJDList.TBTPClick(Sender: TObject);
var
FQty, FQty1, FMxQty, FPQty, FMxQtyS, FPQtyS: string;
begin
end;
procedure TfrmSCJDList.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmSCJDList.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmSCJDList.N1Click(Sender: TObject);
begin
SelOKNo(Order_Main, false);
end;
procedure TfrmSCJDList.N2Click(Sender: TObject);
begin
SelOKNo(Order_Main, true);
end;
procedure TfrmSCJDList.ToolButton4Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
frmFjList10 := TfrmFjList10.Create(Application);
with frmFjList10 do
begin
// PState:=1;
if Trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
cxButton1.Visible := false;
fkeyNO := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
fType := ʾ<D6B8><CABE>';
if ShowModal = 1 then
begin
end;
end;
finally
frmFjList10.Free;
end;
end;
procedure TfrmSCJDList.cxTabControl1Change(Sender: TObject);
begin
SetStatus();
InitGrid();
end;
procedure TfrmSCJDList.OrderNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
InitGrid();
end;
end;
procedure TfrmSCJDList.cxTabControl2Change(Sender: TObject);
begin
SetStatus();
InitGrid();
end;
procedure TfrmSCJDList.MPRTCodeNameKeyPress(Sender: TObject; var Key: Char);
var
sql2: string;
begin
if Key = #13 then
begin
InitGrid();
end;
end;
procedure TfrmSCJDList.MPRTCodeNameChange(Sender: TObject);
var
sql2: string;
begin
sql2 := 'select distinct(PRTColor) name from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId where A.FILLTime>=' + Quotedstr(formatdateTime('yyyy-MM-dd', begdate.Date)) + 'and A.FILLTime<' + Quotedstr(formatdateTime('yyyy-MM-dd', enddate.Date + 1));
InitGrid();
end;
procedure TfrmSCJDList.PRTColorChange(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmSCJDList.CustomerNoNameKeyPress(Sender: TObject; var Key: Char);
var
sql1: string;
begin
if Key = #13 then
begin
sql1 := 'select distinct(MPRTCodeName) name from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId where A.FILLTime>=' + Quotedstr(formatdateTime('yyyy-MM-dd', begdate.Date)) + 'and A.FILLTime<' + Quotedstr(formatdateTime('yyyy-MM-dd', enddate.Date + 1));
InitGrid();
end;
end;
procedure TfrmSCJDList.v1Column15PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
with Order_Main do
begin
Edit;
FieldByName(FFieldName).Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update JYOrder_Sub set ' + FFieldName + '=' + quotedstr(Trim(mvalue)));
sql.Add('where subid=' + quotedstr(Trim(Order_Main.fieldbyname('subid').AsString)));
ExecSQL;
end;
Tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmSCJDList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
if (AViewInfo.GridRecord.Values[v1Column11.Index] >= AViewInfo.GridRecord.Values[v1Column7.Index]) then
begin
ACanvas.Brush.Color := $0080FFFF;
end;
if (AViewInfo.GridRecord.Values[Tv1Column1.Index] = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>') then
begin
ACanvas.font.Color := clblue;
end;
if (AViewInfo.GridRecord.Values[Tv1Column1.Index] = '<27>ѳ<EFBFBD><D1B3><EFBFBD>') then
begin
ACanvas.font.Color := clgreen;
end;
end;
procedure TfrmSCJDList.Tv1DblClick(Sender: TObject);
begin
try
frmJYMXInfo := TfrmJYMXInfo.Create(Application);
with frmJYMXInfo do
begin
FFMAINID := SELF.Order_Main.FIELDBYNAME('jyxh').AsString;
FFCARNO := SELF.Order_Main.FIELDBYNAME('apid').AsString;
if ShowModal = 1 then
begin
end;
end;
finally
frmJYMXInfo.Free;
end;
end;
procedure TfrmSCJDList.ToolButton1Click(Sender: TObject);
begin
try
frmJYMXInfo := TfrmJYMXInfo.Create(Application);
with frmJYMXInfo do
begin
FFMAINID := SELF.Order_Main.FIELDBYNAME('jyxh').AsString;
FFCARNO := SELF.Order_Main.FIELDBYNAME('apid').AsString;
if ShowModal = 1 then
begin
end;
end;
finally
frmJYMXInfo.Free;
end;
end;
end.