确认没有问题,请回复帖子,说明问题已解决,我们需要作为结贴依据,谢谢!- //解决思路 在B单据新建字段“activity_id”用于判断是否新建B还是打开B详情;
- //如果activity_id已经在B中找到记录,则打开详情,否则新建B,并且新建时将必要的字段复制到B中
- //在activity_id,可以通过getParameter("_activity_id")获取值
- var doc = getCurrentDocument();
- var formid="11e6-dbc1-3dda33ab-ad00-8d81212e6562";
- var application = getApplication();
- var docid = doc.getId();
- var url="";
- //复制表单字段
- var activity_name=doc.getItemValueAsString("activity_name");
- var company=doc.getItemValueAsString("company");
- //A表单的ID,判断是新建B还是打开B详情
- var activity_id=doc.getId();
- var sql="select * from tlk_A where item_activity_id='"+activity_id+"'";
- var datart=findBySQL(sql);
- //证明A记录已经在B有对应记录,则打开B,否则新建B记录
- if(datart!=null){
- var Adocid=datart.getId();
- url=url1+getContextPath()+"/portal/dynaform/document/view.action?_docid="+Adocid+"&_formid="+formid+"&show_act=true&signatureExist=false&application="+application
- }else{
- var appno=doc.getItemValueAsString("appno");
- var request = $WEB.getParamsTable().getHttpRequest();//获取当前request
- var url1="http://"+request.getServerName()+":"+request.getServerPort();
- url = url1+getContextPath()+"/portal/dynaform/document/newWithPermission.action?_formid="+formid+"&_isJump=1&application="+application+"&budget="+docid+"&_activity_name="+activity_name+"&_company="+company+"&_activity_id="+activity_id+"&_appno="+appno;
- println("tiaozhuanurl=============="+url);
- }
- url;
复制代码 |