作者:蒋卫丰
概要
很多情况下,我们会把信息放在不同的地方进行分门别类地管理。
这时,一些相关内容或项目希望能够相互关联起来。
kintone中的“记录关联列表”和“Lookup”可以实现不同应用之间的数据关联。
本次要介绍的是,将另一个应用中相关记录的列表直接插入到记录详情页面中。
准备应用
首先,准备两个应用。一个是【项目信息管理】,另一个是【公司信息管理】。
我们的设想是:【项目信息管理】中通过lookup获取相关公司的信息;在【公司信息管理】的记录页面的空白栏中插入跟该公司相关的项目信息列表。
代码中需要用到的设置
【项目信息管理】应用中的以下字段在后面的代码中会用到,请记住字段代码。其他字段随意设置。
字段种类 | 字段名 | 字段代码 |
数值 | 记录编号 | No |
【公司信息管理】应用中的以下字段在后面的代码中会用到,请记住字段代码。其他字段随意设置。
字段种类 | 字段代码 |
空白栏 | project-info |
lookup的设置
【项目信息管理】中通过lookup获取相关的公司信息的设置如下图。
※注意:【其他要复制的字段】中设置的“记录编号”,目的是将【公司信息管理】中相应记录的编号复制到字段代码为“No”的字段中。在之后的代码中要用到。
要点
1.在详情页面插入其他应用的记录列表使用的是<iframe>标签。
<iframe width="XXX" height="XXX" frameborder="0" src="<a href="https://xxx.cybozu.com/k/1/"></iframe>
2.在kintone6.9.0版本中确认的结果是,使用isGaroon=1时,即使使用的是新风格的kintone,嵌入的记录列表依然显示旧风格。
效果图
代码范例
(function() { "use strict"; //详细页面中发生事件 kintone.events.on('app.record.detail.show', function(event) { //获取设定页面空白项目的要素 var el = kintone.app.record.getSpaceElement('project-info'); //设置iframe的基本信息 var iframe = document.createElement("iframe"); iframe.id = 'reportFrame'; iframe.frameborder = '0'; iframe.width = '1000'; iframe.height = '300'; //获取项目信息管理中字段代码为“No”的字段值与当前记录的ID相同的记录 iframe.src = '/k/33/?view=5118593&isGaroon=1&query=' + encodeURIComponent('No in (' + kintone.app.record.getId() + ')'); //iframe放置在空白栏元素下 el.appendChild(iframe); }); })();
回复(6)
好的,已解决,非常感谢。
可以的。
点应用中的设置按钮也就是“齿轮”图标,“更改应用的设置”,
在上面“表单”、“列表”、“图表”、“设置”的标签中点“列表”,
点加号“添加列表”,
把左边表格的字段代码拖动到右边,保存,更新应用。
记得在列表页面选择显示刚刚添加的列表的名称。
我想请教一下,我在应用的详情页面做了一个 table ,我可以把这个table 放到 记录列表页面 的字段里面吗?点击这个字段,把详情页面里面的table 显示出来。如果可以,应该如何设置?谢谢。
好的,谢谢您
首先你需要有这个应用的管理权限。
点应用中的设置按钮也就是“齿轮”图标。
在上面“表单”、“列表”、“图表”、“设置”的标签中点“设置”。
点“常规设置”中的第一个“图标与说明”,然后最下面就是你要找的“应用的说明”。
我想请教一下,创建好的应用如何在菜单下方添加该应用的说明?谢谢。