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

423 lines
11 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_SCHBSH;
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_SCHBSH = 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;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N1: TMenuItem;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
ADOQuery1: TADOQuery;
cxStyle2: TcxStyle;
ADOQuery2: TADOQuery;
Panel1: TPanel;
ODPat: TOpenDialog;
IdFTP1: TIdFTP;
SaveDialog1: TSaveDialog;
Label3: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
cxTabControl1: TcxTabControl;
TFB: TToolButton;
TCXFB: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1filltime: TcxGridDBColumn;
v1OrderNo: TcxGridDBColumn;
v1filler: TcxGridDBColumn;
v1GSBiaoTi: TcxGridDBColumn;
v1ZDNote: TcxGridDBColumn;
v1BZNote: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Ssel: TcxGridDBColumn;
Label4: TLabel;
orderNo: TEdit;
Label1: TLabel;
filler: TEdit;
Label5: TLabel;
GSBiaoTi: TEdit;
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 Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
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_SCHBSH: TfrmYGYPZZChkList_SCHBSH;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp, U_YGYPInPut,
U_ZDYHelpSel,U_YGYPInPut_YGFJDJ,U_YGYPInPut_SCHB;
{$R *.dfm}
procedure TfrmYGYPZZChkList_SCHBSH.setstatus();
begin
if cxtabcontrol1.TabIndex=0 then
begin
tfb.Visible:=true;
end
else
begin
tfb.Visible:=False;
end;
end;
procedure TfrmYGYPZZChkList_SCHBSH.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_SCHBSH.FormDestroy(Sender: TObject);
begin
frmYGYPZZChkList_SCHBSH:=nil;
end;
procedure TfrmYGYPZZChkList_SCHBSH.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYGYPZZChkList_SCHBSH.FormCreate(Sender: TObject);
begin
lstPat := TStringList.Create;
canshu1:=Trim(DParameters1);
end;
procedure TfrmYGYPZZChkList_SCHBSH.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><>˾<EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>Ϣ<EFBFBD>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
end;
procedure TfrmYGYPZZChkList_SCHBSH.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select * ');
sql.Add(' from OA_YG_SCHB A');
sql.add(' inner join OA_Chk B on B.Mainid=A.ZDID ');
sql.Add(' where B.Chker='''+trim(DName)+''' ');
if cxTabControl1.tabindex<>0 then
begin
sql.add(' and A.filltime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
sql.Add(' and A.filltime<='''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
end;
if cxTabControl1.TabIndex=0 then
begin
sql.Add(' and isnull(B.Chkstatus,'''')='''' ');
end else
if cxTabControl1.TabIndex=1 then
begin
sql.add(' and isnull(B.Chkstatus,'''')=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>''');
end;
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYGYPZZChkList_SCHBSH.InitForm();
begin
ReadCxGrid('<27><>˾<EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>Ϣ<EFBFBD>б<EFBFBD>',Tv1,'OA<4F><41><EFBFBD><EFBFBD>');
setstatus();
EndDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=EndDate.Date-7;
InitGrid();
end;
procedure TfrmYGYPZZChkList_SCHBSH.TBFindClick(Sender: TObject);
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
function TfrmYGYPZZChkList_SCHBSH.DelData():Boolean;
begin
end;
procedure TfrmYGYPZZChkList_SCHBSH.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
TcxGridToExcel('<27><>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6>б<EFBFBD>',cxGrid1);
end;
procedure TfrmYGYPZZChkList_SCHBSH.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYGYPZZChkList_SCHBSH.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmYGYPZZChkList_SCHBSH.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYGYPZZChkList_SCHBSH.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmYGYPZZChkList_SCHBSH.TBViewClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
frmYGYPInPut_SCHB:=TfrmYGYPInPut_SCHB.create(self);
with frmYGYPInPut_SCHB do
begin
ToolBar1.Visible:=False;
FCLID:=trim(Order_Main.fieldbyname('ZDID').AsString);
if showModal=1 then
begin
end;
free;
end;
end;
procedure TfrmYGYPZZChkList_SCHBSH.CustomerNoNameChange(Sender: TObject);
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmYGYPZZChkList_SCHBSH.Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
TBView.Click;
end;
procedure TfrmYGYPZZChkList_SCHBSH.N2Click(Sender: TObject);
begin
SelOKNo(Order_Main,True);
end;
procedure TfrmYGYPZZChkList_SCHBSH.N1Click(Sender: TObject);
begin
SelOKNo(Order_Main,False);
end;
procedure TfrmYGYPZZChkList_SCHBSH.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_SCHBSH.TFBClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
if cxtabControl1.TabIndex<>0 then exit;
toolbar1.SetFocus;
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 trim(Canshu1)='<27><>Ȩ<EFBFBD><C8A8>' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_Chk Set ');
sql.Add('ChkTime=getdate(),Chkstatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' ');
sql.Add('where Mainid='''+trim(Order_Main.fieldbyname('ZDID').AsString)+''' ');
sql.add('and OAType=''<27><EFBFBD><E3B1A8><EFBFBD><EFBFBD>''');
ExecSQL;
end;
end
else
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update OA_Chk Set ');
sql.Add(' ChkTime=getdate(),Chkstatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><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('ZDID').AsString)+''' ');
sql.add('and isnull(A.Chkstatus,'''')<>''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' ');
sql.add('and isnull(A.OAType,'''')=''<27><EFBFBD><E3B1A8><EFBFBD><EFBFBD>''');
open;
end;
if ADOQueryCmd.IsEmpty then
begin
with ADOQueryMain do
begin
close;
sql.Clear;
sql.add('update OA_YG_SCHB set ');
sql.add('FBStatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' ');
sql.Add(' where ZDID='''+trim(Order_Main.fieldbyname('ZDID').AsString)+'''');
execsql;
end;
end;
end;
next;
end;
end;
application.MessageBox('<27><EFBFBD><E9BFB4><EFBFBD><EFBFBD>','<27><>ʾ');
initGrid();
except;
application.MessageBox('<27>鿴ʧ<E9BFB4><CAA7>','<27><>ʾ');
exit;
end;
end;
procedure TfrmYGYPZZChkList_SCHBSH.TCXFBClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
toolbar1.SetFocus;
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_SCHB Set FBStatus=''<27><>ͨ<EFBFBD><CDA8>''');
sql.Add(' where ZDID='''+trim(Order_Main.fieldbyname('ZDID').AsString)+'''');
ExecSQL;
end;
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><E3B1A8><EFBFBD><EFBFBD>'' ');
ExecSQL;
end;
initGrid();
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmYGYPZZChkList_SCHBSH.cxTabControl1Change(Sender: TObject);
begin
setStatus();
inItGrid();
end;
end.