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

324 lines
9.0 KiB
ObjectPascal
Raw Normal View History

2026-02-26 09:41:35 +08:00
unit U_JGPBCKKCList;
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;
type
TfrmJGPBCKKCList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v2YLName: TcxGridDBColumn;
v1QtyUnit: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
Label3: TLabel;
YLName: TEdit;
ToolButton2: TToolButton;
Label2: TLabel;
v1SQJCQty: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
v1tuobie: TcxGridDBColumn;
v1dunWei: TcxGridDBColumn;
v1BQRKQty: TcxGridDBColumn;
v1BQCKQty: TcxGridDBColumn;
v1BQKCQty: TcxGridDBColumn;
v1BYRKQty: TcxGridDBColumn;
v1BYCKQty: TcxGridDBColumn;
cxStyle2: TcxStyle;
Label1: TLabel;
BegDate: TDateTimePicker;
Label4: TLabel;
tuobie: TEdit;
v1KCNote: TcxGridDBColumn;
ADOQuery1: TADOQuery;
TPrint: TToolButton;
CDS_Print: TClientDataSet;
v1FactoryName: TcxGridDBColumn;
v1JZRKQty: TcxGridDBColumn;
TWC: TToolButton;
v1WCStatus: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoMChange(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure MPRTCodeNameChange(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure SXBatchNOChange(Sender: TObject);
procedure FactoryNameChange(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ToolButton2Click(Sender: TObject);
procedure v1KCNotePropertiesEditValueChanged(Sender: TObject);
procedure TPrintClick(Sender: TObject);
procedure TWCClick(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
{ Public declarations }
end;
var
frmJGPBCKKCList: TfrmJGPBCKKCList;
implementation
uses
U_DataLink,U_RTFun,U_SXCKInPut;
{$R *.dfm}
procedure TfrmJGPBCKKCList.FormDestroy(Sender: TObject);
begin
frmJGPBCKKCList:=nil;
end;
procedure TfrmJGPBCKKCList.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmJGPBCKKCList.InitGrid();
begin
ToolBar1.SetFocus;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('exec P_YL_KC @begdate='''+trim(FormatDateTime('yyyy-MM-dd',BegDate.Date-1))+'''');
sql.Add(',@enddate='''+trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
finally;
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmJGPBCKKCList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmJGPBCKKCList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
end;
end;
procedure TfrmJGPBCKKCList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD>б<EFBFBD>4321',Tv1,<>ϲֿ<CFB2>');
Close;
end;
procedure TfrmJGPBCKKCList.FormShow(Sender: TObject);
begin
ReadCxGrid(<>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD>б<EFBFBD>4321',Tv1,<>ϲֿ<CFB2>');
BegDate.Date:=SGetServerDate(ADOQueryTemp);
//InitGrid();
end;
procedure TfrmJGPBCKKCList.TBFindClick(Sender: TObject);
begin
ToolBar1.SetFocus;
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
end;
end;
procedure TfrmJGPBCKKCList.MPRTCodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmJGPBCKKCList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main,True);
end;
procedure TfrmJGPBCKKCList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,False);
end;
procedure TfrmJGPBCKKCList.SXBatchNOChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmJGPBCKKCList.FactoryNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmJGPBCKKCList.Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
ModalResult:=1;
end;
procedure TfrmJGPBCKKCList.ToolButton2Click(Sender: TObject);
begin
ToolBar1.SetFocus;
if CDS_Main.IsEmpty then exit;
TcxGridToExcel(<>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD>б<EFBFBD>',cxGrid2);
end;
procedure TfrmJGPBCKKCList.v1KCNotePropertiesEditValueChanged(
Sender: TObject);
var
maxno,mavlue:string;
begin
mavlue:=TcxTextEdit(Sender).EditingText;
with CDS_Main do
begin
Edit;
FieldByName('KCNote').Value:=Trim(mavlue);
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where Type='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+trim(CDS_Main.fieldbyname('YLName').AsString)+trim(CDS_Main.fieldbyname('tuobie').AsString)+'''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQuery1,maxno,'YL','KH_ZDY',3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end else
begin
maxno:=Trim(ADOQueryTemp.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where ZDYNo='''+trim(maxno)+'''');
Open;
end;
if ADOQueryCmd.IsEmpty then
ADOQueryCmd.Append
else
ADOQueryCmd.Edit;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value:=Trim(mavlue);
ADOQueryCmd.FieldByName('Type').Value:=Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+trim(CDS_Main.fieldbyname('YLName').AsString)+trim(CDS_Main.fieldbyname('tuobie').AsString);
ADOQueryCmd.FieldByName('valid').Value:='Y';
ADOQueryCmd.Post;
//ShowMessage(Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+trim(CDS_Main.fieldbyname('YLName').AsString)+trim(CDS_Main.fieldbyname('tuobie').AsString));
end;
ADOQueryCmd.Connection.CommitTrans;
except;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
end;
end;
procedure TfrmJGPBCKKCList.TPrintClick(Sender: TObject);
var
fPrintFile:string;
Porderno,LBName:string;
i,j:Integer;
begin
if CDS_Main.IsEmpty then Exit;
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\ԭ<>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>ѯ.rmf' ;
with ADOQueryTemp do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('exec P_YL_KCBaoBiao @begdate='''+trim(FormatDateTime('yyyy-MM-dd',BegDate.Date-1))+'''');
sql.Add(',@enddate='''+trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Print);
SInitCDSData20(ADOQueryTemp,CDS_Print);
if CDS_Print.FieldByName('WCStatus').AsString='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD>Ǽ<EFBFBD><C7BC><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
if FileExists(fPrintFile) then
begin
RM1.LoadFromFile(fPrintFile);
RMVariables['Date']:=BegDate.Date;
RM1.ShowReport;
end else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>'+ExtractFilePath(Application.ExeName)+'Report\ԭ<>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>ѯ.rmf'),'<27><>ʾ',0);
end;
end;
procedure TfrmJGPBCKKCList.TWCClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('update CK_SXPB_CR set WCStatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' where CRFlag=''<27><><EFBFBD><EFBFBD>'' and CKName='<><D4AD>'' ');
sql.Add('and filltime>='''+trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+''' ');
sql.Add('and filltime<'''+trim(FormatDateTime('yyyy-MM-dd',BegDate.Date+1))+'''');
ExecSQL;
end;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>','<27><>ʾ');
TBRafresh.Click;
end;
end.