D7DJpingfeng/打卷检验管理/U_CKProductBCPInList.pas
DESKTOP-E401PHE\Administrator fcc9b7317d ~
2025-04-30 20:07:44 +08:00

772 lines
22 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_CKProductBCPInList;
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, cxCheckBox, RM_Common,
RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, Menus,
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator;
type
TfrmCKProductBCPInList = 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;
Label4: TLabel;
PRTCodeName: TEdit;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
Label5: TLabel;
orderNo: TEdit;
Label6: TLabel;
MJID: TEdit;
Label8: TLabel;
PRTKZ: TEdit;
Label9: TLabel;
PRTMF: TEdit;
Label7: TLabel;
CPType: TComboBox;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column1: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
Label10: TLabel;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
TBRKCX: TToolButton;
v1Column4: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
v1Column11: TcxGridDBColumn;
PRTColor: TComboBox;
v1Column12: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
ComboBox1: TComboBox;
BaoNo: TEdit;
v1BAOid: TcxGridDBColumn;
Panel4: TPanel;
Label11: TLabel;
Panel10: TPanel;
Image2: TImage;
RichEdit1: TRichEdit;
v1Column10: TcxGridDBColumn;
Label12: TLabel;
PRTHX: TEdit;
Label13: TLabel;
SOrddefstr1: TEdit;
Label14: TLabel;
ADOQueryPrint: TADOQuery;
RKOrdID: TEdit;
Label15: TLabel;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
MJstr4: TEdit;
Label16: TLabel;
CheckBox1: TCheckBox;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
ToolButton1: TToolButton;
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 PRTCodeNameChange(Sender: TObject);
procedure TBPrintClick(Sender: TObject);
procedure orderNoChange(Sender: TObject);
procedure orderNoKeyPress(Sender: TObject; var Key: Char);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBRKCXClick(Sender: TObject);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure PRTColorChange(Sender: TObject);
procedure BaoNoChange(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 CheckBox1Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
FLeft,FTop:Integer;
procedure InitGrid();
Procedure JSbaoNum();
{ Private declarations }
public
{ Public declarations }
end;
var
frmCKProductBCPInList: TfrmCKProductBCPInList;
implementation
uses
U_DataLink,U_Fun;
{$R *.dfm}
Procedure TfrmCKProductBCPInList.JSbaoNum();
var
i:integer;
baoID:string;
strlist:Tstringlist;
begin
i:=0;
baoID:='';
IF CDS_Main.IsEmpty then
begin
Label12.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0';
exit;
end;
strlist:=Tstringlist.Create;
try
with CDS_Main do
begin
DisableControls;
first;
while not eof do
begin
IF (trim(fieldbyname('BaoNO').AsString)<>'') then
begin
IF strlist.IndexOf(trim(fieldbyname('subID').AsString)+trim(fieldbyname('BaoNO').AsString))<0 then
begin
strlist.Add(trim(fieldbyname('subID').AsString)+trim(fieldbyname('BaoNO').AsString));
end;
end;
{ IF (trim(fieldbyname('BaoID').AsString)<>trim(baoID)) and (trim(fieldbyname('BaoID').AsString)<>'') then
begin
i:=i+1;
baoID:=trim(fieldbyname('BaoID').AsString);
end; }
Next;
end;
EnableControls;
end;
Label12.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'+inttostr(strlist.Count);
finally
strlist.Free;
end;
end;
procedure TfrmCKProductBCPInList.FormDestroy(Sender: TObject);
begin
frmCKProductBCPInList:=nil;
end;
procedure TfrmCKProductBCPInList.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmCKProductBCPInList.FormCreate(Sender: TObject);
begin
BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp);
EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp)
end;
procedure TfrmCKProductBCPInList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
SQL.Add('select A.*,B.OrderNo,C.PRTCodeName,C.PRTSpec,C.PRTColor,C.SOrddefstr1,C.PRTMF,C.PRTKZ,D.MJXH,C.PRTHX,D.MJQty3,D.MJQty4 ');
sql.Add(',isnull(customerNoName,B.OrderNo) KHName');
sql.Add(',PONO=(select Top 1 KHConNo from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)');
sql.Add(',MPRTECodeName=(select Top 1 MPRTCodeName from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)');
sql.Add(',cast(D.mjstr4 as varchar(20)) as mjstr4,D.Mjstr5');
sql.add('from CK_BanCP_CR A ');
Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId');
Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId');
Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId');
sql.add('where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''');
sql.Add(' and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1))+'''');
SQL.Add(' and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
TBFind.Click;
end;
procedure TfrmCKProductBCPInList.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmCKProductBCPInList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
end;
end;
procedure TfrmCKProductBCPInList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD>Ʒ<EFBFBD>ֿ<EFBFBD><D6BF><EFBFBD><EFBFBD><EFBFBD>',Tv1,'<27><><EFBFBD><EFBFBD>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmCKProductBCPInList.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD>Ʒ<EFBFBD>ֿ<EFBFBD><D6BF><EFBFBD><EFBFBD><EFBFBD>',Tv1,'<27><><EFBFBD><EFBFBD>Ʒ<EFBFBD>ֿ<EFBFBD>');
if Trim(DParameters2)='<27><><EFBFBD><EFBFBD>' then
begin
v1Column4.Visible:=True;
TBRKCX.Visible:=True;
end else
begin
v1Column4.Visible:=False;
TBRKCX.Visible:=False;
end;
InitGrid();
end;
procedure TfrmCKProductBCPInList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',cxGrid2);
end;
procedure TfrmCKProductBCPInList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
end;
JSbaoNum();
end;
procedure TfrmCKProductBCPInList.PRTCodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCKProductBCPInList.TBPrintClick(Sender: TObject);
var
fPrintFile,fPrintFile10,FMainID:String;
begin
if CDS_Main.IsEmpty then Exit;
if trim(ComboBox1.Text)='' then exit;
if CDS_Main.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',0);
Exit;
end;
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+trim(ComboBox1.Text)+'.rmf' ;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete TBSubID where DName='''+Trim(DCode)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('SELECT * FROM TBSubID where 1=2 ');
open;
end;
FMainID:='';
CDS_Main.DisableControls;
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
First;
while not Eof do
begin
If Fieldbyname('Ssel').AsBoolean then
begin
IF FMainID='' then
begin
FMainID:=Trim(CDS_Main.fieldbyname('mainID').AsString);
end
else
begin
IF Trim(CDS_Main.fieldbyname('mainID').AsString)<>FMainID then
begin
application.MessageBox('ѡ<><D1A1><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>ͬһ<CDAC><D2BB>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ӡ<EFBFBD><D3A1>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
ADOQueryCmd.Connection.RollbackTrans;
EnableControls;
exit;
end;
end;
ADOQueryCmd.append;
ADOQueryCmd.fieldbyname('SubId').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString);
ADOQueryCmd.fieldbyname('Dname').Value:=Trim(DCode);
ADOQueryCmd.post;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
end;
CDS_Main.EnableControls;
IF (trim(ComboBox1.Text)='<27><><EFBFBD><EFBFBD><EFBFBD>뵥') or (trim(ComboBox1.Text)='<27><><EFBFBD><EFBFBD><EFBFBD>뵥-<2D><><EFBFBD><EFBFBD>') then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Print_CKMD ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
// sql.add(',@flag=''0'' ');
// sql.add(',@CNum=''10'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_HZ);
SInitCDSData20(ADOQueryTemp,CDS_HZ);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd_HZ ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''2'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_PRT);
SInitCDSData20(ADOQueryTemp,CDS_PRT);
end;
IF trim(ComboBox1.Text)='<27><><EFBFBD><EFBFBD><EFBFBD>뵥-QLO' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add(' SELECT A.mainID,A.subID,A.MJStr4,A.MJLen,A.MJTypeOther,A.baoID,A.baoNo,A.MJQty2,A.MJQty3,A.MJQty4,A.MJMaoZ,A.MJXH,A.MJID, ');
sql.add('B.SOrddefstr1,B.PRTCodeName,B.prtSpec,B.PRTColor,B.SOrddefstr4,B.PRTHX,B.Sorddefstr6,B.PRTKuanNO, ');
sql.add('C.Filler as zl,C.OrdPerson1,C.OrderNo,');
sql.add('CRTime=(select MAX(CRTime) from CK_BanCP_CR X where X.MJID=A.MJID),');
sql.add('CKOrdNo=(select MAX(CKOrdNo) from CK_BanCP_CR X where X.MJID=A.MJID ) ');
// sql.add(',a=count(distinct A.MJStr4)');
sql.add('FROM WFB_MJJY A');
sql.add('inner join JYOrder_Sub B on B.MainId=A.MainId and B.SubId=A.subID ');
sql.add('inner join JYOrder_Main C on C.MainId=A.MainId ');
sql.add('WHERE EXISTS(select SubId from TBSubID X where X.SubId=A.MJID and X.DName='''+DCode+''') ');
sql.add('ORDER BY A.MainID,A.subID,A.MJStr4,A.MJXH ');
// showmessage(sql.Text);
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_HZ);
SInitCDSData20(ADOQueryTemp,CDS_HZ);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd_HZ ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''2'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_PRT);
SInitCDSData20(ADOQueryTemp,CDS_PRT);
end;
IF (trim(ComboBox1.Text)='<27><>ɫ<EFBFBD><C9AB>װ') OR (trim(ComboBox1.Text)='<27><>ɫ<EFBFBD><C9AB>װ-<2D><><EFBFBD><EFBFBD>') OR (trim(ComboBox1.Text)='<27><>װ') then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd20 ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''0'' ');
sql.add(',@CNum=''10'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_HZ);
SInitCDSData20(ADOQueryTemp,CDS_HZ);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd_HZ ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''0'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_PRT);
SInitCDSData20(ADOQueryTemp,CDS_PRT);
end;
// IF (trim(ComboBox1.Text)='<27><>װ') then
// begin
// with ADOQueryTemp do
// begin
// Close;
// sql.Clear;
// sql.add('select A.OrderNo,B.* from WFB_MJJY B left join JYOrder_Main A on A.MainId=B.MainId ');
// sql.add('where A.OrderNo ='+Trim(CDS_Main.fieldbyname('orderNo').AsString));
// sql.add('order by b.MJXH');
// Open;
// end;
// SCreateCDS20(ADOQueryTemp,CDS_HZ);
// SInitCDSData20(ADOQueryTemp,CDS_HZ);
//
// with ADOQueryTemp do
// begin
// Close;
// sql.Clear;
// sql.add('exec P_Do_PrintMd_HZ ');
// sql.add('@mainID='+quotedstr(Trim('')));
// sql.add(',@DName='+quotedstr(Trim(DCode)));
// sql.add(',@flag=''0'' ');
// Open;
// end;
// SCreateCDS20(ADOQueryTemp,CDS_PRT);
// SInitCDSData20(ADOQueryTemp,CDS_PRT);
// end;
IF trim(ComboBox1.Text)='<27><>ɫ<EFBFBD><C9AB>װ-10ɫ' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd30 ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''0'' ');
sql.add(',@CNum=''10'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_HZ);
SInitCDSData20(ADOQueryTemp,CDS_HZ);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd_HZ ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''1'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_PRT);
SInitCDSData20(ADOQueryTemp,CDS_PRT);
end;
IF trim(ComboBox1.Text)='<27><>ɫ<EFBFBD><C9AB>װ-<2D><><EFBFBD><EFBFBD>' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd30 ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''0'' ');
sql.add(',@CNum=''10'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_HZ);
SInitCDSData20(ADOQueryTemp,CDS_HZ);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Do_PrintMd_HZ ');
sql.add('@mainID='+quotedstr(Trim('')));
sql.add(',@DName='+quotedstr(Trim(DCode)));
sql.add(',@flag=''1'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_PRT);
SInitCDSData20(ADOQueryTemp,CDS_PRT);
end;
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 TfrmCKProductBCPInList.orderNoChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCKProductBCPInList.orderNoKeyPress(Sender: TObject;
var Key: Char);
begin
if Key=#13 then
begin
if Length(Trim(orderNo.Text))<4 then Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
SQL.Add('select A.*,B.OrderNo,C.PRTCodeName,C.PRTSpec,C.PRTColor,C.SOrddefstr1,C.PRTMF,C.PRTKZ,D.MJXH,C.PRTHX,D.MJQty3,D.MJQty4');
sql.Add(',isnull(customerNoName,B.OrderNo) KHName');
sql.Add(',PONO=(select Top 1 KHConNo from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)');
sql.Add(',MPRTECodeName=(select Top 1 MPRTCodeName from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)');
sql.Add(',D.mjstr4,D.MJstr5');
sql.add('from CK_BanCP_CR A ');
Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId');
Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId');
Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId');
sql.add('where B.OrderNo like :OrderNo');
SQL.Add(' and CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Parameters.ParamByName('orderNo').Value:='%'+Trim(orderNo.Text)+'%';
Open;
//ShowMessage(SQL.Text);
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
if CDS_Main.IsEmpty=False then
begin
InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp);
//InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp);
end;
finally
ADOQueryMain.EnableControls;
end;
JSbaoNum();
end;
end;
procedure TfrmCKProductBCPInList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main,True);
end;
procedure TfrmCKProductBCPInList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,False);
end;
procedure TfrmCKProductBCPInList.TBRKCXClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
if CDS_Main.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫִ<D2AA>в<EFBFBD><D0B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
BegDate.SetFocus;
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
while Locate('SSel',True,[]) do
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_BanCP_CR where CRID='+Trim(CDS_Main.fieldbyname('CRID').AsString));
Open;
end;
if ADOQueryTemp.RecordCount>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>ѳ<EFBFBD><D1B3><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_Main.fieldbyname('BCID').AsString)+'''');
sql.Add('delete CK_BanCP_KC where CRID='+Trim(CDS_Main.fieldbyname('CRID').AsString));
sql.Add('Update WFB_MJJY Set MJStr2='<><CEB4><EFBFBD><EFBFBD>'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+'''');
ExecSQL;
end;
CDS_Main.Delete;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
end;
end;
procedure TfrmCKProductBCPInList.Tv1CellClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if CDS_Main.IsEmpty=False then
begin
InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp);
// InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp);
end;
end;
procedure TfrmCKProductBCPInList.PRTColorChange(Sender: TObject);
begin
TBFind.Click;
if CDS_Main.IsEmpty=False then
begin
//InitOrderColor(Trim(CDS_Main.fieldbyname('MainId').AsString),PRTColor,ADOQueryTemp);
//InitBCGangNo(Trim(CDS_Main.fieldbyname('SubId').AsString),AOrdDefStr1,ADOQueryTemp);
end;
end;
procedure TfrmCKProductBCPInList.BaoNoChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCKProductBCPInList.Image2Click(Sender: TObject);
begin
Panel4.Visible:=False;
end;
procedure TfrmCKProductBCPInList.Tv1CellDblClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
Panel4.Left:=FLeft;
Panel4.Top:=FTop+110;
Panel4.Visible:=True;
Panel4.Refresh;
Panel10.Caption:=Trim(TV1.Controller.FocusedColumn.Caption);
RichEdit1.Text:=CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString;
end;
procedure TfrmCKProductBCPInList.Tv1MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FLeft:=X;
FTop:=Y;
end;
procedure TfrmCKProductBCPInList.CheckBox1Click(Sender: TObject);
begin
SelOKNo(CDS_Main,CheckBox1.Checked);
end;
procedure TfrmCKProductBCPInList.ToolButton1Click(Sender: TObject);
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
SQL.Add('select A.*,B.OrderNo,C.PRTCodeName,C.PRTSpec,C.PRTColor,C.SOrddefstr1,C.PRTMF,C.PRTKZ,D.MJXH,C.PRTHX,D.MJQty3,D.MJQty4');
sql.Add(',isnull(customerNoName,B.OrderNo) KHName');
sql.Add(',PONO=(select Top 1 KHConNo from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)');
sql.Add(',MPRTECodeName=(select Top 1 MPRTCodeName from JYOrderCon_Main JCM where JCM.ConNo=B.OrderNo)');
sql.Add(',D.mjstr4,D.Mjstr5');
sql.add('from CK_BanCP_CR A ');
Sql.add(' inner join JYOrder_Main B on A.MainId=B.MainId');
Sql.add(' inner join JYOrder_Sub C on A.SubId=C.SubId');
Sql.add(' inner join WFB_MJJY D on A.MJId=D.MJId');
Sql.add('inner join CK_BanCP_KC E on A.BCID=E.BCID');
sql.add('where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''');
sql.Add(' and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1))+'''');
SQL.Add(' and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
SQL.Add('and (E.KCQty>0 or E.KCKGQty>0) ');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
TBFind.Click;
end;
end.