【摘要】:如何单据插件中实现基础资料F7 动态过滤
【版本】:K3v10.4 及以后
问题描述: 如何单据插件中实现基础资料 F7 动态过滤 解决方法: 关于仓库动态过滤伪代码如下,请参考: 在插件m_BillInterface_MenuBarClick 事件中添加如下代码:
Case \ Dim oCtl As Object
Set oCtl = m_BillInterface.GetActiveCtl
Dim dctFld As KFO.Dictionary
Dim sKey As String Dim oReturn As Object
m_BillInterface.GetActiveField dctFld, -1, -1
sKey = oCtl.Tag
If dctFld(\
'根据权限动态加载过滤条件
dctFld(\ End If 客户化开发技术资料——K/3 BOS开发百问百答
Set m_BillInterface.TableInfo(sKey) = dctFld
m_BillInterface.K3Lib.LookUpClass dctFld, \
Cancel = True
另:如果是单据体字段,请获取响应字段的ActiveCol,ActiveRow即可。
【摘要】:如何在插件中响应 BOS控件 KDInputTool 的事件
【版本】:K3v10.4 及以后
问题描述: 如何在插件中响应 BOS控件 KDInputTool 的事件
解决方法: 插件伪代码如下:
Private WithEvents mInputTool As KDInputTool.InputTool
在插件事件
Private Sub m_BillInterface_BeginEdit(ByVal dct As KFO.IDictionary, ByVal Col As Long,
ByVal Row As Long) Dim oCtl As Object
Set oCtl = m_BillInterface.GetActiveCtl If dct(\
Set mInputTool = oCtl.object
End If End Sub
此时,可以响应mInputTool 的相关事件,做一些特殊处理,如KeyDown等 客户化开发技术资
料——K/3 BOS开发百问百答
三、多级审核篇 【摘要】:批量审核。 【版本】:K/3v10.2SP1
问题描述: K/3 BOS 单据是否支持批量审核? 如果不支持, 可否编写此方面的插件?
能否给过一段示例代码? 序时薄接口对象现在没有审核事件可供调用, 那
所有的审核代码都得在插件中自己写
解决方法: K/3 BOS 单据不支持批量审核,目前还没有这方面的插件,先自己编写吧。序时薄中
MultiCheckMgr是审核对象,其中包含了审核的各种方法,但编写代码比较难。
【摘要】:设置为一级审核的Bos单据反审核后不能修改。
【版本】:K/3v10.2SP1
b题描述: 一张新单据. 启用了多极审核,且只设置了一级审核; \修改无需反审到最
后一级\的选项也选中了. 在实际作业中,单据反审核后仍然不能修改? 用 BOS 做了五张单据,经测试如果在序时薄将单据反审核, 再打开单据, 可以修改;如果在序时薄界面, 打开未审核的单据, 审核后, 再进行反审 核操作, 单据可以修改;如果在序时薄界面,打开已经审核的单据, 将单据
反审核,单据还是不能修改。
解决方法: 在序时薄界面,只能通过 ―查看‖ 方式打开已经审核的单据, 即使单据反审核了, 任在 ―查
看‖状态下,单据是不能修改的。在K310.3中已解决此问题。
【摘要】:能否使administrator 对任何人审核的 BOS 单据进行反审核。 【版本】:K/3v10.2SP1 客户化开发技术资料——K/3 BOS开发百问百答 问题描述: 只有一级审核的 BOS 单据,其他用户审核的,有否这样的设置,能够让
administrator 对其进行反审核。目前由于 administrator 既不是审核人
又不是下级审核人,没有这样的权限。 解决方法: 不能,除非管理员也是审核成员。 【摘要】:实现多级审批同时需要更改审批的数量与单价。
【版本】:K/310.2SP2 及以上版本
问题描述: 在 BOS 中可否实现多级审批同时需要更改审批的数量与单价的需求
解决方法: 10.2SP2以后的版本有―修改单据无需反审核到最末一级‖的选项,但它能修改单据中
所有的内容,再通过字段授权的方式控制单价和数量的权限。
【摘要】:BOS 字段多级审核后可以修改。
【版本】:K/310.2SP1
问题描述: BOS 字段多级审核后可以修改
解决方法: BOS10.2增加多级审核的功能,所以IDE 设计时也增加了[审核后锁定]的状态,如果是
BOS 新增的单据启用多级审核后且该流程勾选了[修改无须反审核到最后一级]选项, 在审核流程未完成之前,用户都可以修改未勾选[审核后锁定]的字段的内容。但单据流 程审核结束后修改按钮灰显,用户只能通过查看按钮进入,因此时整单状态为查看, 用户不能修改该张单据任何内容。如审核流程后仍有字段需要维护,可以通过在序时
簿增加一个按钮,然后在插件代码中增加如下代码:
Private Sub m_LstInterface_MenuBarClick(ByVal BOSTool AsK3ClassEvents.BOSTool,
Cancel As Boolean) Select case Bostool.name
case \
call m_LstInterface.LoadSelectedBill(IIf(CanEdit(vectSelect(1)(\客户化开发技术资
料——K/3 BOS开发百问百答
Enu_BillStatusExt_Modify, Enu_BillStatusExt_View))
case else
end select End Sub
获得单据修改状态,BOS将根据设计时状态锁定/解锁相应字段。
【摘要】:有关多级审核的问题。 【版本】:K/3v10.2SP1+PT0704
问题描述: 1. 在对一张单据进行―多级审核流程‖配置时,在对每一级审核进行配
置时,业务审核级次、业务审核人、业务审核日期都只能是一样的, 这就导致在单据序时薄测试时,启动多级审核后,多级审核中只能有 其中某一级的审核人和审核日期有数据,其余审核人和审核日期字段
都不能在相应级别审核完毕后记录数据。
2. 在设置多级审核流程后,如果在某一级驳回审核,填写的驳回意见不
能看到。
3. 设置多级审核流程后,在单据运行时, ―审核‖并没有像原有 K/3 系统 中其它单据审核一样出现在上方菜单下的按钮上,而只能在菜单中启
动多级审核。
4. 在多级审核级别之间进行―流转配置‖时,只能在中间级别之间进行 跳转,如共有 5 级审核,想要在某一条件下 4 级审核完毕后就结束,
无法实现,只能在 1-5级之间跳转。
5. ―流转配置‖时,只能增加一次流转配置,即级别之间只能进行一次
―添加关系‖ ,且添加上的关系不能删除。
6. 在设置―流转配置‖的―跳转条件‖时,字段列表中只有单据的单据
头字段,而没有单据体字段。
7. 最不方便使用的是在单据定义时,一旦添加上字段之后便不能删除, 否则便会将单据上的所有字段全部删除。新增的单据、多级审核流程、 单据转换流程保存后也不能删除。在多级审核流程中进行流转配置时
添加上的关系不能删除。
8. 在进行―单据转换流程‖定义时,不能由源单的单据体下推生成目的
单的单据头。
客户化开发技术资料——K/3 BOS开发百问百答
解决方法: 1、 每一级审核都已经记录了审核人、审核日期、审核意见,在单据上―多级审核‖
页可以很清楚的看到。单据序时簿则暂时没有提供查看各级审核人、审核日期、审核 意见的功能;这个和多级审核配置中的业务审核人、业务审核日期字段是无关的,业 务审核人只在做业务审核的时候才会同时记录,多级审核中有且只有一个级次能作为
业务审核级次,所以也只需要一个字段作为业务审核人字段;
2、 已经记录了驳回意见,但暂时没有提供驳回意见的查看。驳回意见会以消息的方
式发送出去;
3、 SP2中会进一步简化、优化多级审核,本点在列;
4、 9.30 补丁中会增加一种属性,提供给插件判断流程是否已经跳转到结束,让插件
有依据进行自动审核等操作,自动结束多级审核流程;
5、 在关闭―启用多级审核‖选项并保存后,可以自由添加、删除跳转关系;
6、 暂时没有提供单据体字段;
7、 10.2 SP增加了新功能,单据模版、多级审核配置、单据转换流程、报表等都可以
删除;
8、暂没有提供;
大力水手 2009-08-01 21:39:42.0 【摘要】:中间层的多级审核事件。
【版本】:K/3v10.3
问题描述: 中间层的多级审核事件如何调试
在 AfterMultiCheck 事件中的 (dctBillCheckRecord,审核路线数据包 )
中如判断当前审核的级次
解决方法: 首先要在单据的插件管理里引用该中间层组件,(多级审核后业务逻辑处理组件名),然
后和客户端插件一样的方法调试(也就是运行源码设置断点,再运行Bos单据即可调试。 经调试发现dctBillcheckrecord包里有两个字段,FCheckLevel和Fchecklevelto,当是 审核时fchecklevel是当前已经审核的级次,fchecklevelto是当前将要审核的级次,比 如现在要进行第四级审核,fchecklevel是3,fchecklevelto是4,而当前是反审核时,比 如说现在已经是第四级审核了,现在要反审核,则fchecklevelto仍然是4,fchecklevel 是3。该包中有字段Fmode来判断是审核还是反审核,是0表示审核,2则表反审核(以上结
果你也可以通过调试来看到dctBillcheckrecord包的内容)。
【摘要】:BOS 审核权限 【版本】:K/3v10.3
问题描述: 目前 BOS 只能指定哪些人具有审核权限,由制单人从中指定具体哪个人来
审核他所制定的具体单据貌似实现不了
做一个单据头项目―指定审核人‖为从审核人中选取,由制单人手动指定, 具有审核权限的人在操作该单据序时簿时,强制限制只能看到―指定审核
人‖为自己的单据。
现在问题是不知道在哪里和怎样加这个硬性限制了
另外也曾经想过为该 BOS 单据单独新增一个核算项目,内容是所有具有审
核权限的人,然后对这个核算项目按照人名对照进行数据授权,把这个核客户化开发技术资料——K/3 BOS
开发百问百答
算项目加在单据头上作为―指定审核人‖,这样在制单人也具有审核权显 时设置比较费劲,同时如果需要这样做的单据比较多,对应的核算项目也
不少,维护起来费劲
解决方法: 1、方案一,10.4提供了审核时指定消息接收人,可通过消息来触发审批工作;
2、方案二,仍通过核算项目的数据授权完成;
3、方案三,通过序时簿的listfilterstring完成(10.4该属性将长期整个序时簿周期都有效)
【摘要】: 不同级次驳回功能存在问题,审核流程不流畅
【版本】:K/3v10.3.1
问题描述: 多级审核里面我们审核级次如果选一级审核
发现的问题有: 1、审核人要驳回没地方点
2、设置消息启动审核到启动审核的话,如果我制单人单子保存好后不去点 一下那个启动多级审核或者多级审核, 审核人进去的时候K3消息是没有的。 一定要制单人单子保存好后不去点一下那个启动多级审核或者多级审核,
那个审核人才能收到消息。
还有这个启动多级审核或者多级审核谁点消息的发送人就写谁的名字。
解决方法: 目前建议通过开发插件解决自动启动多级审核BOS 单据的功能,实现方式 如下:
在Private Sub m_BillInterface_AfterSave(bCancel As Boolean) 接口上写入
m_BillInterface.MultiCheckMgr.MultiCheckBill
m_BillInterface.BillCtl.CurBillID, True
其他需求,此版本已基本实现,如驳回功能,系统已在菜单栏提供,驳回的接收人可
指定为系统中的用户。
客户化开发技术资料——K/3 BOS开发百问百答
【摘要】:在打开单据的情况下点击审核菜单,显示 XX 单据审核成功,但单据并未立即 切换到字段锁定状态,即此时单据内容(如分录中的各项信息等)均可修改,关闭单据后
再次打开,正常。反审核也如此。
【版本】:K/3v11.0 以前
问题描述: K/3 BOS 单据是否支持批量审核? 如果不支持, 可否编写此方面的插件?
能否给过一段示例代码? 序时薄接口对象现在没有审核事件可供调用, 那
所有的审核代码都得在插件中自己写
解决方法: K/3BOS 目前设定的,因不仅只有单据审核后才更改单据状态(插件的功能也有可能更
新) ,所以如果做在BOS功能点将会造成其他功能的状态控制有误,所以程序将该功能 的控制点在于单据的保存按钮灰显,虽然状态没有刷新,可用户也无法保存更新单据,
驳回审核这里确实有点不方便。 目前可以在插件中用如下代码规避该问题 Private Sub m_BillInterface_BeforLoadBillFillData()
'判断审核人是否为空
If Val(m_BillInterface.BillHeads(1).BOSFields(\
m_BillInterface.BillCtl.BillStatus = 0'设置单据状态为只读
Else
m_BillInterface.BillCtl.BillStatus = 2'设置单据状态为修改
End If End Sub
客户化开发技术资料——K/3 BOS开发百问百答
四、单据转换流程篇
【摘要】:新单推老单不能实现钩稽功能
【版本】:K/3v10.2SP1
问题描述: bos 单据,只有单据头,没有单据体,现要下推生成外构入库单,在单据关
联时, 提示与老单关联必须输入物料和计量单位,设了单据头的物料和计 量单位后,还是提示必须输入物料和计量单位。忽视此问题,在下推到入
库单时,物料的单位带不出来,后期也加不上。
是否只有单据体关联才不会出错,单据头的物料和计量单位为什么不行。
解决方法: 1、 在 sp1的环境下新老单不能实现钩稽功能,其他关联关系功能也不健全。
2、 在 SP2的环境虽然提示―老单关联必须输入物料和计量单位‖,但选择继续
能完成你需要的功能。
【摘要】:新单推老单不能实现钩稽功能
【版本】:K/3v10.2SP1
问题描述: bos 单据,只有单据头,没有单据体,现要下推生成外构入库单,在单据关