产品中心 业内新闻 案例中心 视频中心

mobox3 lua 开发过程中数据获取及Json格式处理 mobox3 lua 开发过程中数据获取及Json格式处理

mobox3 lua 开发过程中数据获取及Json格式处理

分类:产品中心 产品手册 低代码 27

lua 开发过程中,我们需要对当前窗体的数据进行获取,之后进行二次开发演变为我们需要的数据,并重新给窗体的各字段赋值。

1、获取当前窗体上所需字段的数值

nRet, strRetInfo = mobox.getCurEditDataObjAttr(strLuaDEID, “G_PRJ_ID”, “S_PRJ_CODE”, “S_PRJ_NAME”, “S_PM_NAME”, “S_PD_NAME”)

2、得到Json字符串(strRetInfo)内容描述(暂且我们称之为 mobox3 格式)

[

{

“attr”: “G_PRJ_ID”,

“value”: “”

},

{

“attr”: “S_PRJ_CODE”,

“value”: “PM-0002”

},

{

“attr”: “S_PRJ_NAME”,

“value”: “pcy 0999 hard”

},

{

“attr”: “S_PM_NAME”,

“value”: “金振兴”

},

{

“attr”: “S_PD_NAME”,

“value”: “”

}
]

3、将得到的Json字符串(strRetInfo)转变为Json标准的表格式(strOBJInfo )

nRet, strOBJInfo = mobox.objAttrToObjJson (‘JS001’, strRetInfo )

注意:strOBJInfo 得到其实还是一个Json字符串,但其是一个标准的Json表格式表达

具体 objAttrToObjJson 函数怎么用查看手册

4、得到Json表字符串(strOBJInfo )(是一种 json对表的标准格式)

{

“cls”: “JS001”,

“ver”: 1,

“G_PRJ_ID”: “”,

“S_PRJ_CODE”: “PM-0002”,

“S_PRJ_NAME”: “pcy 0999 hard”,

“S_PM_NAME”: “金振兴”
}

注意:这个Json格式是标准表格式字符串表达。

5、我们需要将这个字符串转为表(tbOBJ)

local tbOBJ = json.decode (strOBJInfo)

注,只有变成表后,我们可以这样来理解这个表:

字段名 cls ver G_PRJ_ID S_PRJ_CODE S_PRJ_NAME S_PM_NAME
数值 JS001 1 PM-0002 pcy 0999 hard 金振兴

6、数据取值与赋值

取值方法:

local strPMName

strPMName = tbOBJ.S_PRJ_NAME

赋值方法:

tbOBJ.S_PRJ_NAME = ‘潘元元’

 

完整代码

local strRetInfo , strOBJInfo

local tbOBJ ={}

 

— 得到当前窗体上指定字段的json字符串
nRet, strRetInfo = mobox.getCurEditDataObjAttr(strLuaDEID, “G_PRJ_ID”, “S_PRJ_CODE”, “S_PRJ_NAME”, “S_PM_NAME”, “S_PD_NAME”)

— 将json字符串(mobox3)格式转为 json标准表格式
nRet, strOBJInfo = mobox.objAttrToObjJson (‘JS001’, strRetInfo )

–将json字符串转变为表
tbOBJ = json.decode (strOBJInfo)

 

— 获取表字段内容及设置表字段值
local strPMName
strPMName = tbOBJ.S_PM_NAME
tbOBJ.S_PM_NAME = ‘潘元元’

 

若需要将数据转会mobox3数据格式

–将表转变为json字符串(标准格式)
strOBJInfo = json.encode (tbOBJ)

— 将json标准表格式格式转为 json字符串(mobox3)
nRet, strRetInfo = mobox.objJsonToObjAttr (‘JS001’, strOBJInfo )

 

 

 

 

标签:低代码手册 上一篇: 下一篇:
展开更多
预约软件体验

loading...