📄 jgbbxmsz.pas
字号:
unit JGBbXmSz;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, ADODB, Grids, DBGrids, ExtCtrls, ComCtrls, ImgList, StdCtrls, ToolWin,
OleServer, Menus, DBtables, Mask, AppEvnts, EncdDecd, SOAPHTTPTrans, types;
type
TJGBbSz = class(TForm)
ControlBar1: TControlBar;
ToolBar1: TToolBar;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
ToolButton14: TToolButton;
ToolButton17: TToolButton;
Panel1: TPanel;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
ImageList2: TImageList;
ImageList3: TImageList;
Label3: TLabel;
Edit3: TEdit;
ToolButton1: TToolButton;
ApplicationEvents1: TApplicationEvents;
ToolButton12: TToolButton;
procedure FormCreate(Sender: TObject);
procedure ToolButton17Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton9Click(Sender: TObject);
procedure refreshitem(Enable: boolean);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ApplicationEvents1Exception(Sender: TObject; E: Exception);
procedure ToolButton12Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
nform: smallint;
nret: smallint;
procedure TitleSet;
public
bbbh, bbmc: string;
{ Public declarations }
end;
var
JGBbSz: TJGBbSz;
implementation
{$R *.DFM}
uses datamodule, JGBbXmJg, JGJtBbGs, userface, BbRelations;
procedure TJGBbSz.TitleSet;
begin
dbgrid1.Columns[0].Title.caption := '报表编号';
dbgrid1.Columns[1].Title.caption := '报表代码';
dbgrid1.Columns[2].Title.caption := '报表名称';
dbgrid1.Columns[0].Title.alignment := taCenter;
dbgrid1.Columns[1].Title.alignment := taCenter;
dbgrid1.Columns[2].Title.alignment := taCenter;
end;
procedure TJGBbSz.FormCreate(Sender: TObject);
//主窗体创建
begin
DM.P_BbmlInfo1;
TitleSet;
end;
procedure TJGBbSz.ToolButton17Click(Sender: TObject);
//退出
begin
Close;
end;
procedure TJGBbSz.ToolButton2Click(Sender: TObject);
begin
DM.P_BbmlInfo1;
TitleSet;
end;
procedure TJGBbSz.ToolButton9Click(Sender: TObject);
//放弃
begin
edit1.Text := '';
edit2.Text := '';
Edit3.Text := '';
refreshitem(false);
end;
procedure TJGBbSz.refreshitem(enable: boolean);
//刷项目
begin
if nform = 1 then
edit1.Enabled := enable
else
edit1.Enabled := false;
edit2.Enabled := enable;
toolbutton2.Enabled := not enable;
toolbutton4.Enabled := not enable;
toolbutton5.Enabled := not enable;
toolbutton6.Enabled := not enable;
N2.Enabled := not enable;
N3.Enabled := not enable;
N4.Enabled := not enable;
N6.Enabled := enable;
N7.Enabled := enable;
N10.Enabled := not enable;
toolbutton8.Enabled := enable;
toolbutton9.Enabled := enable;
toolbutton11.Enabled := not enable;
dbgrid1.Enabled := not enable;
end;
procedure TJGBbSz.ToolButton4Click(Sender: TObject);
//新增
begin
nform := 1;
edit1.Text := '';
edit2.Text := '';
Edit3.Text := '';
refreshitem(true);
edit1.SetFocus;
end;
procedure TJGBbSz.ToolButton5Click(Sender: TObject);
//修改
begin
nform := 0;
DM.P_Bbml(bbbh, bbdm, bbmc);
Edit1.Text := bbbh;
edit3.Text := Bbdm;
edit2.Text := bbmc;
refreshitem(true);
edit3.SetFocus;
end;
procedure TJGBbSz.ToolButton6Click(Sender: TObject);
//删除
//var
// BbNum,BbName:string;
begin
//fTab(TaskNumber,BbNumber,BbName,BbTypeName,BbType);
DM.P_Bbml(bbbh, bbdm, bbmc);
if messagedlg('是否要删除报表“' + Bbmc + '” (编号:' + bbbh + ')?',
mtcustom, [mbyes, mbno], 0) = mrYes then
begin
nret := DM.F_BbmlDel(bbbh);
if nret = 0 then
begin
DM.P_BbmlInfo1;
TitleSet;
showmessage('删除成功。');
end
else
showmessage('删除失败。');
end;
end;
procedure TJGBbSz.ToolButton8Click(Sender: TObject);
//存盘
begin
if trim(Edit1.text) = '' then
begin
showmessage('报表编号不能为空!');
Edit1.SetFocus;
exit;
end;
if trim(Edit2.text) = '' then
begin
showmessage('报表名称不能为空!');
Edit2.SetFocus;
exit;
end;
if trim(Edit3.text) = '' then
begin
showmessage('报表代码不能为空!');
Edit3.SetFocus;
exit;
end;
DM.P_Bbml(bbbh, bbdm, bbmc);
if nform = 1 then
nret := DM.F_BbmlSave(trim(edit1.Text), trim(edit3.Text), trim(edit2.Text))
else
nret := DM.F_BbmlSave(trim(edit1.Text), trim(edit3.Text), trim(edit2.Text));
case nret of
0:
begin
RefreshItem(false);
DM.P_BbmlInfo1;
TitleSet;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
showmessage('存盘成功。');
end;
1:
begin
showmessage('报表编号已被占用,请更换编号');
Edit1.SetFocus;
end;
else
begin
showmessage('存盘失败!');
Edit2.SetFocus;
end;
end;
end;
procedure TJGBbSz.Edit1Exit(Sender: TObject);
begin
if trim(Edit1.Text) <> '' then
Edit1.Text := PadL(edit1.text, 2, '0');
end;
procedure TJGBbSz.ToolButton11Click(Sender: TObject);
//定义结构
var
bbfilename: string;
wj: TByteDynArray;
ams: TMemoryStream;
i, ret: integer;
begin
if HandleAllocated then
begin
DM.P_Bbml(bbbh, bbdm, bbmc);
bbfilename := ExtractFilePath(Paramstr(0)) + BbFileGS + bbbh + '.cll';
FormBbXmJg := TFormBbXmJg.create(application);
ret := DM.f_BbWj(bbbh, wj);
ams := TMemoryStream.Create;
if ret = 0 then
begin
try
i := length(wj);
ams.SetSize(i);
move(wj[0], ams.memory^, i);
ams.SaveToFile(bbfilename);
finally
ams.Free;
end;
end;
if not fileexists(bbfilename) then
showmessage('报表文件不存在,请确定报表位置!');
FormBbXmJg.structfilename := bbfilename;
FormBbXmJg.bbnum := bbbh;
FormBbXmJg.bbmc := bbmc;
FormBbXmJg.Caption := FormBbXmJg.Caption + ' (报表:' + Bbmc + ')';
FormBbXmJg.showmodal;
FormBbXmJg.Free;
//DM.P_BbmlInfo1;
TitleSet;
end;
end;
procedure TJGBbSz.ToolButton1Click(Sender: TObject);
var
bbfilename: string;
FormJtBbGs: TFormJtBbGs;
begin
DM.P_Bbml(bbbh, bbdm, bbmc);
//if DM.Qry_User.Active= true then DM.Qry_User.Close;
bbfilename := ExtractFilePath(Paramstr(0)) + BbFileGS + bbbh + '.cll';
FormJtBbGs := TFormJtBbGs.create(application);
if not fileexists(bbfilename) then
begin
showmessage('报表文件不存在,请确定报表位置!');
//exit;
end
else
FormJtBbGs.structfilename := bbfilename;
FormJtBbGs.showmodal;
end;
procedure TJGBbSz.ApplicationEvents1Exception(Sender: TObject; E: Exception);
begin
if (E is ESOAPHTTPException) then
begin
DM.P_BbmlInfo1;
TitleSet;
end
else if (E is EAccessViolation) then
begin
//showmessage('Something is wrong!')
end
else
Application.ShowException(E);
end;
procedure TJGBbSz.ToolButton12Click(Sender: TObject);
var
BbRelation: TBbRelation;
begin
if HandleAllocated then
begin
// fTab(TaskNumber,BbNumber,BbName,BbTypeName,BbType);
BbRelation := TBbRelation.Create(application);
// BbRelation.tasknumber :=_currenttasknumber;
BbRelation.ShowModal;
BbRelation.Free;
end;
end;
procedure TJGBbSz.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9']) and (key <> #8) then
key:= #0;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -