D10djyitong/T02贸易汇总仓库/U_TradeSampleClothStkList.pas

399 lines
12 KiB
ObjectPascal
Raw Permalink Normal View History

2026-02-27 10:14:43 +08:00
unit U_TradeSampleClothStkList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, jpeg, U_SLT,
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,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, dxSkinWXI,
dxScrollbarAnnotations, cxContainer, dxSkinBasic, dxSkinBlack, dxSkinBlue,
dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide,
dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy,
dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian,
dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,
dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,
dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,
dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray,
dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark,
dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray,
dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic,
dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust,
dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine,
dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark,
dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue, cxProgressBar, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdExplicitTLSClientServerBase, IdFTP;
type
TfrmTradeSampleClothStkList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
CDS_HZ: TClientDataSet;
PopupMenu1: TPopupMenu;
Label3: TLabel;
Label4: TLabel;
Label8: TLabel;
Label2: TLabel;
C_name: TcxTextEdit;
FromCoName: TcxTextEdit;
C_spec: TcxTextEdit;
BatchNo: TcxTextEdit;
ToolButton2: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
Tv1Column7: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column20: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column11: TcxGridDBColumn;
Tv1Column12: TcxGridDBColumn;
Tv1Column13: TcxGridDBColumn;
Tv1Column14: TcxGridDBColumn;
Tv1Column15: TcxGridDBColumn;
Tv1Column16: TcxGridDBColumn;
Tv1Column17: TcxGridDBColumn;
Tv1Column18: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Tv1Column19: TcxGridDBColumn;
Tv1Column20: TcxGridDBColumn;
Label1: TLabel;
Label5: TLabel;
CraftCode: TcxTextEdit;
GC_Name: TcxTextEdit;
Label6: TLabel;
Label7: TLabel;
C_Width: TcxTextEdit;
C_GramWeight: TcxTextEdit;
Label9: TLabel;
Label10: TLabel;
CraftEName: TcxTextEdit;
CraftName: TcxTextEdit;
Label11: TLabel;
C_Code: TcxTextEdit;
ToolButton3: TToolButton;
GroupBox1: TGroupBox;
ScrollBox1: TScrollBox;
adoqueryPicture: TADOQuery;
IdFTP1: TIdFTP;
OpenDialog1: TOpenDialog;
ADOQuery1: TADOQuery;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoMChange(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure MPRTCodeNameChange(Sender: TObject);
procedure SXBatchNOChange(Sender: TObject);
procedure FromCoNameChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure FormCreate(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure FromCoNamePropertiesChange(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
procedure Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
private
procedure InitGrid();
procedure InitImage();
{ Private declarations }
public
FstkName: string;
{ Public declarations }
end;
var
frmTradeSampleClothStkList: TfrmTradeSampleClothStkList;
var
Mach: array of TfrmSlt;
implementation
uses
U_DataLink, U_RTFun, U_LabelPrint;
{$R *.dfm}
procedure TfrmTradeSampleClothStkList.InitImage();
var
i, j: integer;
jpg: TJpegImage;
myStream: TADOBlobStream;
begin
j := length(Mach);
if j > 0 then
begin
for i := 0 to j - 1 do
begin
Mach[i].free;
end;
end;
SetLength(Mach, 0);
if CDS_Main.IsEmpty then
exit;
try
with adoqueryPicture do
begin
close;
sql.Clear;
sql.Add(' select A.TFID,A.WBID,A.FilesOther,A.FileName from TP_File A ');
sql.add('where A.WBID=' + quotedstr(trim(CDS_Main.fieldbyname('YPRKTP').AsString)));
open;
end;
j := adoqueryPicture.RecordCount;
if j < 1 then
exit;
adoqueryPicture.DisableControls;
adoqueryPicture.First;
SetLength(Mach, j);
jpg := TJpegImage.Create();
for i := 0 to j - 1 do
begin
if triM(adoqueryPicture.fieldbyname('FilesOther').AsString) <> '' then
begin
myStream := tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('FilesOther')), bmread);
jpg.LoadFromStream(myStream);
Mach[i] := TfrmSlt.Create(Self);
Mach[i].Name := trim(adoqueryPicture.fieldbyname('TFID').AsString);
Mach[i].Parent := ScrollBox1;
Mach[i].Left := 0 + i * 165;
Mach[i].Init(adoqueryPicture.fieldbyname('TFID').AsString, adoqueryPicture.fieldbyname('FileName').AsString, jpg);
end;
adoqueryPicture.Next;
end;
adoqueryPicture.EnableControls;
finally
jpg.free;
application.ProcessMessages;
end;
end;
procedure TfrmTradeSampleClothStkList.FormDestroy(Sender: TObject);
begin
inherited;
frmTradeSampleClothStkList := nil;
end;
procedure TfrmTradeSampleClothStkList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmTradeSampleClothStkList.FormCreate(Sender: TObject);
begin
inherited;
inherited;
end;
procedure TfrmTradeSampleClothStkList.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.IOFlag=''<27><><EFBFBD><EFBFBD>'' and (isnull(StkQty,0)>0 or isnull(StkPiece,0)>0) ');
sql.Add(' and isnull(stkName,'''')=''' + Trim(FstkName) + '''');
Open;
end;
SCreateCDS(ADOQueryMain, CDS_Main);
SInitCDSData(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmTradeSampleClothStkList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmTradeSampleClothStkList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmTradeSampleClothStkList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmTradeSampleClothStkList.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(trim(Self.Caption), Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
InitGrid();
end;
procedure TfrmTradeSampleClothStkList.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 TfrmTradeSampleClothStkList.MPRTCodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeSampleClothStkList.SXBatchNOChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeSampleClothStkList.FromCoNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeSampleClothStkList.FromCoNamePropertiesChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeSampleClothStkList.ToolButton1Click(Sender: TObject);
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;
ModalResult := 1;
end;
procedure TfrmTradeSampleClothStkList.ToolButton2Click(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption), Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
end;
procedure TfrmTradeSampleClothStkList.ToolButton3Click(Sender: TObject);
var
WSql: string;
begin
if CDS_Main.IsEmpty then
Exit;
// Tv1.OnFocusedRecordChanged := nil;
if CDS_Main.Locate('SSel', True, []) = False then
begin
// Tv1.OnFocusedRecordChanged := Tv1FocusedRecordChanged;
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
WSql := '';
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.fieldbyname('SSel').AsBoolean then
begin
if WSql <> '' then
begin
WSql := WSql + ',' + (Trim(CDS_Main.fieldbyname('BCIOID').AsString));
end
else
begin
WSql := (Trim(CDS_Main.fieldbyname('BCIOID').AsString));
end;
end;
Next;
end;
end;
CDS_Main.Locate('SSel', True, []);
// Tv1.OnFocusedRecordChanged := Tv1FocusedRecordChanged;
CDS_Main.EnableControls;
try
frmLabelPrint := TfrmLabelPrint.Create(Application);
with frmLabelPrint do
begin
FLMType := 'TradeSampleClothInPrt3';
FFiltration1 := WSql;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmLabelPrint.Free;
end;
end;
procedure TfrmTradeSampleClothStkList.Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
InitImage();
end;
procedure TfrmTradeSampleClothStkList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ModalResult := 1;
end;
procedure TfrmTradeSampleClothStkList.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
begin
InitImage();
end;
end.