D10SZKaiXiYa/E02梭织经轴仓库/U_EmptyBeamOutList.pas
DESKTOP-E401PHE\Administrator 53e8f4820d 11
2025-03-01 10:55:52 +08:00

337 lines
8.6 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_EmptyBeamOutList;
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, cxNavigator, dxDateRanges,
dxBarBuiltInMenu, U_BaseList, FrameDateSel, cxContainer,
dxScrollbarAnnotations, dxSkinsCore, dxSkinsDefaultPainters, cxProgressBar;
type
TfrmEmptyBeamOutList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
TBDel: TToolButton;
TBAdd: TToolButton;
TBEdit: TToolButton;
Label3: TLabel;
Label5: TLabel;
WBCID: TcxTextEdit;
TWIOID: TcxTextEdit;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
frmFrameDateSel1: TfrmFrameDateSel;
cxGrid1: TcxGrid;
TV1: TcxGridDBTableView;
cxGridDBColumn11: TcxGridDBColumn;
cxGridDBColumn13: TcxGridDBColumn;
cxGridDBColumn15: TcxGridDBColumn;
cxGridDBColumn16: TcxGridDBColumn;
cxGridDBColumn17: TcxGridDBColumn;
cxGridDBColumn18: TcxGridDBColumn;
TV1Column22: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
TV1Column1: TcxGridDBColumn;
TV1Column2: TcxGridDBColumn;
TV1Column3: TcxGridDBColumn;
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 TWIOIDChange(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure Y_specChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure TWIOIDPropertiesChange(Sender: TObject);
private
canshu1, FStkName, canshu3: string;
procedure InitGrid();
{ Private declarations }
public
{ Public declarations }
end;
implementation
uses
U_DataLink, U_RTFun, U_LabelPrint, U_WarpBeamOutEdit;
{$R *.dfm}
procedure TfrmEmptyBeamOutList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmEmptyBeamOutList.FormCreate(Sender: TObject);
begin
inherited;
canshu1 := Trim(self.fParameters1);
FStkName := Trim(self.fParameters2);
canshu3 := Trim(self.fParameters3);
frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp);
frmFrameDateSel1.BegDate.Date := frmFrameDateSel1.EndDate.Date - 90;
end;
procedure TfrmEmptyBeamOutList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' select A.*,B.* ');
sql.Add(' from Tat_WB_IO A left join Tat_WB_Stk B on A.WBNo=B.WBNo');
sql.add(' where A.IOTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.BegDate.Date)) + '''');
sql.Add(' and A.IOTime<''' + Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.enddate.Date + 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 TfrmEmptyBeamOutList.TBRafreshClick(Sender: TObject);
begin
ToolBar1.SetFocus;
InitGrid();
end;
procedure TfrmEmptyBeamOutList.ToolButton1Click(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption), Tv1, 'Ⱦɫ<C8BE><C9AB><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
end;
procedure TfrmEmptyBeamOutList.ToolButton2Click(Sender: TObject);
var
MTWIOID: 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;
MTWIOID := '';
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while CDS_Main.Locate('SSel', True, []) do
begin
MTWIOID := MTWIOID + ',' + (Trim(CDS_Main.fieldbyname('TWIOID').AsString));
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
CDS_Main.EnableControls;
try
frmLabelPrint := TfrmLabelPrint.Create(Application);
with frmLabelPrint do
begin
FLMType := 'TatWBOutPrt1';
FFiltration1 := MTWIOID;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmLabelPrint.Free;
end;
end;
procedure TfrmEmptyBeamOutList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmEmptyBeamOutList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmEmptyBeamOutList.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(trim(Self.Caption), Tv1, 'Ⱦɫ<C8BE><C9AB><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
InitGrid();
end;
procedure TfrmEmptyBeamOutList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel(FstkName + '<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid1);
end;
procedure TfrmEmptyBeamOutList.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 TfrmEmptyBeamOutList.SPNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmEmptyBeamOutList.TWIOIDChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmEmptyBeamOutList.TWIOIDPropertiesChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmEmptyBeamOutList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmEmptyBeamOutList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmEmptyBeamOutList.TBDelClick(Sender: TObject);
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;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
Sql.Clear;
Sql.Add('exec P_TatWB_Out_Del ');
Sql.Add(' @TWIOIDS=' + quotedstr(Trim(CDS_Main.fieldbyname('TWIOID').AsString)));
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;
CDS_Main.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmEmptyBeamOutList.TBAddClick(Sender: TObject);
begin
try
frmWarpBeamOutEdit := TfrmWarpBeamOutEdit.Create(Application);
with frmWarpBeamOutEdit do
begin
FBCId := '';
FstkName := Self.FstkName;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmWarpBeamOutEdit.Free;
end;
end;
procedure TfrmEmptyBeamOutList.TBEditClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
try
frmWarpBeamOutEdit := TfrmWarpBeamOutEdit.Create(Application);
with frmWarpBeamOutEdit do
begin
FBCId := Trim(CDS_Main.fieldbyname('TWIOID').AsString);
TBDel.Visible := False;
TBAdd.Visible := False;
FstkName := Self.FstkName;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmWarpBeamOutEdit.Free;
end;
end;
procedure TfrmEmptyBeamOutList.Y_specChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmEmptyBeamOutList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
end.