【第19期】 金蝶云·星空-BOS平台 | 产品应用典型/热门问答精选
在金蝶云·星空-BOS平台应用中,你需要了解的典型/热门问答都在这里!
本帖不定期持续更新,欢迎小伙伴们收藏本帖,以便随时查看、扩充知识哟
【第19期】
1、bos签出提示System.Collections.ListDictionaryInternal,扩展没问题
问题描述:
发生时间: 2023-09-20 15:48:02
错误来源: mscorlib
错误信息: The node 'D:\WorkSpace\QZOR\银利达\DataModel_20\XSYFX_5abbbf1b\550c78d5-32e1-4ac8-a0b6-55ed47552f73.2052.dymx' was not found.
===================================================
调用堆栈:
Server stack trace:
at Kingdee.BOS.VersionControl.SVNSCCProvider.svnClient_SvnError(Object sender, SvnErrorEventArgs e)
at SharpSvn.SvnClient.raise_SvnError(Object sender, SvnErrorEventArgs e)
at SharpSvn.SvnClient.OnSvnError(SvnErrorEventArgs e)
at SharpSvn.SvnClient.HandleClientError(SvnErrorEventArgs e)
at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, SvnException error, Object targets)
at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, svn_error_t* error, Object targets)
at SharpSvn.SvnClient.Resolve(String path, SvnAccept choice, SvnResolveArgs args)
at Kingdee.BOS.VersionControl.SVNSCCProvider.Add(String[] items, Boolean immediatelyDo, String comment)
at Kingdee.BOS.VersionControl.SVNSCCProvider.MyRemoteLock(String path)
at Kingdee.BOS.VersionControl.SVNSCCProvider.CheckOut(String[] items)
at Kingdee.BOS.IDE.Core.AbstractNode.CheckOut(IViewManager isv, Boolean recursion, Boolean AutoUpdate)
at Kingdee.BOS.IDE.Designer.BizObjectNode.<>n__FabricatedMethod29(IViewManager , Boolean , Boolean )
at Kingdee.BOS.IDE.Designer.BizObjectNode.<>c__DisplayClass27.<CheckOut>b__26()
at Kingdee.BOS.IDE.Designer.BizObjectNode.<>c__DisplayClass2b.<CallWithTimeout>b__2a()
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(Message reqMsg, Boolean bProxyCase)
at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(Object NotUsed, MessageData& msgData)
at System.Action.EndInvoke(IAsyncResult result)
at Kingdee.BOS.IDE.Designer.BizObjectNode.CallWithTimeout(Action action, Int32 timeoutMilliseconds)
at Kingdee.BOS.IDE.Designer.BizObjectNode.CheckOut(IViewManager isv, Boolean recursion, Boolean AutoUpdate)
at Kingdee.BOS.IDE.Core.Utils.CheckOut(AbstractNode abstractNode, IViewManager ivm)
at Kingdee.BOS.IDE.Core.Utils.CheckOutCommand(AbstractNode abstractNode, IViewManager ivm)
at Kingdee.BOS.DomainModelDesigner.ViewManager.MDIParent_BarItemClick(Object sender, BarItemClickArgs e)
at Kingdee.BOS.IDE.frmMain.barManager_ItemClick(Object sender, ItemClickEventArgs e)
错误数据: System.Collections.ListDictionaryInternal
解决方案:
尝试以下操作
刷新SVN节点
移除对象后重新引入
问题来源:
bos签出提示System.Collections.ListDictionaryInternal,扩展没问题 (kingdee.com)
2、python 中 DynamicObjectToJson 应该引用哪个组件
问题描述:
解决方案:
这个方法需要自定义:
private static string DynamicObjectToJson(object obj) { var jsonSerializerProxy = new JsonSerializerProxy(Encoding.UTF8, false); var jsonData = jsonSerializerProxy.Serialize(obj); return jsonData;
}
来源:二开案例.单据插件.DynamicObject转Json (kingdee.com)
编辑于 2023年09月25日 10:18:54
python 中要咋引用呢
增加一个方法
def dynamicobjecttojson(dyobject): jsonSerializerProxy = JsonSerializerProxy(Encoding.UTF8, False) jsonData = jsonSerializerProxy.Serialize(dyobject) return jsonData
PYTHON实现操作中发送POST,GET请求 (kingdee.com)
引用组件
问题来源:
python 中 DynamicObjectToJson 应该引用哪个组件 (kingdee.com)
3、需求是限定仓库来指定审批人,但仓库不是单据头字段,可以通过仓库负责人来做审批流吗?
问题描述:
解决方案:
可以,前提是一张单据只有一个仓库,方式:
单据头增加仓库字段,单据头字段更新单据体仓库,用该字段作为审批流条件
也可以用Python表达式: 流程条件使用单据体字段 (kingdee.com)
问题来源:
需求是限定仓库来指定审批人,但仓库不是单据头字段,可以通过仓库负责人来做审批流吗? (kingdee.com)
4、自定义单据,单据体里有物料分组,然后新单据继承了该单据,保存新的单据时,报错:未设置分组信息存储表
问题描述:
自定义单据,单据体里有物料分组,然后新单据继承了该单据,保存新的单据时,报错:未设置分组信息存储表,但是我加了T_BD_MATERIALGROUP,为什么不行呢?
解决方案:
编辑于 2023年09月26日 14:56:15
问题来源:
自定义单据,单据体里有物料分组,然后新单据继承了该单据,保存新的单据时,报错:未设置分组信息存储表 (kingdee.com)
5、 如何配置工作流,在审核时,某字段才必填,填写后才能审核通过
问题描述:
如何配置工作流,在审核时,某字段必填,填写后才能审核通过
解决方案:
字段先取消审核中锁定、先把字段放出来、在工作流程配置里设置对应节点字段必录就可以了
问题来源:
如何配置工作流,在审核时,某字段才必填,填写后才能审核通过 (kingdee.com)
6、 如何关闭块选择,块复制,块粘贴功能,BOS设置了还是无效!
问题描述:
如何关闭块选择,块复制,块粘贴功能,BOS设置了还是无效!
解决方案:
块选择在参数中禁用,块粘贴在BOS里具体单据明细信息属性里取消勾选
问题来源:
如何关闭块选择,块复制,块粘贴功能,BOS设置了还是无效! (kingdee.com)
7、 监控方案消息标题不能为空的原因
问题描述:
解决方案:
排查下轻应用页签-消息标题
问题来源:
8、 移动单据下推插件
问题描述:
移动单据下推插件,暂存后,怎么获取生成的暂存的下游单据内码
//开始处理下推结果:
//获取下推生成的下游单据数据包
Kingdee.BOS.Orm.DataEntity.DynamicObject[] targetBillObjs = (from p in operationResult.TargetDataEntities select p.DataEntity).ToArray();
if (targetBillObjs.Length == 0)
{
throw new KDBusinessException("", string.Format("由{0}自动下推{1},没有成功生成数据包,自动下推失败!", sourceFormId, targetFormId));
}
// 读取目标单据元数据
var targetBillMeta = MetaDataServiceHelper.Load(this.View.Context, targetFormId) as FormMetadata;
OperateOption saveOption = OperateOption.Create();
//暂存下推数据
var draftResult = BusinessDataServiceHelper.Draft(this.View.Context, targetBillMeta.BusinessInfo, targetBillObjs, saveOption, "draft");
MobileShowParameter paramBill = new MobileShowParameter();
paramBill.FormId = "VBGU_YHMMDH_BOS";// 移动单据标识
paramBill.PKey = targetBillObjs["id"];//??????????
paramBill.Status = OperationStatus.EDIT;//新增为 OperationStatus.ADDNEW
this.View.ShowForm(paramBill);
解决方案:
暂存成功的数据包是已经创建了FID的 解析 draftResult 这个数据集合,获取FID即可,具体的可以调试进来后看下 这个动态对象集合的具体详情,看下是通过属性"ID"还是直接通过字段标识获取
问题来源:
9、 bos设计器可以正常登录,所有项目点击开发都提示未能从程序集“Kingdee.BOS.VersionControl
问题描述:
bos设计器可以正常登录,所有项目点击开发都提示未能从程序集“Kingdee.BOS.VersionControl。有没有大神知道怎么处理?错误详情如下:发生时间: 2023-09-19 17:53:48错误来源: System.Windows.Forms错误信息: 未能从程序集“Kingdee.BOS.VersionControl, Version=8.1.620.12, Culture=neutral, PublicKeyToken=null”中加载类型“Kingdee.BOS.VersionControl.SvnIDEStatus”。===================================================调用堆栈: 在 System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous) 在 System.Windows.Forms.Control.Invoke(Delegate method, Object[] args) 在 System.Windows.Forms.Control.Invoke(Delegate method) 在 Kingdee.BOS.WinForm.KDWaitForm.<>c__DisplayClass5.<PrivateDoTask>b__4() 在 Kingdee.BOS.WinForm.KDWaitForm.PrivateDoTask(Form owner, Action act) 在 Kingdee.BOS.WinForm.KDWaitForm.OnShown(EventArgs e) 在 System.Windows.Forms.Form.CallShownEvent() 在 System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme) 在 System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj) 在 System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) 在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) 在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 在 System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme) 在 System.Windows.Forms.Control.InvokeMarshaledCallbacks()错误数据: System.Collections.ListDictionaryInternal
解决方案:
环境出问题了,参考下列步骤卸载、重装一下
1、打开下图所示文件夹,找到Kingdee.BOS.DeskClient.Shell
2、双击打开Kingdee.BOS.DeskClient.Shell
3、找到Bos设计器(金蝶云星空集成开发平台)选项,点击“卸载”按钮
4、卸载成功后Bos设计器将会从列表中移除,桌面快捷图标也会被清理
注意:卸载成功后需关闭Kingdee.BOS.DeskClient.Shell程序,否则所有客户端将无法启动
1、登陆云星空后台,点击右上角个人图像弹出下拉选项,根据操作系统位数选择安装相应的Bos设计器
2、安装过程如下,为全自动安装无须任何操作
安装完成后弹出如下所示登陆窗口
并生成相应的桌面快捷图标,至此安装完成
问题来源:
bos设计器可以正常登录,所有项目点击开发都提示未能从程序集“Kingdee.BOS.VersionControl
10、 如何设置:字段 费用金额/100 必须要有余数,如果整除,不允许保存
问题描述:
比如:201/100,允许保存;200/100不允许保存
解决方案:
用%,判断:费用金额%100=0则为整除,不允许保存
问题来源:
如何设置:字段 费用金额/100 必须要有余数,如果整除,不允许保存 (kingdee.com)
11、BOS如何设置:单据体基础资料等于单据头基础资料,当单据体基础资料变动时自动更新并赋值给单据头基础资料?
问题描述:
解决方案:
单据体字段要勾选【即时触发值更新】 然后设置 单据体的实体服务规则。 规则条件:单据体基础资料=单据体基础资料 满足条件执行:单据头基础资料=单据体基础资料
问题来源:
BOS如何设置:单据体基础资料等于单据头基础资料,当单据体基础资料变动时自动更新并赋值给单据头基础资料? (kingdee.com)
12、 客户上的复选框信息如何带到销售订单上去
问题描述:
在客户界面里新增了一个是否含税的复选框,如何能够新建销售订单的时候自动把这个信息带过去(销售订单的是否含税默认勾选了)
解决方案:
做值更新或实体服务规则
前置条件为客户复选框勾选
问题来源:
客户上的复选框信息如何带到销售订单上去 (kingdee.com)
13、 金蝶bos单怎么设置单据编号手工录,客户不要自动生成
问题描述:
金蝶bos单怎么设置单据编号手工录,客户不要自动生成
解决方案:
不要扩展单据 在原单据上直接删除编码规则 扩展单据不允许更改编码规则
问题来源:
金蝶bos单怎么设置单据编号手工录,客户不要自动生成 (kingdee.com)
14、 套打动态字段表达式测试通过,但是打印预览不显示
问题描述:
套打设置动态字段,当分店为空则取客户地址,否则取分店地址。
套打取值设置:
表达式测试:
打印预览时,不管有没有分店,地址均为空:
解决方案:
原因:
你是在订单明细添加动态实体字段。模板上你却在网格添加的文本控件属性对应动态字段,并不在数据表格内的单元格属性对应动态字段。
处理方法:
选中数据表格的第一行,然后插入行,选择“当前行之前”,即在字段名称所在的普通行前插入普通行。然后直接在插入的普通行相应单元格设置动态字段,不要添加文本控件。
这样显示的地址永远是订单明细第一行的地址。
提示:文本控件设置的字段只能是单据头的字段(包括在单据头设置的动态字段),读取不了明细字段。明细字段只能在数据表格内显示。
问题来源:
套打动态字段表达式测试通过,但是打印预览不显示 (kingdee.com)
15、 套打中想设置合计一栏,因为单据没有这个理论重量字段,所以使用的增加实体动态字段,现在需要给增加合计,sum合计该怎么实现
问题描述:
他这个理论重量=长度×数量×结算米重
解决方案:
添加聚合动态字段对动态字段进行求和。示例:
问题来源:
套打中想设置合计一栏,因为单据没有这个理论重量字段,所以使用的增加实体动态字段,现在需要给增加合计,sum合计该怎么实现 (kingdee.com)
查看往期精选:
【汇总】 金蝶云·星空-BOS平台 | 产品应用典型/热门问答精选 (kingdee.com)
太全面了,感谢
【第19期】 金蝶云·星空-BOS平台 | 产品应用典型/热门问答精选
本文2024-09-16 18:30:23发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-22581.html