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

934 lines
25 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_WorkDeptFeeListDJ;
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,jpeg, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdFTP;
type
TfrmWorkDeptFeeListLKDJ = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBAdd: TToolButton;
TBEdit: TToolButton;
TBDel: 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;
ToolButton3: TToolButton;
cxGridPopupMenu2: TcxGridPopupMenu;
cxTabControl1: TcxTabControl;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column5: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column3: TcxGridDBColumn;
Panel1: TPanel;
Label1: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
v1WFDate: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
Worker: TEdit;
Label6: TLabel;
v1Column17: TcxGridDBColumn;
ToolButton1: TToolButton;
Label3: TLabel;
WFNO: TEdit;
Label4: TLabel;
WFType: TEdit;
ToolButton2: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
v1Column8: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N1: TMenuItem;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
cxSplitter1: TcxSplitter;
CDS_Chker: TClientDataSet;
CDS_Chk: TClientDataSet;
DS_Chk: TDataSource;
v1ItemName: TcxGridDBColumn;
Label5: TLabel;
ItemName: TEdit;
Label7: TLabel;
Person4: TEdit;
Label8: TLabel;
Person5: TEdit;
Label2: TLabel;
v1HZMoney: TcxGridDBColumn;
TPrint: TToolButton;
IdFTP1: TIdFTP;
ODPat: TOpenDialog;
SaveDialog1: TSaveDialog;
TEditSQ: TToolButton;
Label9: TLabel;
EditNote: TMemo;
v1EditSQTime: TcxGridDBColumn;
v1EditNote: TcxGridDBColumn;
v1BZUnit: TcxGridDBColumn;
v1WFNO: TcxGridDBColumn;
v1WFType: TcxGridDBColumn;
v1ZhaiYao: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cxPageControl1Change(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure WorkerChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure v1Column8PropertiesEditValueChanged(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
procedure TPrintClick(Sender: TObject);
procedure TEditSQClick(Sender: TObject);
private
FInt,PFInt:Integer;
canshu1,canshu2:string;
procedure InitGrid();
procedure InitForm();
function DelData():Boolean;
procedure InitGridWsql(fsj:string);
function SaveData():Boolean;
procedure InitImage();
{ Private declarations }
public
{ Public declarations }
end;
var
frmWorkDeptFeeListLKDJ: TfrmWorkDeptFeeListLKDJ;
implementation
uses
U_DataLink,U_RTFun,U_ModuleNote,U_WorkerDeptFeeInPutDJ, U_ZDYHelpSel,
U_ZDYHelp,U_FileUp_PZ;
{$R *.dfm}
procedure TfrmWorkDeptFeeListLKDJ.InitImage();
begin
end;
procedure TfrmWorkDeptFeeListLKDJ.FormDestroy(Sender: TObject);
begin
frmWorkDeptFeeListLKDJ:=nil;
end;
procedure TfrmWorkDeptFeeListLKDJ.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmWorkDeptFeeListLKDJ.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD>б<EFBFBD>1',Tv1,'<27><><EFBFBD>ù<EFBFBD><C3B9><EFBFBD>');
end;
procedure TfrmWorkDeptFeeListLKDJ.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add(' select A.*, ');
sql.Add(' BZUnit=(select Top 1 B.PriceUnit from Worker_Fee_LKSub B where B.WFID=A.WFID), ');
sql.add(' ZhaiYao=(select Top 1 B.ZhaiYao from Worker_Fee_LKSub B where B.WFID=A.WFID)');
SQL.Add(' from Worker_Fee_LKMain A ');
sql.Add(' where ItemName<>''<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD>''');
if cxTabControl1.TabIndex<>0 then
begin
sql.add(' and A.WFDate>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.Date))+'''');
sql.Add(' and A.WFDate<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.Date+1))+'''');
end;
if cxTabControl1.TabIndex=0 then
begin
sql.Add(' and (isnull(A.HZStatus,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' or isnull(A.HZStatus,'''')=''<27><><EFBFBD>˲<EFBFBD>ͨ<EFBFBD><CDA8>'') ');
end;
if cxTabControl1.TabIndex=1 then
begin
sql.Add(' and isnull(A.HZStatus,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and isnull(A.HZStatus,'''')<>''<27><><EFBFBD>˲<EFBFBD>ͨ<EFBFBD><CDA8>'' and isnull(A.ZuoFeiFlag,'''')<>''1'' ');
end;
if cxTabControl1.TabIndex=2 then
begin
sql.add(' and isnull(A.ZuoFeiFlag,'''')=''1''');
end;
if Trim(canshu1)<>'<27><>Ȩ<EFBFBD><C8A8>' then
begin
sql.Add(' and isnull(A.FillCode,'''')='''+Trim(DCode)+'''');
end;
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from OA_Chk where 1=2');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Chk);
SInitCDSData20(ADOQueryTemp,CDS_Chk);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.InitForm();
begin
endDate.Date:=SGetServerDate(ADOQueryTemp);
BegDate.Date:=EndDate.Date-7;
cxTabControl1.TabIndex:=0;
InitGrid();
end;
procedure TfrmWorkDeptFeeListLKDJ.TBEditClick(Sender: TObject);
begin
if cxTabControl1.TabIndex<>0 then Exit;
if Order_Main.IsEmpty then Exit;
if Trim(DCode)<>Trim(Order_Main.fieldbyname('FillCode').AsString) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Ϣ!','<27><>ʾ',0);
Exit;
end;
try
frmWorkerDeptFeeInPutDJ:=TfrmWorkerDeptFeeInPutDJ.Create(Application);
with frmWorkerDeptFeeInPutDJ do
begin
PState:=1;
FMainId:=Trim(Self.Order_Main.fieldbyname('WFID').AsString);
if ShowModal=1 then
begin
initGrid();
end;
end;
finally
frmWorkerDeptFeeInPutDJ.Free;
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.TBDelClick(Sender: TObject);
begin
if cxTabControl1.TabIndex<>0 then Exit;
if Order_Main.IsEmpty then Exit;
if Trim(DCode)<>Trim(Order_Main.fieldbyname('FillCode').AsString) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Ϣ!','<27><>ʾ',0);
Exit;
end;
if Order_Main.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
if DelData() then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from OA_Chk where 1=2');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Chk);
SInitCDSData20(ADOQueryTemp,CDS_Chk);
end;
end;
function TfrmWorkDeptFeeListLKDJ.DelData():Boolean;
begin
try
Result:=false;
ADOQueryCmd.Connection.BeginTrans;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while Locate('SSel',True,[]) do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Worker_Fee_LKMain where WFId='''+Trim(Order_Main.fieldbyname('WFId').AsString)+'''');
sql.Add('delete Worker_Fee_LKSub where WFId='''+Trim(Order_Main.fieldbyname('WFId').AsString)+'''');
ExecSQL;
end;
Delete;
end;
end;
Order_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
Order_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Result:=False;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.TBExportClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
TcxGridToExcel('<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD>',cxGrid1);
end;
procedure TfrmWorkDeptFeeListLKDJ.TBRafreshClick(Sender: TObject);
begin
ToolBar1.SetFocus;
InitGrid();
label2.Caption:='0';
end;
procedure TfrmWorkDeptFeeListLKDJ.TBAddClick(Sender: TObject);
begin
try
frmWorkerDeptFeeInPutDJ:=TfrmWorkerDeptFeeInPutDJ.Create(Application);
with frmWorkerDeptFeeInPutDJ do
begin
PState:=0;
FMainId:='';
if ShowModal=1 then
begin
initGrid();
end;
end;
finally
frmWorkerDeptFeeInPutDJ.Free;
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD>б<EFBFBD>1',Tv1,'<27><><EFBFBD>ù<EFBFBD><C3B9><EFBFBD>');
InitForm();
end;
procedure TfrmWorkDeptFeeListLKDJ.cxPageControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmWorkDeptFeeListLKDJ.ToolButton3Click(Sender: TObject);
begin
try
frmModuleNote:=TfrmModuleNote.Create(Application);
with frmModuleNote do
begin
flag:='<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
end;
end;
finally
frmModuleNote.Free;
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.FormCreate(Sender: TObject);
begin
canshu1:=Trim(DParameters1);
canshu2:=Trim(DParameters2);
end;
procedure TfrmWorkDeptFeeListLKDJ.InitGridWsql(fsj:string);
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select A.*,FS.*,HJMoney=FS.YunFee+FS.MaTouFee+FS.YangBanFee+FS.OtherFee ');
SQL.Add(' from JYOrderKP_Fee A inner join JYOrderKP_Fee_Sub FS on A.FMID=FS.FMID');
sql.Add(' where 1=1');
if Trim(canshu1)<>'<27><>Ȩ<EFBFBD><C8A8>' then
begin
sql.Add(' and A.Filler='''+Trim(DName)+'''');
end;
sql.Add(fsj);
sql.Add(' order by A.FPNo');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
function TfrmWorkDeptFeeListLKDJ.SaveData():Boolean;
var
maxno,maxSubNo:String;
begin
try
Result:=False;
ADOQueryCmd.Connection.BeginTrans;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if Trim(Order_Main.fieldbyname('MRID').AsString)='' then
begin
if GetLSNo(ADOQueryCmd,maxno,'MR','Module_Prompt_Result',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
end else
begin
maxno:=Trim(Order_Main.fieldbyname('MRID').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from Module_Prompt_Result where MRId='''+Trim(Order_Main.fieldbyname('MRID').AsString)+'''');
Open;
end;
with ADOQueryCmd do
begin
if Trim(Order_Main.fieldbyname('MRID').AsString)='' then
begin
Append;
end
else begin
Edit;
end;
FieldByName('MPId').Value:=Trim(Order_Main.fieldbyname('MPId').AsString);
FieldByName('MRId').Value:=Trim(maxno);
FieldByName('MRStatus').Value:='<27>Ѵ<EFBFBD><D1B4><EFBFBD>';
FieldByName('MRDate').Value:=SGetServerDateTime(ADOQueryTemp);
if Trim(Order_Main.fieldbyname('MRId').AsString)='' then
begin
FieldByName('Filler').Value:=Trim(DName);
end else
begin
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp);
end;
Post;
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmWorkDeptFeeListLKDJ.WorkerChange(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 TfrmWorkDeptFeeListLKDJ.ToolButton1Click(Sender: TObject);
begin
try
frmWorkerDeptFeeInPutDJ:=TfrmWorkerDeptFeeInPutDJ.Create(Application);
with frmWorkerDeptFeeInPutDJ do
begin
PState:=1;
FMainId:=Trim(Self.Order_Main.fieldbyname('WFID').AsString);
TBSave.Visible:=False;
ToolBar2.Visible:=False;
if ShowModal=1 then
begin
initGrid();
end;
end;
finally
frmWorkerDeptFeeInPutDJ.Free;
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
ToolBar1.SetFocus;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmWorkDeptFeeListLKDJ.ToolButton4Click(Sender: TObject);
var
maxno,FCKID:string;
FCount:Integer;
begin
if Order_Main.IsEmpty then Exit;
ToolBar1.SetFocus;
if cxTabControl1.TabIndex<>0 then Exit;
if Order_Main.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Chker=Cast('''' as varchar(20))');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Chker);
SInitCDSData20(ADOQueryTemp,CDS_Chker);
while CDS_Chker.IsEmpty=False do
begin
CDS_Chker.Delete;
end;
try
frmZDYHelpSel:=TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag:='OAChker';
flagname:='OA<4F><41><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
CDS_Chker.Append;
CDS_Chker.FieldByName('Chker').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
CDS_Chker.Post;
end;
Next;
end;
end;
if CDS_Chker.IsEmpty then FCount:=9
end;
end;
finally
frmZDYHelpSel.Free;
end;
if FCount=9 then
begin
if CDS_Chker.IsEmpty then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
end;
if CDS_Chker.IsEmpty then Exit;
CDS_Chker.DisableControls;
with CDS_Chker do
begin
First;
while not eof do
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from SY_User where UserName='''+Trim(CDS_Chker.fieldbyname('Chker').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
CDS_Chker.EnableControls;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
Next;
end;
end;
CDS_Chker.EnableControls;
if Application.MessageBox(<><C8B7>Ҫִ<D2AA>д˲<D0B4><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while Order_Main.Locate('SSel',True,[]) do
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update Worker_Fee_LKMain Set ');
sql.Add(' HZStatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'',HZStatusTime=getdate()');
sql.Add(' where WFID='''+Order_Main.fieldbyname('WFID').AsString+'''');
ExecSQL;
end;
with CDS_Chker do
begin
CDS_Chker.First;
while not CDS_Chker.Eof do
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from OA_Chk where MainId='''+Trim(Order_Main.fieldbyname('WFID').AsString)+'''');
sql.Add(' and isnull(OAType,'''')=''<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>'' ');
sql.Add(' and isnull(Chker,'''')='''+Trim(CDS_Chker.fieldbyname('Chker').AsString)+'''');
Open;
end;
FCKID:=Trim(ADOQueryTemp.fieldbyname('CKID').AsString);
if Trim(FCKID)='' then
begin
if GetLSNo(ADOQueryCmd,maxno,'CK','OA_Chk',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
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;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('CKID').Value:=Trim(maxno);
FieldByName('MainID').Value:=Trim(Order_Main.fieldbyname('WFID').AsString);
FieldByName('OAType').Value:='<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>';
FieldByName('Chker').Value:=Trim(CDS_Chker.fieldbyname('Chker').AsString);
Post;
end;
end;
CDS_Chker.Next;
end;
end;
Order_Main.Delete;
end;
end;
Order_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Label2.Caption:='0';
Exit;
except
Order_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.N2Click(Sender: TObject);
begin
SelOKNo(Order_Main,True);
end;
procedure TfrmWorkDeptFeeListLKDJ.N1Click(Sender: TObject);
begin
SelOKNo(Order_Main,False);
end;
procedure TfrmWorkDeptFeeListLKDJ.ToolButton5Click(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
toolBar1.SetFocus;
if cxTabControl1.TabIndex<>1 then exit;
if Order_Main.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while not Eof do
begin
if Order_Main.FieldByName('SSel').AsBoolean=True then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select * from Worker_Fee_LKMain where WFID='''+Trim(Order_Main.fieldbyname('WFID').AsString)+'''');
sql.Add(' and isnull(HZStatus,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
Order_Main.EnableControls;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
end;
Next;
end;
end;
Order_Main.EnableControls;
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;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while Order_Main.Locate('SSel',True,[]) do
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update Worker_Fee_LKMain Set ');
sql.Add(' HZStatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'',HZStatusTime=NUll');
sql.Add(' where WFID='''+Order_Main.fieldbyname('WFID').AsString+'''');
sql.Add(' delete OA_Chk where MainId='''+Trim(Order_Main.fieldbyname('WFID').AsString)+'''');
sql.Add(' and isnull(OAType,'''')=''<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>'' ');
ExecSQL;
end;
Order_Main.Delete;
end;
end;
Order_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from OA_Chk where 1=2');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Chk);
SInitCDSData20(ADOQueryTemp,CDS_Chk);
Label2.Caption:='0';
Exit;
except
Order_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from OA_Chk where MainId='''+Trim(Order_Main.fieldbyname('WFId').AsString)+'''');
sql.Add(' and OAType=''<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Chk);
SInitCDSData20(ADOQueryTemp,CDS_Chk);
EditNote.Text:=trim(Order_Main.fieldbyname('EditNote').AsString);
end;
procedure TfrmWorkDeptFeeListLKDJ.v1Column8PropertiesEditValueChanged(
Sender: TObject);
var FMoney,FWFID: string;
begin
FMoney:='0';
FWFID:=Trim(Order_Main.fieldbyname('WFID').AsString);
with Order_Main do
begin
first;
DisableControls;
while not eof do
begin
if FieldByName('Ssel').AsBoolean=True then
begin
FMoney:=floattoStr(strtofloat(FMoney)+FieldByName('HZMoney').AsFloat);
end;
next;
end;
EnableControls;
end;
order_main.Locate('WFID',FWFID,[]);
label2.Caption:=FMoney;
end;
procedure TfrmWorkDeptFeeListLKDJ.Tv1DblClick(Sender: TObject);
begin
ToolButton1.Click;
end;
procedure TfrmWorkDeptFeeListLKDJ.TPrintClick(Sender: TObject);
var FPrintFile,FYCLName,FpriceUnit,FZhaiYao: string;
begin
if Order_Main.IsEmpty then exit;
FYCLName:='';
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add(' select A.* ');
SQL.Add(' from Worker_Fee_LKMain A ');
sql.add(' where WFID='''+trim(Order_Main.fieldbyname('WFID').asstring)+''' ');
open;
end;
SCreateCDS20(ADOQueryCmd,CDS_PRT);
SInitCDSData20(ADOQueryCmd,CDS_PRT);
With ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add(' select A.* ');
SQL.Add(' from Worker_Fee_LKSub A ');
sql.add(' where WFID='''+trim(Order_Main.fieldbyname('WFID').asstring)+''' ');
open;
end;
with ADOQueryTemp do
begin
first;
while not eof do
begin
if trim(FYCLName)='' then
FYCLName:=trim(fieldbyname('YCLName').AsString)
else
FYCLName:=FYCLName+','+trim(fieldbyname('YCLName').AsString);
next;
end;
FpriceUnit:=trim(fieldbyname('priceUnit').AsString);
FZhaiYao:=trim(fieldbyname('ZhaiYao').AsString);
end;
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD>.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['YCLName']:=trim(FYCLName);
RMVariables['priceUnit']:=trim(FpriceUnit);
RMVariables['ZhaiYao']:=trim(FZhaiYao);
RM1.LoadFromFile(fPrintFile);
RM1.PreviewButtons:=[pbZoom, pbFind, pbPageSetup,pbExit];
RM1.ShowReport;
end else
begin
Application.MessageBox(<><C3BB><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',0);
exit;
end;
end;
procedure TfrmWorkDeptFeeListLKDJ.TEditSQClick(Sender: TObject);
begin
if Order_Main.IsEmpty then exit;
if cxTabControl1.TabIndex=0 then exit;
if EditNote.Text='' then
begin
application.MessageBox('<27>޸<EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>','<27><>ʾ');
exit;
end;
frmZDYHelpSel:=TfrmZDYHelpSel.Create(self);
with frmZDYHelpSel do
begin
flag:='OAChker';
flagname:='OA<4F><41><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
if CDS_Chk.Locate('Chker',Trim(fieldbyname('ZdyName').AsString),[])=False then
begin
application.MessageBox(<>и<EFBFBD><D0B8><EFBFBD><EFBFBD><EFBFBD><EBB5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ');
exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('Update OA_Chk Set ChkStatus=''<27><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>'',chknote='''',ChkTime=getdate()');
sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('WFID').AsString)+'''');
sql.Add(' and Chker='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
sql.Add(' and isnull(OAType,'''')=''<27><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>'' ');
ExecSQL;
end;
end;
next;
end;
end;
end;
free;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update Worker_Fee_LKMain Set EditNote='''+Trim(EditNote.Text)+'''');
sql.Add(',HZStatus=''<27><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>'',EditFlag=''1'',EditSQTime=getDate()');
sql.Add(' where WFID='''+Trim(Order_Main.fieldbyname('WFID').AsString)+'''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
fieldbyname('HZStatus').Value:='<27><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>';
FieldByName('EditNote').Value:=Trim(EditNote.Text);
fieldbyname('EditSQTime').Value:=SGetServerDate10(ADOQueryTemp);
FieldByName('EditFlag').Value:='1';
Post;
end;
EditNote.Text:='';
end;
end.