D7myYunxiang/云翔OA(WTOA.dll)/U_YGYPZZChkList_GBLHY.pas
DESKTOP-E401PHE\Administrator 1011cb7292 1
2025-01-20 13:04:03 +08:00

524 lines
14 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_YGYPZZChkList_GBLHY;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter,
RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls,
Menus, cxButtonEdit, cxDropDownEdit, cxPC, ActnMan, ActnColorMaps,
IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,IniFiles;
type
TfrmYGYPZZChkList_GBLHY = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
TBExport: TToolButton;
Order_Main: TClientDataSet;
TBView: TToolButton;
TBADD: TToolButton;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N1: TMenuItem;
TUpdate: TToolButton;
TDel: TToolButton;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
ADOQuery1: TADOQuery;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxStyle2: TcxStyle;
ADOQuery2: TADOQuery;
v1GSBiaoTi: TcxGridDBColumn;
Panel1: TPanel;
Label4: TLabel;
GSBiaoTi: TEdit;
ODPat: TOpenDialog;
IdFTP1: TIdFTP;
SaveDialog1: TSaveDialog;
Label3: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
v1filltime: TcxGridDBColumn;
v1ZDNote: TcxGridDBColumn;
cxTabControl1: TcxTabControl;
TFB: TToolButton;
TCXFB: TToolButton;
v1HYDate: TcxGridDBColumn;
v1HYPlace: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure TBViewClick(Sender: TObject);
procedure CustomerNoNameChange(Sender: TObject);
procedure TBADDClick(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure TUpdateClick(Sender: TObject);
procedure TDelClick(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure TFBClick(Sender: TObject);
procedure TCXFBClick(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
private
canshu1:string;
DQdate:TDateTime;
FDEPT,FDPName: string;
lstPat: TStringList;
procedure InitGrid();
procedure InitForm();
function DelData():Boolean;
procedure setstatus();
procedure SaveData();
procedure ReadINIFile10();
{ Private declarations }
public
FFInt,FCloth:Integer;
{ Public declarations }
end;
var
frmYGYPZZChkList_GBLHY: TfrmYGYPZZChkList_GBLHY;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp, U_YGYPInPut,
U_ZDYHelpSel,U_YGYPInPut_YGFJDJ,U_YGYPInPut_HYDJ;
{$R *.dfm}
procedure TfrmYGYPZZChkList_GBLHY.setstatus();
begin
TBADD.Visible:=False;
TUpdate.Visible:=False;
TDel.Visible:=False;
TFB.Visible:=False;
TCXFB.Visible:=False;
case cxTabControl1.TabIndex of
0:begin
TBADD.Visible:=true;
TUpdate.Visible:=true;
TDel.Visible:=true;
TFB.Visible:=true;
end;
1:begin
TCXFB.Visible:=true;
end;
2:begin
end;
3:begin
end;
end;
end;
procedure TfrmYGYPZZChkList_GBLHY.SaveData();
var
maxno:String;
begin
if GetLSNo(ADOQueryTemp,maxno,'ZD','OA_YG_GSGZZD',4,1)=False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
SQL.Add('select * from OA_YG_GSGZZD where ZDID='''+Trim(maxno)+'''');
Open;
if isempty then
begin
append;
fieldbyname('filler').AsString:=trim(DName);
fieldbyname('filltime').AsDateTime:=SGetServerDate(ADOQuery2);
fieldbyname('ZDID').Value:=trim(maxno);
fieldbyname('DeptType').Value:=trim(FDPName);
fieldbyname('GSBiaoTi').Value:=trim(Order_Main.fieldbyname('GSBiaoTi').AsString);
post;
end;
end;
end;
procedure TfrmYGYPZZChkList_GBLHY.FormDestroy(Sender: TObject);
begin
frmYGYPZZChkList_GBLHY:=nil;
end;
procedure TfrmYGYPZZChkList_GBLHY.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYGYPZZChkList_GBLHY.FormCreate(Sender: TObject);
begin
canshu1:=Trim(DParameters1);
end;
procedure TfrmYGYPZZChkList_GBLHY.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><>˾<EFBFBD>ڲ<EFBFBD><DAB2>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
end;
procedure TfrmYGYPZZChkList_GBLHY.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select * ');
sql.Add(' from OA_YG_GSGZZD ');
sql.Add(' where isnull(FBType,'''')=''<27><><EFBFBD><EFBFBD><E9BFAA>'' ');
if cxTabControl1.TabIndex<>0 then
begin
sql.add(' and filltime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
sql.Add(' and filltime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
end;
if cxTabControl1.TabIndex=0 then
sql.add(' and (isnull(FBStatus,'''')='''' or isnull(FBStatus,'''')=''<27><>ͨ<EFBFBD><CDA8>'')');
if cxTabControl1.TabIndex=1 then
sql.add(' and (isnull(FBStatus,'''')=''<27>ѷ<EFBFBD><D1B7><EFBFBD>'' or isnull(FBStatus,'''')=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'')');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYGYPZZChkList_GBLHY.InitForm();
begin
ReadCxGrid('<27><>˾<EFBFBD>ڲ<EFBFBD><DAB2>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
setstatus();
EndDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=EndDate.Date-7;
if trim(CanShu1)='<27><>ѯ' then
begin
TBADD.Visible:=False;
TUpdate.Visible:=false;
TDel.Visible:=False;
end
else
begin
TBADD.Visible:=true;
TUpdate.Visible:=true;
TDel.Visible:=true;
end;
InitGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.TBFindClick(Sender: TObject);
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
function TfrmYGYPZZChkList_GBLHY.DelData():Boolean;
begin
try
Result:=false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Delete OA_YG_DangAn where YGId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Delete OA_YG_DangAn_Other where YGId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Delete TP_File where WBId='''+Trim(Order_Main.fieldbyname('YGId').AsString)+'''');
sql.Add(' and TFType=''YG'' ');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
ADOQueryCmd.Connection.RollbackTrans;
Result:=False;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
procedure TfrmYGYPZZChkList_GBLHY.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
TcxGridToExcel('<27><>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6>б<EFBFBD>',cxGrid1);
end;
procedure TfrmYGYPZZChkList_GBLHY.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmYGYPZZChkList_GBLHY.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmYGYPZZChkList_GBLHY.TBViewClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
frmYGYPInPut_HYDJ:=TfrmYGYPInPut_HYDJ.create(self);
with frmYGYPInPut_HYDJ do
begin
ToolBar1.Visible:=False;
FCLID:=trim(Order_Main.fieldbyname('ZDID').AsString);
if showModal=1 then
begin
end;
free;
end;
end;
procedure TfrmYGYPZZChkList_GBLHY.CustomerNoNameChange(Sender: TObject);
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmYGYPZZChkList_GBLHY.TBADDClick(Sender: TObject);
begin
frmYGYPInPut_HYDJ:=TfrmYGYPInPut_HYDJ.create(self);
with frmYGYPInPut_HYDJ do
begin
FCLID:='';
if showModal=1 then
begin
end;
free;
end;
initGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
TBView.Click;
end;
procedure TfrmYGYPZZChkList_GBLHY.TUpdateClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
if trim(Order_Main.fieldbyname('filler').AsString)<>trim(DName) then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
frmYGYPInPut_HYDJ:=TfrmYGYPInPut_HYDJ.create(self);
with frmYGYPInPut_HYDJ do
begin
FCLID:=trim(Order_Main.fieldbyname('ZDID').AsString);
if showModal=1 then
begin
end;
free;
end;
initGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.TDelClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
if trim(Order_Main.fieldbyname('filler').AsString)<>trim(DName) then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
if application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>','<27><>ʾ',1)=2 then exit;
with ADOQueryMain do
begin
close;
sql.Clear;
sql.Add('delete from OA_YG_GSGZZD where ZDID='''+trim(Order_Main.fieldbyname('ZDID').AsString)+'''');
execsql;
end;
initGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.N2Click(Sender: TObject);
begin
SelOKNo(Order_Main,True);
end;
procedure TfrmYGYPZZChkList_GBLHY.N1Click(Sender: TObject);
begin
SelOKNo(Order_Main,False);
end;
procedure TfrmYGYPZZChkList_GBLHY.ReadINIFile10();
var
programIni:Tinifile; //<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
FileName:string;
begin
FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI';
programIni:=Tinifile.create(FileName);
server:=programIni.ReadString('SERVER','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ','127.0.0.1');
programIni.Free;
end;
procedure TfrmYGYPZZChkList_GBLHY.TFBClick(Sender: TObject);
var maxno: string;
begin
if Order_Main.IsEmpty then exit;
frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag:='SPR';
flagname:='<27>Ķ<EFBFBD><C4B6><EFBFBD>';
MainType:=Trim(DName);
if ShowModal=1 then
begin
with ClientDataSet1 do
begin
first;
while not Eof do
begin
if fieldbyname('Ssel').AsBoolean=True then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from SY_User where UserName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
Application.MessageBox('<27>Ķ<EFBFBD><C4B6>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from OA_Chk where MainId='''+Trim(Order_Main.fieldbyname('ZDID').AsString)+'''');
sql.Add(' and isnull(OAType,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.Add(' and isnull(Chker,'''')='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,maxno,'FB','OA_Chk',4,1)=False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from OA_Chk where 1=2 ');
Open;
append;
FieldByName('CKID').Value:=Trim(maxno);
FieldByName('Mainid').Value:=Trim(Order_Main.fieldbyname('ZDID').AsString);
FieldByName('OAType').value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Chker').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
Post;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('update OA_YG_GSGZZD set FBStatus=''<27>ѷ<EFBFBD><D1B7><EFBFBD>'' ');
sql.Add('where ZDID='''+trim(Order_Main.fieldbyname('ZDID').asstring)+''' ');
ExecSQL;
end;
end;
Next;
end;
end;
end;
Free;
end;
InitGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.TCXFBClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
if Application.MessageBox(<><C8B7>Ҫִ<D2AA>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete from OA_Chk ');
sql.Add(' where Mainid='''+Order_Main.fieldbyname('ZDID').AsString+'''');
sql.Add(' and isnull(OAType,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_YG_GSGZZD Set FBStatus='''' ');
sql.Add(' where ZDID='''+trim(Order_Main.fieldbyname('ZDID').AsString)+'''');
ExecSQL;
end;
initGrid();
end;
procedure TfrmYGYPZZChkList_GBLHY.cxTabControl1Change(Sender: TObject);
begin
setStatus();
initGrid();
end;
end.