想在主表单执行某样操作的时候,通过脚本给子表单插入一条数据,之前在论坛上有找到一部分脚本,但是改完后用不了,能不能帮忙加下注释,或是哪些字段是要自己修改的。
var doc = getCurrentDocument();
var name = "123";
var formProcess = new Packages.cn.myapps.core.dynaform.form.ejb.FormProcessBean();
var form = formProcess.doView("11e0-6a06-01b17601-b1b2-d386d59e7d04");//这个ID不知道是怎么得来的
var process = getDocProcess(getApplication());
var params = new Packages.cn.myapps.base.action.ParamsTable();
var user = getWebUser();
var subdoc = process.doNew(form, user, params);
subdoc.setParent(doc.getId());
subdoc.findItem("handle_people").setValue(name);
process.doUpdate(subdoc);
您好,我给您的脚本加了一些注释:
var doc = getCurrentDocument(); //主表单
var name = "123";
var formProcess = new Packages.cn.myapps.core.dynaform.form.ejb.FormProcessBean();
var form = formProcess.doView("11e0-6a06-01b17601-b1b2-d386d59e7d04");//子表单formid
var process = getDocProcess(getApplication());
var params = new Packages.cn.myapps.base.action.ParamsTable();
var user = getWebUser();
var subdoc = process.doNew(form, user, params);
subdoc.setParent(doc.getId());
subdoc.findItem("handle_people").setValue(name);
process.doUpdate(subdoc);
var name = "123";
var formProcess = new Packages.cn.myapps.core.dynaform.form.ejb.FormProcessBean();
var form = formProcess.doView("11e0-6a06-01b17601-b1b2-d386d59e7d04");
var process = getDocProcess(getApplication());
var params = new Packages.cn.myapps.base.action.ParamsTable();
var user = getWebUser();
var subdoc = process.doNew(form, user, params);
subdoc.setParent(doc.getId());
subdoc.findItem("handle_people").setValue(name);
process.doUpdate(subdoc);
那个formid是通过在子表单中运行getFormid()得到的。不知道哪里有错。
您好,您参考下下面的脚本。自动插入数据的。您刚刚刚刚那个是更新子表记录。我没有注意。
var process = new Packages.cn.myapps.core.dynaform.document.ejb.DocumentProcessBean(getApplication());
var params = new Packages.cn.myapps.base.action.ParamsTable();
var user = getWebUser();
var doc = new Packages.cn.myapps.core.dynaform.document.ejb.Document();
doc.setFormid('11de-b653-84d844a2-ae1e-9548232189b7');
doc.setFormname('办公管理系统模板/行政/通知公告/通知公告');
doc.setAuthor(user.getId());
doc.setIstmp(false);
doc.setApplicationid(getApplication());
doc.setDomainid(user.getDomainid());
doc.addStringItem("内容","QQ");
process.doCreate(doc);
var name = "123";
var formProcess = new Packages.cn.myapps.core.dynaform.form.ejb.FormProcessBean();
var form = formProcess.doView("11e0-6a06-01b17601-b1b2-d386d59e7d04");
var process = getDocProcess(getApplication());
var params = new Packages.cn.myapps.base.action.ParamsTable();
var user = getWebUser();
var subdoc = process.doNew(form, user, params);
subdoc.setParent(doc.getId());
subdoc.findItem("handle_people").setValue(name);
process.doCreate(subdoc);
试一下。
var process = new Packages.cn.myapps.core.dynaform.document.ejb.DocumentProcessBean(getApplication());
var params = new Packages.cn.myapps.base.action.ParamsTable();
var user = getWebUser();
var doc = new Packages.cn.myapps.core.dynaform.document.ejb.Document();
doc.setFormid('11de-b653-84d844a2-ae1e-9548232189b7');
doc.setFormname('办公管理系统模板/行政/通知公告/通知公告');
doc.setAuthor(user.getId());
doc.setIstmp(false);
doc.setApplicationid(getApplication());
doc.setDomainid(user.getDomainid());
doc.addStringItem("内容","QQ");
process.doCreate(doc);