D7myzhenyong/样布仓库(染色)/U_ElevatorKcList.pas
DESKTOP-E401PHE\Administrator 237de1c308 0
2025-08-26 15:25:51 +08:00

352 lines
8.9 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_ElevatorKcList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData,
cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxControls,
cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu,
cxGridPopupMenu, cxCheckBox, RM_Common, RM_Class, RM_GridReport,
RM_System, RM_Dataset ,MMSystem, Menus, BtnEdit,U_SLT,jpeg;
type
TfrmElevatorKcList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1P_CodeName: TcxGridDBColumn;
v1P_SPEC: TcxGridDBColumn;
v1Qty: TcxGridDBColumn;
v1QtyUnit: TcxGridDBColumn;
v1Note: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1CRType: TcxGridDBColumn;
v1CRTime: TcxGridDBColumn;
Label3: TLabel;
P_CodeName: TEdit;
ADOQueryCmd: TADOQuery;
ADOQueryTmp: TADOQuery;
DataSource1: TDataSource;
CDS_Main: TClientDataSet;
cxGridPopupMenu1: TcxGridPopupMenu;
TOk: TToolButton;
v1Ssel: TcxGridDBColumn;
Label7: TLabel;
P_Color: TEdit;
Label8: TLabel;
Label9: TLabel;
kuwei: TEdit;
v1Column5: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
ADOQueryPrint: TADOQuery;
RMDB_Main: TRMDBDataSet;
RM1: TRMGridReport;
v1Column8: TcxGridDBColumn;
ADOQueryMain: TADOQuery;
Label13: TLabel;
v1Column9: TcxGridDBColumn;
P_Code: TEdit;
Label18: TLabel;
v1Column16: TcxGridDBColumn;
Label31: TLabel;
FactoryName: TEdit;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
ToolButton2: TToolButton;
v1Column2: TcxGridDBColumn;
Panel2: TPanel;
Label1: TLabel;
Button1: TButton;
edtKuWei: TBtnEditA;
ToolButton1: TToolButton;
v1Column1: TcxGridDBColumn;
GroupBox1: TGroupBox;
ScrollBox1: TScrollBox;
v1Column7: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
adoqueryPicture: TADOQuery;
ToolButton3: TToolButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure P_CodeNameChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TOkClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure edtKuWeiBtnClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ToolButton3Click(Sender: TObject);
private
procedure InitGrid();
procedure SetStatus();
procedure InitImage();
{ Private declarations }
public
fType:integer;
fCKName:string;
{ Public declarations }
end;
var
frmElevatorKcList: TfrmElevatorKcList;
var
Mach: array of TfrmSlt;
implementation
uses
U_DataLink,U_Fun10,U_ZDYHelp;
{$R *.dfm}
procedure TfrmElevatorKcList.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,B.FileName from TP_File A,XD_File B where A.TFID =B.XFID ');
if CDS_Main.IsEmpty=False then
begin
sql.Add('and A.WBID='+quotedstr(trim(CDS_Main.fieldbyname('MJID').AsString)));
end else
begin
sql.add(' and 1=2');
end;
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 TfrmElevatorKcList.SetStatus();
begin
if fType=10 then
begin
TOk.Visible:=true;
v1Ssel.Visible:=true;
ToolButton1.Visible:=True;
end;
end;
procedure TfrmElevatorKcList.InitGrid();
begin
try
with adoqueryMain do
begin
close;
sql.Clear;
sql.Add(' select A.* ');
SQL.Add(' from CK_Sample_CR A ');
sql.Add(' where A.Qty<>0 and CKName='+quotedstr(trim(fCKName)));
sql.ADD(' and A.Valid=''Y'' and A.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add(' order by A.CRTime desc,A.CRNO desc');
open;
end;
SCreateCDS20(adoqueryMain,CDS_Main);
SInitCDSData20(adoqueryMain,CDS_Main);
finally
end;
end;
procedure TfrmElevatorKcList.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
writeCxGrid(self.Caption+tv1.Name,Tv1,'<27><><EFBFBD>ϲֿ<CFB2>');
if fType=10 then
Action:=cahide
else
Action:=cafree;
end;
procedure TfrmElevatorKcList.FormDestroy(Sender: TObject);
begin
frmElevatorKcList:=nil;
end;
procedure TfrmElevatorKcList.P_CodeNameChange(Sender: TObject);
begin
if adoqueryMain.Active=False then Exit;
SDofilter(adoqueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(adoqueryMain,CDS_Main);
SInitCDSData20(adoqueryMain,CDS_Main);
end;
procedure TfrmElevatorKcList.FormShow(Sender: TObject);
begin
readCxGrid(self.Caption+tv1.Name,Tv1,'<27><><EFBFBD>ϲֿ<CFB2>');
SetStatus();
InitGrid();
end;
procedure TfrmElevatorKcList.TBCloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmElevatorKcList.TBRafreshClick(Sender: TObject);
begin
initGrid();
end;
procedure TfrmElevatorKcList.TBExportClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
TcxGridToExcel(self.Caption,cxgrid1);
end;
procedure TfrmElevatorKcList.TOkClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
ModalResult:=1;
end;
procedure TfrmElevatorKcList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main,true);
end;
procedure TfrmElevatorKcList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,false);
end;
procedure TfrmElevatorKcList.edtKuWeiBtnClick(Sender: TObject);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='mykuwei';
flagname:='<27><>λ';
if ShowModal=1 then
begin
edtKuWei.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmElevatorKcList.ToolButton2Click(Sender: TObject);
begin
if adoqueryMain.Active=False then Exit;
SDofilter(adoqueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(adoqueryMain,CDS_Main);
SInitCDSData20(adoqueryMain,CDS_Main);
end;
procedure TfrmElevatorKcList.ToolButton1Click(Sender: TObject);
begin
if Panel2.Visible=False then
Panel2.Visible:=True
else
Panel2.Visible:=False;
end;
procedure TfrmElevatorKcList.Button1Click(Sender: TObject);
begin
if trim(edtKuWei.Text)='' then exit;
try
ADOQueryCmd.Connection.BeginTrans;
while CDS_Main.Locate('SSel',true,[]) do
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update CK_Sample_CR set kuwei='+quotedstr(trim(edtKuWei.Text)));
sql.Add(' where CRNO='+quotedstr(trim(CDS_Main.FieldByName('CRNO').AsString)));
execsql;
end;
with CDS_Main do
begin
Edit;
FieldByName('SSel').Value:=false;
FieldByName('KuWei').Value:=trim(edtKuWei.Text);
end;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
end
end;
procedure TfrmElevatorKcList.Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
InitImage();
end;
procedure TfrmElevatorKcList.ToolButton3Click(Sender: TObject);
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('exec P_Up_SampleKcAll');
execsql;
end;
end;
end.