D7DJlanshan/基础资料维护(BaseInfo.dll)/U_CPKWList.pas
DESKTOP-E401PHE\Administrator bff149d192 `
2025-04-30 19:46:19 +08:00

809 lines
23 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_CPKWList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,jpeg,U_SLT,
ComObj, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB,
ADODB, cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin,
StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit,
cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore,
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, dxSkinPumpkin, dxSkinSeven,
dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver,
dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld,
dxSkinsDefaultPainters, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue, dxSkinscxPCPainter, Menus, cxContainer, cxImage,
cxDBEdit;
type
FdDy = record
inc: integer; //客户端套接字句柄
FDdys: string[32]; //客户端套接字
FdDysName: string[32]; //客户端套接字
end;
TfrmCPKWList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
defstr1: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
ToolButton3: TToolButton;
v2Column6: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
Label1: TLabel;
ZdyCode: TEdit;
ToolButton4: TToolButton;
v2Column8: TcxGridDBColumn;
Label2: TLabel;
DEFstr3: TComboBox;
v2Column10: TcxGridDBColumn;
v2Column11: TcxGridDBColumn;
v2Column12: TcxGridDBColumn;
v2Column13: TcxGridDBColumn;
defstr2: TEdit;
Label4: TLabel;
v2Column2: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
ToolButton5: TToolButton;
v2Column5: TcxGridDBColumn;
ToolButton6: TToolButton;
ADOQueryPrint: TADOQuery;
CheckBox1: TCheckBox;
ToolButton7: TToolButton;
IdFTP1: TIdFTP;
OpenDialog1: TOpenDialog;
Tv2Column1: TcxGridDBColumn;
Tv2Column2: TcxGridDBColumn;
Tv2Column3: TcxGridDBColumn;
Tv2Column4: TcxGridDBColumn;
ToolButton8: TToolButton;
GG: TEdit;
Label5: TLabel;
KH: TEdit;
Label6: TLabel;
Label7: TLabel;
CKLX: TComboBox;
Tv2Column5: TcxGridDBColumn;
Tv2Column6: TcxGridDBColumn;
Label8: TLabel;
DDH: TEdit;
EndDate: TDateTimePicker;
CheckBox2: TCheckBox;
BegDate: TDateTimePicker;
ToolButton9: TToolButton;
Tv2Column7: TcxGridDBColumn;
Tv2Column8: TcxGridDBColumn;
Label9: TLabel;
QRCZ: TComboBox;
ToolButton10: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
ToolButton11: TToolButton;
Label10: TLabel;
BPLX: TComboBox;
Tv2Column9: TcxGridDBColumn;
Label49: TLabel;
Label50: TLabel;
MaxQty: TEdit;
MinQty: TEdit;
Tv2Column10: TcxGridDBColumn;
GroupBox1: TGroupBox;
ScrollBox1: TScrollBox;
adoqueryPicture: TADOQuery;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure defstr1Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure ToolButton9Click(Sender: TObject);
procedure Tv2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure ToolButton10Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
procedure MinQtyChange(Sender: TObject);
procedure ToolButton12Click(Sender: TObject);
procedure Tv2CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
private
{ Private declarations }
procedure InitGrid();
procedure InitImage();
public
fkeyNo: string;
dFdDy: array[0..20] of FdDy; //客户端连接数组
end;
var
frmCPKWList: TfrmCPKWList;
Mach: array of TfrmSlt;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp, U_CPKWEdit, U_CPKWKCList, U_SysLogOrderzsd;
{$R *.dfm}
procedure TfrmCPKWList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add(' select A.*, ');
sql.Add(' cpRollNum=(select count(MJID) from CK_BanCP_KC X where X.KCKW=A.zdyCode and X.kcQty>0),');
sql.Add(' cpQty=(select sum(kcQty) from CK_BanCP_KC X where X.KCKW=A.zdyCode and X.kcQty>0 and mjid NOT like ''%C%'') ');
sql.Add(' from KH_Zdy_Attachment A ');
sql.Add(' where Type=''CPKW'' and sczt<>1');
// sql.Add('and A.FillTime>=''' + FormatDateTime('yyyy-MM-dd', BegDate.DateTime) + ''' ');
// sql.Add('and A.FillTime<''' + FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1) + ''' ');
if trim(fkeyNo) <> '' then
begin
sql.Add(' and DDH=''' + trim(fkeyNo) + ''' ');
end
else
begin
sql.Add('and A.FillTime>=''' + FormatDateTime('yyyy-MM-dd', BegDate.DateTime) + ''' ');
sql.Add('and A.FillTime<''' + FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1) + ''' ');
end;
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
ToolButton2.Click;
end;
procedure TfrmCPKWList.FormDestroy(Sender: TObject);
begin
frmCPKWList := nil;
end;
procedure TfrmCPKWList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCPKWList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(self.Caption, Tv2, '客户自定义1');
Close;
end;
procedure TfrmCPKWList.TBDelClick(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then
Exit;
CDS_HZ.DisableControls;
with CDS_HZ do
begin
First;
while not Eof do
begin
if CDS_HZ.FieldByName('SSel').AsBoolean = True then
begin
if Trim(CDS_HZ.fieldbyname('ATID').AsString) <> '' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
if Trim(DParameters1) <> '高权限' then
begin
sql.Add('Update KH_Zdy_Attachment Set ZT=''删除'' ');
sql.Add('where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
end
else
begin
sql.Add('Update KH_Zdy_Attachment Set sczt=1,ZT=''删除'' '); //1是假删除0是新增的
sql.Add('where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
end;
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('库位删除')));
sql.Add(',' + quotedstr(trim('条码号:' + trim(CDS_HZ.FieldByName('ATID').AsString))));
sql.Add(',' + quotedstr(trim('成功')));
sql.Add(')');
// sql.Add('delete KH_Zdy_Attachment where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
// sql.Add('delete KH_Zdy where ZdyNo=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
ExecSQL;
end;
end;
CDS_HZ.Delete;
end
else
Next;
end;
end;
CDS_HZ.EnableControls;
// if Trim(CDS_HZ.fieldbyname('ATID').AsString) <> '' then
// begin
// with ADOQueryCmd do
// begin
// Close;
// SQL.Clear;
// sql.Add('delete KH_Zdy_Attachment where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
// sql.Add('delete KH_Zdy where ZdyNo=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
// ExecSQL;
// end;
// end;
// CDS_HZ.Delete;
end;
procedure TfrmCPKWList.FormShow(Sender: TObject);
begin
cxGrid2.Align := alclient;
ReadCxGrid(self.Caption, Tv2, '客户自定义1');
if Trim(DParameters1) <> '高权限' then
begin
ToolButton8.Visible := false;
// TBDel.Visible := false;
// ToolButton3.Visible := false;
// ToolButton4.Visible := false;
ToolButton9.Visible := False;
ToolButton10.Visible := False;
end;
BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 1;
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
InitGrid();
end;
procedure TfrmCPKWList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCPKWList.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
end;
end;
procedure TfrmCPKWList.defstr1Change(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmCPKWList.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid2);
// SelExportData(Tv2,ADOQueryMain,'供应商资料列表');
end;
procedure TfrmCPKWList.ToolButton4Click(Sender: TObject);
begin
try
frmCPKWEdit := TfrmCPKWEdit.Create(Application);
with frmCPKWEdit do
begin
FCYID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
XZdyCode := Trim(Self.CDS_HZ.fieldbyname('ZdyCode').AsString);
Xqty := Trim(Self.CDS_HZ.fieldbyname('qty').AsString);
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmCPKWEdit.Free;
end;
end;
procedure TfrmCPKWList.ToolButton3Click(Sender: TObject);
begin
try
frmCPKWEdit := TfrmCPKWEdit.Create(Application);
with frmCPKWEdit do
begin
FCYID := '';
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmCPKWEdit.Free;
end;
end;
procedure TfrmCPKWList.ToolButton5Click(Sender: TObject);
begin
frmCPKWKCList := TfrmCPKWKCList.create(self);
with frmCPKWKCList do
begin
fkeyNO := CDS_HZ.fieldbyname('zdyCode').AsString;
showmodal;
free;
end;
end;
procedure TfrmCPKWList.ToolButton6Click(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if CDS_HZ.IsEmpty then
Exit;
if CDS_HZ.Locate('SSel', True, []) = False then
begin
Application.MessageBox('没有选择数据!', '提示', 0);
Exit;
end;
CDS_HZ.DisableControls;
with CDS_HZ do
begin
First;
while not Eof do
begin
if CDS_HZ.FieldByName('SSel').AsBoolean then
begin
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('select A.* ');
sql.Add(' from KH_Zdy_Attachment A');
SQL.Add(' where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
SQL.Add(' and Type=''CPKW'' ');
Open;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(ADOQueryPrint.fieldbyname('ATID').AsString);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
except
application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR);
CDS_HZ.EnableControls;
exit;
end;
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\成品库位标签.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RM1.LoadFromFile(fPrintFile);
// RM1.ShowReport;
RM1.PrintReport;
sleep(200);
end
else
begin
CDS_HZ.EnableControls;
Application.MessageBox(PChar('没有找' + trim(fPrintFile)), '提示', 0);
Exit;
end;
end;
Next;
end;
end;
CDS_HZ.EnableControls;
end;
procedure TfrmCPKWList.CheckBox1Click(Sender: TObject);
begin
SelOKNo(CDS_HZ, checkbox1.Checked);
end;
procedure TfrmCPKWList.ToolButton7Click(Sender: TObject);
var
excelApp, WorkBook: Variant;
i, j, k, ExcelRowCount: integer;
maxId: string;
begin
try
excelApp := CreateOleObject('Excel.Application');
openDialog1.Filter := '*.CSV;*.xls';
if opendialog1.Execute then
begin
WorkBook := excelApp.WorkBooks.Open(OpenDialog1.FileName);
end
else
exit;
excelApp.Visible := false;
ExcelRowCount := WorkBook.WorkSheets[1].UsedRange.Rows.Count;
except
application.MessageBox('加载EXCEL错误', '错误信息', MB_ICONERROR);
exit;
end;
try
k := 0;
for i := 1 to 20 do
begin
if trim(excelApp.Cells[1, i].value) = '' then
break;
if trim(excelApp.Cells[1, i].value) = '仓位编号' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'ZdyCode';
dFdDy[k].FdDysName := '产品编号';
end;
k := k + 1;
end;
except
end;
ADOQueryCmd.Connection.BeginTrans;
try
for i := 2 to ExcelRowCount do
begin
if GetLSNo(ADOQueryCmd, maxId, 'KW', 'KH_Zdy_Attachment', 4, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('取最大号失败!', '提示', 0);
Exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from KH_Zdy_Attachment where 1=2');
open;
end;
ADOQueryCmd.Append;
for j := 0 to k - 1 do
begin
if trim(dFdDy[j].FDdys) <> '' then
ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value;
end;
ADOQueryCmd.FieldByName('ATID').Value := Trim(maxId);
ADOQueryCmd.FieldByName('ZdyName').Value := Trim(ADOQueryCmd.fieldbyname('ZdyCode').AsString);
// ADOQueryCmd.FieldByName('khType').Value:=Trim(fkhType);
ADOQueryCmd.FieldByName('Type').Value := 'CPKW';
ADOQueryCmd.FieldByName('Filler').Value := Trim(DName);
ADOQueryCmd.Post;
end;
WorkBook.Close;
excelApp.Quit;
excelApp := Unassigned;
WorkBook := Unassigned;
ADOQueryCmd.Connection.CommitTrans;
InitGrid();
except
WorkBook.Close;
excelApp.Quit;
excelApp := Unassigned;
WorkBook := Unassigned;
ADOQueryCmd.Connection.RollbackTrans;
end;
end;
procedure TfrmCPKWList.ToolButton8Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if CDS_HZ.Locate('SSel', True, []) = False then
begin
Application.MessageBox('没有选择数据!', '提示', 0);
Exit;
end;
try
CDS_HZ.DisableControls;
ADOQueryCmd.Connection.BeginTrans;
with CDS_HZ do
begin
First;
while not Eof do
begin
if CDS_HZ.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update KH_Zdy_Attachment Set CKLX=''出库'',CKSJ=Getdate() ');
sql.Add('where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
ExecSQL;
end;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_HZ.EnableControls;
application.MessageBox('出库成功!', '提示信息');
TBRafresh.Click;
except
ADOQueryCmd.Connection.RollbackTrans;
CDS_HZ.EnableControls;
application.MessageBox('出库失败!', '提示信息', 0);
end;
end;
procedure TfrmCPKWList.ToolButton9Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if CDS_HZ.Locate('SSel', True, []) = False then
begin
Application.MessageBox('没有选择数据!', '提示', 0);
Exit;
end;
try
CDS_HZ.DisableControls;
ADOQueryCmd.Connection.BeginTrans;
with CDS_HZ do
begin
First;
while not Eof do
begin
if CDS_HZ.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update KH_Zdy_Attachment Set QRCZ=''已审核'' ');
sql.Add('where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
if Trim(CDS_HZ.fieldbyname('zt').AsString) = '删除' then //审核删除
begin
sql.Add('Update KH_Zdy_Attachment Set sczt=1 ');
sql.Add('where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
end;
ExecSQL;
end;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_HZ.EnableControls;
application.MessageBox('审核成功!', '提示信息');
TBRafresh.Click;
except
ADOQueryCmd.Connection.RollbackTrans;
CDS_HZ.EnableControls;
application.MessageBox('审核失败!', '提示信息', 0);
end;
end;
procedure TfrmCPKWList.Tv2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
if AViewInfo.GridRecord.Values[tv2.GetColumnByFieldName('QRCZ').Index] = '未审核' then
ACanvas.Brush.Color := clRed;
// InitImage();
end;
procedure TfrmCPKWList.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_HZ.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 where A.WBID=' + quotedstr(trim(CDS_HZ.fieldbyname('hxFile').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 TfrmCPKWList.ToolButton10Click(Sender: TObject);
begin
frmSysLogOrderzsd := TfrmSysLogOrderzsd.create(self);
with frmSysLogOrderzsd do
begin
fModel := self.caption;
// frmSysLogOrderzsd.FMainId := Trim(Self.FMainId);
showmodal;
free;
end;
end;
procedure TfrmCPKWList.N1Click(Sender: TObject);
begin
SelOKNoFiler(Tv2, True);
end;
procedure TfrmCPKWList.N2Click(Sender: TObject);
begin
SelOKNoFiler(Tv2, False);
end;
procedure TfrmCPKWList.ToolButton11Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if CDS_HZ.Locate('SSel', True, []) = False then
begin
Application.MessageBox('没有选择数据!', '提示', 0);
Exit;
end;
try
CDS_HZ.DisableControls;
ADOQueryCmd.Connection.BeginTrans;
with CDS_HZ do
begin
First;
while not Eof do
begin
if CDS_HZ.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update KH_Zdy_Attachment Set CKLX=''在库'',CKSJ=null ');
sql.Add('where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + '''');
ExecSQL;
end;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_HZ.EnableControls;
application.MessageBox('撤销出库成功!', '提示信息');
TBRafresh.Click;
except
ADOQueryCmd.Connection.RollbackTrans;
CDS_HZ.EnableControls;
application.MessageBox('撤销出库失败!', '提示信息', 0);
end;
end;
procedure TfrmCPKWList.MinQtyChange(Sender: TObject);
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add(' select A.*, ');
sql.Add(' cpRollNum=(select count(MJID) from CK_BanCP_KC X where X.KCKW=A.zdyCode and X.kcQty>0),');
sql.Add(' cpQty=(select sum(kcQty) from CK_BanCP_KC X where X.KCKW=A.zdyCode and X.kcQty>0 and mjid NOT like ''%C%'') ');
sql.Add(' from KH_Zdy_Attachment A ');
sql.Add(' where Type=''CPKW'' and sczt<>1');
sql.Add('and A.FillTime>=''' + FormatDateTime('yyyy-MM-dd', BegDate.DateTime) + ''' ');
sql.Add('and A.FillTime<''' + FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1) + ''' ');
if strtofloatdef(trim(MinQty.text), 0) > 0 then
begin
sql.Add('and A.qty>=''' + (trim(MinQty.text)) + ''' ');
end;
if strtofloatdef(trim(MaxQty.text), 0) > 0 then
begin
sql.Add('and A.qty<=''' + (trim(MaxQty.text)) + ''' ');
end;
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCPKWList.ToolButton12Click(Sender: TObject);
begin
InitImage();
end;
procedure TfrmCPKWList.Tv2CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
InitImage();
end;
end.