D10myBiaoqi/T02贸易汇总仓库/U_TradeSampleClothStkSel.pas
DESKTOP-E401PHE\Administrator 1251492f45 0113
2025-01-13 16:36:43 +08:00

324 lines
9.0 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_TradeSampleClothStkSel;
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,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseHelp, System.ImageList,
Vcl.ImgList, dxSkinWXI, dxScrollbarAnnotations, jpeg, Math, U_SLT;
type
TfrmTradeSampleClothStkSel = class(TfrmBaseHelp)
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;
N1: TMenuItem;
N2: TMenuItem;
ToolButton1: TToolButton;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column17: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
Label3: TLabel;
Label4: TLabel;
Label8: TLabel;
Label2: TLabel;
C_name: TEdit;
FromCoName: TEdit;
C_Spec: TEdit;
BatchNo: TEdit;
v1Column6: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
Label5: TLabel;
OrderNo: TEdit;
Tv1Column1: TcxGridDBColumn;
ToolButton2: TToolButton;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyleRepository2: TcxStyleRepository;
cxStyle2: TcxStyle;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Label1: TLabel;
BCIID: TEdit;
Tv1Column9: TcxGridDBColumn;
adoqueryPicture: TADOQuery;
Panel9: TPanel;
Panel10: TPanel;
GroupBox1: TGroupBox;
ScrollBox1: TScrollBox;
Tv1Column10: TcxGridDBColumn;
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 N1Click(Sender: TObject);
procedure N2Click(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 ToolButton2Click(Sender: TObject);
procedure BCIIDKeyPress(Sender: TObject; var Key: Char);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
private
procedure InitGrid();
procedure InitImage();
{ Private declarations }
public
FstkName: string;
{ Public declarations }
end;
var
frmTradeSampleClothStkSel: TfrmTradeSampleClothStkSel;
Mach: array of TfrmSlt;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmTradeSampleClothStkSel.FormDestroy(Sender: TObject);
begin
inherited;
frmTradeSampleClothStkSel := nil;
end;
procedure TfrmTradeSampleClothStkSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmTradeSampleClothStkSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' select CBMoney=ISNULL(A.CBPrice,0)*ISNULL(A.stkqty,0),A.* ');
sql.Add(',IsImg=cast((case when (select COUNT(T.WBID) from TP_File T where T.FileType = ''YPCK'' and T.WBID=A.BCIOID)=0 then 0 else 1 end) as bit ) ');
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 TfrmTradeSampleClothStkSel.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('BCIOID').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;
Mach[i].Top := 0 + i * 180;
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 TfrmTradeSampleClothStkSel.TBRafreshClick(Sender: TObject);
begin
InitGrid();
InitImage();
end;
procedure TfrmTradeSampleClothStkSel.BCIIDKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from BS_Cloth_Info A where A.BCIID=''' + trim(BCIID.Text) + ''' ');
// showmessage(sql.text);
open;
end;
C_name.text := ADOQueryTemp.FieldByName('C_Name').ASString;
end;
end;
procedure TfrmTradeSampleClothStkSel.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmTradeSampleClothStkSel.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmTradeSampleClothStkSel.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(trim(self.Caption), Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
InitGrid();
InitImage();
end;
procedure TfrmTradeSampleClothStkSel.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 TfrmTradeSampleClothStkSel.MPRTCodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeSampleClothStkSel.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmTradeSampleClothStkSel.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmTradeSampleClothStkSel.SXBatchNOChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeSampleClothStkSel.FromCoNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeSampleClothStkSel.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 TfrmTradeSampleClothStkSel.ToolButton2Click(Sender: TObject);
begin
WriteCxGrid(trim(self.Caption), Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
end;
procedure TfrmTradeSampleClothStkSel.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ModalResult := 1;
end;
procedure TfrmTradeSampleClothStkSel.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
inherited;
InitImage();
end;
end.