D10xhGemei/T02贸易汇总仓库/U_TradeClothProcessCastingInput.pas
2024-12-17 17:25:32 +08:00

234 lines
6.8 KiB
ObjectPascal
Raw Permalink 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_TradeClothProcessCastingInput;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxCalendar, cxDropDownEdit, ComCtrls, ToolWin,
cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxClasses, cxControls, cxGridCustomView, cxGrid, cxGridCustomPopupMenu,
cxGridPopupMenu, ADODB, DBClient, cxButtonEdit, cxTextEdit, cxSpinEdit,
StdCtrls, ExtCtrls, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator,
dxDateRanges, dxBarBuiltInMenu, U_BaseInput, System.ImageList, Vcl.ImgList,
cxPC, dxScrollbarAnnotations, cxCheckBox, cxImageList, dxSkinsCore,
dxSkinsDefaultPainters, Vcl.Menus;
type
TfrmTradeClothProcessCastingInput = class(TfrmBaseInput)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
DS_1: TDataSource;
CDS_1: TClientDataSet;
ADOQueryCmd: TADOQuery;
ADO_1: TADOQuery;
ADOQueryTemp: TADOQuery;
GPM_1: TcxGridPopupMenu;
ToolButton1: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
Tv1Column13: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
Tv1Column11: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
Tv1Column19: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column20: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column21: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
Tv1Column14: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Tv1Column7: TcxGridDBColumn;
Tv1Column12: TcxGridDBColumn;
Tv1Column15: TcxGridDBColumn;
Tv1Column16: TcxGridDBColumn;
Tv1Column17: TcxGridDBColumn;
Tv1Column18: TcxGridDBColumn;
Tv1Column20: TcxGridDBColumn;
pm1: TPopupMenu;
N5: TMenuItem;
N6: TMenuItem;
N3: TMenuItem;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N3Click(Sender: TObject);
private
{ Private declarations }
function SaveData(): Boolean;
procedure InitGrid1();
public
{ Public declarations }
FMasterOrderNo, FSubid, FTPFId: string;
end;
var
frmTradeClothProcessCastingInput: TfrmTradeClothProcessCastingInput;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_TradeFinishClothStkSel, U_CompanySel,
U_TradePlanSel;
{$R *.dfm}
procedure TfrmTradeClothProcessCastingInput.InitGrid1();
begin
with ADO_1 do
begin
Close;
sql.Clear;
sql.Add(' select A.*,outtime=getdate() ');
sql.Add(',OutPiece=StkPiece,OutQty=StkQty ');
sql.Add(',KYPiece=StkPiece,KYQty=StkQty ');
sql.Add(' from BS_Cloth_IO A ');
SQL.Add(' where A.IOFlag=''<27><><EFBFBD><EFBFBD>'' and (isnull(StkQty,0)>0 or isnull(StkPiece,0)>0) ');
sql.Add(' and isnull(stkName,'''')='<>ײ<EFBFBD>ƥ'' ');
// sql.Add(' and fromMasterOrdNo= ' + QuotedStr(TRIM(FMasterOrderNo))); and IOType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''
Open;
end;
SCreateCDS(ADO_1, CDS_1);
SInitCDSData(ADO_1, CDS_1);
end;
procedure TfrmTradeClothProcessCastingInput.N3Click(Sender: TObject);
begin
CopyTVFocusValue(TV1);
end;
procedure TfrmTradeClothProcessCastingInput.N5Click(Sender: TObject);
begin
SelOKNo(CDS_1, True);
end;
procedure TfrmTradeClothProcessCastingInput.N6Click(Sender: TObject);
begin
SelOKNo(CDS_1, False);
end;
procedure TfrmTradeClothProcessCastingInput.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
function TfrmTradeClothProcessCastingInput.SaveData(): Boolean;
var
MBCIOID: string;
begin
try
ADOQueryCmd.Connection.BeginTrans;
CDS_1.DisableControls;
with CDS_1 do
begin
First;
while not eof do
begin
if CDS_1.FieldByName('ssel').AsBoolean then
begin
if (CDS_1.fieldbyname('OutQty').AsFloat > 0) then
begin
with ADOQueryCmd do
begin
Close;
Sql.Clear;
Sql.Add('exec P_BS_Cloth_IOALL ');
Sql.Add(' @Operation=' + quotedstr(Trim(<><CDB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>')));
Sql.Add(' ,@StkID=' + quotedstr(Trim(CDS_1.fieldbyname('StkID').AsString)));
Sql.Add(' ,@MasterOrdNo=' + quotedstr(Trim(FMasterOrderNo)));
Sql.Add(' ,@TPFId=' + quotedstr(Trim(FTPFId)));
Sql.Add(' ,@SubId=' + quotedstr(Trim(FSubId)));
Sql.Add(' ,@IOTime=' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', CDS_1.fieldbyname('outtime').AsDateTime))));
Sql.Add(' ,@Piece=' + Trim(CDS_1.fieldbyname('OutPiece').AsString));
Sql.Add(' ,@Qty=' + Trim(CDS_1.fieldbyname('OutQty').AsString));
Sql.Add(' ,@Dcode=' + quotedstr(Trim(Dcode)));
Sql.Add(' ,@DName=' + quotedstr(Trim(DName)));
// ShowMessage(sql.Text);
Open;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
end;
end;
Next;
end;
end;
CDS_1.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Result := True;
except
Result := False;
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmTradeClothProcessCastingInput.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmTradeClothProcessCastingInput.FormShow(Sender: TObject);
var
fsj: string;
begin
inherited;
ReadCxGrid(trim(Self.Caption) + 'TV1', Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
InitGrid1();
end;
procedure TfrmTradeClothProcessCastingInput.TBSaveClick(Sender: TObject);
begin
if CDS_1.IsEmpty then
Exit;
ToolBar1.SetFocus;
if CDS_1.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
if SaveData() then
begin
ModalResult := 1;
end;
end;
procedure TfrmTradeClothProcessCastingInput.ToolButton1Click(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption) + 'TV1', Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
end;
end.