📄 ser100_01.pas.svn-base
字号:
unit Ser100_01;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Bas200_04, wwDialog, Wwlocate, ActnList, DB, ADODB, ComCtrls,
ToolWin, ExtCtrls, dxtree, dxdbtree, dxdbtrel, StdCtrls, Mask, DBCtrls,
Menus;
type
TSer100_01Form = class(TBas200_04Form)
ADOQuery1S100_001: TAutoIncField;
ADOQuery1S100_002: TWideStringField;
ADOQuery1S100_003: TIntegerField;
ADOQuery1S100_004: TBooleanField;
ADOQuery1S100_005: TBooleanField;
ADOQuery1S100_006: TSmallintField;
CheckBox1: TCheckBox;
DBEdit1: TDBEdit;
dxTreeViewEdit1: TdxTreeViewEdit;
edtPriority: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
qrySer100: TADOQuery;
udPriority: TUpDown;
procedure ActDeleteExecute(Sender: TObject);
procedure ActInsertExecute(Sender: TObject);
procedure ActSaveExecute(Sender: TObject);
procedure ActUpdateExecute(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
procedure SetInterface; override;
procedure ReportGetValue(const ParName: String; var ParValue: Variant); override;
{ Public declarations }
end;
var
Ser100_01Form: TSer100_01Form;
implementation
uses CommFun, SYSDATA;
{$R *.dfm}
procedure TSer100_01Form.ActDeleteExecute(Sender: TObject);
var
ATreeNode: TTreeNode;
begin
//删除
ATreeNode:=nil;
if dxDBTreeView1.Selected<>nil then
if dxDBTreeView1.Selected.Parent<>nil then ATreeNode:=dxDBTreeView1.Selected.Parent;
//检查地区资料是否已经在使用
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('select 1 from SER500 where S500_004='+IntToStr(ADOQuery1S100_001.Value));
SYSDM.qryQuery.Open;
if not SYSDM.qryQuery.IsEmpty then
begin
ShowMsg('UMS10000356'); //该记录已存在相关资料,不能删除该记录
Abort;
end;
inherited;
//修改"最低层否"标识
if ATreeNode=nil then Exit;
if not ATreeNode.HasChildren then
begin
ADOQuery1.Edit;
ADOQuery1S100_004.Value:=True;
ADOQuery1.Post;
end;
end;
procedure TSer100_01Form.ActInsertExecute(Sender: TObject);
begin
inherited;
//新增
dxTreeViewEdit1.Items:=dxDBTreeView1.Items;
dxTreeViewEdit1.Text:='';
dxTreeViewEdit1.Enabled:=True;
DBEdit1.SetFocus;
end;
procedure TSer100_01Form.ActSaveExecute(Sender: TObject);
var
AUpdateFlag: Boolean;
AName: string;
begin
//保存
AUpdateFlag:=False;
//设置上级服务编号
if dxTreeViewEdit1.Text='' then
ADOQuery1S100_003.Value:=0
else
begin
qrySer100.Close;
qrySer100.Open;
if qrySer100.Locate('S100_002',dxTreeViewEdit1.Text,[loCaseInsensitive]) then
begin
qrySer100.Edit;
qrySer100.FieldByName('S100_004').Value:=False;
qrySer100.Post;
ADOQuery1S100_003.Value:=qrySer100.FieldByName('S100_001').Value;
ADOQuery1S100_004.Value:=True;
end;
end;
ADOQuery1S100_004.Value:=True; //最低层否
AName:=trim(DBEdit1.Text);
//检查上级服务是否已在使用 来电记录中的服务类别
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('select 1 from SER500 where S500_004='+IntToStr(ADOQuery1S100_001.Value));
SYSDM.qryQuery.Open;
if not SYSDM.qryQuery.IsEmpty then
begin
if ShowDialog('UMS10000355')<>IDYES then Abort; //上级服务已存在相关资料,如果增加下级服务,则相关记录会被替换,是否继续?
AUpdateFlag:=True;
end;
ADOQuery1S100_006.AsString:=edtPriority.text;
if CheckBox1.Checked then
begin
ADOQuery1S100_005.Value:=True;
end
else
begin
ADOQuery1S100_005.Value:=False;
end;
inherited;
ADOQuery1.Refresh;
ADOQuery1.Locate('S100_002',AName,[loCaseInsensitive]);
//替换上级地区
if AUpdateFlag then
begin
SYSDM.qryQuery.Close;
SYSDM.qryQuery.SQL.Clear;
SYSDM.qryQuery.SQL.Add('update SER500 set S500_004='+IntToStr(ADOQuery1S100_001.Value)+' where S500_004='+IntToStr(ADOQuery1S100_003.Value));
SYSDM.qryQuery.ExecSQL;
end;
end;
procedure TSer100_01Form.ActUpdateExecute(Sender: TObject);
begin
inherited;
//修改
dxTreeViewEdit1.Items:=dxDBTreeView1.Items;
if dxDBTreeView1.Selected.Parent<>nil then
dxTreeViewEdit1.Text:=dxDBTreeView1.Selected.Parent.Text
else
dxTreeViewEdit1.Text:='';
CheckBox1.Checked:=ADOQuery1S100_005.AsBoolean;
edtPriority.Text:=ADOQuery1S100_006.AsString;
DBEdit1.SetFocus;
end;
procedure TSer100_01Form.FormCreate(Sender: TObject);
begin
inherited;
//
end;
procedure TSer100_01Form.ReportGetValue(const ParName: String;
var ParValue: Variant);
begin
inherited;
end;
procedure TSer100_01Form.SetInterface;
begin
inherited;
Caption:=GetDBString('SER10001001'); //服务类别维护
Label1.Caption:=GetDBString('SER10001002'); //服务名称
Label2.Caption:=GetDBString('SER10001003'); //上级服务
ADOQuery1S100_001.DisplayLabel:=GetDBString('SER10001001'); //电脑编号
ADOQuery1S100_002.DisplayLabel:=GetDBString('SER10001002'); //服务名称
ADOQuery1S100_003.DisplayLabel:=GetDBString('SER10001003'); //上级服务
ADOQuery1S100_004.DisplayLabel:=GetDBString('SER10001004'); //优先级别
ADOQuery1S100_005.DisplayLabel:=GetDBString('SER10001005'); //是否投诉
ADOQuery1S100_006.DisplayLabel:=GetDBString('SER10001006'); //优先级别
Label1.Caption:=GetDBString('SER10001002'); //服务名称
Label3.Caption:= GetDBString('SER10001006'); //优先级别
Label2.Caption:=GetDBString('SER10001003'); //上级服务
CheckBox1.Caption:=GetDBString('SER10001005'); //是否投诉
end;
initialization
RegisterClass(TSer100_01Form);
finalization
UnRegisterClass(TSer100_01Form);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -