D7snShanfengT/山峰贸易管理/U_JGSXKNewList_CPCK.pas

435 lines
11 KiB
ObjectPascal
Raw Normal View History

2026-02-26 09:41:35 +08:00
unit U_JGSXKNewList_CPCK;
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,
cxCalendar, cxButtonEdit, cxTextEdit, cxPC, cxTimeEdit, cxContainer,
cxMaskEdit, cxSpinEdit;
type
TfrmJGSXNewList_CPCK = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
TBDel: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
TBAdd: TToolButton;
TBEdit: TToolButton;
Label4: TLabel;
Label12: TLabel;
OrderNo: TEdit;
CRType: TComboBox;
Label6: TLabel;
CustomerNoName: TEdit;
cxTabControl1: TcxTabControl;
TTJ: TToolButton;
TCXTJ: TToolButton;
Label5: TLabel;
CLSpec: TEdit;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1CRTime: TcxGridDBColumn;
v1CRType: TcxGridDBColumn;
v1ConNO: TcxGridDBColumn;
V1orderNo: TcxGridDBColumn;
v1CustomerNoName: TcxGridDBColumn;
v1YLName: TcxGridDBColumn;
v2CPFLQty: TcxGridDBColumn;
v1GLQty: TcxGridDBColumn;
v1CLQty: TcxGridDBColumn;
v1JPSpec: TcxGridDBColumn;
v1CLSpec: TcxGridDBColumn;
v1SJName: TcxGridDBColumn;
v1CPNo: TcxGridDBColumn;
v1CheHao: TcxGridDBColumn;
v1Note: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
v1SJType: TcxGridDBColumn;
Begtime: TcxTimeEdit;
Endtime: TcxTimeEdit;
v1BTNo: TcxGridDBColumn;
v1CZName: TcxGridDBColumn;
v1GCName: TcxGridDBColumn;
Label7: TLabel;
Label8: TLabel;
GCName: TEdit;
Label9: TLabel;
Label10: TLabel;
BTNo: TEdit;
CZName: TEdit;
v1CLName: TcxGridDBColumn;
Label11: TLabel;
CLName: TEdit;
v1SGBuWei: TcxGridDBColumn;
v1YJFLQty: TcxGridDBColumn;
v1Ssel: TcxGridDBColumn;
v1CheCi: TcxGridDBColumn;
Label3: TLabel;
BNo: TEdit;
Label13: TLabel;
SJType: TEdit;
v1SGFangshi: TcxGridDBColumn;
Label14: TLabel;
SGFangshi: TEdit;
v1TeXing: TcxGridDBColumn;
Label15: TLabel;
TeXing: TEdit;
v1BTFLQty: 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 N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure SPIDChange(Sender: TObject);
procedure SPSpecChange(Sender: TObject);
procedure OrderNoChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure TTJClick(Sender: TObject);
procedure TCXTJClick(Sender: TObject);
private
canshu1,canshu2,canshu3:string;
procedure InitGrid();
procedure setstatus();
{ Private declarations }
public
{ Public declarations }
end;
var
frmJGSXNewList_CPCK: TfrmJGSXNewList_CPCK;
implementation
uses
U_DataLink,U_RTFun,U_SXCKInPut, U_JGSXCKInPut, U_JGSXCKInPut_CPCK;
{$R *.dfm}
procedure TfrmJGSXNewList_CPCK.setstatus();
begin
TBAdd.Visible:=False;
TBEdit.Visible:=false;
TBDel.Visible:=False;
TTJ.Visible:=False;
TCXTJ.Visible:=False;
if cxTabControl1.TabIndex=0 then
begin
TBAdd.Visible:=true;
TBEdit.Visible:=true;
TBDel.Visible:=true;
TTJ.Visible:=true;
end;
if cxTabControl1.TabIndex=1 then
begin
TCXTJ.Visible:=true;
end;
end;
procedure TfrmJGSXNewList_CPCK.FormDestroy(Sender: TObject);
begin
frmJGSXNewList_CPCK:=nil;
end;
procedure TfrmJGSXNewList_CPCK.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmJGSXNewList_CPCK.FormCreate(Sender: TObject);
begin
//cxGrid1.Align:=alClient;
EndDate.DateTime:=SGetServerDate10(ADOQueryTemp);
BegDate.DateTime:=EndDate.DateTime-30;
canshu1:=Trim(DParameters1);
canshu2:=Trim(DParameters2);
canshu3:=Trim(DParameters3);
end;
procedure TfrmJGSXNewList_CPCK.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(',SGBuWei=(select SGBuWei from JYOrder_Main B where B.OrderNo=A.OrderNO)');
sql.Add(' from CK_CP_CR A');
sql.add(' where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
sql.Add(' and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.Date+1))+'''');
{sql.add(' where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd HH:MM:SS',BegDate.Date+Begtime.Time))+'''');
sql.Add(' and A.CRTime<='''+Trim(FormatDateTime('yyyy-MM-dd HH:MM:SS',enddate.Date+Endtime.Time))+'''');}
if cxTabControl1.TabIndex=0 then
begin
sql.Add(' and isnull(Chkstatus,'''') in ('''',''<27><><EFBFBD>˲<EFBFBD>ͨ<EFBFBD><CDA8>'')');
end;
if cxTabControl1.TabIndex=1 then
begin
sql.Add(' and isnull(Chkstatus,'''')=''<27><><EFBFBD>ύ''');
end;
if cxTabControl1.TabIndex=2 then
begin
sql.Add(' and isnull(Chkstatus,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
end;
if Trim(canshu1)<>'<27><>Ȩ<EFBFBD><C8A8>' then
begin
sql.Add(' and A.Filler='''+Trim(DName)+'''');
end;
SQL.Add(' order by convert(varchar(10),A.CRTime,120),A.GCName');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
finally;
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmJGSXNewList_CPCK.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmJGSXNewList_CPCK.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
end;
end;
procedure TfrmJGSXNewList_CPCK.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>FM',Tv1,'<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmJGSXNewList_CPCK.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>FM',Tv1,'<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
setstatus();
//InitGrid();
end;
procedure TfrmJGSXNewList_CPCK.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then exit;
TcxGridToExcel('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',cxGrid2);
end;
procedure TfrmJGSXNewList_CPCK.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 TfrmJGSXNewList_CPCK.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main,True);
end;
procedure TfrmJGSXNewList_CPCK.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,False);
end;
procedure TfrmJGSXNewList_CPCK.TBDelClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
if Trim(CDS_Main.fieldbyname('CPID').AsString)<>'' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' delete from CK_CP_CR where CPID='''+Trim(CDS_Main.fieldbyname('CPID').AsString)+'''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_Main.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE><EFBFBD>쳣!','<27><>ʾ',0);
end;
end else
begin
CDS_Main.Delete;
end;
end;
procedure TfrmJGSXNewList_CPCK.TBAddClick(Sender: TObject);
begin
try
frmJGSXCKInPut_CPCK:=TfrmJGSXCKInPut_CPCK.Create(Application);
with frmJGSXCKInPut_CPCK do
begin
FBCId:='';
frmJGSXCKInPut_CPCK.canshu3:=Trim(Self.canshu3);
if ShowModal=1 then
begin
Self.InitGrid();
end;
end;
finally
frmJGSXCKInPut_CPCK.Free;
end;
end;
procedure TfrmJGSXNewList_CPCK.TBEditClick(Sender: TObject);
begin
ToolBar1.SetFocus;
if CDS_Main.IsEmpty then Exit;
try
frmJGSXCKInPut_CPCK:=TfrmJGSXCKInPut_CPCK.Create(Application);
with frmJGSXCKInPut_CPCK do
begin
ToolButton1.Visible:=false;
ToolButton2.Visible:=false;
FBCId:=Trim(CDS_Main.fieldbyname('CPID').AsString);
if ShowModal=1 then
begin
Self.InitGrid();
end;
end;
finally;
frmJGSXCKInPut_CPCK.Free;
end;
end;
procedure TfrmJGSXNewList_CPCK.SPIDChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmJGSXNewList_CPCK.SPSpecChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmJGSXNewList_CPCK.OrderNoChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmJGSXNewList_CPCK.cxTabControl1Change(Sender: TObject);
begin
setstatus();
InitGrid();
end;
procedure TfrmJGSXNewList_CPCK.TTJClick(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><>ʾ');
exit;
end;
with CDS_Main do
begin
first;
while not eof do
begin
if FieldByName('Ssel').AsBoolean=True then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('Update CK_CP_CR set ');
sql.Add('Chker='''+trim(DName)+''',Chkstatus=''<27><><EFBFBD>ύ'',Chkdate=getdate() ');
sql.Add('where CPID='''+trim(CDS_Main.fieldbyname('CPID').AsString)+'''');
ExecSQL;
end;
CDS_Main.Delete;
end
else
next;
end;
end;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>','<27><>ʾ');
end;
procedure TfrmJGSXNewList_CPCK.TCXTJClick(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><>ʾ');
exit;
end;
with CDS_Main do
begin
first;
while not eof do
begin
if FieldByName('Ssel').AsBoolean=True then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('Update CK_CP_CR set ');
sql.Add('Chker='''',Chkstatus='''',Chkdate=NULL ');
sql.Add('where CPID='''+trim(CDS_Main.fieldbyname('CPID').AsString)+'''');
ExecSQL;
end;
CDS_Main.Delete;
end
else
next;
end;
end;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>','<27><>ʾ');
end;
end.