爱招飞帮助手册 爱招飞帮助手册
首页
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 系统工具
    • 系统管理
    • 数据库工具
    • 专用模板
    • 外部功能
    • 开发流程
    • 函数代码
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 报表设计
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • RestAPI
    • WebSocket
  • 学习手册

    • 安装配置
    • 快速上手
    • 程序架构
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 预设资料
    • RestAPI说明
    • WebSocket说明
    • MQTT说明
    • Python说明
    • 自定程序
    • 运行卫士
    • 自动化作业
    • 函数程序
    • 控件使用
  • 开发手册
  • FastERP
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
    • HiDesk
    • HiNAT
    • FastBPM
    • ReportBuilder
首页
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 系统工具
    • 系统管理
    • 数据库工具
    • 专用模板
    • 外部功能
    • 开发流程
    • 函数代码
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 报表设计
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • RestAPI
    • WebSocket
  • 学习手册

    • 安装配置
    • 快速上手
    • 程序架构
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 预设资料
    • RestAPI说明
    • WebSocket说明
    • MQTT说明
    • Python说明
    • 自定程序
    • 运行卫士
    • 自动化作业
    • 函数程序
    • 控件使用
  • 开发手册
  • FastERP
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
    • HiDesk
    • HiNAT
    • FastBPM
    • ReportBuilder
  • Smart帮助主页
  • 学习手册

  • 开发手册

    • 通讯协议

    • 交互输出

    • 媒体存取

      • 文档媒体

      • 数据存取

        • TARS数据存取
          • 1. 说明
          • 2. 设计明细
          • 3. 程序设计
            • 3.1. 程序初始设置
            • 3.2. 事件设置
          • 4. 运行结果
      • 远程监控

    • 人工智慧

    • 实例运用

目录

TARS数据存取

# Smart之TARS数据存取

# 1. 说明

  范例通过连接TARS实现对数据库的增删改查操作。Smart上可以实现对数据库的简单查询,通过该方法可以实现采集数据的记录。

  通过范例学习,可以掌握Smart通过连接TARS实现对数据库的增删改查操作的方式。

  在使用范例之前,检查Smart数据库是否连接,其中包含一个Table_Test表,创建语句示例如下:

--创建数据表 Table_Test
Create Table Table_Test(
FCode nvarchar(50) not null,
FName nvarchar(100)
)
GO
--创建表主索引 PK_Table_Test
CREATE UNIQUE NONCLUSTERED INDEX [PK_Table_Test] ON [dbo].[Table_Test] 
([FCode] ASC)
WITH (PAD_INDEX  = OFF, 
STATISTICS_NORECOMPUTE  = OFF, 
SORT_IN_TEMPDB = OFF, 
IGNORE_DUP_KEY = OFF, 
DROP_EXISTING = OFF, 
ONLINE = OFF, 
ALLOW_ROW_LOCKS  = ON, 
ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
GO

--插入测试用的数据
INSERT INTO Table_Test(FCode,FName)
VALUES('0101','小明')
 
INSERT INTO Table_Test(FCode,FName)
VALUES('0102','小王')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

  通过Smart智慧控制平台菜单【工具】->【帐套设置】,设置好要连接的TARS中间件之数据库,在使用过程中须保证TARS处于运行状态并开放服务,TARS帐套配置请参阅TARS使用手册。

# 2. 设计明细

  开启Smart智慧控制平台,分别加入下插图之控件。或者通过点击菜单栏[文件]-[打开项目]选择范例项目文件来打开该范例。

TARS数据存取 UI布局

  ①:TRFConnection组件,控件名称为RFConnection1。

  ②:TLabel组件,控件名称为Label2。

  ③:TRFDataSet组件,控件名称为RFDataSet1。

  ④:TEdit组件,控件名称为EditCode。

  ⑤:TLabel组件,控件名称为Label1。

  ⑥:TBitBtn组件,控件名称为BitBtnNew。

  ⑦:TBitBtn组件,控件名称为BitBtnDelete。

  ⑧:TDataSource组件,控件名称为DataSource1。

  ⑨:TbitBtn组件,控件名称为BitBtnSave。

  ⑩:TLabel组件,控件名称为Label3。

  (11):TLabel组件,控件名称为Label4。

  (12):TEdit组件,控件名称为EditName。

  (13):TEdit组件,控件名称为EditQuery。

  (14):TPanel组件,控件名称为Panel1。

  (15):TDBGrid组件,控件名称为DBGrid1。

  (16):TBitBtn组件,控件名称为BitBtn1。

  该范例中先使用RFConnection来辅助进行DBGrid表头的生成,在之后的程序运行过程中使用帐套设置中的连接方式进行连接。

  • Main窗体属性设置

    • BorderStyle:设置边界样式=bsDialog。
    • Caption:设置窗体显示的标题=TARS数据存取。
    • ClientHeight:设置客户区窗体的高度=438。
    • ClientWidth:设置窗体客户区的宽度=465。
  • ①RFConnection1属性设置

    • ConnectionDefName:设置连接设置名称=test。
    • ForceEncryption:启用加密功能,与TARS中的加密数据功能对应。
    • LoginOption:设置登录选项,username和password需使用TARS中的用户名及密码。
    • SecureKey:设置安全码,与TARS中的安全码对应。
    • ServerAddr:TARS服务器的IP地址。
    • ServerPort:TARS服务器的端口号。
    • Active:是否激活连接,设置为True。
  • ②RFDataSet1属性设置

    • Connection:设定连接的配置,此处先设置为RFConnection1,用来进行连接调试,在脚本中可将其定义为帐套设置。
  • ③Label2属性设置

    • Caption:设置字幕内容=编号:。
    • Font:设置字体。点击该属性右侧的[...]或者双击该属性打开字体设置界面。
  • ④EditCode属性设置

    • Name:设置控件名称=EditCode。
    • Text:设置文字内容=0113。
    • Width:设置控件宽度=209。
    • Font:设置字体。点击该属性右侧的[...]或者双击该属性打开字体设置界面。
  • ⑤Label1属性设置

    • Caption:设置字幕内容=TARS数据存取。
    • Font:设置字体。点击该属性右侧的[...]或者双击该属性打开字体设置界面。
  • ⑥BitBtnNew属性设置

    • Height:设置按钮控件高度=33。
    • Width:设置按钮控件宽度=44。
    • Name:设置控件名称=BitBtnNew。
    • Glyph:设置显示的位图图片。点击属性右侧的[...]或者双击该属性打开文件上传界面,点击[Load...]从文件浏览器中选择对应的图片文件上传,返回该界面下,待显示出图片后点击[OK]加载图片。
  • ⑦BitBtnDelete属性设置

    • Height:设置按钮控件高度=33。
    • Width:设置按钮控件宽度=44。
    • Name:设置控件名称=BitBtnDelete。
    • Glyph:设置显示的位图图片。点击属性右侧的[...]或者双击该属性打开文件上传界面,点击[Load...]从文件浏览器中选择对应的图片文件上传,返回该界面下,待显示出图片后点击[OK]加载图片。
  • ⑧DataSource1属性设置

    • DataSet:设置数据集名称=RFDataSet1。
  • ⑨BitBtnSave属性设置

    • Height:设置按钮控件高度=33。
    • Width:设置按钮控件宽度=44。
    • Name:设置控件名称=BitBtnDelete。
    • Glyph:设置显示的位图图片。点击属性右侧的[...]或者双击该属性打开文件上传界面,点击[Load...]从文件浏览器中选择对应的图片文件上传,返回该界面下,待显示出图片后点击[OK]加载图片。
  • ⑩Label3属性设置

    • Caption:设置字幕内容=名称:。
    • Font:设置字体。点击该属性右侧的[...]或者双击该属性打开字体设置界面。
  • (11)Label4属性设置

    • Caption:设置字幕内容=查找内容:。
    • Font:设置字体。点击该属性右侧的[...]或者双击该属性打开字体设置界面。
  • (12)EditName属性设置

    • Name:设置控件名称=EditName。
    • Text:设置文字内容=小张。
    • Width:设置控件宽度=209。
    • Font:设置字体。点击该属性右侧的[...]或者双击该属性打开字体设置界面。
  • (13)EditQuery属性设置

    • Name:设置控件名称=EditQuery。
    • TextHint:设置输入框为空时显示的文字内容=请输入查找的名称。
    • Width:设置控件宽度=272。
    • Font:设置字体。点击该属性右侧的[...]或者双击该属性打开字体设置界面。
  • (14)Panel1属性设置

    • Color:设置面板的颜色=clBlue。
    • Height:设置控件高度=5。
    • Width:设置控件宽度=440。
  • (15)DBGrid1属性设置

    • DataSource:设定表格显示的数据源,此处设置为DataSource1。
    • Columns:设定表格显示的表格列,单击属性值格子右侧[...],打开编辑器进行字段编辑。
  • (16)BitBtn1属性设置

    • Height:设置按钮控件高度=31。
    • Width:设置按钮控件宽度=59。
    • Name:设置控件名称=BitBtn1。
    • Glyph:设置显示的位图图片。点击属性右侧的[...]或者双击该属性打开文件上传界面,点击[Load...]从文件浏览器中选择对应的图片文件上传,返回该界面下,待显示出图片后点击[OK]加载图片。

# 3. 程序设计

# 3.1. 程序初始设置

  程序启动时,打开数据集。

constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.RFDataSet1.Connection := dm.DBConnection;
  //打开RFDataSet1数据
  FThis.RFDataSet1.SQL.Text := 'Select FCode,FName From Table_Test';
  FThis.RFDataSet1.Open;
end;
1
2
3
4
5
6
7
8

# 3.2. 事件设置

  • ⑥BitBtnNew-OnClick事件

  点击以新增记录。

procedure TMyHandler.BitBtnNewClick;
//新增记录
begin
   if not FThis.RFDataSet1.Active then exit;
   FThis.RFDataSet1.Append; //新增一条记录
end;
1
2
3
4
5
6
  • ⑦BitBtnDelete-OnClick事件

  点击以删除选择的记录。

procedure TMyHandler.BitBtnDeleteClick;
//删除选中的记录
begin
   //判断数据集是否为空
   if FThis.RFDataSet1.IsEmpty then 
    exit;
   //删除当前行 
   FThis.RFDataSet1.Delete;
end;
1
2
3
4
5
6
7
8
9
  • ⑨BitBtnSave-OnClick事件

  点击以保存数据内容。

procedure TMyHandler.BitBtnSaveClick;
//保存数据内容
begin
   //当前记录赋值
   FThis.RFDataSet1.Edit; 
   FThis.RFDataSet1.FieldByName('FCode').AsString := FThis.EditCode.Text;
   FThis.RFDataSet1.FieldByName('FName').AsString := FThis.EditName.Text;
   FThis.RFDataSet1.Post;
   //提交数据
   if FThis.RFDataSet1.ApplyUpdates(-1) = 0 then
   begin
      Showmessage('数据保存成功!');
   end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  • (16)BitBtn1-OnClick事件

  点击以进行数据查询。

procedure TMyHandler.BitBtn1Click;
//查找
var 
  vSQL: String;
begin
  //数据查询
  vSQL := 'Select FCode,FName From Table_Test ' ;
  if FThis.EditQuery.Text <> '' then 
  vSQL := vSQL + 'where 1=1 and FName = ' + QuotedStr(FThis.EditQuery.Text);
  FThis.RFDataSet1.SQL.Text := vSQL;
  FThis.RFDataSet1.Open;
end;
1
2
3
4
5
6
7
8
9
10
11
12
  • ②RFDataSet1-AfterScroll事件

  数据集的指针移动时进行赋值操作。

procedure TMyHandler.RFDataSet1AfterScroll;
//数据集指针移动时赋值
begin
   FThis.EditCode.Text := FThis.RFDataSet1.FieldByName('FCode').AsString;
   FThis.EditName.Text := FThis.RFDataSet1.FieldByName('FName').AsString;
end;
1
2
3
4
5
6
  • ④EditCode-OnExit事件

  当代号编辑框结束编辑,点击其他控件时更新显示的内容至表格中。

procedure TMyHandler.EditCodeExit;
begin
   FThis.RFDataSet1.Edit;
   FThis.RFDataSet1.FieldByName('FCode').AsString := FThis.EditCode.Text;
   FThis.RFDataSet1.Post;
end;
1
2
3
4
5
6
  • (12)EditName-OnExit事件

  当名称编辑框结束编辑,点击其他控件时更新显示的内容至表格中。

procedure TMyHandler.EditNameExit;
begin
   FThis.RFDataSet1.Edit;
   FThis.RFDataSet1.FieldByName('FName').AsString := FThis.EditName.Text;
   FThis.RFDataSet1.Post;
end;
1
2
3
4
5
6

# 4. 运行结果

  通过工具栏保存,将程序保存为 sdb 项目文件。

  使用鼠标点击工具栏运行(Run),测试运行结果。程序启动时会打开对应的表格。点击新增按钮,新增一行记录并根据编号和名称的编辑框赋值。点击删除按钮删除选择行的记录。点击保存按钮,将编辑框中的数值提交至当前选择的数据记录位置并提交数据。在查找内容的输入框中输入内容,点击查询按钮,下方的表格显示条件查询的结果。

语音播报
网络摄像头服务器

← 语音播报 网络摄像头服务器→

Copyright © 2021-2025 爱招飞IsoFace | ALL Rights Reserved
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式