1138 lines
30 KiB
ObjectPascal
1138 lines
30 KiB
ObjectPascal
|
|
unit U_TradePack;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
IniFiles, Windows, Messages, strutils, SysUtils, Variants, Classes, Graphics,
|
|||
|
|
Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
|||
|
|
cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView,
|
|||
|
|
cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView,
|
|||
|
|
cxGrid, StdCtrls, cxContainer, cxTextEdit, cxCurrencyEdit, BtnEdit, ExtCtrls,
|
|||
|
|
ComCtrls, ToolWin, DBClient, ADODB, MovePanel, Buttons, Menus,
|
|||
|
|
cxLookAndFeelPainters, cxButtons, RM_Common, RM_Class, RM_GridReport,
|
|||
|
|
RM_System, RM_Dataset, cxCheckBox, MMSystem, Math, WinSpool, Printers,
|
|||
|
|
cxGridCustomPopupMenu, cxGridPopupMenu, cxLookAndFeels, cxNavigator,
|
|||
|
|
dxDateRanges, dxBarBuiltInMenu, Clipbrd, U_BaseList, dxScrollbarAnnotations,
|
|||
|
|
cxMaskEdit, cxDropDownEdit, cxButtonEdit, dxLayoutcxEditAdapters,
|
|||
|
|
dxLayoutControlAdapters, dxLayoutContainer, dxLayoutControl, cxGroupBox,
|
|||
|
|
RM_BarCode, RM_RichEdit, cxProgressBar, cxSplitter;
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
TfrmTradePack = class(TfrmBaseList)
|
|||
|
|
Panel2: TPanel;
|
|||
|
|
ADOQueryMain: TADOQuery;
|
|||
|
|
ADOQueryCmd: TADOQuery;
|
|||
|
|
CDS_DDB: TClientDataSet;
|
|||
|
|
DS_DDB: TDataSource;
|
|||
|
|
SmNO: TcxTextEdit;
|
|||
|
|
ADOQueryTmp: TADOQuery;
|
|||
|
|
DataSource1: TDataSource;
|
|||
|
|
cxGrid3: TcxGrid;
|
|||
|
|
Tv3: TcxGridDBTableView;
|
|||
|
|
cxGridLevel2: TcxGridLevel;
|
|||
|
|
Tv3Column1: TcxGridDBColumn;
|
|||
|
|
DS_KDB: TDataSource;
|
|||
|
|
RMDB_1: TRMDBDataSet;
|
|||
|
|
RM2: TRMGridReport;
|
|||
|
|
Panel4: TPanel;
|
|||
|
|
ADOQueryPrint: TADOQuery;
|
|||
|
|
Label6: TLabel;
|
|||
|
|
v3C_Name: TcxGridDBColumn;
|
|||
|
|
v3C_Color: TcxGridDBColumn;
|
|||
|
|
v3Column3: TcxGridDBColumn;
|
|||
|
|
CDS_KDB: TClientDataSet;
|
|||
|
|
Panel5: TPanel;
|
|||
|
|
CDS_YDB: TClientDataSet;
|
|||
|
|
DS_YDB: TDataSource;
|
|||
|
|
v3Column5: TcxGridDBColumn;
|
|||
|
|
v3Column6: TcxGridDBColumn;
|
|||
|
|
v3Column7: TcxGridDBColumn;
|
|||
|
|
PM_KDB: TPopupMenu;
|
|||
|
|
N1: TMenuItem;
|
|||
|
|
N2: TMenuItem;
|
|||
|
|
PM_YDB: TPopupMenu;
|
|||
|
|
btnClose: TcxButton;
|
|||
|
|
N5: TMenuItem;
|
|||
|
|
chkBBQ: TCheckBox;
|
|||
|
|
PM_DDB: TPopupMenu;
|
|||
|
|
N6: TMenuItem;
|
|||
|
|
N3: TMenuItem;
|
|||
|
|
N4: TMenuItem;
|
|||
|
|
N7: TMenuItem;
|
|||
|
|
Label2: TLabel;
|
|||
|
|
CDS_DDY: TClientDataSet;
|
|||
|
|
cxGridPopupMenu2: TcxGridPopupMenu;
|
|||
|
|
cxGridPopupMenu1: TcxGridPopupMenu;
|
|||
|
|
cxGridPopupMenu3: TcxGridPopupMenu;
|
|||
|
|
v3Column4: TcxGridDBColumn;
|
|||
|
|
v3Column11: TcxGridDBColumn;
|
|||
|
|
btnOK: TcxButton;
|
|||
|
|
cxButton2: TcxButton;
|
|||
|
|
edtPacketNo: TcxCurrencyEdit;
|
|||
|
|
cxButton3: TcxButton;
|
|||
|
|
Edit1: TcxTextEdit;
|
|||
|
|
N13: TMenuItem;
|
|||
|
|
CDS_PacketId: TClientDataSet;
|
|||
|
|
N8: TMenuItem;
|
|||
|
|
ComboBox1: TcxComboBox;
|
|||
|
|
ComboBox3: TcxComboBox;
|
|||
|
|
edtOrder: TcxButtonEdit;
|
|||
|
|
dxLayoutControl_tradepackGroup_Root: TdxLayoutGroup;
|
|||
|
|
dxLayoutControl_tradepack: TdxLayoutControl;
|
|||
|
|
dxLayoutGroup1: TdxLayoutGroup;
|
|||
|
|
dxLayoutItem1: TdxLayoutItem;
|
|||
|
|
dxLayoutItem2: TdxLayoutItem;
|
|||
|
|
dxLayoutItem3: TdxLayoutItem;
|
|||
|
|
dxLayoutItem4: TdxLayoutItem;
|
|||
|
|
dxLayoutItem5: TdxLayoutItem;
|
|||
|
|
dxLayoutItem6: TdxLayoutItem;
|
|||
|
|
dxLayoutEmptySpaceItem1: TdxLayoutEmptySpaceItem;
|
|||
|
|
dxLayoutEmptySpaceItem2: TdxLayoutEmptySpaceItem;
|
|||
|
|
cxButton_bcgs: TcxButton;
|
|||
|
|
dxLayoutItem7: TdxLayoutItem;
|
|||
|
|
cxGroupBox1: TcxGroupBox;
|
|||
|
|
cxGrid1: TcxGrid;
|
|||
|
|
TV1: TcxGridDBTableView;
|
|||
|
|
cxGridDBColumn8: TcxGridDBColumn;
|
|||
|
|
V1Column1: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn9: TcxGridDBColumn;
|
|||
|
|
V4Column3: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn10: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn11: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn12: TcxGridDBColumn;
|
|||
|
|
V4Column2: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn14: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn15: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn17: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn18: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn19: TcxGridDBColumn;
|
|||
|
|
cxGridLevel3: TcxGridLevel;
|
|||
|
|
cxGroupBox2: TcxGroupBox;
|
|||
|
|
cxGrid2: TcxGrid;
|
|||
|
|
TV2: TcxGridDBTableView;
|
|||
|
|
cxGridDBColumn2: TcxGridDBColumn;
|
|||
|
|
V2Column6: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn4: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn3: TcxGridDBColumn;
|
|||
|
|
V2Column4: TcxGridDBColumn;
|
|||
|
|
V2Column1: TcxGridDBColumn;
|
|||
|
|
V2BaooID: TcxGridDBColumn;
|
|||
|
|
V2BaooNO: TcxGridDBColumn;
|
|||
|
|
cxGridDBColumn6: TcxGridDBColumn;
|
|||
|
|
V2Column2: TcxGridDBColumn;
|
|||
|
|
V2Column3: TcxGridDBColumn;
|
|||
|
|
cxGridLevel1: TcxGridLevel;
|
|||
|
|
Tv3C_pattern: TcxGridDBColumn;
|
|||
|
|
Tv3C_ColorNo: TcxGridDBColumn;
|
|||
|
|
TV2C_pattern: TcxGridDBColumn;
|
|||
|
|
TV2C_ColorNo: TcxGridDBColumn;
|
|||
|
|
TV1C_pattern: TcxGridDBColumn;
|
|||
|
|
TV1C_colorNo: TcxGridDBColumn;
|
|||
|
|
RMRichObject1: TRMRichObject;
|
|||
|
|
RMBarCodeObject1: TRMBarCodeObject;
|
|||
|
|
CheckBox_hs: TCheckBox;
|
|||
|
|
dxLayoutItem8: TdxLayoutItem;
|
|||
|
|
dxLayoutEmptySpaceItem3: TdxLayoutEmptySpaceItem;
|
|||
|
|
TV1Column1: TcxGridDBColumn;
|
|||
|
|
TV1Column2: TcxGridDBColumn;
|
|||
|
|
TV1Column3: TcxGridDBColumn;
|
|||
|
|
cxSplitter1: TcxSplitter;
|
|||
|
|
cxSplitter2: TcxSplitter;
|
|||
|
|
cxSplitter3: TcxSplitter;
|
|||
|
|
cxSplitter4: TcxSplitter;
|
|||
|
|
N9: TMenuItem;
|
|||
|
|
procedure FormDestroy(Sender: TObject);
|
|||
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
|
procedure FormCreate(Sender: TObject);
|
|||
|
|
procedure edtOrderBtnClick(Sender: TObject);
|
|||
|
|
procedure btnCloseClick(Sender: TObject);
|
|||
|
|
procedure PRTColorKeyPress(Sender: TObject; var Key: Char);
|
|||
|
|
procedure N1Click(Sender: TObject);
|
|||
|
|
procedure N2Click(Sender: TObject);
|
|||
|
|
procedure FormShow(Sender: TObject);
|
|||
|
|
procedure N6Click(Sender: TObject);
|
|||
|
|
procedure SmNOKeyPress(Sender: TObject; var Key: Char);
|
|||
|
|
procedure N3Click(Sender: TObject);
|
|||
|
|
procedure N4Click(Sender: TObject);
|
|||
|
|
procedure N7Click(Sender: TObject);
|
|||
|
|
procedure N5Click(Sender: TObject);
|
|||
|
|
procedure btnOKClick(Sender: TObject);
|
|||
|
|
procedure cxButton2Click(Sender: TObject);
|
|||
|
|
procedure edtPacketNoClick(Sender: TObject);
|
|||
|
|
procedure N13Click(Sender: TObject);
|
|||
|
|
procedure N8Click(Sender: TObject);
|
|||
|
|
procedure edtOrderPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
|||
|
|
procedure cxButton_bcgsClick(Sender: TObject);
|
|||
|
|
procedure edtOrderKeyPress(Sender: TObject; var Key: Char);
|
|||
|
|
procedure CheckBox_hsClick(Sender: TObject);
|
|||
|
|
procedure edtPacketNoPropertiesChange(Sender: TObject);
|
|||
|
|
procedure TV1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
|
|||
|
|
procedure N9Click(Sender: TObject);
|
|||
|
|
private
|
|||
|
|
FDDBSql, FPacketId: string;
|
|||
|
|
FLocatedPacketId: string;
|
|||
|
|
FPacketNo: Integer;
|
|||
|
|
NLBName: string;
|
|||
|
|
FScanIndex: Integer;
|
|||
|
|
procedure InitGridKDB(); //<2F>ɴ<EFBFBD><C9B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
procedure InitGridDDB(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
procedure InitGridYDB(); //<2F>Ѵ<EFBFBD><D1B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
procedure GetPacketNo();
|
|||
|
|
procedure DaBao();
|
|||
|
|
procedure HSDB();
|
|||
|
|
procedure OKDDB();
|
|||
|
|
procedure MoveCDS(CDS_Left: TclientDataSet; CDS_Right: TclientDataSet);
|
|||
|
|
procedure PrintBao(PPacketId: string);
|
|||
|
|
procedure doHsPack();
|
|||
|
|
{ Private declarations }
|
|||
|
|
public
|
|||
|
|
{ Public declarations }
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
frmTradePack: TfrmTradePack;
|
|||
|
|
newh: hwnd;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
U_DataLink, U_RTFun, U_globalVar, U_ZDYHelp, U_TradeClothWaitPack;
|
|||
|
|
{$R *.dfm}
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.OKDDB();
|
|||
|
|
begin
|
|||
|
|
if CDS_KDB.IsEmpty then
|
|||
|
|
Exit;
|
|||
|
|
with CDS_KDB do
|
|||
|
|
begin
|
|||
|
|
CDS_KDB.DisableControls;
|
|||
|
|
while CDS_KDB.Locate('SSel', True, []) do
|
|||
|
|
begin
|
|||
|
|
MoveCDS(CDS_KDB, CDS_DDB);
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
FieldByName('PacketId').Value := FPacketId;
|
|||
|
|
FieldByName('PacketNo').Value := FPacketNo;
|
|||
|
|
end;
|
|||
|
|
CDS_KDB.Delete;
|
|||
|
|
end;
|
|||
|
|
CDS_KDB.EnableControls;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.DaBao();
|
|||
|
|
begin
|
|||
|
|
if CDS_DDB.IsEmpty then
|
|||
|
|
Exit;
|
|||
|
|
FDDBSql := '';
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
CDS_DDB.DisableControls;
|
|||
|
|
First;
|
|||
|
|
while not Eof do
|
|||
|
|
begin
|
|||
|
|
FDDBSql := FDDBSql + ' ' + 'Update Trade_Cloth_Inspect Set PacketTime=GETDATE() , PacketNo=' + IntToStr(FPacketNo) + ',PacketId=' + QuotedStr(trim(FPacketId)) + ',PacketCode=' + QuotedStr(trim(DCode)) + ',PacketName=' + QuotedStr(trim(DName)) + 'where CIID=' + QuotedStr(trim(CDS_DDB.FieldByName('CIID').AsString));
|
|||
|
|
FDDBSql := FDDBSql + ' ' + 'Update Trade_Cloth_Stock Set PacketTime=GETDATE() , PacketNo=' + IntToStr(FPacketNo) + ',PacketId=' + QuotedStr(trim(FPacketId)) + ',PacketCode=' + QuotedStr(trim(DCode)) + ',PacketName=' + QuotedStr(trim(DName)) + 'where CIID=' + QuotedStr(trim(CDS_DDB.FieldByName('CIID').AsString));
|
|||
|
|
Next;
|
|||
|
|
end;
|
|||
|
|
CDS_DDB.EnableControls;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
try
|
|||
|
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add(FDDBSql);
|
|||
|
|
ExecSQL;
|
|||
|
|
end;
|
|||
|
|
ADOQueryCmd.Connection.CommitTrans;
|
|||
|
|
except
|
|||
|
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
|
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.GetPacketNo();
|
|||
|
|
begin
|
|||
|
|
with ADOQueryTmp do
|
|||
|
|
begin
|
|||
|
|
close;
|
|||
|
|
sql.clear;
|
|||
|
|
sql.add('select max(PacketNo)+1 as MaxPacketNo from Trade_Cloth_Inspect ');
|
|||
|
|
sql.Add('where OrderNo=' + quotedstr(trim(edtOrder.Text)));
|
|||
|
|
// ShowMessage(SQL.Text);
|
|||
|
|
open;
|
|||
|
|
end;
|
|||
|
|
FPacketNo := ADOQueryTmp.fieldbyname('MaxPacketNo').AsInteger;
|
|||
|
|
if FPacketNo = 0 then
|
|||
|
|
FPacketNo := 1;
|
|||
|
|
|
|||
|
|
edtPacketNo.Value := FPacketNo;
|
|||
|
|
FLocatedPacketId := FPacketId;
|
|||
|
|
if GetLSNo(ADOQueryTmp, FPacketId, 'BI', 'Trade_Cloth_Inspect', 4, 1) = False then
|
|||
|
|
begin
|
|||
|
|
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
|
|||
|
|
Exit;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.MoveCDS(CDS_Left: TclientDataSet; CDS_Right: TclientDataSet);
|
|||
|
|
var
|
|||
|
|
i: Integer;
|
|||
|
|
begin
|
|||
|
|
with CDS_Right do
|
|||
|
|
begin
|
|||
|
|
Append;
|
|||
|
|
for i := 0 to CDS_Left.FieldCount - 1 do
|
|||
|
|
begin
|
|||
|
|
CDS_Right.FieldByName(CDS_Left.Fields[i].FieldName).Value := CDS_Left.fieldbyname(CDS_Left.Fields[i].FieldName).Value;
|
|||
|
|
end;
|
|||
|
|
Post;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.PrintBao(PPacketId: string);
|
|||
|
|
var
|
|||
|
|
fPrintFile: string;
|
|||
|
|
Txt, fImagePath: string;
|
|||
|
|
Moudle: THandle;
|
|||
|
|
Makebar: TMakebar;
|
|||
|
|
Mixtext: TMixtext;
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
with ADOQueryPrint do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
SQL.Clear;
|
|||
|
|
SQL.Add('exec P_Trade_Insp_Prt_PackLab ' + quotedstr(PPacketId));
|
|||
|
|
Open;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
if trim(ADOQueryPrint.fieldbyName('SLabPackage').AsString) <> '' then
|
|||
|
|
NLBName := trim(ADOQueryPrint.fieldbyName('SLabPackage').AsString)
|
|||
|
|
else
|
|||
|
|
NLBName := ADOQueryPrint.fieldbyName('LabPackage').AsString;
|
|||
|
|
|
|||
|
|
ExportFtErpFile(Trim(NLBName) + '.rmf', ADOQueryTmp);
|
|||
|
|
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(NLBName) + '.rmf';
|
|||
|
|
if not FileExists(fPrintFile) then
|
|||
|
|
begin
|
|||
|
|
Application.MessageBox(PChar('û<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
|
|||
|
|
Exit;
|
|||
|
|
end;
|
|||
|
|
if FileExists(fPrintFile) then
|
|||
|
|
begin
|
|||
|
|
RM2.LoadFromFile(fPrintFile);
|
|||
|
|
RM2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1);
|
|||
|
|
RM2.printReport;
|
|||
|
|
end;
|
|||
|
|
if FileExists(fImagePath) then
|
|||
|
|
DeleteFile(fImagePath);
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.InitGridYDB();
|
|||
|
|
begin
|
|||
|
|
if Trim(edtOrder.Text) = '' then
|
|||
|
|
Exit;
|
|||
|
|
with ADOQueryTmp do
|
|||
|
|
begin
|
|||
|
|
close;
|
|||
|
|
sql.Clear;
|
|||
|
|
|
|||
|
|
sql.Add('select *,TotalM=Sum(A.Meter) over(PARTITION BY A.PacketId),TotalGross=Sum(A.GrossWeight) over(PARTITION BY A.PacketId),TotalNet=Sum(A.NetWeight) over(PARTITION BY A.PacketId) from Trade_Cloth_Inspect A where isnull(PacketId,'''')<>'''' and OrderNo=' + QUOTEDSTR(Trim(edtOrder.Text)));
|
|||
|
|
|
|||
|
|
open;
|
|||
|
|
end;
|
|||
|
|
SCreateCDS(ADOQueryTmp, CDS_YDB);
|
|||
|
|
SInitCDSData(ADOQueryTmp, CDS_YDB);
|
|||
|
|
if CDS_YDB.Locate('PacketId', FLocatedPacketId, []) then
|
|||
|
|
begin
|
|||
|
|
TV1.Controller.FocusedRecordIndex := TV1.DataController.FocusedRecordIndex;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.InitGridKDB();
|
|||
|
|
begin
|
|||
|
|
if Trim(edtOrder.Text) = '' then
|
|||
|
|
Exit;
|
|||
|
|
with ADOQueryTmp do
|
|||
|
|
begin
|
|||
|
|
close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add('select * from Trade_Cloth_Inspect A where isnull(PacketId,'''')='''' and OrderNo=' + QUOTEDSTR(Trim(edtOrder.Text)));
|
|||
|
|
sql.add('order by A.C_ColorNo,A.BatchNO,A.PieceNo');
|
|||
|
|
// ShowMessage(sql.Text);
|
|||
|
|
open;
|
|||
|
|
end;
|
|||
|
|
SCreateCDS(ADOQueryTmp, CDS_KDB);
|
|||
|
|
SInitCDSData(ADOQueryTmp, CDS_KDB);
|
|||
|
|
FScanIndex := Integer.MinValue;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.InitGridDDB();
|
|||
|
|
begin
|
|||
|
|
//////////////////////<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/////////////////////
|
|||
|
|
with ADOQueryTmp do
|
|||
|
|
begin
|
|||
|
|
close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add('select AA.* from Trade_Cloth_Inspect AA where 1=2');
|
|||
|
|
open;
|
|||
|
|
end;
|
|||
|
|
SCreateCDS(ADOQueryTmp, CDS_DDB);
|
|||
|
|
//////////////////////<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/////////////////////
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.FormDestroy(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
frmTradePack := nil;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
|
|||
|
|
Action := cafree;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.FormCreate(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
programIni: Tinifile;
|
|||
|
|
Filename: string;
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
Panel2.Align := alClient;
|
|||
|
|
cxGroupBox1.align := alClient;
|
|||
|
|
Filename := ExtractFilePath(Paramstr(0)) + 'TradePackForm.INI';
|
|||
|
|
try
|
|||
|
|
programIni := Tinifile.create(Filename);
|
|||
|
|
dxLayoutControl_tradepack.Height := programIni.ReadInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>1', dxLayoutControl_tradepack.Height);
|
|||
|
|
Panel5.Height := programIni.ReadInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>2', Panel5.Height);
|
|||
|
|
Panel4.Width := programIni.ReadInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>3', Panel4.Width);
|
|||
|
|
cxGroupBox2.Height := programIni.ReadInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>4', cxGroupBox2.Height);
|
|||
|
|
finally
|
|||
|
|
programIni.Free;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.edtOrderBtnClick(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
FPacketId: string;
|
|||
|
|
FMainID: string;
|
|||
|
|
begin
|
|||
|
|
try
|
|||
|
|
frmTradeClothWaitPack := TfrmTradeClothWaitPack.Create(self);
|
|||
|
|
with frmTradeClothWaitPack do
|
|||
|
|
begin
|
|||
|
|
if ShowModal = 1 then
|
|||
|
|
begin
|
|||
|
|
edtOrder.Text := Trim(CDS_OrderSel.fieldbyname('OrderNo').AsString);
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
finally
|
|||
|
|
frmTradeClothWaitPack.Free;
|
|||
|
|
end;
|
|||
|
|
SMNO.SetFocus;
|
|||
|
|
InitGridKDB();
|
|||
|
|
InitGridYDB();
|
|||
|
|
GetPacketNo();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.edtOrderKeyPress(Sender: TObject; var Key: Char);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
if Key = #13 then
|
|||
|
|
begin
|
|||
|
|
InitGridKDB();
|
|||
|
|
InitGridYDB();
|
|||
|
|
GetPacketNo();
|
|||
|
|
tv3.ApplyBestFit();
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.edtOrderPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
|||
|
|
var
|
|||
|
|
FPacketId: string;
|
|||
|
|
FMainID: string;
|
|||
|
|
begin
|
|||
|
|
try
|
|||
|
|
frmTradeClothWaitPack := TfrmTradeClothWaitPack.Create(self);
|
|||
|
|
with frmTradeClothWaitPack do
|
|||
|
|
begin
|
|||
|
|
if ShowModal = 1 then
|
|||
|
|
begin
|
|||
|
|
edtOrder.Text := Trim(CDS_OrderSel.fieldbyname('OrderNo').AsString);
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
finally
|
|||
|
|
frmTradeClothWaitPack.Free;
|
|||
|
|
end;
|
|||
|
|
SMNO.SetFocus;
|
|||
|
|
InitGridKDB();
|
|||
|
|
InitGridYDB();
|
|||
|
|
GetPacketNo();
|
|||
|
|
tv3.ApplyBestFit();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.btnCloseClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
close;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.PRTColorKeyPress(Sender: TObject; var Key: Char);
|
|||
|
|
begin
|
|||
|
|
if Key = #13 then
|
|||
|
|
begin
|
|||
|
|
SDofilter(ADOQueryMain, SGetFilters(Panel5, 1, 2));
|
|||
|
|
SCreateCDS(ADOQueryMain, CDS_KDB);
|
|||
|
|
SInitCDSData(ADOQueryMain, CDS_KDB);
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N1Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
SelOKNo(CDS_KDB, True);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N2Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
SelOKNo(CDS_KDB, False);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.FormShow(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
dxLayoutItem7.Visible := gIsCanDesign;
|
|||
|
|
readCxGrid('<27><>Ʒɨ<C6B7><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Tv1', Tv1, gDllFileCaption);
|
|||
|
|
readCxGrid('<27><>Ʒɨ<C6B7><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Tv2', Tv2, gDllFileCaption);
|
|||
|
|
readCxGrid('<27><>Ʒɨ<C6B7><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Tv3', Tv3, gDllFileCaption);
|
|||
|
|
InitGridDDB();
|
|||
|
|
|
|||
|
|
btnOk.Caption := '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N6Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
if CDS_DDB.IsEmpty then
|
|||
|
|
Exit;
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
MoveCDS(CDS_DDB, CDS_KDB);
|
|||
|
|
CDS_DDB.Delete;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.SmNOKeyPress(Sender: TObject; var Key: Char);
|
|||
|
|
var
|
|||
|
|
FPackM, FPackGross, FPackNet: Double;
|
|||
|
|
TmpPacketId: string;
|
|||
|
|
begin
|
|||
|
|
if Key = #13 then
|
|||
|
|
begin
|
|||
|
|
smno.Enabled := False;
|
|||
|
|
try
|
|||
|
|
if trim(smno.Text) = '' then
|
|||
|
|
raise Exception.Create('ɨ<><C9A8>ֵΪ<D6B5><CEAA>');
|
|||
|
|
if trim(edtOrder.Text) = '' then
|
|||
|
|
raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>');
|
|||
|
|
if CDS_KDB.IsEmpty then
|
|||
|
|
raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD>δ<EFBFBD>о<EFBFBD><D0BE><EFBFBD>Ϣ');
|
|||
|
|
if CDS_DDB.Locate('ciid', Trim(SmNO.Text), []) then
|
|||
|
|
raise Exception.Create('<27><><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
|
if CDS_YDB.Locate('ciid', Trim(SmNO.Text), []) then
|
|||
|
|
raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD><D1B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
|
if not CDS_KDB.Locate('ciid', Trim(SmNO.Text), []) then
|
|||
|
|
raise Exception.Create('δ<>ҵ<EFBFBD><D2B5><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
|
except
|
|||
|
|
if fileexists(ExtractFilePath(Application.ExeName) + '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav') then
|
|||
|
|
playSound(pwidechar('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav'), 0, SND_FILENAME or SND_ASYNC)
|
|||
|
|
else
|
|||
|
|
PlaySound('SystemHand', 0, SND_ALIAS or SND_ASYNC);
|
|||
|
|
Application.MessageBox(pchar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
|||
|
|
smno.Text := '';
|
|||
|
|
smno.Enabled := True;
|
|||
|
|
smno.SetFocus;
|
|||
|
|
exit;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
if Trim(CDS_KDB.FieldByName('ciid').AsString) = Trim(SmNO.Text) then
|
|||
|
|
begin
|
|||
|
|
with CDS_KDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
FieldByName('SSel').Value := True;
|
|||
|
|
FieldByName('Sindex').Value := FScanIndex;
|
|||
|
|
Inc(FScanIndex);
|
|||
|
|
Post;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
if CheckBox_hs.Checked then
|
|||
|
|
begin
|
|||
|
|
smno.Text := '';
|
|||
|
|
smno.Enabled := True;
|
|||
|
|
smno.SetFocus;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
OKDDB();
|
|||
|
|
|
|||
|
|
if StrToInt(ComboBox3.Text) = CDS_DDB.RecordCount then
|
|||
|
|
begin
|
|||
|
|
try
|
|||
|
|
FPackM := 0;
|
|||
|
|
FPackGross := 0;
|
|||
|
|
FPackNet := 0;
|
|||
|
|
DaBao();
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
CDS_DDB.DisableControls;
|
|||
|
|
First;
|
|||
|
|
while not Eof do
|
|||
|
|
begin
|
|||
|
|
FPackM := FPackM + FieldByName('Meter').AsFloat;
|
|||
|
|
FPackGross := FPackGross + FieldByName('GrossWeight').AsFloat;
|
|||
|
|
FPackNet := FPackNet + FieldByName('NetWeight').AsFloat;
|
|||
|
|
Next;
|
|||
|
|
end;
|
|||
|
|
First;
|
|||
|
|
while not Eof do
|
|||
|
|
begin
|
|||
|
|
MoveCDS(CDS_DDB, CDS_YDB);
|
|||
|
|
CDS_YDB.Edit;
|
|||
|
|
CDS_YDB.FieldByName('TotalM').Value := FPackM;
|
|||
|
|
CDS_YDB.FieldByName('TotalGross').Value := FPackGross;
|
|||
|
|
CDS_YDB.FieldByName('TotalNet').Value := FPackNet;
|
|||
|
|
CDS_YDB.Post;
|
|||
|
|
Next;
|
|||
|
|
end;
|
|||
|
|
CDS_DDB.EnableControls;
|
|||
|
|
CDS_DDB.EmptyDataSet;
|
|||
|
|
end;
|
|||
|
|
finally
|
|||
|
|
TmpPacketId := FPacketId;
|
|||
|
|
GetPacketNo();
|
|||
|
|
if fileexists(ExtractFilePath(Application.ExeName) + '<27><>ȷ.wav') then
|
|||
|
|
playSound(pwidechar('<27><>ȷ.wav'), 0, SND_FILENAME or SND_ASYNC)
|
|||
|
|
else
|
|||
|
|
PlaySound('SystemAsterisk', 0, SND_ALIAS or SND_ASYNC);
|
|||
|
|
smno.Text := '';
|
|||
|
|
smno.Enabled := True;
|
|||
|
|
smno.SetFocus;
|
|||
|
|
if chkBBQ.Checked then
|
|||
|
|
begin
|
|||
|
|
PrintBao(TmpPacketId);
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
if fileexists(ExtractFilePath(Application.ExeName) + '<27><>ȷ.wav') then
|
|||
|
|
playSound(pwidechar('<27><>ȷ.wav'), 0, SND_FILENAME or SND_ASYNC)
|
|||
|
|
else
|
|||
|
|
PlaySound('SystemAsterisk', 0, SND_ALIAS or SND_ASYNC);
|
|||
|
|
smno.Text := '';
|
|||
|
|
smno.Enabled := True;
|
|||
|
|
smno.SetFocus;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.TV1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
|
|||
|
|
var
|
|||
|
|
vSsel: TcxGridDBColumn;
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
// vSsel:=TV1.GetColumnByFieldName('Ssel');
|
|||
|
|
// if (vSsel <> nil) and AViewInfo.GridRecord.Values[vSsel.Index] then
|
|||
|
|
// begin
|
|||
|
|
// ACanvas.Brush.Color := clWebSkyBlue;
|
|||
|
|
// end;
|
|||
|
|
if TV1.Controller.FocusedRecordIndex = AViewInfo.GridRecord.Index then
|
|||
|
|
begin
|
|||
|
|
ACanvas.Brush.Color := clWebSkyBlue;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N3Click(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
MPacketId: string;
|
|||
|
|
begin
|
|||
|
|
if CDS_YDB.Locate('SSel', True, []) = False then
|
|||
|
|
begin
|
|||
|
|
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>ӡ<EFBFBD><D3A1><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
|
|||
|
|
exit;
|
|||
|
|
end;
|
|||
|
|
while CDS_YDB.Locate('SSel', True, []) do
|
|||
|
|
begin
|
|||
|
|
MPacketId := Trim(CDS_YDB.FieldByName('PacketId').AsString);
|
|||
|
|
PrintBao(MPacketId);
|
|||
|
|
while CDS_YDB.Locate('SSel;PacketId', VarArrayOf([True, MPacketId]), []) do
|
|||
|
|
begin
|
|||
|
|
with CDS_YDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
CDS_YDB.FieldByName('SSel').Value := False;
|
|||
|
|
Post;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N4Click(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
NPacketId: string;
|
|||
|
|
begin
|
|||
|
|
|
|||
|
|
if CDS_YDB.Locate('SSel', True, []) = False then
|
|||
|
|
begin
|
|||
|
|
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>ӡ<EFBFBD><D3A1><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
|
|||
|
|
exit;
|
|||
|
|
end;
|
|||
|
|
while CDS_YDB.Locate('SSel', True, []) do
|
|||
|
|
begin
|
|||
|
|
NPacketId := Trim(CDS_YDB.FieldByName('PacketId').AsString);
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add('Update Trade_Cloth_Inspect Set PacketLog=cast(PacketNo as varchar(40))+''&''+PacketId+''&''+cast(PacketTime as varchar(100))+'';'' where isnull(PacketId,'''')<>'''' and PacketId=' + QuotedStr(NPacketId));
|
|||
|
|
sql.Add(' Update Trade_Cloth_Inspect Set PacketNo=null,PacketId=null where isnull(PacketId,'''')<>'''' and PacketId=' + QuotedStr(NPacketId));
|
|||
|
|
sql.Add(' Update Trade_Cloth_Stock Set PacketNo=null,PacketId=null where isnull(PacketId,'''')<>'''' and PacketId=' + QuotedStr(NPacketId));
|
|||
|
|
ExecSQL;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
|
|||
|
|
sql.Add(' ' + quotedstr(trim(DName)));
|
|||
|
|
sql.Add(',getdate() ');
|
|||
|
|
sql.Add(',' + quotedstr(trim(self.Caption)));
|
|||
|
|
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>')));
|
|||
|
|
sql.Add(',' + quotedstr(NPacketId));
|
|||
|
|
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
|
|||
|
|
sql.Add(')');
|
|||
|
|
ExecSQL;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
while CDS_YDB.Locate('SSel;PacketId', VarArrayOf([True, NPacketId]), []) do
|
|||
|
|
begin
|
|||
|
|
with CDS_YDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
CDS_YDB.FieldByName('SSel').Value := False;
|
|||
|
|
Post;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
InitGridKDB();
|
|||
|
|
InitGridYDB();
|
|||
|
|
InitGridDDB();
|
|||
|
|
GetPacketNo();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N7Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
DaBao();
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
CDS_DDB.DisableControls;
|
|||
|
|
First;
|
|||
|
|
while not Eof do
|
|||
|
|
begin
|
|||
|
|
MoveCDS(CDS_DDB, CDS_YDB);
|
|||
|
|
Next;
|
|||
|
|
end;
|
|||
|
|
CDS_DDB.EnableControls;
|
|||
|
|
CDS_DDB.EmptyDataSet;
|
|||
|
|
end;
|
|||
|
|
if chkBBQ.Checked then
|
|||
|
|
begin
|
|||
|
|
PrintBao(FPacketId);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
GetPacketNo();
|
|||
|
|
InitGridYDB();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N8Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
SelOKNo(CDS_YDB, false);
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N9Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
Clipboard.SetTextBuf(PChar(Trim(CDS_KDB.fieldbyname(TV3.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N5Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
OKDDB();
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.btnOKClick(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
i, j, K: Integer;
|
|||
|
|
MCurBatchNO, MoldBatchNO, MCurSubID, MoldSubID: string;
|
|||
|
|
begin
|
|||
|
|
if not CDS_DDB.IsEmpty then
|
|||
|
|
begin
|
|||
|
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>մ<EFBFBD><D5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
|
|||
|
|
Exit;
|
|||
|
|
end;
|
|||
|
|
if CDS_KDB.IsEmpty then
|
|||
|
|
Exit;
|
|||
|
|
|
|||
|
|
//<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
|
|||
|
|
if CheckBox_hs.Checked then
|
|||
|
|
begin
|
|||
|
|
doHsPack();
|
|||
|
|
exit;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
MCurBatchNO := '';
|
|||
|
|
MoldBatchNO := '';
|
|||
|
|
i := 0;
|
|||
|
|
j := StrToInt(ComboBox3.Text);
|
|||
|
|
K := 0;
|
|||
|
|
with CDS_KDB do
|
|||
|
|
begin
|
|||
|
|
CDS_KDB.DisableControls;
|
|||
|
|
CDS_DDB.DisableControls;
|
|||
|
|
First;
|
|||
|
|
while not Eof do
|
|||
|
|
begin
|
|||
|
|
if CDS_KDB.FieldByName('SSel').AsBoolean then
|
|||
|
|
begin
|
|||
|
|
if K = 0 then
|
|||
|
|
begin
|
|||
|
|
MoldBatchNO := Trim(CDS_KDB.FieldByName('BatchNO').AsString);
|
|||
|
|
MoldSubID := Trim(CDS_KDB.FieldByName('SubID').AsString);
|
|||
|
|
end;
|
|||
|
|
MCurBatchNO := Trim(CDS_KDB.FieldByName('BatchNO').AsString);
|
|||
|
|
MCurSubID := Trim(CDS_KDB.FieldByName('SubID').AsString);
|
|||
|
|
if j = 1 then
|
|||
|
|
begin
|
|||
|
|
MoveCDS(CDS_KDB, CDS_DDB);
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
FieldByName('PacketId').Value := FPacketId;
|
|||
|
|
FieldByName('PacketNo').Value := FPacketNo;
|
|||
|
|
Post
|
|||
|
|
end;
|
|||
|
|
DaBao();
|
|||
|
|
CDS_DDB.EmptyDataSet;
|
|||
|
|
if chkBBQ.Checked then
|
|||
|
|
begin
|
|||
|
|
PrintBao(FPacketId);
|
|||
|
|
end;
|
|||
|
|
GetPacketNo();
|
|||
|
|
Sleep(200);
|
|||
|
|
i := 0;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
if (MoldBatchNO <> MCurBatchNO) or (MoldSubID <> MCurSubID) then
|
|||
|
|
begin
|
|||
|
|
DaBao();
|
|||
|
|
CDS_DDB.EmptyDataSet;
|
|||
|
|
Sleep(100);
|
|||
|
|
if chkBBQ.Checked then
|
|||
|
|
begin
|
|||
|
|
PrintBao(FPacketId);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
GetPacketNo();
|
|||
|
|
MoveCDS(CDS_KDB, CDS_DDB);
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
FieldByName('PacketId').Value := FPacketId;
|
|||
|
|
FieldByName('PacketNo').Value := FPacketNo;
|
|||
|
|
Post
|
|||
|
|
end;
|
|||
|
|
i := 1;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
i := i + 1;
|
|||
|
|
|
|||
|
|
if i <= j then
|
|||
|
|
begin
|
|||
|
|
MoveCDS(CDS_KDB, CDS_DDB);
|
|||
|
|
with CDS_DDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
FieldByName('PacketId').Value := FPacketId;
|
|||
|
|
FieldByName('PacketNo').Value := FPacketNo;
|
|||
|
|
Post
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
if i = j then
|
|||
|
|
begin
|
|||
|
|
DaBao();
|
|||
|
|
CDS_DDB.EmptyDataSet;
|
|||
|
|
if chkBBQ.Checked then
|
|||
|
|
begin
|
|||
|
|
PrintBao(FPacketId);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
GetPacketNo();
|
|||
|
|
Sleep(100);
|
|||
|
|
i := 0;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
K := K + 1;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
MoldBatchNO := MCurBatchNO;
|
|||
|
|
MoldSubID := MCurSubID;
|
|||
|
|
with CDS_KDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
FieldByName('SSel').Value := false;
|
|||
|
|
Post
|
|||
|
|
end;
|
|||
|
|
Next;
|
|||
|
|
end;
|
|||
|
|
if not CDS_DDB.IsEmpty then
|
|||
|
|
begin
|
|||
|
|
DaBao();
|
|||
|
|
CDS_DDB.EmptyDataSet;
|
|||
|
|
if chkBBQ.Checked then
|
|||
|
|
begin
|
|||
|
|
PrintBao(FPacketId);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
GetPacketNo();
|
|||
|
|
Sleep(100);
|
|||
|
|
i := 0;
|
|||
|
|
end;
|
|||
|
|
CDS_DDB.EnableControls;
|
|||
|
|
CDS_KDB.EnableControls;
|
|||
|
|
end;
|
|||
|
|
InitGridKDB();
|
|||
|
|
InitGridYDB();
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.CheckBox_hsClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if CheckBox_hs.Checked then
|
|||
|
|
begin
|
|||
|
|
btnOK.Caption := '<27><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>';
|
|||
|
|
Label2.Caption := 'ÿɫ<C3BF><C9AB><EFBFBD><EFBFBD>';
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
btnOK.Caption := '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
|
|||
|
|
Label2.Caption := 'ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.cxButton2Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
InitGridKDB();
|
|||
|
|
InitGridYDB();
|
|||
|
|
CDS_DDB.EmptyDataSet;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.edtPacketNoClick(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
if not CDS_DDB.IsEmpty then
|
|||
|
|
begin
|
|||
|
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>մ<EFBFBD><D5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
|
|||
|
|
Exit;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.edtPacketNoPropertiesChange(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
FPacketNo := Trunc(edtPacketNo.Value);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.cxButton_bcgsClick(Sender: TObject);
|
|||
|
|
var
|
|||
|
|
programIni: Tinifile;
|
|||
|
|
Filename: string;
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
writeCxGrid('<27><>Ʒɨ<C6B7><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Tv1', Tv1, gDllFileCaption);
|
|||
|
|
writeCxGrid('<27><>Ʒɨ<C6B7><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Tv2', Tv2, gDllFileCaption);
|
|||
|
|
writeCxGrid('<27><>Ʒɨ<C6B7><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Tv3', Tv3, gDllFileCaption);
|
|||
|
|
Filename := ExtractFilePath(Paramstr(0)) + 'TradePackForm.INI';
|
|||
|
|
try
|
|||
|
|
programIni := Tinifile.create(Filename);
|
|||
|
|
programIni.WriteInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>1', dxLayoutControl_tradepack.Height);
|
|||
|
|
programIni.WriteInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>2', Panel5.Height);
|
|||
|
|
programIni.WriteInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>3', Panel4.Width);
|
|||
|
|
programIni.WriteInteger('<27><><EFBFBD><EFBFBD>ҳ<EFBFBD>沼<EFBFBD><E6B2BC>', '<27><><EFBFBD><EFBFBD>4', cxGroupBox2.Height);
|
|||
|
|
finally
|
|||
|
|
programIni.Free;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TfrmTradePack.N13Click(Sender: TObject);
|
|||
|
|
begin
|
|||
|
|
SelOKNo(CDS_YDB, True);
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
//<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
|
|||
|
|
procedure TfrmTradePack.doHsPack();
|
|||
|
|
var
|
|||
|
|
rtvalues: TArray<string>;
|
|||
|
|
FOrderNO, msg: string;
|
|||
|
|
FJS, FJH: Integer;
|
|||
|
|
begin
|
|||
|
|
CDS_KDB.IndexFieldNames := 'Sindex';
|
|||
|
|
rtvalues := SelCDSKey(CDS_KDB, ['CIID']);
|
|||
|
|
FOrderNO := edtOrder.text;
|
|||
|
|
|
|||
|
|
FJS := StrToIntdef(trim(ComboBox3.Text), 0);
|
|||
|
|
FJH := StrToInt(edtPacketNo.text);
|
|||
|
|
|
|||
|
|
with ADOQueryTmp do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
Sql.Clear;
|
|||
|
|
Sql.Add('exec P_Get_HS_DaBao ');
|
|||
|
|
Sql.Add(' @CIIDs=' + quotedstr(rtvalues[0]));
|
|||
|
|
Sql.Add(',@OrderNO=' + quotedstr(Trim(FOrderNO)));
|
|||
|
|
Sql.Add(',@JS=' + inttostr(FJS));
|
|||
|
|
SQL.Add(',@JH=' + inttostr(FJH));
|
|||
|
|
// showmessage(SQL.text);
|
|||
|
|
Open;
|
|||
|
|
end;
|
|||
|
|
SCreateCDS(ADOQueryTmp, CDS_YDB);
|
|||
|
|
SInitCDSData(ADOQueryTmp, CDS_YDB);
|
|||
|
|
|
|||
|
|
with ADOQueryTmp do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
Sql.Clear;
|
|||
|
|
Sql.Add('exec P_Get_HSDaBao_TS ');
|
|||
|
|
Sql.Add(' @CIIDs=' + quotedstr(rtvalues[0]));
|
|||
|
|
Sql.Add(',@OrderNO=' + quotedstr(Trim(FOrderNO)));
|
|||
|
|
Sql.Add(',@JS=' + inttostr(FJS));
|
|||
|
|
Open;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
msg := ADOQueryTmp.FieldByName('msg').AsString;
|
|||
|
|
|
|||
|
|
if Application.MessageBox(PChar(msg), 'ȷ<>ϴ<EFBFBD><CFB4><EFBFBD>', 32 + 4) = IDYES then
|
|||
|
|
begin
|
|||
|
|
HSDB();
|
|||
|
|
end;
|
|||
|
|
GetPacketNo();
|
|||
|
|
// InitGridKDB();
|
|||
|
|
InitGridYDB();
|
|||
|
|
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
///////////////////////////////
|
|||
|
|
procedure TfrmTradePack.HSDB();
|
|||
|
|
var
|
|||
|
|
StringSet: TStringList;
|
|||
|
|
I: Integer;
|
|||
|
|
begin
|
|||
|
|
if CDS_YDB.IsEmpty then
|
|||
|
|
Exit;
|
|||
|
|
FDDBSql := '';
|
|||
|
|
StringSet := TStringList.Create;
|
|||
|
|
// StringSet.Sorted := True;
|
|||
|
|
// StringSet.Duplicates := dupIgnore;
|
|||
|
|
with CDS_YDB do
|
|||
|
|
begin
|
|||
|
|
CDS_YDB.DisableControls;
|
|||
|
|
First;
|
|||
|
|
while not Eof do
|
|||
|
|
begin
|
|||
|
|
FDDBSql := FDDBSql + ' ' + 'Update Trade_Cloth_Inspect Set PacketTime=GETDATE() , PacketNo=' + trim(CDS_YDB.FieldByName('PacketNo').AsString) + ',PacketId=' + QuotedStr(trim(CDS_YDB.FieldByName('PacketId').AsString)) + ',PacketCode=' + QuotedStr(trim(DCode)) + ',PacketName=' + QuotedStr(trim(DName)) + 'where CIID=' + QuotedStr(trim(CDS_YDB.FieldByName('CIID').AsString));
|
|||
|
|
FDDBSql := FDDBSql + ' ' + 'Update Trade_Cloth_Stock Set PacketTime=GETDATE() , PacketNo=' + trim(CDS_YDB.FieldByName('PacketNo').AsString) + ',PacketId=' + QuotedStr(trim(CDS_YDB.FieldByName('PacketId').AsString)) + ',PacketCode=' + QuotedStr(trim(DCode)) + ',PacketName=' + QuotedStr(trim(DName)) + 'where CIID=' + QuotedStr(trim(CDS_YDB.FieldByName('CIID').AsString));
|
|||
|
|
if StringSet.IndexOf(trim(CDS_YDB.FieldByName('PacketId').AsString)) = -1 then
|
|||
|
|
begin
|
|||
|
|
StringSet.Add(trim(CDS_YDB.FieldByName('PacketId').AsString));
|
|||
|
|
end;
|
|||
|
|
if CDS_KDB.Locate('CIID', trim(CDS_YDB.FieldByName('CIID').AsString), []) then
|
|||
|
|
begin
|
|||
|
|
with CDS_KDB do
|
|||
|
|
begin
|
|||
|
|
Edit;
|
|||
|
|
FieldByName('SFlag').Value := 'D';
|
|||
|
|
Post;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
Next;
|
|||
|
|
end;
|
|||
|
|
CDS_YDB.EnableControls;
|
|||
|
|
end;
|
|||
|
|
try
|
|||
|
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
|
with ADOQueryCmd do
|
|||
|
|
begin
|
|||
|
|
Close;
|
|||
|
|
sql.Clear;
|
|||
|
|
sql.Add(FDDBSql);
|
|||
|
|
ExecSQL;
|
|||
|
|
end;
|
|||
|
|
ADOQueryCmd.Connection.CommitTrans;
|
|||
|
|
except
|
|||
|
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
|
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
|||
|
|
end;
|
|||
|
|
with CDS_KDB do
|
|||
|
|
begin
|
|||
|
|
DisableControls;
|
|||
|
|
First;
|
|||
|
|
while not Eof do
|
|||
|
|
begin
|
|||
|
|
if FieldByName('SFlag').AsString = 'D' then
|
|||
|
|
begin
|
|||
|
|
Delete;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
Next;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
First;
|
|||
|
|
EnableControls;
|
|||
|
|
end;
|
|||
|
|
if chkBBQ.Checked then
|
|||
|
|
begin
|
|||
|
|
for I := 0 to StringSet.Count - 1 do
|
|||
|
|
begin
|
|||
|
|
PrintBao(StringSet.Strings[I]);
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
StringSet.Free;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|
|||
|
|
|