📄 yk.pas
字号:
unit Yk;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,PREFS,DBMAIN,
StdCtrls, ComCtrls, ExtCtrls, ImgList, ToolWin, ADODB, Db, Grids, DBGrids,
Mask, DBCtrls, Buttons,je,frmcheck,wpfuncs,registry,vafuncs, Menus;
type
TfrmYK = class(TForm)
CoolBar1: TCoolBar;
ToolBar1: TToolBar;
tbclose: TToolButton;
tbQ: TToolButton;
ImageList2: TImageList;
ImgMenu: TImageList;
Panel1: TPanel;
Splitter1: TSplitter;
GroupBox1: TGroupBox;
PageControl1: TPageControl;
tsw: TTabSheet;
tsy: TTabSheet;
Label1: TLabel;
Panel2: TPanel;
Image1: TImage;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
tbref: TToolButton;
tbNew: TToolButton;
tbBM: TToolButton;
tbCW: TToolButton;
tbFZ: TToolButton;
tbZ: TToolButton;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
lv: TListView;
lvy: TListView;
PageControl2: TPageControl;
tsrp: TTabSheet;
tssp: TTabSheet;
g0: TGroupBox;
Label2: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
LB: TLabel;
Bevel1: TBevel;
Bevel2: TBevel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label4: TLabel;
Bevel3: TBevel;
Label8: TLabel;
GroupBox3: TGroupBox;
lvhw: TListView;
edNo: TEdit;
CBTO: TComboBox;
CBFROM: TComboBox;
dtrq: TDateTimePicker;
eJe: TEdit;
mDW: TMemo;
GroupBox4: TGroupBox;
mly: TMemo;
dtyyrq: TDateTimePicker;
Label13: TLabel;
edSqr: TEdit;
Label15: TLabel;
Label16: TLabel;
g5: TPanel;
Label9: TLabel;
GroupBox6: TGroupBox;
mzwpz: TMemo;
edCW: TEdit;
tbcwty: TButton;
g7: TPanel;
g6: TPanel;
edFZ: TEdit;
Label14: TLabel;
tbfzty: TButton;
edzjl: TEdit;
Label17: TLabel;
tbZjlty: TButton;
Label18: TLabel;
Label19: TLabel;
btCreaterp: TButton;
bDeleteRp: TBitBtn;
g4: TPanel;
Label20: TLabel;
edbmjl: TEdit;
tbBmty: TButton;
tnav: TToolBar;
ToolButton3: TToolButton;
btins: TToolButton;
ToolButton6: TToolButton;
btDelete: TToolButton;
ToolButton10: TToolButton;
btUpdate: TToolButton;
Label22: TLabel;
Label21: TLabel;
edBM: TComboBox;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
procedure FormShow(Sender: TObject);
procedure tbcloseClick(Sender: TObject);
procedure tbBMClick(Sender: TObject);
procedure tbCWClick(Sender: TObject);
procedure tbFZClick(Sender: TObject);
procedure tbZClick(Sender: TObject);
procedure tbNewClick(Sender: TObject);
procedure tbBmtyClick(Sender: TObject);
procedure btinsClick(Sender: TObject);
procedure btDeleteClick(Sender: TObject);
procedure btUpdateClick(Sender: TObject);
procedure btCreaterpClick(Sender: TObject);
procedure bDeleteRpClick(Sender: TObject);
procedure lvClick(Sender: TObject);
procedure tbcwtyClick(Sender: TObject);
procedure tbfztyClick(Sender: TObject);
procedure tbZjltyClick(Sender: TObject);
procedure tbrefClick(Sender: TObject);
procedure edBMChange(Sender: TObject);
procedure lvyClick(Sender: TObject);
procedure N1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
function ShowModal: Integer; reintroduce; overload;
function Checkrs:boolean;
procedure Initrep(flag:integer);
procedure Enaball;
procedure Disrp;
procedure Disbmsp;
procedure DisCWsp;
procedure DisFzsp;
procedure DisZjlsp;
procedure ClearRp;
function get_spr(flag:integer):string;
function get_je:string;
end;
implementation
{$R *.DFM}
function TfrmYK.ShowModal: Integer;
begin
// Continue with standard
Result:=inherited ShowModal;
end;
procedure TfrmYK.FormShow(Sender: TObject);
var sqlstr,sql1:string;
uid,gid:string;
rows:variant;
str:TStrings;
bm:string;
BEGIN
Loadsettings;
PageControl1.ActivePage:=tsW;
PageControl2.ActivePage:=tsrp;
sqlstr:=' where C_USER_NAME='+''''+sup.PS_Username+'''';
sql1:=' where C_GRP_ZG='+''''+sup.PS_Username+'''';
uid:=sup.PS_valStrToStr('CSI_SECU_USER','C_USER_NAME','C_USER_ID',sup.PS_Username);
gid:=sup.PS_valStrToStr('CSI_SECU_USER_GRP','C_USER_ID','C_GRP_ID',uid);
bm:=sup.PS_valStrToStr('CSI_SECU_GRP','C_GRP_ID','C_GRP_NAME',gid);
rows:=sup.PS_Get_groups('');
str:=Get_ColRecords(rows,2);
edBM.Items:=str;
edBm.Items.Add('所有部门');
cbto.Items:=str;
cbfrom.Items:=str;
//cbfrom.Text:=cbfrom.I bm;
cbfrom.itemindex:=cbfrom.items.indexof(bm);
edbm.itemindex:=edbm.items.indexof('所有部门');
Disrp;
DisCWsp;
DisFzsp;
DisZjlsp;
//
if sup.PB_GetValFromTab('CSI_SECU_USER','C_USER_ZW',sqlstr)='财务经理' then begin
tbcw.Enabled:=true;
end;
if sup.PB_GetValFromTab('CSI_SECU_USER','C_USER_ZW',sqlstr)='副总经理' then begin
tbFZ.Enabled:=true;
end;
if sup.PB_GetValFromTab('CSI_SECU_USER','C_USER_ZW',sqlstr)='总经理' then begin
tbZ.Enabled:=true;
end;
rows:=sup.PS_Get_rp('where c_status<>'+''''+'Z'+'''');
ListViewAddRows(rows,lv);
rows:=sup.PS_Get_rp('where c_status='+''''+'Z'+'''');
ListViewAddRows(rows,lvy);
if sup.PS_Is_Admin then begin
N1.Enabled:=true;
end;
end;
procedure TfrmYK.tbcloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmYK.tbBMClick(Sender: TObject);
var sql1:string;
bm:string;
begin
sql1:=' where C_GRP_ZG='+''''+sup.PS_Username+'''';
if sup.PB_GetValFromTab('CSI_SECU_GRP','C_GRP_ZG',sql1)=sup.PS_Username then begin
tbBM.Enabled:=true;
bm:=sup.PB_GetValFromTab('CSI_SECU_GRP','C_GRP_NAME',sql1);
edbm.itemindex:=edbm.items.indexof(bm);
//edbm.text
end else begin
if MessageDlg('对不起,没有在系统中设置您为部门主管或您不是部门主管. 继续操作吗?',
mtConfirmation, [mbYes, mbNo], 0) = mrNo then Exit;
end;
if not Checkrs then exit;
tssp.TabVisible:=true;
tsrp.TabVisible:=true;
PageControl2.ActivePage:=tssp;
Enaball;
Disrp;
DisCWsp;
DisFzsp;
DisZjlsp;
end;
// 0 -部门主管 1 -财务经理 2 -副总经理 3 -总经理
procedure TfrmYK.Initrep(flag:integer);
begin
if flag=0 then begin
end else if flag=1 then begin
end else if flag=2 then begin
end else if flag=3 then begin
end else exit;
end;
function TfrmYK.Checkrs:boolean;
begin
result:=true;
if not sup.PS_CheckUserRights(sup.PS_Username,'用款申请审批权限') then begin
showmessage('对不起,您没有审批权,请让系统管理员赋予权限.');
Result:=false;
exit;
end;
if edno.text='' then begin
showmessage('对不起,请选择一个报告.');
Result:=false;
exit;
end;
if not sup.PS_CheckExistStrVar('csi_report','c_id',edno.Text) then begin
showmessage('对不起,这个报告没有建立好,不能审批.');
Result:=false;
exit;
end;
if sup.PS_CheckExists2Val('csi_report','c_id','c_status','',edno.text,'Z','') then begin
showmessage('对不起,这个报告已经审批过了,不能再审批.');
Result:=false;
exit;
end;
end;
procedure TfrmYK.tbCWClick(Sender: TObject);
begin
if not CheckRs then exit;
tssp.TabVisible:=true;
tsrp.TabVisible:=true;
PageControl2.ActivePage:=tssp;
Enaball;
Disrp;
Disbmsp;
DisFzsp;
DisZjlsp;
end;
procedure TfrmYK.tbFZClick(Sender: TObject);
begin
if not CheckRs then exit;
tssp.TabVisible:=true;
tsrp.TabVisible:=true;
PageControl2.ActivePage:=tssp;
Enaball;
Disrp;
Disbmsp;
DisCWsp;
DisZjlsp;
end;
procedure TfrmYK.tbZClick(Sender: TObject);
begin
if not CheckRs then exit;
tssp.TabVisible:=true;
tsrp.TabVisible:=true;
PageControl2.ActivePage:=tssp;
Enaball;
Disrp;
Disbmsp;
DisCWsp;
DisFzsp;
end;
procedure TfrmYK.tbNewClick(Sender: TObject);
begin
tssp.TabVisible:=false;
PageControl2.ActivePage:=tsrp;
Clearrp;
edSQR.Text:=sup.PS_Username;
edNo.Text:=sup.PS_MaxVal('csi_report','c_id');
// cbfrom.itemindex:=cbfrom.items.indexof(edbm.Text);
btCreaterp.Enabled:=true;
lvhw.Columns.clear;
lvhw.items.Clear;
ListViewAddColumns(['品名','规格','数量','单价','金额'],[100,50,50,50,50],lvhw);
g0.Enabled:=true;
end;
procedure TfrmYK.tbBmtyClick(Sender: TObject);
var sp:string;
stat:string;
begin
stat:=sup.PB_GetValFromTab('csi_report','c_status','where c_id='+''''+edNo.Text+'''');
if stat<>'N' then begin
showmessage('对不起,这个报告已经被部门经理审批过');
exit;
end;
sp:=get_spr(0);
if sp<>'' then begin
if sup.PS_SP_RP(0,edno.Text,sp,'')<0 then begin
showmessage(sup.PS_lasterror);
Exit;
end;
edbmjl.Text:=sp;
end else showmessage('对不起,你已经放弃身份确认,或确认不合法,请检查一下.');
end;
procedure TfrmYK.Enaball;
begin
g0.Enabled:=true;
g4.Enabled:=true;
g5.Enabled:=true;
g6.Enabled:=true;
g7.Enabled:=true;
end;
procedure TfrmYK.Disrp;
begin
g0.Enabled:=false;
end;
procedure TfrmYK.Disbmsp;
begin
g4.Enabled:=false;
end;
procedure TfrmYK.DisCWsp;
begin
g5.Enabled:=false;
end;
procedure TfrmYK.DisFzsp;
begin
g6.Enabled:=false;
end;
procedure TfrmYK.DisZjlsp;
begin
g7.Enabled:=false;
end;
procedure TfrmYK.Clearrp;
begin
edNo.Text:='';
cbTo.Text:='';
cbFrom.Text:='';
dtrq.Date:=now;
lvhw.items.Clear;
mDW.Lines.clear;
mly.Lines.clear;
eje.Text:='';
dtyyrq.date:=now;
edSQR.Text:='';
edbmjl.Text:='';
edCw.Text:='';
edFz.Text:='';
edZjl.Text:='';
end;
procedure TfrmYK.btinsClick(Sender: TObject);
var ListItem: TListItem;
frmje: Tfrmje;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -