214 lines
5.5 KiB
ObjectPascal
214 lines
5.5 KiB
ObjectPascal
unit U_MJEdit;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
|
||
cxEdit, DB, cxDBData, cxTextEdit, DBClient, ADODB, cxGridLevel,
|
||
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
|
||
cxControls, cxGridCustomView, cxGrid, StdCtrls, ExtCtrls, ComCtrls, ToolWin,
|
||
cxButtonEdit, cxTL, cxMaskEdit, cxInplaceContainer, cxDBTL, cxTLData;
|
||
|
||
type
|
||
TfrmMJEdit = class(TForm)
|
||
ToolBar1: TToolBar;
|
||
TBClose: TToolButton;
|
||
Panel1: TPanel;
|
||
ADOTmp: TADOQuery;
|
||
ADOQueryMain: TADOQuery;
|
||
ADOCmd: TADOQuery;
|
||
DS_Glide: TDataSource;
|
||
CDS_Glide: TClientDataSet;
|
||
Label2: TLabel;
|
||
cxGrid4: TcxGrid;
|
||
TV3: TcxGridDBTableView;
|
||
cxGridDBColumn1: TcxGridDBColumn;
|
||
cxGridDBColumn2: TcxGridDBColumn;
|
||
cxGridLevel3: TcxGridLevel;
|
||
Label13: TLabel;
|
||
Label5: TLabel;
|
||
UserID: TEdit;
|
||
UserName: TEdit;
|
||
ToolButton1: TToolButton;
|
||
cxDBTreeList1: TcxDBTreeList;
|
||
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
|
||
ADOQueryTree: TADOQuery;
|
||
CDS_Tree: TClientDataSet;
|
||
DataSource2: TDataSource;
|
||
ToolButton2: TToolButton;
|
||
ADOQueryTemp: TADOQuery;
|
||
ADOQueryCmd: TADOQuery;
|
||
V3Column1: TcxGridDBColumn;
|
||
V3Column2: TcxGridDBColumn;
|
||
cxStyleRepository1: TcxStyleRepository;
|
||
cxStyle1: TcxStyle;
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure ToolButton1Click(Sender: TObject);
|
||
procedure UserIDChange(Sender: TObject);
|
||
procedure TV3CellClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
procedure cxDBTreeList1DblClick(Sender: TObject);
|
||
procedure ToolButton2Click(Sender: TObject);
|
||
private
|
||
procedure InitData();
|
||
procedure InitTree();
|
||
procedure GLAge();
|
||
{ Private declarations }
|
||
public
|
||
FZDYNo:string;
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmMJEdit: TfrmMJEdit;
|
||
|
||
implementation
|
||
|
||
uses
|
||
U_Fun, U_ZDYHelp, U_DataLink;
|
||
|
||
{$R *.dfm}
|
||
procedure TfrmMJEdit.InitData();
|
||
begin
|
||
try
|
||
ADOQueryMain.DisableControls;
|
||
with ADOQueryMain do
|
||
begin
|
||
Filtered:=False;
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_View_YGList :DPID,:LiZhiFlag');
|
||
Parameters.ParamByName('DPID').Value:=Trim(CDS_Tree.fieldbyname('DPID').AsString);
|
||
Parameters.ParamByName('LiZhiFlag').Value:=0;
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryMain,CDS_Glide);
|
||
SInitCDSData20(ADOQueryMain,CDS_Glide);
|
||
finally
|
||
ADOQueryMain.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmMJEdit.FormClose(Sender: TObject; var Action: TCloseAction);
|
||
begin
|
||
Action := caFree;
|
||
end;
|
||
|
||
procedure TfrmMJEdit.FormDestroy(Sender: TObject);
|
||
begin
|
||
frmMJEdit := nil;
|
||
end;
|
||
|
||
procedure TfrmMJEdit.TBCloseClick(Sender: TObject);
|
||
begin
|
||
WriteCxGrid(Self.Caption, Tv3, '<27><>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
Close;
|
||
end;
|
||
|
||
procedure TfrmMJEdit.FormShow(Sender: TObject);
|
||
begin
|
||
ReadCxGrid(Self.Caption, Tv3, '<27><>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
InitTree();
|
||
GLAge();
|
||
// InitData();
|
||
end;
|
||
|
||
procedure TfrmMJEdit.InitTree();
|
||
|
||
begin
|
||
try
|
||
ADOQueryTree.DisableControls;
|
||
with ADOQueryTree do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select * from SY_Dept order by DPlevel,DPOrder,DPName');
|
||
// ShowMessage(SQL.Text);
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryTree,CDS_Tree);
|
||
SInitCDSData20(ADOQueryTree,CDS_Tree);
|
||
cxDBTreeList1.Items[0].Expand(True);
|
||
finally
|
||
ADOQueryTree.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmMJEdit.GLAge();
|
||
var FXTGLNF,FYGGLNF,FGLYF: Double;
|
||
begin
|
||
FXTGLNF:=strtofloat(uppercase(formatdateTime('yyyy',SGetServerDate(ADOQueryTemp))));
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select ZhuanZhengDate,YGYearGL from OA_YG_DangAn where YGType=''<27><>ʽ'' ');
|
||
//ShowMessage(SQL.Text);
|
||
open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
first;
|
||
while not eof do
|
||
begin
|
||
edit;
|
||
if ADOQueryCmd.fieldbyname('ZhuanZhengDate').asstring='' then
|
||
begin
|
||
fieldbyname('YGYearGL').AsFloat:=0;
|
||
end
|
||
else
|
||
begin
|
||
FYGGLNF:=strtofloat(uppercase(formatdateTime('yyyy',ADOQueryCmd.fieldbyname('ZhuanZhengDate').AsDateTime)));
|
||
FGLYF:=strtofloat(uppercase(formatdateTime('MM',ADOQueryCmd.fieldbyname('ZhuanZhengDate').AsDateTime)));
|
||
if (FGLYF>=1) and (FGLYF<=3) then
|
||
fieldbyname('YGYearGL').AsFloat:=FXTGLNF-FYGGLNF+1;
|
||
if (FGLYF>3) and (FGLYF<=9) then
|
||
fieldbyname('YGYearGL').AsFloat:=FXTGLNF-FYGGLNF+0.5;
|
||
if (FGLYF>9) and (FGLYF<=12) then
|
||
fieldbyname('YGYearGL').AsFloat:=FXTGLNF-FYGGLNF;
|
||
end;
|
||
next;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmMJEdit.ToolButton1Click(Sender: TObject);
|
||
begin
|
||
ModalResult := 1;
|
||
end;
|
||
|
||
procedure TfrmMJEdit.UserIDChange(Sender: TObject);
|
||
begin
|
||
if ADOQueryMain.Active = False then
|
||
Exit;
|
||
SDofilter(ADOQuerymain, SGetFilters(Panel1, 1, 2));
|
||
SCreateCDS20(ADOQuerymain, CDS_Glide);
|
||
SInitCDSData20(ADOQuerymain, CDS_Glide);
|
||
end;
|
||
|
||
procedure TfrmMJEdit.TV3CellClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
begin
|
||
if CDS_Glide.IsEmpty then Exit;
|
||
CDS_Tree.Locate('DPID',Trim(CDS_Glide.fieldbyname('DPID').AsString),[]);
|
||
end;
|
||
|
||
procedure TfrmMJEdit.cxDBTreeList1DblClick(Sender: TObject);
|
||
begin
|
||
InitData();
|
||
end;
|
||
|
||
procedure TfrmMJEdit.ToolButton2Click(Sender: TObject);
|
||
begin
|
||
InitData();
|
||
end;
|
||
|
||
end.
|
||
|