D7DJqianyi/打卷检验管理/U_CKProductJYHZList.pas
DESKTOP-E401PHE\Administrator 5b3fbc1dd3 ~
2025-07-22 10:34:17 +08:00

381 lines
14 KiB
ObjectPascal
Raw Permalink 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_CKProductJYHZList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls,
ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient,
cxDropDownEdit, MovePanel, cxButtonEdit, cxCalendar, RM_System, RM_Common,
RM_Class, RM_GridReport, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator,
dxBarBuiltInMenu, cxPC;
type
TfrmCKProductJYHZList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBPrint: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
Label3: TLabel;
MPRTCodeName: TEdit;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
Tv1: TcxGridDBTableView;
cxGrid2Level1: TcxGridLevel;
cxGrid2: TcxGrid;
v2Column1: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
Label5: TLabel;
orderNo: TEdit;
Label6: TLabel;
PRTColor: TEdit;
v1Column7: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
Label8: TLabel;
MPRTKZ: TEdit;
Label9: TLabel;
MPRTMF: TEdit;
Label7: TLabel;
CPType: TComboBox;
MovePanel2: TMovePanel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
YWY: TEdit;
OrdPerson1: TEdit;
v1Column11: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
MJstr4: TEdit;
Label4: TLabel;
Panel4: TPanel;
Label13: TLabel;
Panel10: TPanel;
Image2: TImage;
RichEdit1: TRichEdit;
v1Column2: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
conNo: TEdit;
Label14: TLabel;
KHorderNo: TEdit;
Label15: TLabel;
v1Column13: TcxGridDBColumn;
RMGridReport1: TRMGridReport;
ToolButton1: TToolButton;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
cxTabControl1: TcxTabControl;
Tv1Column5: TcxGridDBColumn;
Label16: TLabel;
CustomerNoName: TEdit;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoMChange(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure MPRTCodeNameChange(Sender: TObject);
procedure v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure PRTColorChange(Sender: TObject);
procedure Image2Click(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure TBPrintClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
private
FLeft, FTop: Integer;
procedure InitGrid();
{ Private declarations }
public
{ Public declarations }
end;
var
frmCKProductJYHZList: TfrmCKProductJYHZList;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp, U_JYOrderCDOne;
{$R *.dfm}
procedure TfrmCKProductJYHZList.FormDestroy(Sender: TObject);
begin
frmCKProductJYHZList := nil;
end;
procedure TfrmCKProductJYHZList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCKProductJYHZList.FormCreate(Sender: TObject);
begin
//cxGrid1.Align:=alClient;
BegDate.DateTime := SGetServerDateTime(ADOQueryTemp);
EndDate.DateTime := SGetServerDateTime(ADOQueryTemp)
end;
procedure TfrmCKProductJYHZList.InitGrid();
var
i: integer;
j: Integer;
strwhere: string;
begin
if cxTabControl1.TabIndex < 2 then
begin
strwhere := strwhere + ' and isnull(A.status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + '''';
end;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
Filtered := False; //A.Mjstr4, D.PrtColor,D.PrtHX,D.SOrddefstr4, X.SubId=A.SubId
if cxTabControl1.TabIndex = 0 then
begin
sql.Add('select convert(char(10),A.fillTime,120) as CRTime,A.MJType as CPType,A.MainId,A.MJTypeother as QtyUnit,C.OrderNo,C.ConNO,C.CustomerNoName, ');
sql.Add('count(A.MainId) as JQty,SUM(A.MJLen) as Qty,SUM(A.MJMaoZ) as KGQty,SUM(A.MJQty4) as MJQty4,');
sql.Add('JQty=(select count(*) from WFB_MJJY X where X.MainId=A.MainId ),');
sql.Add('SCKROLL=(select sum(mjlen) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag=''<27>ѳ<EFBFBD><D1B3><EFBFBD>''),');
sql.Add('SkcROLL=(select sum(mjlen) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag='<><CEB4><EFBFBD><EFBFBD>''),');
sql.Add('CKROLL=(select count(*) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag=''<27>ѳ<EFBFBD><D1B3><EFBFBD>''),');
sql.Add('KCROLL=(select count(*) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag='<><CEB4><EFBFBD><EFBFBD>''),');
sql.Add('KHorderNo=(select top 1 KHorderNo from JYOrder_sub X where X.mainid=A.mainid),');
sql.Add('khconNO=(select top 1 khconNo from JYOrderCon_Main X where X.conNO=C.conNO)');
sql.Add('from WFB_MJJY A ');
sql.Add('inner join JYOrder_Main C on C.MainId=A.MainId ');
sql.Add('inner join JYOrder_sub D on D.subID=A.subID ');
Sql.add('where A.fillTime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' ');
Sql.add('and A.fillTime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' ');
sql.add('and CKFlag='<><CEB4><EFBFBD><EFBFBD>'' ');
Sql.add('group by convert(char(10),A.fillTime,120),A.MJType,A.MainId,A.MJTypeother,C.OrderNo,C.ConNO,C.CustomerNoName ');
end;
if cxTabControl1.TabIndex = 1 then
begin
sql.Add('select A.MJType as CPType,A.MainId,A.MJTypeother as QtyUnit, A.cktime,C.OrderNo,C.ConNO,C.CustomerNoName, ');
sql.Add('count(A.MainId) as JQty,SUM(A.MJLen) as Qty,SUM(A.MJMaoZ) as KGQty,SUM(A.MJQty4) as MJQty4,');
sql.Add('JQty=(select count(*) from WFB_MJJY X where X.MainId=A.MainId and X.cktime=A.cktime ),');
sql.Add('SCKROLL=(select sum(mjlen) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' and X.cktime=A.cktime),');
sql.Add('SkcROLL=(select sum(mjlen) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag='<><CEB4><EFBFBD><EFBFBD>'' and X.cktime=A.cktime),');
sql.Add('CKROLL=(select count(*) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' and X.cktime=A.cktime),');
sql.Add('KCROLL=(select count(*) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag='<><CEB4><EFBFBD><EFBFBD>'' and X.cktime=A.cktime),');
sql.Add('KHorderNo=(select top 1 KHorderNo from JYOrder_sub X where X.mainid=A.mainid),');
sql.Add('khconNO=(select top 1 khconNo from JYOrderCon_Main X where X.conNO=C.conNO)');
sql.Add('from WFB_MJJY A ');
sql.Add('inner join JYOrder_Main C on C.MainId=A.MainId ');
sql.Add('inner join JYOrder_sub D on D.subID=A.subID ');
Sql.add('where A.cktime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' ');
Sql.add('and A.cktime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' ');
sql.add('and CKFlag=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' ');
Sql.add('group by A.MJType,A.MainId,A.MJTypeother,A.cktime,C.OrderNo,C.ConNO,C.CustomerNoName ');
end;
if cxTabControl1.TabIndex = 3 then
begin
sql.Add('select convert(char(10),A.fillTime,120) as CRTime,A.MJType as CPType,A.MainId,A.MJTypeother as QtyUnit,A.cktime,C.OrderNo,C.ConNO,C.CustomerNoName,');
sql.Add('count(A.MainId) as JQty,SUM(A.MJLen) as Qty,SUM(A.MJMaoZ) as KGQty,SUM(A.MJQty4) as MJQty4,');
sql.Add('JQty=(select count(*) from WFB_MJJY X where X.SubId=A.SubId),');
sql.Add('SCKROLL=(select sum(mjlen) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag=''<27>ѳ<EFBFBD><D1B3><EFBFBD>''),');
sql.Add('SkcROLL=(select sum(mjlen) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag='<><CEB4><EFBFBD><EFBFBD>''),');
sql.Add('CKROLL=(select count(*) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag=''<27>ѳ<EFBFBD><D1B3><EFBFBD>''),');
sql.Add('KCROLL=(select count(*) from WFB_MJJY X where X.MainId=A.MainId and X.ckflag='<><CEB4><EFBFBD><EFBFBD>''),');
sql.Add('KHorderNo=(select top 1 KHorderNo from JYOrder_sub X where X.mainid=A.mainid),');
sql.Add('khconNO=(select top 1 khconNo from JYOrderCon_Main X where X.conNO=C.conNO)');
sql.Add('from WFB_MJJY A ');
sql.Add('inner join JYOrder_Main C on C.MainId=A.MainId ');
sql.Add('inner join JYOrder_sub D on D.subID=A.subID ');
Sql.add('where A.fillTime>=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' ');
Sql.add('and A.fillTime<''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' ');
sql.add('and CKFlag='<><CEB4><EFBFBD><EFBFBD>'' ');
Sql.add('group by convert(char(10),A.fillTime,120),A.MJType,A.MainId,A.MJTypeother,A.cktime,C.OrderNo,C.ConNO,C.CustomerNoName ');
end;
// Sql.add('group by convert(char(10),A.fillTime,120),A.SubId,A.MJType,A.MainId,A.MJTypeother,A.Mjstr4,A.cktime,C.OrderNo,C.ConNO,C.CustomerNoName,D.PRTCodeName,D.PrtColor,D.PrtHX,D.SOrddefstr4');
Open;
// ShowMessage(SQL.Text);
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCKProductJYHZList.TBRafreshClick(Sender: TObject);
begin
//BegDate.SetFocus;
MovePanel2.Visible := True;
MovePanel2.Refresh;
InitGrid();
MovePanel2.Visible := False;
end;
procedure TfrmCKProductJYHZList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmCKProductJYHZList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(self.Caption + tv1.Name, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmCKProductJYHZList.FormShow(Sender: TObject);
begin
ReadCxGrid(self.Caption + tv1.Name, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
if Trim(DParameters2) = '<27><><EFBFBD><EFBFBD>' then
begin
//v1Column5.Options.Focusing:=True;
end
else
begin
//v1Column5.Options.Focusing:=False;
end;
//InitGrid();
end;
procedure TfrmCKProductJYHZList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmCKProductJYHZList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
end;
end;
procedure TfrmCKProductJYHZList.MPRTCodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCKProductJYHZList.v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'SOrdDefStr10';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵص<C5B5>';
if ShowModal = 1 then
begin
with CDS_Main do
begin
Edit;
FieldByName('SOrdDefStr10').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Sub Set SOrdDefStr10=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + '''');
sql.Add(' where SubId=''' + Trim(Self.CDS_Main.fieldbyname('SubId').AsString) + '''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCKProductJYHZList.PRTColorChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCKProductJYHZList.Image2Click(Sender: TObject);
begin
Panel4.Visible := False;
end;
procedure TfrmCKProductJYHZList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
Panel4.Left := FLeft;
Panel4.Top := FTop + 110;
Panel4.Visible := True;
Panel10.Caption := Trim(TV1.Controller.FocusedColumn.Caption);
RichEdit1.Text := CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString;
application.ProcessMessages;
end;
procedure TfrmCKProductJYHZList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FLeft := X;
FTop := Y;
end;
procedure TfrmCKProductJYHZList.TBPrintClick(Sender: TObject);
begin
RMGridReport1.PreviewButtons := [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator];
end;
procedure TfrmCKProductJYHZList.ToolButton1Click(Sender: TObject);
begin
if cds_main.IsEmpty then
Exit;
frmJYOrderCDOne := TfrmJYOrderCDOne.Create(Application);
with frmJYOrderCDOne do
begin
orderno.Text := trim(self.CDS_Main.fieldbyname('orderno').asstring);
gangno.Text := trim(self.CDS_Main.fieldbyname('MJStr4').asstring);
PRTColor.Text := trim(self.CDS_Main.fieldbyname('PRTColor').asstring);
if ShowModal = 1 then
begin
// InitGrid();
end;
free;
end;
end;
procedure TfrmCKProductJYHZList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
end.