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

496 lines
13 KiB
ObjectPascal
Raw Normal View History

2025-01-20 13:04:03 +08:00
unit U_YGYPZZChkList_GWSQ;
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_GWSQ = 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;
Panel1: TPanel;
TBLiZhi: TToolButton;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N1: TMenuItem;
TCXTJ: TToolButton;
BegDate: TDateTimePicker;
Label3: TLabel;
EndDate: TDateTimePicker;
cxTabControl1: TcxTabControl;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column7: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1SQStatus: 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;
v1SQDate: TcxGridDBColumn;
v1SQNote: TcxGridDBColumn;
TTiJiao: TToolButton;
TCXSQ: TToolButton;
TEdit: TToolButton;
v1SQGangWei: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
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 TBLiZhiClick(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 TCXSQClick(Sender: TObject);
procedure TTiJiaoClick(Sender: TObject);
procedure TEditClick(Sender: TObject);
private
canshu1:string;
DQdate:TDateTime;
procedure InitGrid();
procedure InitForm();
function DelData():Boolean;
procedure setstatus();
{ Private declarations }
public
FFInt,FCloth:Integer;
{ Public declarations }
end;
var
frmYGYPZZChkList_GWSQ: TfrmYGYPZZChkList_GWSQ;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp, U_YGYPInPut,U_YGYPInPut_GWSQ,
U_ZDYHelpSel;
{$R *.dfm}
procedure TfrmYGYPZZChkList_GWSQ.setstatus();
begin
TBLiZhi.Visible:=False;
TCXSQ.Visible:=False;
TTiJiao.Visible:=False;
TCXTJ.Visible:=False;
TEdit.Visible:=False;
case cxTabControl1.TabIndex of
0:begin
TBLiZhi.Visible:=True;
TCXSQ.Visible:=True;
TTiJiao.Visible:=True;
TEdit.Visible:=true;
end;
1:begin
TCXTJ.Visible:=true;
end;
2:begin
end;
end;
end;
procedure TfrmYGYPZZChkList_GWSQ.FormDestroy(Sender: TObject);
begin
frmYGYPZZChkList_GWSQ:=nil;
end;
procedure TfrmYGYPZZChkList_GWSQ.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYGYPZZChkList_GWSQ.FormCreate(Sender: TObject);
begin
canshu1:=Trim(DParameters1);
end;
procedure TfrmYGYPZZChkList_GWSQ.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid(<><D4B1>תְ<D7AA>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
end;
procedure TfrmYGYPZZChkList_GWSQ.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select A.* ');
sql.Add(' from OA_YG_DangAN_GWDD A ');
sql.Add(' where A.SQDate>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
sql.Add(' and A.SQDate<='''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
if cxTabControl1.TabIndex=0 then
begin
sql.Add(' and (A.SQStatus=''<27><><EFBFBD>ύ'' or A.SQStatus=''<27><>ͨ<EFBFBD><CDA8>'') ');
end else
if cxTabControl1.TabIndex=1 then
begin
sql.add(' and (isnull(A.SQStatus,'''')=''<27><><EFBFBD>ύ'' or isnull(A.SQStatus,'''')=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'')');
end;
if trim(DParameters1)<>'<27><>Ȩ<EFBFBD><C8A8>' then
begin
sql.add(' and A.YGName='''+trim(DName)+''' ');
end;
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('DDID').AsString)+''' ');
sql.Add('and isnull(OAType,'''')=''<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>''');
open;
end;
SCreateCDS20(ADOQueryCmd,Order_Sub);
SInitCDSData20(ADOQueryCmd,Order_Sub);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYGYPZZChkList_GWSQ.InitForm();
begin
EndDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=EndDate.Date-7;
ReadCxGrid(<><D4B1>תְ<D7AA>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
setstatus();
InitGrid();
end;
procedure TfrmYGYPZZChkList_GWSQ.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;
function TfrmYGYPZZChkList_GWSQ.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_GWSQ.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
TcxGridToExcel(<><D4B1>תְ<D7AA>б<EFBFBD>',cxGrid1);
end;
procedure TfrmYGYPZZChkList_GWSQ.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYGYPZZChkList_GWSQ.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmYGYPZZChkList_GWSQ.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYGYPZZChkList_GWSQ.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmYGYPZZChkList_GWSQ.TBViewClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
frmYGYPInPut_GWSQ:=TfrmYGYPInPut_GWSQ.create(self);
with frmYGYPInPut_GWSQ do
begin
FDDID:=trim(Order_Main.fieldbyname('DDID').asstring);
TBSave.Visible:=False;
if showModal=1 then
begin
end;
free;
end;
end;
procedure TfrmYGYPZZChkList_GWSQ.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_GWSQ.TBLiZhiClick(Sender: TObject);
begin
frmYGYPInPut_GWSQ:=TfrmYGYPInPut_GWSQ.create(self);
with frmYGYPInPut_GWSQ do
begin
FDDID:='';
if showModal=1 then
begin
end;
free;
end;
initGrid();
end;
procedure TfrmYGYPZZChkList_GWSQ.TCXTJClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
if cxTabControl1.TabIndex<>1 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_GWDD Set SQStatus=''<27><><EFBFBD>ύ'' ');
sql.Add(' where DDID='''+Order_Main.fieldbyname('DDID').AsString+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete from OA_Chk ');
sql.Add(' where Mainid='''+Order_Main.fieldbyname('DDID').AsString+'''');
sql.Add(' and isnull(OAType,'''')=''<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>'' ');
ExecSQL;
end;
initGrid();
ADOQueryCmd.Connection.CommitTrans;
Exit;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmYGYPZZChkList_GWSQ.cxTabControl1Change(Sender: TObject);
begin
setstatus();
InitGrid();
end;
procedure TfrmYGYPZZChkList_GWSQ.Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
TBView.Click;
end;
procedure TfrmYGYPZZChkList_GWSQ.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('DDID').AsString)+''' ');
sql.Add(' and isnull(OAType,'''')=''<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>'' ');
open;
end;
SCreateCDS20(ADOQueryCmd,Order_Sub);
SInitCDSData20(ADOQueryCmd,Order_Sub);
end;
procedure TfrmYGYPZZChkList_GWSQ.TCXSQClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
with ADOQueryCmd do
begin
close;
sql.clear;
sql.Add('delete from OA_YG_DangAN_GWDD ');
sql.add('where DDID='''+trim(Order_Main.fieldbyname('DDID').AsString)+'''');
execsql;
end;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>','<27><>ʾ');
initGrid();
end;
procedure TfrmYGYPZZChkList_GWSQ.TTiJiaoClick(Sender: TObject);
var maxno: string;
begin
if Order_Main.IsEmpty then exit;
frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag:='LZSPR';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><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><EFBFBD><EFBFBD>˶<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('DDID').AsString)+'''');
sql.Add(' and isnull(OAType,'''')=''<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>'' ');
sql.Add(' and isnull(Chker,'''')='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,maxno,'GW','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('DDID').AsString);
FieldByName('OAType').value:='<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>';
FieldByName('Chker').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
Post;
end;
end;
end;
Next;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('update OA_YG_DangAN_GWDD set SQStatus=''<27><><EFBFBD>ύ'' ');
sql.Add('where DDID='''+trim(Order_Main.fieldbyname('DDID').asstring)+''' ');
ExecSQL;
end;
Free;
end;
InitGrid();
end;
procedure TfrmYGYPZZChkList_GWSQ.TEditClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
frmYGYPInPut_GWSQ:=TfrmYGYPInPut_GWSQ.create(self);
with frmYGYPInPut_GWSQ do
begin
FDDID:=trim(Order_Main.fieldbyname('DDID').asstring);
if showModal=1 then
begin
end;
free;
end;
initGrid();
end;
end.