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

351 lines
9.3 KiB
ObjectPascal
Raw Permalink Normal View History

2026-02-26 09:41:35 +08:00
unit U_CaiGouSQChkList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter,
RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport,
cxTextEdit, cxPC, cxDropDownEdit, cxCheckBox, Menus;
type
TfrmCaiGouSQChkList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
TBExport: TToolButton;
Order_Main: TClientDataSet;
ToolButton3: TToolButton;
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
ToolButton2: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column7: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
TBFind: TToolButton;
YCLName: TEdit;
Label4: TLabel;
SQPerson: TEdit;
Label5: TLabel;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
ToolButton1: TToolButton;
ToolButton4: TToolButton;
cxTabControl1: TcxTabControl;
v1Column8: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
Label3: TLabel;
YCLSpec: TEdit;
v1SQPirce: TcxGridDBColumn;
v1SQGYSName: TcxGridDBColumn;
Label6: TLabel;
SQGYSName: TEdit;
v1SQMoney: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
Label7: TLabel;
ChkNote: TEdit;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cxPageControl1Change(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure YCLNameChange(Sender: TObject);
procedure v1Column14PropertiesEditValueChanged(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
private
canshu1,canshu2:string;
procedure InitGrid();
procedure InitForm();
{ Private declarations }
public
{ Public declarations }
end;
implementation
uses
U_DataLink,U_RTFun,U_CaiGouSQInPut,U_ModuleNote;
{$R *.dfm}
procedure TfrmCaiGouSQChkList.FormDestroy(Sender: TObject);
begin
//frmCaiGouSQChkList:=nil;
end;
procedure TfrmCaiGouSQChkList.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
application:=mainapplication;
Action:=caFree;
end;
procedure TfrmCaiGouSQChkList.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid(Self.Caption,Tv1,'<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmCaiGouSQChkList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add(' select A.* ');
SQL.Add(' from CaiGou_SQ A where isnull(SChkStatus,'''')<>'''' and SQType='''+Trim(canshu2)+'''');
if cxTabControl1.TabIndex=0 then
begin
sql.Add(' and isnull(ChkStatus,'''')='''' ');
end else
if cxTabControl1.TabIndex=1 then
begin
sql.Add(' and isnull(ChkStatus,'''')=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' ');
end;
if cxTabControl1.TabIndex<>0 then
begin
sql.Add(' and A.SQDate>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
sql.Add(' and A.SQDate<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
end;
sql.Add(' order by SQDate');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCaiGouSQChkList.InitForm();
begin
EndDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=EndDate.Date-7;
ReadCxGrid(Self.Caption,Tv1,'<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
InitGrid();
end;
procedure TfrmCaiGouSQChkList.TBExportClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
TcxGridToExcel('<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',cxGrid1);
end;
procedure TfrmCaiGouSQChkList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCaiGouSQChkList.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmCaiGouSQChkList.cxPageControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCaiGouSQChkList.ToolButton3Click(Sender: TObject);
begin
try
frmModuleNote:=TfrmModuleNote.Create(Application);
with frmModuleNote do
begin
flag:='<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>';
if ShowModal=1 then
begin
end;
end;
finally;
frmModuleNote.Free;
end;
end;
procedure TfrmCaiGouSQChkList.FormCreate(Sender: TObject);
begin
canshu1:=Trim(DParameters1);
canshu2:=Trim(DParameters2);
end;
procedure TfrmCaiGouSQChkList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCaiGouSQChkList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmCaiGouSQChkList.ToolButton1Click(Sender: TObject);
begin
if cxTabControl1.TabIndex<>0 then Exit;
if Order_Main.IsEmpty then Exit;
if Order_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>д˲<D0B4><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while Locate('SSel',True,[])=True do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate CaiGou_SQ Set ChkStatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'',Chktime=getdate(),Chker='''+Trim(DName)+'''');
sql.Add(' where SQID='''+Trim(Order_Main.fieldbyname('SQID').AsString)+'''');
ExecSQL;
end;
Order_Main.Delete;
end;
end;
Order_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
except
Order_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmCaiGouSQChkList.ToolButton4Click(Sender: TObject);
begin
if cxTabControl1.TabIndex<>1 then Exit;
if Order_Main.IsEmpty then Exit;
if Order_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>д˲<D0B4><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while Locate('SSel',True,[])=True do
begin
{with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CaiGou_SQ ');
sql.Add(' where SQID='''+Trim(Order_Main.fieldbyname('SQID').AsString)+'''');
Open;
end;
if Trim(ADOQueryTemp.fieldbyname('ChkStatus').AsString)='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
Order_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
InitGrid();
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܳ<EFBFBD><DCB3><EFBFBD>!','<27><>ʾ',0);
Exit;
end; }
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate CaiGou_SQ Set ChkStatus=Null,Chktime=getdate(),Chker='''+Trim(DName)+'''');
sql.Add(' where SQID='''+Trim(Order_Main.fieldbyname('SQID').AsString)+'''');
ExecSQL;
end;
Order_Main.Delete;
end;
end;
Order_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
except
Order_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmCaiGouSQChkList.YCLNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCaiGouSQChkList.v1Column14PropertiesEditValueChanged(
Sender: TObject);
var
mvalue:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
with Order_Main do
begin
Edit;
FieldByName('ChkNote').Value:=mvalue;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CaiGou_SQ Set ChkNote='''+Trim(mvalue)+'''');
sql.Add(' where SQID='''+Trim(Order_Main.fieldbyname('SQID').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmCaiGouSQChkList.N1Click(Sender: TObject);
begin
SelOKNo(Order_Main,True);
end;
procedure TfrmCaiGouSQChkList.N2Click(Sender: TObject);
begin
SelOKNo(Order_Main,False);
end;
end.