K3工业单据二次开发组件参考手册
K3Bi I I Transfer组件使用参考 客户化开发工具包参考手册 目录 目录1 概述1 属性1 方法2 事件4 中间层事件7 应用示例8 概述 单据二次开发是针对现目前单据的一些功能无法满足一些客户的特殊要求,同时分公司又有能力进行 二次开发而提出的,这样既可以在现有的系统不做变动的情况下面满足用户的需求,同时也增强了系统的 稳定性。 9 注意:本篇所介绍所用到的动态连接库名为:K3BillTransfer.dll 通过该说明文档,你可以了解到 1. 如何通过K3BillTransfer组件在录单过程中对单据上各项目加以控制。 2. 如何通过K3BillTransfer组件实现自定义功能菜单。 3. 如何通过K3BillTransfer组件控制数据的保存。 4. 应用示例。 该文档阅读的适用对象 需要在K/3工业供需链系统单据上进行二次开发的开发者。 属性 1 . Property Cnnstring As String 当前数据库的MMTS.PropsString连接串。 2. Property System Name As String 当前系统名称。 3. Property Lastinfo As String 最后一次系统返回的各种信息 4. Property Bill As Obj ect 整个单据窗体对象。可通过该对象访问单据上的任何一个对象,包括控件,菜单。 共有的方法有:lnsertRow(),在Grid的当前行追加一行,它没有参数。 5. Property BillFunc as Object 代表单据对象。目前没什么用途。 6. Property Head As Object 单据表头控件,是一个KDText控件数组 7. Property Grid As Object 单据分录控件,为FpSpread控件 8. Property SumGrid As Object 单据分录合计控件,为FpSpread控件 9. Property HeadCtl As Variant 对应表头控件数组,记录每个表头项目各属性的数组 如果要改变HeadCtl中的某个属性值,需先对HeadCtl做一个备份,然后修改此备份的相应属性 值,再将此备份赋值给HeadCtL 1 0. Property EntryGtl As Variant 对应分录各列,记录每个分录列各属性的数组 如果要改变EntryCtl中的某个属性值,需先对EntryGtl做一个备份,然后修改此备份的相应属性 值,再将此备份赋值给EntryCtL 1 1 . Property SaveVect As KFO.Vector 二次开发外部数据存取接口。在录单过程中,用户可将某些数据保存在此Vector中,在单据保存时, 再通过二次开发中间层组件,将此Vector中的数据保存到指定位置。 SaveVect.Item(1)为一个 KFO.Dictionary 对象 该对象包含以下四个系统数据 SaveVect.Item(1 ).Value(“FlnterlD“):单据内码 SaveVect.ltem(1 ).Value(“FTransType“):单据事务类型 SaveVect.Item(1 ).Value(“ISRedBill *):是否红字单据 SaveVect.ltem(1 ).Value(“BillChecked“):是否审核。 方法 1 . Function AddUserMenultem(ByVal Caption As String, [ By Vai RootMenuCaption As String = ””]) 说明: 添加一个用户自定义菜单项,系统一共预设了五个菜单项供二次开发使用 参数: Caption:菜单名称 RootMenuCaption:根菜单名称。缺省为“自定义菜单” 2. Fu notion GetGridText( By Vai Row As Long, By Vai Col As Long) As String 说明: 获取分录某单元格的值 参数: Row:分录行 Col:分录列 3 . Fu notion GetHeadNum be r( By Vai Ct 11 nd ex As Long) As String 说明: 获取表头某项的代码 参数: Ctllndex:表头控件索引 4. Fu notion GetHeadText( By Vai Ct 11 nd ex As Long) As String 说明: 获取表头某项的文本 参数: Ctllndex:表头控件索引 5. Fu notion GetSu mGridText(ByVal Row As Long, By Vai Col As Long) As String 说明: 获取合计行某列的值 参数: Row:行。一般为1 Col:分录列 6. Function SetGr idText( By Vai Row As Long, By Vai Col As Long, By Vai Value, [By Vai I nter I D As Long = 0], [ By Vai sNam e As String = ““ ]) As Boolean 说明: 设置分录某单元格的值,当分录为查找类型时,会把相应的信息一起携带到相应的位置,如当 为物料代码时,它会携带物料的一些基本信息物料名称等。 参数: Row:分录行 Col:分录列 Value:设置的值。如果该单元格是查找类型的,Value应设置为代码。 InterlD:暂未使用 sName:暂未使用 7 . Function SetHead( By Vai I ndex As Long, By Vai Value, [ By Vai I nter I D As Long = 0], [ By Vai sNam e As String = ““ ]) As Boolean 说明: 设置表头某项的值 参数: Index:表头控件索引 Value:设置的值。如果该表头项是查找类型的,Value应设置为代码。 InterlD:暂未使用 sName:暂未使用 8. Fu notion SetSu mGridText(ByVal Row As Long, By Vai Col As Long, By Vai Value) As Boolean 说明: 设置分录合计某列的值 参数: Row:分录行。一般为1 Col:分录列 Value:设置的值。 用户可实现自己功能的事件 1 . Public Event Billl nitialize() 单据初始化完成时激发该事件 2. Public Event BillTerm inate() 单据卸载完成时激发该事件 3. Pu blic Event UserMenuClick(ByVal Index A