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

408 lines
11 KiB
ObjectPascal
Raw Normal View History

2025-01-20 13:04:03 +08:00
unit U_YGYPZZChkList_LiZhiSH;
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;
type
TfrmYGYPZZChkList_LiZhiSH = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Order_Main: TClientDataSet;
TBView: TToolButton;
Panel1: TPanel;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N1: TMenuItem;
TCXTJ: TToolButton;
BegDate: TDateTimePicker;
Label3: TLabel;
EndDate: TDateTimePicker;
cxTabControl1: TcxTabControl;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column7: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1LiZhiStatus: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
cxGrid2: TcxGrid;
TV2: TcxGridDBTableView;
V2Chker: TcxGridDBColumn;
V2Chktime: TcxGridDBColumn;
V2Chkstatus: TcxGridDBColumn;
V2chkNote: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
DataSource2: TDataSource;
order_Sub: TClientDataSet;
Label2: TLabel;
v1JHLiZhiDate: TcxGridDBColumn;
v1LiZhiTBDate: TcxGridDBColumn;
v1SJLiZhiDate: TcxGridDBColumn;
v1LiZhiNote: TcxGridDBColumn;
TTiJiao: TToolButton;
TNOTG: TToolButton;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBViewClick(Sender: TObject);
procedure CustomerNoNameChange(Sender: TObject);
procedure TCXTJClick(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure TTiJiaoClick(Sender: TObject);
procedure TNOTGClick(Sender: TObject);
private
canshu1:string;
DQdate:TDateTime;
procedure InitGrid();
procedure InitForm();
procedure setstatus();
{ Private declarations }
public
FFInt,FCloth:Integer;
{ Public declarations }
end;
var
frmYGYPZZChkList_LiZhiSH: TfrmYGYPZZChkList_LiZhiSH;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp, U_YGYPInPut,U_YGYPInPut_LiZhi;
{$R *.dfm}
procedure TfrmYGYPZZChkList_LiZhiSH.setstatus();
begin
TTiJiao.Visible:=False;
TCXTJ.Visible:=False;
TNOTG.Visible:=False;
case cxTabControl1.TabIndex of
0:begin
TTiJiao.Visible:=True;
TNOTG.Visible:=True;
end;
1:begin
TCXTJ.Visible:=true;
end;
2:begin
end;
end;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.FormDestroy(Sender: TObject);
begin
frmYGYPZZChkList_LiZhiSH:=nil;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.FormCreate(Sender: TObject);
begin
canshu1:=Trim(DParameters1);
end;
procedure TfrmYGYPZZChkList_LiZhiSH.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid(<><D4B1><EFBFBD><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
end;
procedure TfrmYGYPZZChkList_LiZhiSH.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select A.*,B.* ');
sql.Add(' from OA_YG_DangAn A ');
sql.add(' inner join OA_Chk B on B.Mainid=A.YGID and B.OAType=''<27><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>'' ');
if cxTabControl1.TabIndex<>0 then
begin
sql.Add(' where A.LiZhiTBDate>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
sql.Add(' and A.LiZhiTBDate<='''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
end;
if cxTabControl1.TabIndex=0 then
begin
sql.Add(' where isnull(B.Chkstatus,'''')='''' ');
end else
if cxTabControl1.TabIndex=1 then
begin
sql.Add(' and isnull(B.Chkstatus,'''')=''<27><>ְͨ<D6B0><CDA8>'' ');
end;
sql.add(' and B.Chker='''+trim(DName)+''' ');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
with ADOQueryCmd do
begin
close;
sql.clear;
sql.add('select A.* from OA_Chk A ');
sql.add('where A.Mainid='''+trim(Order_Main.fieldbyname('YGID').AsString)+''' ');
sql.Add('and isnull(OAType,'''')=''<27><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>''');
open;
end;
SCreateCDS20(ADOQueryCmd,Order_Sub);
SInitCDSData20(ADOQueryCmd,Order_Sub);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.InitForm();
begin
EndDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=EndDate.Date-7;
ReadCxGrid(<><D4B1><EFBFBD><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
setstatus();
InitGrid();
end;
procedure TfrmYGYPZZChkList_LiZhiSH.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmYGYPZZChkList_LiZhiSH.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYGYPZZChkList_LiZhiSH.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmYGYPZZChkList_LiZhiSH.TBViewClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
try
frmYGYPInPut_LiZhi:=TfrmYGYPInPut_LiZhi.create(self);
with frmYGYPInPut_LiZhi do
begin
Panel3.Enabled:=False;
ToolBar1.Enabled:=False;
FDName:=trim(Order_Main.fieldbyname('YGName').AsString);
if showModal=1 then
begin
end;
free;
end;
finally
frmYGYPInPut_LiZhi.Free;
end;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.CustomerNoNameChange(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmYGYPZZChkList_LiZhiSH.TCXTJClick(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;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_YG_DangAn Set LiZhiStatus=''<27><><EFBFBD>ύ'',LiZhiFlag=0,YGType=''<27><>ʽ'' ');
sql.Add(' where YGID='''+Order_Main.fieldbyname('YGID').AsString+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_Chk set ChkStatus='''' ');
sql.Add(' where CKID='''+Order_Main.fieldbyname('CKID').AsString+'''');
ExecSQL;
end;
initGrid();
ADOQueryCmd.Connection.CommitTrans;
Exit;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.cxTabControl1Change(Sender: TObject);
begin
setstatus();
InitGrid();
end;
procedure TfrmYGYPZZChkList_LiZhiSH.Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
TBView.Click;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
with ADOQueryCmd do
begin
close;
sql.clear;
sql.add('select A.* from OA_Chk A ');
sql.add('where A.Mainid='''+trim(Order_Main.fieldbyname('YGID').AsString)+''' ');
sql.Add(' and isnull(OAType,'''')=''<27><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>'' ');
open;
end;
SCreateCDS20(ADOQueryCmd,Order_Sub);
SInitCDSData20(ADOQueryCmd,Order_Sub);
end;
procedure TfrmYGYPZZChkList_LiZhiSH.TTiJiaoClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
try
if trim(DParameters1)='<27><>Ȩ<EFBFBD><C8A8>' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_Chk Set ');
sql.Add(' ChkTime=getdate(),Chkstatus=''<27><>ְͨ<D6B0><CDA8>'' ');
sql.Add(' where Mainid='''+trim(Order_Main.fieldbyname('Mainid').AsString)+''' ');
sql.add('and OAType=''<27><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>''');
ExecSQL;
end;
{with ADOQueryMain do
begin
Close;
SQL.Clear;
sql.Add('Update OA_Chk Set ');
sql.Add(' chkNote='''+trim(order_Sub.fieldbyname('chkNote').AsString)+''' ');
sql.Add(' where CKID='''+trim(Order_Main.fieldbyname('CKID').AsString)+''' ');
ExecSQL;
end; }
end
else
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_Chk Set ');
sql.Add(' ChkTime=getdate(),Chkstatus=''<27><>ְͨ<D6B0><CDA8>'' ');
sql.Add(' where CKID='''+trim(Order_Main.fieldbyname('CKID').AsString)+''' ');
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
close;
sql.clear;
sql.add('select A.* from OA_Chk A ');
sql.add('where A.Mainid='''+trim(Order_Main.fieldbyname('Mainid').AsString)+''' ');
sql.add('and isnull(A.Chkstatus,'''')<>''<27><>ְͨ<D6B0><CDA8>'' ');
sql.add('and isnull(A.OAType,'''')=''<27><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>''');
open;
end;
if ADOQueryCmd.IsEmpty then
begin
with ADOQueryMain do
begin
close;
sql.Clear;
sql.add('update OA_YG_DangAn set ');
sql.add('LiZhiStatus=''<27><>ְͨ<D6B0><CDA8>'' ');
sql.Add(' where YGID='''+trim(Order_Main.fieldbyname('YGID').AsString)+'''');
execsql;
end;
end;
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3>','<27><>ʾ');
initGrid();
except;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>','<27><>ʾ');
exit;
end;
end;
procedure TfrmYGYPZZChkList_LiZhiSH.TNOTGClick(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;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_YG_DangAn Set LiZhiStatus=''<27><>ͨ<EFBFBD><CDA8>'',LiZhiFlag=0 ');
sql.Add(' where YGID='''+Order_Main.fieldbyname('YGID').AsString+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete from OA_Chk ');
sql.Add(' where Mainid='''+Order_Main.fieldbyname('YGID').AsString+'''');
sql.Add(' and isnull(OAType,'''')=''<27><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>'' ');
ExecSQL;
end;
initGrid();
ADOQueryCmd.Connection.CommitTrans;
Exit;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
end.