D10myZesheng/G02贸易汇总仓库/U_TradeGreyClothOutList.pas

407 lines
10 KiB
ObjectPascal
Raw Normal View History

2024-07-05 11:33:29 +08:00
unit U_TradeGreyClothOutList;
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,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList;
type
TfrmTradeGreyClothOutList = class(TfrmBaseList)
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;
TBDel: TToolButton;
TBAdd: TToolButton;
TBEdit: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
Label12: TLabel;
C_NAME: TEdit;
FTYName: TEdit;
BCIOID: TEdit;
C_spec: TEdit;
IOType: TComboBox;
v1Column20: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
Label9: TLabel;
CheJian: TEdit;
v1Column5: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
Label6: TLabel;
OrderNo: TEdit;
Label7: TLabel;
FTYNo: TEdit;
Tv1Column2: TcxGridDBColumn;
ToolButton1: TToolButton;
Tv1Column1: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
ToolButton2: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
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 SPNameChange(Sender: TObject);
procedure BCIOIDChange(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure C_specChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
private
canshu1, canshu2: string;
procedure InitGrid();
{ Private declarations }
public
FFSPID, FstkName: string;
{ Public declarations }
end;
implementation
uses
U_DataLink, U_RTFun, U_LablePrint, U_TradeGreyClothOutEdit;
{$R *.dfm}
procedure TfrmTradeGreyClothOutList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmTradeGreyClothOutList.FormCreate(Sender: TObject);
begin
inherited; //cxGrid1.Align:=alClient;
canshu1 := Trim(DParameters1);
canshu2 := Trim(DParameters2);
EndDate.DateTime := SGetServerDate(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime - 90;
end;
procedure TfrmTradeGreyClothOutList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' from BS_Cloth_IO A');
sql.add(' where A.IOTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''');
sql.Add(' and A.IOTime<''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)) + '''');
sql.Add(' and isnull(stkName,'''')=''' + Trim(FstkName) + '''');
SQL.Add(' and ioFlag=''<27><><EFBFBD><EFBFBD>'' ');
Open;
end;
SCreateCDS(ADOQueryMain, CDS_Main);
SInitCDSData(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmTradeGreyClothOutList.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmTradeGreyClothOutList.ToolButton1Click(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption), Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
end;
procedure TfrmTradeGreyClothOutList.ToolButton2Click(Sender: TObject);
var
MBCIOID: string;
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;
MBCIOID := '';
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while CDS_Main.Locate('SSel', True, []) do
begin
MBCIOID := MBCIOID + ',' + (Trim(CDS_Main.fieldbyname('BCIOID').AsString));
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
CDS_Main.EnableControls;
try
frmLablePrint := TfrmLablePrint.Create(Application);
with frmLablePrint do
begin
FLMType := 'TradeGreyClothOutPrt1';
FFiltration1 := MBCIOID;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmLablePrint.Free;
end;
end;
procedure TfrmTradeGreyClothOutList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmTradeGreyClothOutList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmTradeGreyClothOutList.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(trim(Self.Caption), Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
InitGrid();
end;
procedure TfrmTradeGreyClothOutList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel(FstkName + '<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid1);
end;
procedure TfrmTradeGreyClothOutList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_Main);
SInitCDSData(ADOQueryMain, CDS_Main);
end;
end;
procedure TfrmTradeGreyClothOutList.SPNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeGreyClothOutList.BCIOIDChange(Sender: TObject);
begin
if Length(Trim(BCIOID.Text)) < 4 then
begin
if Trim(BCIOID.Text) <> '' then
Exit;
end;
TBFind.Click;
end;
procedure TfrmTradeGreyClothOutList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmTradeGreyClothOutList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmTradeGreyClothOutList.TBDelClick(Sender: TObject);
var
MBCIOID: string;
begin
if CDS_Main.IsEmpty then
Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
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;
MBCIOID := '';
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while CDS_Main.Locate('SSel', True, []) do
begin
MBCIOID := MBCIOID + ',' + Trim(CDS_Main.fieldbyname('BCIOID').AsString);
CDS_Main.Delete;
end;
end;
CDS_Main.EnableControls;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
Sql.Clear;
Sql.Add('exec P_BS_Cloth_Out_Del ');
Sql.Add(' @BCIOIDS=' + quotedstr(MBCIOID));
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
Open;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
initgrid();
end;
end;
procedure TfrmTradeGreyClothOutList.TBAddClick(Sender: TObject);
begin
try
frmTradeGreyClothOutEdit := TfrmTradeGreyClothOutEdit.Create(Application);
with frmTradeGreyClothOutEdit do
begin
FBCId := '';
FstkName := Self.FstkName;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmTradeGreyClothOutEdit.Free;
end;
end;
procedure TfrmTradeGreyClothOutList.TBEditClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
with ADOQueryTemp do
begin
Close;
Sql.Clear;
Sql.Add('exec P_BS_Cloth_Out_Edit ');
Sql.Add(' @BCIOIDS=' + quotedstr(Trim(CDS_Main.fieldbyname('BCIOID').AsString)));
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
// ShowMessage(sql.Text);
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
try
frmTradeGreyClothOutEdit := TfrmTradeGreyClothOutEdit.Create(Application);
with frmTradeGreyClothOutEdit do
begin
FBCId := Trim(CDS_Main.fieldbyname('BCIOID').AsString);
TBDel.Visible := False;
TBAdd.Visible := False;
FstkName := Self.FstkName;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmTradeGreyClothOutEdit.Free;
end;
end;
procedure TfrmTradeGreyClothOutList.C_specChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeGreyClothOutList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
end.