D7wmguihua/坯布码单待检(PBMDDJ.dll)/U_KKView.pas
DESKTOP-E401PHE\Administrator b4b5840f18 1
2025-01-18 16:22:10 +08:00

441 lines
14 KiB
ObjectPascal
Raw Blame History

unit U_KKView;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxDropDownEdit,
cxSplitter, cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, cxPC, StdCtrls, ComCtrls, ExtCtrls,
ToolWin, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, DBClient;
type
TfrmKKView = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
Label3: TLabel;
Label1: TLabel;
Label2: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label11: TLabel;
MPRTCodeName: TEdit;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
orderNo: TEdit;
MDNO: TEdit;
MPRTCode: TEdit;
MDFactoryName: TEdit;
cxTabControl1: TcxTabControl;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridDBColumn9: TcxGridDBColumn;
cxGridDBColumn10: TcxGridDBColumn;
cxGridDBColumn15: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
cxGridDBColumn16: TcxGridDBColumn;
cxGridDBColumn17: TcxGridDBColumn;
cxGridDBColumn18: TcxGridDBColumn;
cxGridDBColumn19: TcxGridDBColumn;
cxGridDBColumn20: TcxGridDBColumn;
cxGridDBColumn21: TcxGridDBColumn;
cxGridDBColumn22: TcxGridDBColumn;
cxGridDBColumn23: TcxGridDBColumn;
cxGridDBColumn24: TcxGridDBColumn;
cxGridDBColumn25: TcxGridDBColumn;
cxGridDBColumn26: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
ScrollBox1: TScrollBox;
cxGrid2: TcxGrid;
Tv2: TcxGridDBBandedTableView;
v2Fty: TcxGridDBBandedColumn;
cxGridDBBandedColumn7: TcxGridDBBandedColumn;
cxGridDBBandedColumn8: TcxGridDBBandedColumn;
v2Pon: TcxGridDBBandedColumn;
v2Column2: TcxGridDBBandedColumn;
v2Column3: TcxGridDBBandedColumn;
cxGridLevel3: TcxGridLevel;
cxGrid4: TcxGrid;
Tv4: TcxGridDBBandedTableView;
v3Fty: TcxGridDBBandedColumn;
cxGridDBBandedColumn13: TcxGridDBBandedColumn;
cxGridDBBandedColumn14: TcxGridDBBandedColumn;
v3Pon: TcxGridDBBandedColumn;
cxGridDBBandedColumn16: TcxGridDBBandedColumn;
cxGridDBBandedColumn17: TcxGridDBBandedColumn;
cxGridLevel4: TcxGridLevel;
cxSplitter1: TcxSplitter;
DataSource2: TDataSource;
ClientDataSet2: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
DataSource4: TDataSource;
ClientDataSet4: TClientDataSet;
cxGridPopupMenu4: TcxGridPopupMenu;
cxGridPopupMenu1: TcxGridPopupMenu;
ClientDataSet3: TClientDataSet;
DataSource3: TDataSource;
ADOQuery3: TADOQuery;
ADOQueryCmd: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQuery1: TADOQuery;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
Label4: TLabel;
TJXSInfo: TEdit;
Label8: TLabel;
TJJGInfo: TEdit;
v1Column5: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
Label9: TLabel;
TJXSPonInfo: TEdit;
Label10: TLabel;
TJJGPonInfo: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure orderNoChange(Sender: TObject);
procedure orderNoKeyPress(Sender: TObject; var Key: Char);
procedure MDNOKeyPress(Sender: TObject; var Key: Char);
procedure cxTabControl1Change(Sender: TObject);
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView;
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
procedure FormShow(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmKKView: TfrmKKView;
implementation
uses
U_DataLink,U_RTFun, U_ModuleNote,U_TJCKRKOK;
{$R *.dfm}
procedure TfrmKKView.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmKKView.FormDestroy(Sender: TObject);
begin
frmKKView:=nil;
end;
procedure TfrmKKView.TBRafreshClick(Sender: TObject);
var
fsj:string;
begin
try
ADOQuery3.DisableControls;
with ADOQuery3 do
begin
Close;
Filtered:=False;
sql.Clear;
sql.Add('exec P_View_MDTJ_JS :begdate,:enddate,:orderno,:MDType,:WSql');
if cxTabControl1.TabIndex<>0 then
begin
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date));
Parameters.ParamByName('enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1));
end;
Parameters.ParamByName('orderno').Value:=Trim(orderNo.Text);
// Parameters.ParamByName('orderno').Value:='';
Parameters.ParamByName('MDType').Value:='';
if cxTabControl1.TabIndex=0 then
begin
fsj:=' and isnull(JMM.Status,'''')='<><D0AD>'' ';
end else
if cxTabControl1.TabIndex=1 then
begin
fsj:=' and isnull(JMM.Status,'''')=''<27><><EFBFBD><EFBFBD>'' ';
end else
begin
fsj:=' and isnull(JMM.Status,'''')<>'''' ';
end;
fsj:=fsj+' and isnull(JMM.CKName,'''')<>'''' and exists(select * from JYOrder_Main_MD_KK JMK where JMK.MDID=JMM.MDID)';
if Trim(MDFactoryName.Text)<>'' then
begin
fsj:=fsj+' and isnull(JMM.FactoryName,'''') like '''+'%'+Trim(MDFactoryName.Text)+'%'+'''';
end;
Parameters.ParamByName('WSql').Value:=fsj;
Open;
end;
SCreateCDS20(ADOQuery3,ClientDataSet3);
SInitCDSData20(ADOQuery3,ClientDataSet3);
finally
ADOQuery3.EnableControls;
end;
TBFind.Click;
end;
procedure TfrmKKView.TBFindClick(Sender: TObject);
begin
if ADOQuery3.Active=False then Exit;
//SDofilter10(ClientDataSet3,SGetFilters(Panel1,1,2));
SDofilter(ADOQuery3,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQuery3,ClientDataSet3);
SInitCDSData20(ADOQuery3,ClientDataSet3);
end;
procedure TfrmKKView.orderNoChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmKKView.orderNoKeyPress(Sender: TObject; var Key: Char);
var
fsj:string;
begin
if Key=#13 then
begin
if Trim(orderNo.Text)='' then Exit;
if Length(Trim(orderNo.Text))<4 then Exit;
try
ADOQuery3.DisableControls;
with ADOQuery3 do
begin
Close;
Filtered:=False;
sql.Clear;
sql.Add('exec P_View_MDTJ_JS :begdate,:enddate,:orderno,:MDType,:WSql');
Parameters.ParamByName('begdate').Value:='';
Parameters.ParamByName('enddate').Value:='';
Parameters.ParamByName('orderno').Value:=Trim(orderNo.Text);
Parameters.ParamByName('MDType').Value:='';
fsj:=' and isnull(JMM.CKName,'''')<>'''' and exists(select * from JYOrder_Main_MD_KK JMK where JMK.MDID=JMM.MDID)';
if cxTabControl1.TabIndex=0 then
begin
fsj:=fsj+' and isnull(JMM.Status,'''')='<><D0AD>'' ';
end else
if cxTabControl1.TabIndex=1 then
begin
fsj:=fsj+' and isnull(JMM.Status,'''')=''<27><><EFBFBD><EFBFBD>'' ';
end else
begin
fsj:=fsj+' and isnull(JMM.Status,'''')<>'''' ';
end;
Parameters.ParamByName('WSql').Value:=fsj;
Open;
end;
SCreateCDS20(ADOQuery3,ClientDataSet3);
SInitCDSData20(ADOQuery3,ClientDataSet3);
finally
ADOQuery3.EnableControls;
end;
end;
end;
procedure TfrmKKView.MDNOKeyPress(Sender: TObject; var Key: Char);
var
fsj:string;
begin
if Key=#13 then
begin
if Trim(MDNO.Text)='' then Exit;
if Length(Trim(MDNO.Text))<4 then Exit;
try
ADOQuery3.DisableControls;
with ADOQuery3 do
begin
Close;
Filtered:=False;
sql.Clear;
sql.Add('exec P_View_MDTJ_JS :begdate,:enddate,:orderno,:MDType,:WSql');
Parameters.ParamByName('begdate').Value:='';
Parameters.ParamByName('enddate').Value:='';
Parameters.ParamByName('orderno').Value:=Trim(orderNo.Text);
Parameters.ParamByName('MDType').Value:='';
fsj:=' and JMM.MDNO like '''+'%'+Trim(MDNO.Text)+'%'+'''';
fsj:=fsj+' and isnull(JMM.CKName,'''')<>'''' and exists(select * from JYOrder_Main_MD_KK JMK where JMK.MDID=JMM.MDID)';
if cxTabControl1.TabIndex=0 then
begin
fsj:=fsj+' and isnull(JMM.Status,'''')='<><D0AD>'' ';
end else
if cxTabControl1.TabIndex=1 then
begin
fsj:=fsj+' and isnull(JMM.Status,'''')=''<27><><EFBFBD><EFBFBD>'' ';
end else
begin
fsj:=fsj+' and isnull(JMM.Status,'''')<>'''' ';
end;
Parameters.ParamByName('WSql').Value:=fsj;
Open;
end;
SCreateCDS20(ADOQuery3,ClientDataSet3);
SInitCDSData20(ADOQuery3,ClientDataSet3);
finally
ADOQuery3.EnableControls;
end;
end;
end;
procedure TfrmKKView.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmKKView.Tv1FocusedRecordChanged(
Sender: TcxCustomGridTableView; APrevFocusedRecord,
AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
begin
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Main_MD_KK where MDID='''+Trim(ClientDataSet3.fieldbyname('MDID').AsString)+'''');
sql.Add(' and isnull(KKTYpe,'''')='<><D0AD>'' ');
Open;
end;
SCreateCDS20(ADOQuery1,ClientDataSet2);
SInitCDSData20(ADOQuery1,ClientDataSet2);
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Main_MD_KK where MDID='''+Trim(ClientDataSet3.fieldbyname('MDID').AsString)+'''');
sql.Add(' and isnull(KKTYpe,'''')=''<27><><EFBFBD><EFBFBD>'' ');
Open;
end;
SCreateCDS20(ADOQuery1,ClientDataSet4);
SInitCDSData20(ADOQuery1,ClientDataSet4);
end;
procedure TfrmKKView.FormShow(Sender: TObject);
begin
EndDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=EndDate.Date-60;
cxTabControl1.TabIndex:=0;
ReadCxGrid('tv1',Tv1,'<27>ۿ<EFBFBD><DBBF><EFBFBD>ѯ');
ReadCxBandedGrid('tv2',Tv2,'<27>ۿ<EFBFBD><DBBF><EFBFBD>ѯ');
ReadCxBandedGrid('tv4',Tv4,'<27>ۿ<EFBFBD><DBBF><EFBFBD>ѯ');
end;
procedure TfrmKKView.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('tv1',Tv1,'<27>ۿ<EFBFBD><DBBF><EFBFBD>ѯ');
WriteCxBandedGrid('tv2',Tv2,'<27>ۿ<EFBFBD><DBBF><EFBFBD>ѯ');
WriteCxBandedGrid('tv4',Tv4,'<27>ۿ<EFBFBD><DBBF><EFBFBD>ѯ');
Close;
end;
procedure TfrmKKView.TBExportClick(Sender: TObject);
begin
if ClientDataSet3.IsEmpty then Exit;
TcxGridToExcel('<27><><EFBFBD>ڲֿ<DAB2><D6BF>ۿ<EFBFBD><DBBF>뵥',cxGrid1);
end;
procedure TfrmKKView.Tv1DblClick(Sender: TObject);
var
fsj:string;
begin
try
frmTJCKRKOK:=TfrmTJCKRKOK.Create(Application);
with frmTJCKRKOK do
begin
if Self.cxTabControl1.TabIndex=0 then
begin
frmTJCKRKOK.cxTabControl1.TabIndex:=2;
end else
if Self.cxTabControl1.TabIndex=1 then
begin
frmTJCKRKOK.cxTabControl1.TabIndex:=3;
end;
//frmTJCKRKOK.OrderNo.Text:=Trim(self.ClientDataSet3.fieldbyname('OrderNo').AsString);
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('select JM.OrderNo, A.*,B.PSName OrdPSName,C.ConNo,C.FactoryNoName,D.Price, ');
sql.Add(' JS.PRTHX,JS.PRTColor,JS.PRTColorNo,D.C_Code,D.C_CodeName,ClotheType10=A.ClotheType,');
sql.Add(' JSKCPS=A.RKPS-A.CKPS,');
sql.Add(' JSKCQty=A.RKQty-A.CKQty,');
sql.Add(' JM.MPRTCodeName,MPRTCode=RTrim(JM.MPRTCode)+RTrim(JM.MPRTGY)');
sql.Add(' from JYOrder_Main_MD A');
sql.Add(' inner join JYOrder_Main JM on A.OrdMainId=JM.MainId');
sql.Add(' left join JYOrder_Sub JS on A.OrdSubId=JS.SubId');
sql.Add(' inner join JYOrder_Process B on A.PSID=B.PSID');
sql.Add(' inner join Contract_Main C on A.ConMainid=C.MainID');
sql.Add(' inner join Contract_Sub D on A.ConSubid=D.SubID');
sql.Add(' where A.MDID='''+Trim(Self.ClientDataSet3.fieldbyname('MDID').AsString)+'''');
SQL.Add(' and isnull(A.CKName,'''')=''<27><><EFBFBD>ڲֿ<DAB2>'' ');
if Self.cxTabControl1.TabIndex=0 then
begin
sql.Add(' and isnull(A.Status,'''')='<><D0AD>'' ');
end else
if Self.cxTabControl1.TabIndex=1 then
begin
sql.Add(' and isnull(A.Status,'''')=''<27><><EFBFBD><EFBFBD>'' ');
end;
Open;
end;
SCreateCDS20(ADOQuery1,ClientDataSet6);
SInitCDSData20(ADOQuery1,ClientDataSet6);
ClientDataSet6.Locate('MDNO',Trim(Self.ClientDataSet3.fieldbyname('MDNO').AsString),[]);
fsj:='select Code=FactoryNo,Name=FactoryName from JYOrder_Main_MD where ORDMainId='''+Trim(ClientDataSet6.fieldbyname('ORDMainId').AsString)+''''+
' group by FactoryNo,FactoryName';
SInitCxBandGridComboBoxBySql(frmTJCKRKOK.ADOQueryTemp,frmTJCKRKOK.v2fty,fsj,1,True,'');
with frmTJCKRKOK.ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Main_MD where MDID='''+Trim(ClientDataSet6.fieldbyname('MDID').AsString)+'''');
Open;
end;
SCSHDataNew(frmTJCKRKOK.ADOQuery1,frmTJCKRKOK.ScrollBox1,2);
frmTJCKRKOK.InitGridKK();
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Main_MD_Out where MDID='''+Trim(ClientDataSet6.fieldbyname('MDID').AsString)+'''');
Open;
end;
{if ADOQueryTemp.IsEmpty=False then
begin
RKPS.ReadOnly:=True;
RKQty.ReadOnly:=True;
end;}
if ShowModal=1 then
begin
end;
end;
finally
frmTJCKRKOK.Free;
end;
end;
end.