D7YPDJlingyao/基础资料维护(BaseInfo.dll)/U_ZdyAttachment.pas
DESKTOP-E401PHE\Administrator 43fbfa8db2 ~
2025-07-19 16:53:04 +08:00

459 lines
12 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_ZdyAttachment;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
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, cxDBLookupComboBox, cxPC;
type
TfrmZdyAttachment = 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;
ZdyName: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
ToolButton3: TToolButton;
v2Column6: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
Label1: TLabel;
ZdyCode: TEdit;
v2Column10: TcxGridDBColumn;
TBedit: TToolButton;
Label2: TLabel;
ywy: TEdit;
v2Column11: TcxGridDBColumn;
v2DEFStr7: TcxGridDBColumn;
v2Column12: TcxGridDBColumn;
v2Column13: TcxGridDBColumn;
edtRegion: TEdit;
Label4: TLabel;
v2Column15: TcxGridDBColumn;
TBuser: TToolButton;
cxTabControl1: TcxTabControl;
CheckBox1: TCheckBox;
v2Column19: TcxGridDBColumn;
Tchk: TToolButton;
TNochk: TToolButton;
v2Column18: TcxGridDBColumn;
v2Column20: TcxGridDBColumn;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
v2Column14: TcxGridDBColumn;
KHType: TEdit;
Label5: TLabel;
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 ZdyNameChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBeditClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure TBuserClick(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure TchkClick(Sender: TObject);
procedure TNochkClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
private
{ Private declarations }
procedure InitGrid();
procedure setstatus();
public
fkhType: string;
canshu1: string;
end;
var
frmZdyAttachment: TfrmZdyAttachment;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttInput, U_FjList_RZ, U_UserSelf;
{$R *.dfm}
procedure TfrmZdyAttachment.setstatus();
begin
TBedit.Visible := false;
TBdel.Visible := false;
tchk.Visible := false;
tnochk.Visible := false;
TBuser.Visible := false;
toolbutton1.Visible := false;
if trim(canshu1) = '' then
begin
TBuser.Visible := True;
case cxTabControl1.TabIndex of
0:
begin
TBedit.Visible := true;
TBdel.Visible := true;
end;
end;
end
else if trim(canshu1) = '<27><>Ȩ<EFBFBD><C8A8>' then
begin
TBuser.Visible := True;
toolbutton1.Visible := true;
case cxTabControl1.TabIndex of
0:
begin
TBedit.Visible := true;
tbdel.Visible := True;
tchk.Visible := True;
end;
1:
begin
tNochk.Visible := True;
end;
end;
end;
// InitGrid();
end;
procedure TfrmZdyAttachment.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' and Valid=''Y'' and ATID=FromATID ');
if trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
sql.Add(' and (Filler=' + quotedstr(trim(DName)) + 'or ywy like ' + quotedstr('%' + trim(DName) + '%') + ')');
if cxTabControl1.TabIndex < 2 then
sql.Add(' and Status=''' + inttostr(cxTabControl1.TabIndex) + ''' ');
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZdyAttachment.FormDestroy(Sender: TObject);
begin
frmZdyAttachment := nil;
end;
procedure TfrmZdyAttachment.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmZdyAttachment.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>', Tv2, '<27>ͻ<EFBFBD><CDBB>Զ<EFBFBD><D4B6><EFBFBD>');
Close;
end;
procedure TfrmZdyAttachment.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('ATID').AsString) <> '') then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add(' update KH_Zdy_Attachment set Valid=''N'',ZFTime=GETDATE(),ZFPerson=''' + Trim(DName) + ''' ');
SQL.Add(' where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''' ');
ExecSQL;
end;
end;
CDS_HZ.Delete;
end;
procedure TfrmZdyAttachment.FormShow(Sender: TObject);
begin
ReadCxGrid('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>', Tv2, '<27>ͻ<EFBFBD><CDBB>Զ<EFBFBD><D4B6><EFBFBD>');
setstatus();
InitGrid();
end;
procedure TfrmZdyAttachment.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmZdyAttachment.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 TfrmZdyAttachment.ZdyNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmZdyAttachment.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid2);
end;
procedure TfrmZdyAttachment.TBeditClick(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
exit;
try
frmZdyAttInput := TfrmZdyAttInput.Create(Application);
with frmZdyAttInput do
begin
FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
FFromATID := Trim(Self.CDS_HZ.fieldbyname('FromATID').AsString);
if ShowModal = 1 then
begin
TBRafresh.Click;
Self.CDS_HZ.Locate('ATID', FATID, []);
end;
end;
finally
frmZdyAttInput.Free;
end;
end;
procedure TfrmZdyAttachment.ToolButton3Click(Sender: TObject);
begin
try
frmZdyAttInput := TfrmZdyAttInput.Create(Application);
with frmZdyAttInput do
begin
FATID := '';
FFromATID := '';
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmZdyAttInput.Free;
end;
end;
procedure TfrmZdyAttachment.TBuserClick(Sender: TObject);
var
FuserName: string;
begin
if CDS_HZ.IsEmpty then
exit;
frmUserSelf := TfrmUserSelf.Create(self);
with frmUserSelf do
begin
if showmodal = 1 then
begin
FuserName := ClientDataSet1.fieldbyname('username').AsString;
end;
free;
end;
if trim(FuserName) <> '' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add(' update KH_Zdy_Attachment SET Filler=''' + trim(FuserName) + ''' where ATID=''' + Trim(CDS_HZ.fieldbyname('ATID').AsString) + ''' ');
ExecSQL;
end;
TBRafresh.Click;
end;
end;
procedure TfrmZdyAttachment.CheckBox1Click(Sender: TObject);
begin
SelOKNo(CDS_HZ, CheckBox1.Checked);
end;
procedure TfrmZdyAttachment.TchkClick(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
exit;
if CDS_HZ.Locate('ssel', true, []) = false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
with CDS_HZ do
begin
DisableControls;
First;
while not eof do
begin
if fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add(' update KH_Zdy_Attachment SET Status=''1'',ChkTime=GETDATE(),Chker=''' + Trim(DName) + ''' ');
sql.Add(' where ATID=' + quotedstr(trim(CDS_HZ.fieldbyname('ATID').AsString)));
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
TBRafresh.Click;
except
CDS_HZ.EnableControls;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmZdyAttachment.TNochkClick(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
exit;
if CDS_HZ.Locate('ssel', true, []) = false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
with CDS_HZ do
begin
DisableControls;
First;
while not eof do
begin
if fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add(' update KH_Zdy_Attachment SET Status=''0'',ChkTime=NULL,Chker=NULL ');
sql.Add(' where ATID=' + quotedstr(trim(CDS_HZ.fieldbyname('ATID').AsString)));
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳ɹ<CBB3><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
TBRafresh.Click;
except
CDS_HZ.EnableControls;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmZdyAttachment.FormCreate(Sender: TObject);
begin
canshu1 := trim(DParameters1);
end;
procedure TfrmZdyAttachment.cxTabControl1Change(Sender: TObject);
begin
setstatus();
InitGrid();
end;
procedure TfrmZdyAttachment.ToolButton4Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
try
frmFjList_RZ := TfrmFjList_RZ.Create(Application);
with frmFjList_RZ do
begin
fkeyNO := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
fType := '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
end;
end;
finally
frmFjList_RZ.Free;
end;
end;
procedure TfrmZdyAttachment.ToolButton5Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
exit;
try
frmZdyAttInput := TfrmZdyAttInput.Create(Application);
with frmZdyAttInput do
begin
TBsave.Visible := false;
FATID := Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
FFromATID := Trim(Self.CDS_HZ.fieldbyname('FromATID').AsString);
if ShowModal = 1 then
begin
end;
end;
finally
frmZdyAttInput.Free;
end;
end;
procedure TfrmZdyAttachment.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ToolButton5.Click;
end;
end.