想通过BusinessDataServiceHelper.load方法读取单据体的数据,直接输入单据体标识会报错,想问问你想取某个单据体下的字段怎么取
解决方案:
此处应该用的是‘属性(ORM实体名)’,另服务插件,字段需要OnPreparePropertys方法中加载
明细多行时,报销科目“额度内交通费”只能选择一行,如果报销科目在多行选择“额度内交通费”,不允许保存,或者有相应提示。
len(filter(lambdax:x.报销科目字段='字段内容',单据体))>1做保存校验
列表插件中选中列后,再触发按钮点击,按钮点击没有生效,请各位社区大佬帮下忙
有AfterGetData这个事件吗?
用AfterBindData试试。
另外,模拟菜单点击事件的代码不是这样写的。
编辑于2023年11月01日20:03:49
感谢周总,几点事件可以了。但是我上面的行选中操作没有立即触发,导致菜单点击事件报提示当前没有选中行
配置.单据体.分组列信息.分组合计,字段属性配置‘合计’
问题1:
在流程设计中心已经设置了超时1分钟,但是在流程管理中心-待办任务中显示“是否超时”为否。
问题2:
提示的标识是一个小数字段,用来计算量差的,只是增加简单的加减值更新,导致二开的选单报错,可是我选单的数据都跟报错的这个字段没关系呀
报错的原因是无法确定字段【F_PYEB_Decimal】在哪张表中,请检查插件中的SQL语句,在字段【F_PYEB_Decimal】上加上表名或别名,注意单张表有时也会出现该报错,比如:select*,ClasNameFromClassorderbyClassName。
采购订单录入物料后打开悬浮窗口显示历史进价,点击单据体中的行时,悬浮窗口就显示当前行物料的历史进价
做个Datachange事件,调出个动态表单来,指定出物料的历史价格。如果还不会的话,给你个例子。
///
///打开/历史采购订单数量查询动态表单Addzdh2023-4-11
///
privatevoidOpenLSCGDDSLCX()
{
DynamicFormShowParameterformPa=newDynamicFormShowParameter();//调用动态表单
formPa.FormId="ETC_PUR_CGDDSLCX";//历史采购订单数量查询
DynamicObjectdobj=this.View.Model.GetValue("FMATERIALID",Convert.ToInt32(this.Model.GetEntryCurrentRowIndex("FCompareEntry")))asDynamicObject;//物料
if(dobj!=null)
formPa.CustomParams.Add("FBASWL",Convert.ToString(dobj["id"]));//
this.View.ShowForm(formPa);
}
改为唯一性校验空值不参与校验
销售订单,保存时检验字段长度,公式怎么设置(判断不能超过50个字)
len(FText)>50
不是这样写的。客户是基础资料字段,要取基础资料属性的话是要这样写:
创建单据时不显示字段,审核时显示字段,能否通过做实体服务规则利用单据状态实现?
费用申请单中新增了员工任岗明细字段,bos中设置了使用组织为申请组织,但是单据新增时过滤出来的员工任岗还是全部组织的,bos中还需要修改哪些信息?
BOS搜索用户找到安全管理下的用户双击打开用户
鼠标右键扩展用户即可增加字段了
我通过实体服务规则配置当勾选是否赠品则解锁货品类型字段,但是我选完货品之后去掉勾选值没清空,怎么办
选中的时候显示的是编码。
离开鼠标后默认显示的是名称,你这个名称是空白的,所以看起来就没显示。
如果只想显示编码的话,可以修改下设置。
我知当前单据赋值用this.Model.SetValue就行,但对下推后的数据包,请指教,
privatevoidPush(stringpushCate,stringpushId,stringtargetId,stringformId){OperateOptionpushOption=OperateOption.Create();//操作选项varpushArgs=this.CreatePushArgs(pushOption,pushCate,pushId,targetId,formId);//构建下推参数varconvertResult=ConvertServiceHelper.Push(this.Context,pushArgs,pushOption);//调用下推接口vartargetObjs=(frompinconvertResult.TargetDataEntitiesselectp.DataEntity).ToArray();//得到目标单据数据包vartargetBInfo=this.GetBusinessInfo(pushArgs.ConvertRule.TargetFormId,pushArgs.ConvertRule.TargetFormMetadata);varsaveResult=BusinessDataServiceHelper.Save(this.Model.Context,targetBInfo,targetObjs);if(!saveResult.IsSuccess){varerrorInfo=string.Join(";",saveResult.ValidationErrors.Select(x=>x.Message));this.View.ShowErrMessage(errorInfo);return;}else{this.View.ShowMessage("保存成功");}}
2人赞同了该回答
//获取生成的目标单据数据包
DynamicObject[]objs=(frompinoperationResult.TargetDataEntities
selectp.DataEntity).ToArray();
inti=0;
//varlist=datas.ToList
//单据头
((DynamicObject)objs[0])["F_Remark"]=str;
((DynamicObject)objs[0])["F_InspectionStatus"]=status;
foreach(vardataindatas)
//单据体
((DynamicObject)((DynamicObjectCollection)((DynamicObject)objs[0])["PRD_MORPTENTRY"])[i])["FinishQty"]=Convert.ToDecimal(data["FQTY"].ToString());
((DynamicObject)((DynamicObjectCollection)((DynamicObject)objs[0])["PRD_MORPTENTRY"])[i])["BaseFinishQty"]=Convert.ToDecimal(data["FQTY"].ToString());
i++;
如何设置当等于销售订单变更单,清空某些字段
配置实现:
方案一、bos.实体服务规则.'计算定义公式的值并填写到指定列';
方案二、bos.字段属性.值更新配置;
仅供参考:
新增的一个设备管理模块,现在把采购申请单发布到了设备管理,如何实现在设备管理打开采购申请单,只显示设备采购申请单单据类型
python在操作事件中对多选基础字段赋值提示列只读,请问一下红色部分代码是哪里错了吗?正确的写法是什么呢?
mulBaseDataEntitySet通常是有值的,有值的时候应该是不能改的。
你只需要判断是否为空:mulBaseDataEntitySetIsNone确保字段的数据包不为空就行了。
不要用字段数据包集合的大小来判空。
推荐阅读
这些曾经在社区大火的产品应用干货,让你真香了…
2,975
[图片]我们征集什么?——只要是基于企业某个业务场景,应用星瀚产品解决企业业务痛点的应用方案都可以。需描述清楚应用产品来解决具体业务难点或实现业务目标的过程…