D7myYunxiang/云翔OA(WTOA.dll)/U_GRYearPFList_YGXZTJ.pas

515 lines
13 KiB
ObjectPascal
Raw Normal View History

2025-01-20 13:04:03 +08:00
unit U_GRYearPFList_YGXZTJ;
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, cxCalendar, cxButtonEdit, cxSplitter,
RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport,
cxTextEdit, cxPC, cxCheckBox, Menus, cxCurrencyEdit, cxDropDownEdit;
type
TfrmGRYearPFList_YGXZTJ = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
TBExport: TToolButton;
Order_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
CDS_PRT: TClientDataSet;
Panel1: TPanel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
Label1: TLabel;
ToolButton1: TToolButton;
ADOQueryPrint: TADOQuery;
TBAdd: TToolButton;
TBDel: TToolButton;
Source1: TDataSource;
Order_Sub: TClientDataSet;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyle2: TcxStyle;
cxStyle3: TcxStyle;
TSsel: TToolButton;
TUpdate: TToolButton;
TCHk: TToolButton;
TCXChk: TToolButton;
cxTabControl1: TcxTabControl;
Label3: TLabel;
YGName: TEdit;
Label5: TLabel;
Label6: TLabel;
TTJ: TToolButton;
TCXTJ: TToolButton;
cxTabControl2: TcxTabControl;
FKType: TComboBox;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N1: TMenuItem;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1XHNo: TcxGridDBColumn;
v1YGName: TcxGridDBColumn;
v1GZMoney: TcxGridDBColumn;
v1KQJMoney: TcxGridDBColumn;
v1KSBMoney: TcxGridDBColumn;
v1KOtherMoney: TcxGridDBColumn;
v1DXGZMoney: TcxGridDBColumn;
v1GLFLMoney: TcxGridDBColumn;
v1KGSMoney: TcxGridDBColumn;
v1KFKMeny: TcxGridDBColumn;
v1CJBGZMoney: TcxGridDBColumn;
v1KCDMoney: TcxGridDBColumn;
v1JKMoney: TcxGridDBColumn;
v1FFMoney: TcxGridDBColumn;
v1JLMoney: TcxGridDBColumn;
v1FKSYSTEM: TcxGridDBColumn;
v1FKType: TcxGridDBColumn;
v1XZNote: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Ssel: TcxGridDBColumn;
v1FFDate: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TSselClick(Sender: TObject);
procedure TUpdateClick(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure TCHkClick(Sender: TObject);
procedure TCXChkClick(Sender: TObject);
procedure YGNameChange(Sender: TObject);
procedure TTJClick(Sender: TObject);
procedure cxTabControl2Change(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure TCXTJClick(Sender: TObject);
private
FInt,PFInt:Integer;
canshu1,canshu2:string;
FNowDate:TDateTime;
procedure InitGrid();
procedure InitForm();
procedure setstatus();
{ Private declarations }
public
Ftype:string;
{ Public declarations }
end;
var
frmGRYearPFList_YGXZTJ: TfrmGRYearPFList_YGXZTJ;
implementation
uses
U_DataLink,U_RTFun,U_KDInPut,U_ModuleNote, U_ZDYHelp,U_GRYearPFList_Sub,
U_ZDYHelpSel,U_YGYPInPut_YGXZDJ;
{$R *.dfm}
procedure TfrmGRYearPFList_YGXZTJ.setstatus();
begin
TTJ.Visible:=False;
TCXTJ.Visible:=False;
Tupdate.Visible:=False;
TBDel.Visible:=False;
case cxTabControl1.TabIndex of
0:begin
TTJ.Visible:=True;
Tupdate.Visible:=True;
TBDel.Visible:=True;
end;
1:begin
TCXTJ.Visible:=True;
end;
2:begin
end;
end;
end;
procedure TfrmGRYearPFList_YGXZTJ.FormDestroy(Sender: TObject);
begin
frmGRYearPFList_YGXZTJ:=nil;
end;
procedure TfrmGRYearPFList_YGXZTJ.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmGRYearPFList_YGXZTJ.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid(<><D4B1><EFBFBD><EFBFBD><EFBFBD>ʵǼ<CAB5>12',Tv1,'<27>ֺ<EFBFBD><D6BA><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmGRYearPFList_YGXZTJ.InitGrid();
begin
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select A.*,B.* from OA_YG_XZFF_Main A ');
sql.add('inner join OA_YG_XZFF B on B.XZMain=A.XZMain ');
sql.add('where A.filltime>='''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+''' ');
sql.add('and A.filltime<'''+trim(formatdatetime('yyyy-MM-dd',Enddate.dateTime+1))+''' ');
if cxTabControl1.TabIndex=0 then
begin
sql.add('and isnull(B.ChkStatus,'''')=''<27><><EFBFBD>ύ'' ');
end;
if cxTabControl1.TabIndex=1 then
begin
sql.add('and B.ChkStatus<>''<27><><EFBFBD>ύ'' ');
end;
if cxtabControl2.TabIndex=0 then
begin
sql.add('and B.FKSYSTEM=''<27><><EFBFBD><EFBFBD>'' ');
end;
if cxtabControl2.TabIndex=1 then
begin
sql.add('and B.FKSYSTEM=''<27><><EFBFBD><EFBFBD>'' ');
end;
if cxtabControl2.TabIndex=2 then
begin
sql.add('and B.FKSYSTEM=''<27><><EFBFBD><EFBFBD>'' ');
end;
if cxtabControl2.TabIndex=3 then
begin
sql.add('and B.FKSYSTEM=''<27><><EFBFBD><EFBFBD>'' ');
end;
sql.add('Order By A.SSYear,A.SSMonth,B.XHNo');
open;
end;
SCreateCDS20(ADOQueryTemp,Order_Main);
SInitCDSData20(ADOQueryTemp,Order_Main);
end;
procedure TfrmGRYearPFList_YGXZTJ.InitForm();
begin
EndDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=SGetServerDate(ADOQueryTemp)-30;
ReadCxGrid(<><D4B1><EFBFBD><EFBFBD><EFBFBD>ʵǼ<CAB5>12',Tv1,'<27>ֺ<EFBFBD><D6BA><EFBFBD><EFBFBD><EFBFBD>');
setstatus();
InitGrid();
end;
procedure TfrmGRYearPFList_YGXZTJ.TBExportClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
TcxGridToExcel(<><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',cxGrid1);
end;
procedure TfrmGRYearPFList_YGXZTJ.TBRafreshClick(Sender: TObject);
begin
ToolBar1.SetFocus;
InitGrid();
end;
procedure TfrmGRYearPFList_YGXZTJ.FormShow(Sender: TObject);
var
i:Integer;
begin
InitForm();
end;
procedure TfrmGRYearPFList_YGXZTJ.ToolButton1Click(Sender: TObject);
begin
ToolBar1.SetFocus;
if ADOQueryTemp.Active=False then Exit;
SDofilter(ADOQueryTemp,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryTemp,Order_Main);
SInitCDSData20(ADOQueryTemp,Order_Main);
end;
procedure TfrmGRYearPFList_YGXZTJ.TBDelClick(Sender: TObject);
begin
ToolBar1.SetFocus;
if Order_Main.IsEmpty then exit;
if Order_Main.Locate('Ssel',true,[])=False then
begin
application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
if application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>','<27><>ʾ',1)=2 then exit;
with Order_Main do
begin
first;
while not eof do
begin
if fieldbyname('Ssel').AsBoolean=True then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from OA_YG_XZFF ');
sql.add('where XZID='''+trim(Order_Main.fieldbyname('XZID').AsString)+'''');
execsql;
end;
end;
next;
end;
end;
initGrid();
end;
procedure TfrmGRYearPFList_YGXZTJ.TBAddClick(Sender: TObject);
begin
ToolBar1.SetFocus;
frmYGYPInPut_YGXZDJ:=TfrmYGYPInPut_YGXZDJ.create(self);
with frmYGYPInPut_YGXZDJ do
begin
FXZMain:='';
FXZSubid:='';
if showmodal=1 then
begin
initGrid();
end;
free;
end;
end;
procedure TfrmGRYearPFList_YGXZTJ.TSselClick(Sender: TObject);
begin
if Order_Main.isempty then exit;
frmYGYPInPut_YGXZDJ:=TfrmYGYPInPut_YGXZDJ.create(self);
with frmYGYPInPut_YGXZDJ do
begin
ToolBar1.Enabled:=False;
Panel3.Enabled:=False;
toolbar2.Enabled:=False;
FXZMain:=trim(Order_Main.fieldbyname('XZMain').AsString);
if showmodal=1 then
begin
initGrid();
end;
free;
end;
end;
procedure TfrmGRYearPFList_YGXZTJ.TUpdateClick(Sender: TObject);
begin
ToolBar1.SetFocus;
if Order_Main.IsEmpty then exit;
frmYGYPInPut_YGXZDJ:=TfrmYGYPInPut_YGXZDJ.create(self);
with frmYGYPInPut_YGXZDJ do
begin
FXZMain:=trim(Order_Main.fieldbyname('XZMain').AsString);
FXZSubid:=trim(Order_Main.fieldbyname('XZID').AsString);
if showmodal=1 then
begin
initGrid();
end;
free;
end;
end;
procedure TfrmGRYearPFList_YGXZTJ.cxTabControl1Change(Sender: TObject);
begin
setstatus();
initGrid();
end;
procedure TfrmGRYearPFList_YGXZTJ.TCHkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
if Order_Main.Locate('Ssel',true,[])=False then
begin
application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
try
with Order_Main do
begin
first;
while not eof do
begin
if fieldbyname('Ssel').AsBoolean=True then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update OA_YG_XZFF set Chkstatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.add('where XZID='''+trim(Order_Main.fieldbyname('XZID').AsString)+'''');
execsql;
end;
end;
next;
end;
end;
initGrid();
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3>','<27><>ʾ');
except;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>','<27><>ʾ');
end;
end;
procedure TfrmGRYearPFList_YGXZTJ.TCXChkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
if Order_Main.Locate('Ssel',true,[])=False then
begin
application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
try
with Order_Main do
begin
first;
while not eof do
begin
if fieldbyname('Ssel').AsBoolean=True then
begin
if order_Main.fieldbyname('Chkstatus').asstring<>'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
application.MessageBox('<27><><EFBFBD>Ѹ<EFBFBD><D1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܳ<EFBFBD><DCB3><EFBFBD>','<27><>ʾ');
exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update OA_YG_XZFF set Chkstatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.add('where XZID='''+trim(Order_Main.fieldbyname('XZID').AsString)+'''');
execsql;
end;
end;
next;
end;
end;
initGrid();
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3>','<27><>ʾ');
except;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>','<27><>ʾ');
end;
end;
procedure TfrmGRYearPFList_YGXZTJ.YGNameChange(Sender: TObject);
begin
ToolButton1.Click;
end;
procedure TfrmGRYearPFList_YGXZTJ.TTJClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
{if Order_Main.Locate('Ssel',true,[])=False then
begin
application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;}
try
with Order_Main do
begin
first;
while not eof do
begin
if fieldbyname('Ssel').AsBoolean=True then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update OA_YG_XZFF set Chkstatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.add('where XZID='''+trim(Order_Main.fieldbyname('XZID').AsString)+'''');
execsql;
end;
end;
next;
end;
end;
initGrid();
application.MessageBox('<27><EFBFBD>ɹ<EFBFBD>','<27><>ʾ');
except;
application.MessageBox('<27>ύʧ<E1BDBB><CAA7>','<27><>ʾ');
end;
end;
procedure TfrmGRYearPFList_YGXZTJ.cxTabControl2Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmGRYearPFList_YGXZTJ.N2Click(Sender: TObject);
begin
SelOKNo(Order_Main,True);
end;
procedure TfrmGRYearPFList_YGXZTJ.N1Click(Sender: TObject);
begin
SelOKNo(Order_Main,False);
end;
procedure TfrmGRYearPFList_YGXZTJ.Tv1CellDblClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
TSsel.Click;
end;
procedure TfrmGRYearPFList_YGXZTJ.TCXTJClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
if Order_Main.Locate('Ssel',true,[])=False then
begin
application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
try
with Order_Main do
begin
first;
while not eof do
begin
if fieldbyname('Ssel').AsBoolean=True then
begin
if fieldbyname('Chkstatus').AsString<>'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2>ܳ<EFBFBD><DCB3><EFBFBD>','<27>ύ');
exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update OA_YG_XZFF set Chkstatus=''<27><><EFBFBD>ύ'' ');
sql.add('where XZID='''+trim(Order_Main.fieldbyname('XZID').AsString)+'''');
execsql;
end;
end;
next;
end;
end;
initGrid();
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>','<27><>ʾ');
except;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>','<27><>ʾ');
end;
end;
end.