今天讲一下氚云后端代码的API中的自定义按钮以及数据库查询。首先设置一个自定义按钮方便查看数据。
列表设计-功能按钮
按钮点击事件
按钮的点击事件通过在OnSubmit中进行实现,actionName可以使用自定义按钮,或者常规的表单按钮。
表单按钮编码通过使用OnSubmit的actionName,等价条件是actionName编码。之后在方法体中编写相关代码即可。
后端OnSubmit按钮事件
数据库的使用
先上代码:
protected override void OnSubmit(string actionName, H3.SmartForm.ListViewPostValue postValue, H3.SmartForm.SubmitListViewResponse response)
{
if(actionName == "showCode")
{
// 1. 编写SQL
string sql = "select * from i_D001783Sg7hkoltqpdoel2p1iest4ui07";
// 1.2 声明List对象
List < H3.DataModel.BizObject > rows = new List<H3.DataModel.BizObject>();
// 1.3 获取黄页客商模板code
String schemaCode = "D001783Sg7hkoltqpdoel2p1iest4ui07";
// 2. 获取 表单对象
System.Data.DataTable dt = this.Engine.Query.QueryTable(sql, null);
if(dt != null && dt.Rows.Count > 0)
{
// 3. 遍历表单
foreach(System.Data.DataRow row in dt.Rows)
{
// 3.1 获取字段
string guestName = row["f0000003"] + string.Empty;
string address = row["f0000012"] + string.Empty;
// 3.2 声明黄页客商对象
H3.DataModel.BizObjectSchema guestSchema = this.Request.Engine.BizObjectManager.GetPublishedSchema(schemaCode);
H3.DataModel.BizObject guestObject = new H3.DataModel.BizObject(this.Request.Engine, guestSchema,
this.Request.UserContext.UserId, this.Request.UserContext.User.ParentId);
// 3.3 存放数据
guestObject["f0000003"] = guestName;
guestObject["f0000012"] = address;
rows.Add(guestObject);
}
response.Message = "查询成功!";
}
}
base.OnSubmit(actionName, postValue, response);
}
获取数据库对象使用下列这行代码:
System.Data.DataTable dt = this.Engine.Query.QueryTable(sql, null);
执行完毕后,dt获取就获取到了sql语句中查到的数据库表数据。
下图展示的是查询到的数据行内容:
行内容
之后我们声明一个黄页客商空对象用来存储获取到的数据库信息,声明空对象需要先声明一个表单模板对象,schemaCode为表单的Id,使用代码:
H3.DataModel.BizObjectSchema guestSchema = this.Request.Engine.BizObjectManager.GetPublishedSchema(schemaCode);
模板对象声明之后就可以声明 表单对象了,其中guestSchema 为之前声明的模板对象。
H3.DataModel.BizObject guestObject = new H3.DataModel.BizObject(this.Request.Engine, guestSchema, this.Request.UserContext.UserId, this.Request.UserContext.User.ParentId);
黄页客商空对象
获取数据库信息值,给黄页客商空对象赋值:
对象赋值
使用List的Add方法存储黄页客商对象:
List对象
List对象中的值 黄页客商数据库的信息
网友评论