D10myYicheng/样品(YPGL.dll)/U_ZdyAttachCP.pas

735 lines
21 KiB
ObjectPascal
Raw Permalink Normal View History

2025-05-27 14:08:09 +08:00
unit U_ZdyAttachCP;
interface
uses
Windows, Messages, SysUtils, StrUtils, math, Variants, Classes, Graphics,
Controls, Forms, 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, Menus, cxLookAndFeelPainters, cxButtons, cxContainer, cxImage,
cxDBEdit, cxLookAndFeels, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters,
dxDateRanges, dxBarBuiltInMenu, IdExplicitTLSClientServerBase, U_BaseList;
type
FdDy = record
inc: integer; //<2F>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>׽<EFBFBD><D7BD>־<EFBFBD><D6BE><EFBFBD>
FDdys: string[32]; //<2F>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>׽<EFBFBD><D7BD><EFBFBD>
FdDysName: string[32]; //<2F>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>׽<EFBFBD><D7BD><EFBFBD>
end;
TfrmZdyAttachCP = class(TfrmBaseList)
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;
HXCode: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
ToolButton3: TToolButton;
v2Column6: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
Label1: TLabel;
HXName: TEdit;
ToolButton4: TToolButton;
Label2: TLabel;
DEFstr5: TComboBox;
v2Column12: TcxGridDBColumn;
OpenDialog1: TOpenDialog;
ToolButton5: TToolButton;
v2Mrate: TcxGridDBColumn;
v2Column14: TcxGridDBColumn;
v2Column15: TcxGridDBColumn;
ToolButton6: TToolButton;
Panel2: TPanel;
RadioGroup1: TRadioGroup;
Label4: TLabel;
cxButton1: TcxButton;
cxButton2: TcxButton;
v2Column16: TcxGridDBColumn;
Pan_Image: TPanel;
Pic_Image1: TcxDBImage;
ADOQueryImage: TADOQuery;
DSImage: TDataSource;
IdFTP1: TIdFTP;
Panel10: TPanel;
Image2: TImage;
Label5: TLabel;
Note: TEdit;
v2Column11: TcxGridDBColumn;
ToolButton7: TToolButton;
v2DEFNote5: TcxGridDBColumn;
Panel6: TPanel;
Label31: TLabel;
LBCPAP: TLabel;
BTLP: TButton;
BTNP: TButton;
TCBNOR: TComboBox;
Tv2Column1: TcxGridDBColumn;
Tv2Column2: TcxGridDBColumn;
Tv2Column3: TcxGridDBColumn;
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 HXCodeChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure cxButton2Click(Sender: TObject);
procedure cxButton1Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
procedure Pic_Image1DblClick(Sender: TObject);
procedure Image2Click(Sender: TObject);
procedure v2Column10PropertiesEditValueChanged(Sender: TObject);
procedure v2Column11PropertiesEditValueChanged(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure v2DEFNote5PropertiesEditValueChanged(Sender: TObject);
procedure TCBNORChange(Sender: TObject);
procedure BTNPClick(Sender: TObject);
procedure BTLPClick(Sender: TObject);
private
fFlileFlag: string;
{ Private declarations }
CurrentPage, RecordsNumber: Integer;
procedure InitGrid();
procedure InitImage();
procedure LookImage(FileName: string);
public
fkhType: string;
canshu1: string;
dFdDy: array[0..20] of FdDy; //<2F>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
end;
var
frmZdyAttachCP: TfrmZdyAttachCP;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_ZdyAttInputCP_other;
{$R *.dfm}
procedure TfrmZdyAttachCP.LookImage(FileName: string);
var
sFieldName: string;
// ff: TADOBlobStream;
// FJStream : TMemoryStream;
begin
sFieldName := leftbstr(ExtractFilePath(Application.ExeName), 1) + ':\ͼƬ<CDBC>鿴';
if not DirectoryExists(pchar(sFieldName)) then
CreateDirectory(pchar(sFieldName), nil);
sFieldName := sFieldName + '\' + trim(FileName);
try
IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ', '127.0.0.1');
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
except
;
end;
if IdFTP1.Connected then
begin
// Panel2.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>Ե<EFBFBD>...';
// Panel2.Visible:=true;
// application.ProcessMessages;
try
IdFTP1.Get(fFlileFlag + '\' + Trim(FileName), sFieldName, true, false);
except
// Panel2.Visible:=false;
Application.MessageBox('<27>ͻ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
end
else
begin
// Panel2.Visible:=false;
Application.MessageBox('<27>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
// Panel2.Visible:=false;
if IdFTP1.Connected then
IdFTP1.Quit;
ShellExecute(Handle, 'open', PChar(sFieldName), '', '', SW_SHOWNORMAL);
end;
procedure TfrmZdyAttachCP.InitImage();
begin
ADOQueryImage.Close;
if CDS_HZ.IsEmpty then
exit;
with ADOQueryImage do
begin
close;
sql.Clear;
sql.Add('select * from TP_File A');
sql.Add('where WBID=' + quotedstr(trim(CDS_HZ.fieldbyname('HXID').AsString)));
sql.Add('and TFType=' + quotedstr(trim('HX')));
open;
end;
end;
procedure TfrmZdyAttachCP.InitGrid();
var
fwhere: string;
begin
fwhere := SGetFilters(Panel1, 1, 2);
if trim(fwhere) <> '' then
fwhere := ' where ' + trim(fwhere);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
Filtered := False;
SQL.Clear;
sql.Add(' select AAA.* from ( ');
sql.Add(' select AA.* ');
sql.Add(' ,DBName=(SUBSTRING(CAST((select distinct '','' +X.DBName from BS_HX_Sub X where X.HXID=AA.HXID for xml path('''') ) AS VARCHAR(100)) , 2, 100)) ');
sql.Add(' ,FactoryName=(SUBSTRING(CAST((select distinct '','' +Y.FactoryName from BS_HX_Sub X inner join BS_HX_Factory Y on X.HXSID=Y.HXSID where X.HXID=AA.HXID for xml path('''') ) AS VARCHAR(100)) , 2, 100)) ');
sql.Add(' ,GCGY=(SUBSTRING(CAST((select distinct '','' +Y.GCGY from BS_HX_Sub X inner join BS_HX_Factory Y on X.HXSID=Y.HXSID where X.HXID=AA.HXID for xml path('''') ) AS VARCHAR(100)) , 2, 100)) ');
sql.Add(' ,JGNote=(SUBSTRING(CAST((select distinct '','' +Y.JGNote from BS_HX_Sub X inner join BS_HX_Factory Y on X.HXSID=Y.HXSID where X.HXID=AA.HXID for xml path('''') ) AS VARCHAR(100)) , 2, 100)) ');
sql.Add(' ,Price=(SUBSTRING(CAST((select distinct '','' +cast(Y.Price as varchar(50)) from BS_HX_Sub X inner join BS_HX_Factory Y on X.HXSID=Y.HXSID where X.HXID=AA.HXID for xml path('''') ) AS VARCHAR(100)) , 2, 100)) ');
sql.Add(' ,row_number() over(order by AA.HXID desc) as rownumber,COUNT(1) OVER() AS TotalCount ');
sql.Add(' from BS_HX_Main AA ');
sql.Add(fwhere);
sql.Add(' )AAA');
sql.Add(' where rownumber> ' + IntToStr((CurrentPage - 1) * RecordsNumber));
sql.Add(' and rownumber<= ' + IntToStr((CurrentPage) * RecordsNumber));
sql.Add(' order by HXCode');
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS(ADOQueryMain, CDS_HZ);
SInitCDSData(ADOQueryMain, CDS_HZ);
LBCPAP.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(CDS_HZ.FieldByName('TotalCount').AsInteger / RecordsNumber));
finally
ADOQueryMain.EnableControls;
ToolButton2.Click;
end;
end;
procedure TfrmZdyAttachCP.FormDestroy(Sender: TObject);
begin
inherited;
frmZdyAttachCP := nil;
end;
procedure TfrmZdyAttachCP.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmZdyAttachCP.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(self.Caption, Tv2, '<27>ͻ<EFBFBD><CDBB>Զ<EFBFBD><D4B6><EFBFBD>');
Close;
end;
procedure TfrmZdyAttachCP.TBDelClick(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
if Trim(CDS_HZ.fieldbyname('HXID').AsString) <> '' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
// sql.Add('update BS_HX_Main set Valid=''N'' where HXID=''' + Trim(CDS_HZ.fieldbyname('HXID').AsString) + '''');
sql.Add('delete BS_HX_Main where HXID=''' + Trim(CDS_HZ.fieldbyname('HXID').AsString) + '''');
sql.Add('delete BS_HX_Factory where HXID=''' + Trim(CDS_HZ.fieldbyname('HXID').AsString) + '''');
sql.Add('delete BS_HX_Sub where HXID=''' + Trim(CDS_HZ.fieldbyname('HXID').AsString) + '''');
ExecSQL;
end;
end;
CDS_HZ.Delete;
end;
procedure TfrmZdyAttachCP.FormShow(Sender: TObject);
begin
inherited;
CurrentPage := 1;
RecordsNumber := 500;
Pan_image.Left := self.Width - Pan_image.Width - 20;
Pan_image.Top := self.Height - Pan_image.Height - 80;
fFlileFlag := UserDataFlag + 'HX';
ReadCxGrid(self.Caption, Tv2, '<27>ͻ<EFBFBD><CDBB>Զ<EFBFBD><D4B6><EFBFBD>');
InitGrid();
end;
procedure TfrmZdyAttachCP.TBRafreshClick(Sender: TObject);
begin
RecordsNumber := StrToInt(TCBNOR.Text);
CurrentPage := 1;
InitGrid();
end;
procedure TfrmZdyAttachCP.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_HZ);
SInitCDSData(ADOQueryMain, CDS_HZ);
end;
end;
procedure TfrmZdyAttachCP.HXCodeChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmZdyAttachCP.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid2);
end;
procedure TfrmZdyAttachCP.ToolButton4Click(Sender: TObject);
begin
try
frmZdyAttInputCP_other := TfrmZdyAttInputCP_other.Create(Application);
with frmZdyAttInputCP_other do
begin
FFlag := 1;
FCYID := Trim(Self.CDS_HZ.fieldbyname('HXID').AsString);
fkhType := self.fkhType;
fFlileFlag := self.fFlileFlag;
canshu1 := self.canshu1;
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmZdyAttInputCP_other.Free;
end;
end;
procedure TfrmZdyAttachCP.ToolButton3Click(Sender: TObject);
begin
try
frmZdyAttInputCP_other := TfrmZdyAttInputCP_other.Create(Application);
with frmZdyAttInputCP_other do
begin
FFlag := 0;
FCYID := '';
fkhType := self.fkhType;
fFlileFlag := self.fFlileFlag;
canshu1 := self.canshu1;
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmZdyAttInputCP_other.Free;
end;
end;
procedure TfrmZdyAttachCP.ToolButton5Click(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('<27><><EFBFBD><EFBFBD>EXCEL<45><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ', 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) = '<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'ZdyCode';
dFdDy[k].FdDysName := '<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>';
end;
if trim(excelApp.Cells[1, i].value) = '<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'ZdyName';
dFdDy[k].FdDysName := '<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>';
end;
if trim(excelApp.Cells[1, i].value) = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'defNote3';
dFdDy[k].FdDysName := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
end;
if trim(excelApp.Cells[1, i].value) = '<27><>ɫ' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'DEFstr3';
dFdDy[k].FdDysName := '<27><>ɫ';
end;
if trim(excelApp.Cells[1, i].value) = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'DEFstr6';
dFdDy[k].FdDysName := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ';
end;
if trim(excelApp.Cells[1, i].value) = '<27><><EFBFBD><EFBFBD>' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'DEFstr5';
dFdDy[k].FdDysName := '<27><><EFBFBD><EFBFBD>';
end;
if trim(excelApp.Cells[1, i].value) = '<27><><EFBFBD><EFBFBD>' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'DEFstr1';
dFdDy[k].FdDysName := '<27><><EFBFBD><EFBFBD>';
end;
if trim(excelApp.Cells[1, i].value) = '<27>ɷ<EFBFBD>' then
begin
dFdDy[k].inc := i;
dFdDy[k].FDdys := 'DEFstr2';
dFdDy[k].FdDysName := '<27>ɷ<EFBFBD>';
end;
k := k + 1;
end;
except
end;
ADOQueryCmd.Connection.BeginTrans;
try
for i := 2 to ExcelRowCount do
begin
if GetLSNo(ADOQueryCmd, maxId, 'AT', 'BS_HX_Main', 4, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from BS_HX_Main where 1=2');
open;
end;
ADOQueryCmd.Append;
for j := 0 to k - 1 do
begin
ADOQueryCmd.fieldbyname(dFdDy[j].FDdys).Value := excelApp.Cells[i, dFdDy[j].inc].Value;
end;
ADOQueryCmd.FieldByName('HXID').Value := Trim(maxId);
ADOQueryCmd.FieldByName('zdyCode').Value := Trim(maxId);
ADOQueryCmd.FieldByName('khType').Value := Trim(fkhType);
ADOQueryCmd.FieldByName('Type').Value := 'CP';
ADOQueryCmd.FieldByName('Filler').Value := Trim(DName);
ADOQueryCmd.Post;
{ with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from BS_HX_Main where HXID='''+trim(maxId)+''' ');
open;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from KH_Zdy where ZdyNo='''+Trim(maxId)+'''');
Open;
end;
with ADOQueryCmd do
begin
if ADOQueryCmd.IsEmpty then
begin
Append;
end else
begin
Edit;
end;
FieldByName('ZdyNo').Value:=Trim(maxId);
FieldByName('ZdyName').Value:=Trim(ADOQueryTemp.fieldbyname('ZdyName').AsString);
FieldByName('Type').Value:='CP';
FieldByName('MainType').Value:=Trim(ADOQueryTemp.fieldbyname('DEFstr5').AsString);
Post;
end;}
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 TfrmZdyAttachCP.cxButton2Click(Sender: TObject);
begin
Panel2.Visible := false;
end;
procedure TfrmZdyAttachCP.cxButton1Click(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if CDS_HZ.IsEmpty then
exit;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(CDS_HZ.fieldbyname('ZDYCODE').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('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + trim(RadioGroup1.Items[RadioGroup1.ItemIndex]) + '.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RM1.LoadFromFile(fPrintFile);
// Rm2.DefaultCopies:=strtointdef(trim(ComboBox1.Text),1);
// RM1.ShowReport;
RM1.PrintReport;
end
else
Application.MessageBox(PChar(<><C3BB><EFBFBD>ҵ<EFBFBD><D2B5>ļ<EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
procedure TfrmZdyAttachCP.ToolButton6Click(Sender: TObject);
begin
Panel2.Left := (self.Width - Panel2.Width) div 2;
Panel2.Top := (self.Height - Panel2.Height) div 2 - 100;
Panel2.Visible := true;
end;
procedure TfrmZdyAttachCP.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
begin
InitImage();
end;
procedure TfrmZdyAttachCP.Pic_Image1DblClick(Sender: TObject);
begin
if TcxDBImage(Sender).Picture.Height = 0 then
exit;
LookImage(ADOQueryImage.fieldbyname(TcxDBImage(Sender).Hint).asstring);
end;
procedure TfrmZdyAttachCP.Image2Click(Sender: TObject);
begin
Pan_Image.Visible := false;
end;
procedure TfrmZdyAttachCP.v2Column10PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '0';
end;
FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value := Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate BS_HX_Main ');
sql.Add(' Set ' + FFieldName + '=' + Trim(mvalue));
SQL.Add(',Editer=''' + Trim(DName) + '''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where HXID=''' + Trim(CDS_HZ.fieldbyname('HXID').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZdyAttachCP.v2Column11PropertiesEditValueChanged(Sender: TObject);
var
mvalue, fFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
fFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(fFieldName).Value := Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate BS_HX_Main ');
sql.Add(' Set ' + fFieldName + '=''' + Trim(mvalue) + ''' ');
SQL.Add(',Editer=''' + Trim(DName) + '''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where HXID=''' + Trim(CDS_HZ.fieldbyname('HXID').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZdyAttachCP.ToolButton7Click(Sender: TObject);
begin
try
frmZdyAttInputCP_other := TfrmZdyAttInputCP_other.Create(Application);
with frmZdyAttInputCP_other do
begin
FFlag := 99;
FCYID := Trim(Self.CDS_HZ.fieldbyname('HXID').AsString);
fkhType := self.fkhType;
fFlileFlag := self.fFlileFlag;
canshu1 := self.canshu1;
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmZdyAttInputCP_other.Free;
end;
end;
procedure TfrmZdyAttachCP.v2DEFNote5PropertiesEditValueChanged(Sender: TObject);
var
mvalue: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
with CDS_HZ do
begin
Edit;
FieldByName('DEFNote5').Value := Trim(mvalue);
Post;
end;
self.tv2.Controller.EditingController.ShowEdit();
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' update BS_HX_Main SET DEFNote5=''' + trim(CDS_HZ.fieldbyName('DEFNote5').AsString) + ''' where HXID=''' + Trim(CDS_HZ.fieldbyname('HXID').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZdyAttachCP.TCBNORChange(Sender: TObject);
begin
RecordsNumber := StrToInt(TCBNOR.Text);
CurrentPage := 1;
InitGrid();
end;
procedure TfrmZdyAttachCP.BTNPClick(Sender: TObject);
begin
if CurrentPage < CDS_HZ.FieldByName('TotalCount').AsInteger / RecordsNumber then
CurrentPage := CurrentPage + 1;
InitGrid();
end;
procedure TfrmZdyAttachCP.BTLPClick(Sender: TObject);
begin
if CurrentPage > 1 then
CurrentPage := CurrentPage - 1;
InitGrid();
end;
end.