金蝶二次开发 K3插件开发 指导手册(初稿)(优选.)

合集下载

金蝶k3-最全的操作使用手册图文(最新版本)

金蝶k3-最全的操作使用手册图文(最新版本)

K3 wise 12 版本系统概述关于本系统总账系统是财务会计系统中最核心的系统,以凭证处理为中心,进行账簿报表的管理。

可与各个业务系统无缝联接,实现数据共享。

企业所有的核算最终在总账中体现。

本系统主要功能有:✓多重辅助核算✓科目计息控制✓科目预算控制✓凭证分账制核算流程✓强大的账簿报表查询✓多币别核算的处理✓现金流量表的制作✓往来业务的核算处理,精确计算账龄✓与其他业务系统无缝链接✓对业务系统生成的凭证提供明细管理功能✓自动转账设置✓期末调汇的处理✓期末损益结转✓结账日的控制可以进行月份的选择✓集团内部往来协同1.1.1多重辅助核算:在总账系统中,可对科目设置任意多的核算项目进行多重辅助核算。

并且提供丰富的核算项目账簿和报表,满足企业对多种辅助核算信息的项目管理。

1.1.2提供科目计息控制:在未使用结算中心系统时,可以对科目进行利息计算,提供资金管理,计算科目积数与利息,计算各种资金机会成本。

1.1.3提供科目预算控制:可进行科目预算,科目预算也可从预算管理系统中引入,从而在凭证录入时可根据需要进行各种控制。

而与预算管理系统集成使用,可以实现更复杂的预算管理与控制。

1.1.4提供凭证分账制核算流程:系统在提供对外币通常的核算要求——统账制的基础上,同时提供了分账制核算要求下的从凭证处理到业务报表的完整核算流程。

1.1.5强大的账簿报表查询:查询账簿报表时,可追查至明细账直至凭证,同时可查询到核算项目信息。

有跨期查询功能,可以在本期未结账的情况下查询以后期间的数据。

提供多种核算项目报表的查询,可进行多核算项目类别的组合查询。

具体提供的账簿包括:总分类账、明细分类账、数量金额总账、数量金额明细账、多栏账、核算项目分类总账、核算项目明细账等;具体提供的报表包括:科目余额表、试算平衡表、日报表、摘要汇总表、核算项目余额表、核算项目明细表、核算项目汇总表、核算项目组合表、核算项目与科目组合表、科目利息计算表、调汇历史信息表等。

K3客户化开发指导手册v1.0

K3客户化开发指导手册v1.0
K/3 客户化开发指导手册 v1.0
©金蝶软件(中国)有限公司 K/3 产品事业部.设计部
概述
随着 K/3 系统的广泛应用,越来越多的 K/3 客户,特别是一些特殊行业的客户希望利用 K/3 系统实现个性化需求,进行个性化的客户化开发。为了能满足客户的个性化要求,同时 标准化 K/3 系统的二次开发,特别提供了 K/3 客户化开发指导手册和工具包,为二次开发配 备资源,指导客户进行 K/3 系统的二次开发以满足自身的个性化需求。
通过该文档,您可以了解到
1、 定制 K/3 登录 Logo 2、 定制主控台菜单并调用客户化开发模块 3、 工业单据二次开发 4、 代理服务二次开发 5、 K/3 凭证接口 6、 K/3 发票接口 7、 K/3 数据交换接口 8、 K/3BOS 定制开发 9、 第三方系统集成无界面登录 K/3 10、K/3HR 系统无界面登录 11、提供无界面凭证引入功能 12、K/3HR 系统对外接口
2
定制 K/3 登录 Logo
登录界面添加客户化 Logo
在中间层 KDCOM 下新建一个文件夹,命名为 eptlogo 并将其设置为只读共享,然后制作 一个 BMP 格式的图片,大小为 145×180,命名为 enterprise_logo.bmp,然后在客户端的主 控台编辑器启用企业界面即可。
该文档阅读的适用对象
1、 金蝶 K/3 系统开发工程师 2、 机构 K/3 二次开发工程师 3、 客户 K/3 定制开发人员 4、 想了解 K/3 客户化开发的人员
1
目录
目录 ....................................................................................................................... 2 定制K/3 登录Logo ................................................................................................... 3

金蝶K3 BOS插件开发手册

金蝶K3 BOS插件开发手册

K/3 BOS插件开发手册K/3 BOS插件开发手册(版本:V12.1)金蝶软件(中国)有限公司BOS系统部K/3 BOS系统部目录概述 (1)COM (1)K3ClassEvents的对象模型 (1)使用说明 (1)K3ClassEvents的对象 (2)ListEvents对象参考 (3)DataSrv 属性 (3)EnableListFillRowEvents 属性 (4)K3Lib 属性 (5)List 属性 (6)ListEntrySort 属性 (6)ListFilterString 属性 (7)ListHeadSort 属性 (7)MenuBar 属性 (7)MultiCheckMgr 属性 (8)RsId 属性 (8)ShowMode 属性 (9)ShowMsg 属性 (9)DeleteBill 函数 (9)GetDataFldByKey 函数 (10)GetDataFld 函数 (11)GetCurrentSelRowInfo 函数 (12)GetSelectedBillInfo 函数 (13)LoadSelectedBill 函数 (14)RefreshList函数 (15)SenderMessage 函数 (15)UpdateNormalFld 函数 (16)UpdateNormalFldByKey 函数 (17)RefreshMenu 函数 (17)AfterBatchMultiCheck事件 (18)AfterBusinessCheck 事件 (18)AfterBusinessCheckEx 事件 (18)AfterCopyBillCreateData 事件 (19)AfterDeleteBill 事件 (19)AfterMergeCopyBill事件 (20)AfterMultiCheck 事件 (20)AfterMultiCheckEx 事件 (21)AfterSelList 事件 (21)AfterUnBusinessCheck 事件 (21)AfterUnBusinessCheckEx 事件 (22)AfterUnMultiCheck 事件 (22)BeforeMultiCheck 事件 (23)BeforeMultiCheckEx 事件 (24)BeforePrintBill 事件 (24)BeforeSenderMessage 事件 (25)BeforRefreshToolBar 事件 (25)BusinessCheck 事件 (26)BusinessCheckEx 事件 (26)FinishMultiCheck 事件 (26)FinishMultiCheckEx 事件 (27)ListFillRow 事件 (28)ListRowSelected 事件 (29)MenuBarClick 事件 (30)MenuBarInitialize 事件 (30)MultiCheck 事件 (30)MultiCheckEx 事件 (31)PrintSuccessful事件 (32)StartMultiCheck 事件 (32)StartMultiCheckEx 事件 (33)UnBusinessCheck 事件 (33)UnBusinessCheckEx 事件 (34)UnMultiCheck 事件 (34)UnMultiCheckEx 事件 (35)ReMultiCheck 事件 (35)ReMultiCheckEx 事件 (36)ReUnMultiCheck 事件 (36)ReUnMultiCheckEx 事件 (37)BaseClassEvent对象参考 (38)BrowseCtl 属性 (38)DataSrv 属性 (38)EnableListFillRowEvents 属性 (38)InsertNewRowAndFillOption属性 (40)K3Lib 属性 (41)ListActiveBar 属性 (41)ListEntrySort 属性 (41)ListFilterString 属性 (42)ListHeadSort 属性 (42)MenuBar 属性 (42)RsClassGroup 属性 (43)RsId 属性 (43)GetActiveCtl 函数 (43)GetSelectedClassID 函数 (44)GetSelectedClassType 函数 (45)GetSelectedItemID 函数 (45)IsSearchState 函数 (47)PitchItemByID 函数 (48)SelectClassGroupByID 函数 (48)SenderMessage 函数 (49)SetStatus函数 (50)RefreshClassGroups 方法 (50)RefreshListByClassGroupID 方法 (51)RefreshSelectedClassGroup 方法 (51)RefreshSelectedClassGroupList 方法 (52)AfterGetData 事件 (52)BeforePrintBill 事件 (53)BeforeSenderMessage 事件 (53)ClassGroupSelected 事件 (54)DeleteBillSucessful事件 (55)ListFillRow 事件 (55)ListRowSelected 事件 (57)MenuBarClick 事件 (57)MenuBarInitialize 事件 (58)RefreshList 事件 (58)BillEvent对象参考 (59)AccessoryTypeID 属性 (59)BillCtl 属性 (59)BillEntrys 属性 (59)BillHeads 属性 (60)BillHeight 属性 (60)BillName 属性 (60)BillStatus 属性 (61)BillWidth 属性 (61)CancelPrintControl属性 (62)ClassType 属性 (62)ClassTypeEntry 属性 (62)ClassTypeKey 属性 (63)Data 属性 (63)DataSrv 属性 (63)EntryPrimaryKey 属性 (64)FID 属性 (64)InsertNewRowAndFillOption属性 (65)IsDoAction 属性 (65)IsDoActionData 属性 (65)K3Lib 属性 (66)LayerCount 属性 (66)LayerNames属性 (66)MenuBar 属性 (67)ObjectID 属性 (68)ObjectType 属性 (68)OriginalFieldValue属性 (68)PrimaryKey 属性 (69)ReSaveSuccess 属性 (69)rsBillID 属性 (69)ShowType 属性 (70)TableInfo 属性 (70)TableName 属性 (70)TaskID 属性 (71)ShowMsg 属性 (71)BatchToDoActions函数 (71)DeleteEntryData 函数 (72)GetActiveCtl 函数 (73)GetActiveField 函数 (74)GetCommonControl函数 (74)GetDataFld 函数 (75)GetDataFldbyKey 函数 (76)GetFieldInfoByKey 函数 (77)GetDynamicCtlByKey函数 (78)GetFieldValue 函数 (78)GetToolIndex 函数 (79)GetVariable函数 (80)InsertNewRowAndFill 函数 (81)IsChange 函数 (82)IsFileNeedFilter 函数 (82)LockBill 函数 (83)RefreshBill 函数 (83)SenderMessage 函数 (84)SetDecimal 函数 (84)SetFieldSumValue函数 (85)SetFieldValue 函数 (85)SetSumDecimal 函数 (87)SetText 函数 (87)SetTypeFloatMax 函数 (88)SetTypeFloatMin 函数 (88)ShowHideField 函数 (89)ShowHideGrid 函数 (90)Sum 函数 (90)UpdateLookFld 函数 (91)UpdateNormalFld 函数 (91)DoAction 方法 (92)IsDoActionByKey 方法 (92)RemoveRow 方法 (93)SaveBill 方法 (94)SetActiveTab方法 (94)SetBillFormCaption 方法 (95)SetCaption 方法 (95)SetGridMaxRows方法 (96)SetStatus 方法 (96)SetActiveCell 方法 (97)SetBillWindowState方法 (97)SetRowsPerRequest方法 (98)SetStateStampPicture方法 (98)SetStatusBarInfo方法 (99)SetVariable函数 (99)SizeBillControl方法 (100)AddNewRow 事件 (100)AfterBusinessCheck 事件 (101)AfterBusinessCheckEx 事件 (101)AfterCopyBill 事件 (101)AfterDeleteRow 事件 (102)AfterDoAction 事件 (102)AfterFillRow 事件 (103)AfterFirstNewBill 事件 (103)AfterInputBillSetSumData 事件 (104)AfterLoadBill 事件 (104)AfterLoadBillSetSumData 事件 (104)AfterLoadDynamicCtl事件 (105)AfterMergeCopyBill 事件 (105)AfterMultiCheck 事件 (105)AfterMultiCheckEx 事件 (106)AfterNewBill 事件 (106)AfterNewEmptyData 事件 (107)AfterSave 事件 (107)AfterSelBill 事件 (107)AfterSelBillBeforeFillData 事件 (108)AfterStockQuery事件 (108)AfterUnBusinessCheck 事件 (108)AfterUnBusinessCheckEx 事件 (108)AfterUnMultiCheck 事件 (109)AfterUnMultiCheckEx 事件 (109)BeforeDeleteRow事件 (110)BeforeDoAction 事件 (110)BeforeLoadBill 事件 (112)BeforeMultiCheck 事件 (112)BeforePrintBill 事件 (113)BeforeSave 事件 (114)BeforeSelBills 事件 (114)BeforeSelBillShowFilter 事件 (114)BeforeSenderMessage 事件 (115)BeforeSetMutilSelData事件 (116)BeforeSetMutilSelData2事件 (116)BeforeVerify 事件 (117)BeforeWindowExit事件 (117)BeforLoadBillFillData 事件 (117)BeginEdit 事件 (118)BusinessCheck 事件 (118)BusinessCheckEx 事件 (118)Change 事件 (119)CommandClick事件 (119)EntryFieldChanged事件 (120)FinishMultiCheck 事件 (120)FinishMultiCheckEx 事件 (121)GetFocus 事件 (121)HeadCtlClick 事件 (122)LostFocus 事件 (122)MenuBarClick 事件 (122)MenuBarInitialize 事件 (123)MultiCheck 事件 (123)MultiCheckEx 事件 (124)ReMultiCheck 事件 (125)ReMultiCheckEx 事件 (125)ReUnMultiCheck 事件 (125)ReUnMultiCheckEx 事件 (126)SaveBillFailed 事件 (126)SaveBillSuccess事件 (127)SSTabClick事件 (127)StartMultiCheck 事件 (127)StartMultiCheckEx 事件 (128)UnBusinessCheck 事件 (128)UnBusinessCheckEx 事件 (129)UnMultiCheck 事件 (129)UnMultiCheckEx 事件 (130)Verify 事件 (130)K3Lib对象参考 (132)Account 属性 (132)Net 属性 (133)User 属性 (133)CreateK3Object 函数 (137)GetData 函数 (138)GetK3Language 函数 (139)LoadKDString 函数 (140)UpdateData 方法 (142)GetStockQty 函数 (142)LookUpClass函数 (143)LoadBill 方法 (145)LoadList方法 (145)AccountID 属性 (147)AccountName 属性 (147)SetupType 属性 (147)Net对象参考 (149)BeginMutex 函数 (149)CommitMutex 函数 (149)QueryFunc 函数 (150)QuerySubSys 函数 (150)User对象参考 (151)UserID 属性 (151)UserName 属性 (151)MenuBar对象参考 (152)MenuBar 对象结构图 (152)ActiveBand 属性 (153)BOSBands 属性 (153)BOSTools 属性 (154)Refresh 方法 (154)BOSBands对象参考 (155)Count 属性 (155)Item 属性 (155)Add 函数 (155)Remove 方法 (156)RemoveAll 方法 (156)BOSBand对象参考 (157)BandName 属性 (157)BandType 属性 (157)BOSTools 属性 (157)Caption 属性 (157)CurrentTool 属性 (158)DockingArea 属性 (158)DockingOffset 属性 (158)DockLine 属性 (159)Flags 属性 (159)Visible 属性 (159)Refresh 方法 (160)BOSTools对象参考 (161)Count 属性 (161)Item 属性 (161)Add 函数 (161)GetFreeToolID 函数 (162)InsertAfter 方法 (162)InsertBefore 方法 (163)Remove 方法 (163)RemoveAll 方法 (164)BOSTool对象参考 (165)Alignment 属性 (165)BeginGroup属性 (165)Caption 属性 (165)CaptionPosition 属性 (166)Checked 属性 (166)Default 属性 (166)Description 属性 (167)Enabled 属性 (167)ShortcutKey 属性 (167)Style 属性 (170)SubBand 属性 (170)Tag 属性 (170)ToolID 属性 (170)ToolName 属性 (171)ToolPicture 属性 (171)TooltipText 属性 (171)Visible 属性 (171)PasteToolFace 方法 (171)SetPicture 方法 (172)BillHeads\BillHead\BillEntrys\BillEntry\BOSFields\BOSField对象参考 (174)MenuBar 对象结构图 (174)BillHeads对象参考 (175)Count 属性 (175)Item 属性 (176)BillHead对象参考 (177)BOSFields 属性 (177)BillEntrys对象参考 (178)Count 属性 (178)Item 属性 (179)BillEntry对象参考 (180)BOSFields 属性 (180)EntryHeight 属性 (180)EntryLeft 属性 (180)EntryTop 属性 (180)EntryType 属性 (181)EntryWidth 属性 (181)KeyField 属性 (181)Layer 属性 (181)MaxRows 属性 (182)TableName 属性 (182)Visible 属性 (182)AddRow 方法 (182)RemoveRow 方法 (183)BOSFields对象参考 (184)Count 属性 (184)Item 属性 (184)BOSField对象参考 (185)Caption 属性 (185)FieldHeight 属性 (185)FieldLeft 属性 (185)FieldLock 属性 (185)FieldName 属性 (186)FieldTop 属性 (186)FieldWidth 属性 (186)Filter 属性 (186)FKey 属性 (186)FontBold 属性 (187)FontItalic 属性 (187)FontName 属性 (187)FontSize 属性 (187)FrameBorder 属性 (188)FrameBorderColor 属性 (188)LabelColor 属性 (188)LabelWidth 属性 (188)Layer 属性 (188)MustInput 属性 (189)NeedSave 属性 (189)Note 属性 (189)Number 属性 (189)Page 属性 (189)Row 属性 (190)TableName 属性 (190)Text 属性 (190)TextColor 属性 (190)Value 属性 (190)SetFieldSumValue方法 (191).Net (192)基础配置 (192)开发环境 (192)使用说明 (192)引用 (192)插件跟踪 (192)K3ClassEvents的对象模型 (193)K3ClassEvents的对象 (193)ListEvents对象参考 (194)事件声明 (194)AfterCopyBillCreateData 事件 (195)OnBarInitialize事件 (195)AfterShowBill事件 (195)OnBarItemClick事件 (196)ShowBill函数 (196)AspxGetSelectList函数 (197)AddBarItem函数 (197)AddBarItemLink函数 (198)SetBarItemProperty函数 (199)AddBarItemLink函数 (199)RemoveBarItem函数 (200)RemoveBarItemLink函数 (200)BillName 属性 (201)ClassType 属性 (201)ClassTypeEntry 属性 (202)ClassTypeKey 属性 (202)PrimaryKey 属性 (202)EntryPrimaryKey 属性 (203)TableInfo 属性 (203)TableName 属性 (203)BillEvent对象参考 (205)事件声明 (205)OnBarInitialize事件 (206)OnBarItemClick事件 (207)AfterNewBill 事件 (207)BeforLoadBillFillData事件 (207)AfterLoadBill事件 (207)AfterShowBill 事件 (208)AfterConfirm事件 (208)AfterF7Select事件 (208)Change 事件 (209)BeforeSave 事件 (209)AddBarItem函数 (210)AddBarItemLink函数 (211)GetBarItemProperty函数 (211)SetBarItemProperty函数 (212)AddBarItemLink函数 (212)RemoveBarItem函数 (213)RemoveBarItemLink函数 (213)Alter函数 (214)Confirm函数 (214)GetFieldValue函数 (215)GetRequest函数 (216)LockCell函数 (216)LockWebTabItem函数 (217)SaveBill函数 (218)SetFieldValue函数 (218)ShowBill函数 (219)ShowF7Select函数 (220)BillName 属性 (221)ClassType 属性 (221)ClassTypeEntry 属性 (221)ClassTypeKey 属性 (222)PrimaryKey 属性 (222)EntryPrimaryKey 属性 (222)TableInfo 属性 (223)TableName 属性 (223)CurBillID属性 (224)BillHeads对象参考 (225)Count 属性 (225)Item 属性 (225)BillHead对象参考 (226)BOSFields 属性 (226)BillEntrys对象参考 (227)Count 属性 (227)Item 属性 (227)BillEntry对象参考 (228)BOSFields 属性 (228)EntryHeight 属性 (228)EntryIndex 属性 (228)EntryLeft 属性 (228)EntryTop 属性 (228)EntryType 属性 (229)EntryWidth 属性 (229)KeyField 属性 (229)TableName 属性 (230)Visible 属性 (230)BOSFields对象参考 (231)Count 属性 (231)Item 属性 (231)BOSField对象参考 (232)Caption 属性 (232)FieldHeight 属性 (232)FieldLeft 属性 (232)FieldLock 属性 (232)FieldName 属性 (233)FieldTop 属性 (233)FieldWidth 属性 (233)Filter 属性 (233)FKey 属性 (233)FontBold 属性 (234)FontItalic 属性 (234)FontName 属性 (234)FontSize 属性 (234)FrameBorder 属性 (235)FrameBorderColor 属性 (235)LabelColor 属性 (235)LabelWidth 属性 (235)Layer 属性 (235)MustInput 属性 (236)NeedSave 属性 (236)Note 属性 (236)Number 属性 (236)Page 属性 (236)Row 属性 (237)TableName 属性 (237)Text 属性 (237)TextColor 属性 (237)Value 属性 (237)Visible 属性 (238)用户场景 (239)需求 (239)总体需求 (239)需求分解 (240)详细需求 (241)单据信息 (241)单据流程 (243)多级审核 (244)设计和实现 (245)单据数据结构设计 (245)单据头 (245)单据体 (247)字段的过滤条件 (250)BOS IDE中设置过滤条件 (250)通过SQL更新字段的过滤条件 (252)Action设置 (253)自动生成Action (253)手动添加Action (256)单据流程 (258)【销售订单】下推生成【产品入库通知单】 (258)练习一下 (262)多级审核 (264)多级审核设置 (264)凭证功能 (265)设置凭证数据来源 (265)操作管理 (266)插件开发 (269)部署 (270)发布到主控台 (270)制作部署文件 (272)概述为了实现客户个性化的需求和保持K/3 BOS架构的开放性,K/3 BOS提供了插件编程,有效的扩展了K/3 BOS平台,K/3 BOS插件编程是通过K3ClassEvents对象代理实现的。

k3 功能、字段、数据权限设置操作手册

k3 功能、字段、数据权限设置操作手册

佛山市X X X有限公司实施文档功能、字段、数据权限操作手册文档作者:黄华明创建日期:2010-11-10当前版本:1.01、设置功能权限控制功能权限管理指对子系统的每一个具体功能进行授权,允许用户可以进入哪些子系统使用哪些功能。

具体操作步骤如表8-1,步骤描述是否必需(是/否)第一步选择一个用户,然后选择【功能权限】→【功能权限管理】,打开权限管是理界面,在这里可以对各功能模块的权限进行初步设置。

查询权:只允许用户查看系统中的数据。

管理权:则允许用户不仅可以查看,还可以新增、修改、删除系统的数据。

第二步单击【高级】,打开“用户权限”界面,此界面可以进行明细功能授权,否是对功能授权的进一步细化,允许用户对各种功能进行更细的授权。

否第三步在“基础资料-核算项目”这一项下的自定义核算项目和其他系统预设的核算项目一样都可以进行单独的授权,所有的核算项目都显示在“用户权限”界面中,自定义核算项目权限控制对象的增加是一个动态增加的过程,用户在基础资料中新增一个核算项目,“用户权限”界面就新增一个核算项目权限控制对象。

否第四步对于自定义核算项目的权限也和其他系统预设的核算项目一样有查看、详细信息、新增、修改、删除五种权限设置。

表8-1注意:“用户管理_功能权限管理”界面的授权是一种快捷的授权方式,如果不想进行明细的授权可以在此处授权,如想进行明细授权可以直接在“用户权限”界面授权。

2、设置字段权限控制系统默认不进行字段权限检查,只有当授权用户对指定字段设置了字段权限控制后,用户进行该数据类别的指定字段进行操作时进行权限检查。

设置字段权限控制操作步骤,如表8-11:步骤描述是否必需(是/否)第一步点击【字段权限】菜单中【设置字段权限控制】是第二步选择某一子系统下的数据类型,系统显示该数据类型的所有可授权字段。

是是第三步授权用户可以根据需要设置指定的数据类别的字段【启用字段权限控制】,并点击【应用】按钮保存设置结果。

金蝶K3wise插件二次开发与配置

金蝶K3wise插件二次开发与配置

⾦蝶K3wise插件⼆次开发与配置开发环境:K/3 Wise 13.0、K/3 Bos开发平台、Visual Basic 6.0⽬录⼀、⼆次开发插件编程⼆、代码演⽰三、配置插件四、测试插件五、插件事件附录⼀、⼆次开发插件编程 打开Visual Basic 6.0,新建⼯程ActiveX DLL: 命名为FirstPlugin.class: 引⽤类库如下: 已安装K/3 Wise,在VB 6.0菜单栏上会多出⼀个⾦蝶开发插件: 打开⾦蝶开发向导,创建⼯业单据客户端插件(⼯业单据俗称“⽼单”): 点击“确定”,选择类“FirstPlugin”: 点击“下⼀步”,这⾥我们⾃定义⼀个菜单项“插件⼯具”: 点击“下⼀步”,选择事件“UserMenuClick”: 完成向导。

⼆、代码演⽰ 代码编写如下:'配置路径:供应链-外购⼊库单'函数功能:插件⼯具--根据“长、宽、厚”⾃动计算批号'定义插件对象接⼝. 必须具有的声明, 以此来获得事件Private WithEvents m_BillTransfer As K3BillTransfer.BillDim F55 As Long, F55Text As String '长Dim F56 As Long, F56Text As String '宽Dim F57 As Long, F57Text As String '⾼Dim FDate As Long, FDateText As String '⽇期Dim FBatchNo As String '批号Dim FItemID As Long, FNumber As String '物料编码Dim FBatchManager As Boolean '是否采⽤业务批号管理Dim str As StringPublic Sub Show(ByVal oBillTransfer As Object)'接⼝实现'注意: 此⽅法必须存在, 请勿修改Set m_BillTransfer = oBillTransferEnd SubPrivate Sub Class_Terminate()'释放接⼝对象'注意: 此⽅法必须存在, 请勿修改Set m_BillTransfer = NothingEnd SubPrivate Sub m_BillTransfer_BillInitialize()'*************** 开始设置菜单 ***************m_BillTransfer.AddUserMenuItem "⾃动批号", "插件⼯具"'*************** 结束设置菜单 ***************'TODO: 请在此处添加代码响应事件 BillInitializeF55 = GetCtlIndexByFld("FEntrySelfA0155", True)F56 = GetCtlIndexByFld("FEntrySelfA0156", True)F57 = GetCtlIndexByFld("FEntrySelfA0157", True)FBatchNo = GetCtlIndexByFld("FBatchNo", True)FDate = GetCtlIndexByFld("FDate", False)FItemID = GetCtlIndexByFld("FItemID", True)End SubPrivate Sub m_BillTransfer_UserMenuClick(ByVal Index As Long, ByVal Caption As String)'TODO: 请在此处添加代码响应事件 UserMenuClickSelect Case CaptionCase "⾃动批号"'此处添加处理批号⽣成菜单对象的 Click 事件With m_BillTransferFor i = 1 To 1000If .GetGridText(i, FItemID) = "" ThenExit ForEnd If'从物料表检测是否采⽤业务批次管理Dim strSQL As String '⽤于执⾏SQLDim rs As ADODB.RecordsetFNumber = ""FNumber = .GetGridText(i, FItemID)strSQL = ""strSQL = "SELECT FBatchManager FROM t_ICItem WHERE FNumber='" & FNumber & "'"Set rs = SQLHelper.ExecuteSQL(strSQL, "")If rs.EOF = False ThenFBatchManager = rs.Fields("FBatchManager")End IfSet rs = NothingF55Text = .GetGridText(i, F55)F56Text = .GetGridText(i, F56)F57Text = .GetGridText(i, F57)If F55Text = "" Then F55Text = "0"If F56Text = "" Then F56Text = "0"If F57Text = "" Then F57Text = "0"FDateText = Replace(.GetHeadText(FDate), "-", "")If (FBatchManager = True) Then.SetGridText i, FBatchNo, F55Text & "-" & F56Text & "-" & F57Text & "-" & FDateTextEnd IfNextEnd WithCase ElseEnd SelectEnd Sub'*****************************************'获取分录⾏数'*****************************************Public Function GetEntryMax() As LongDim k As LongDim iFItemID As LongDim oEntryCtl As VariantDim maxrow As Long '最⼤⾏'For k = LBound(m_BillTransfer.EntryCtl) To UBound(m_BillTransfer.EntryCtl)If UCase(m_BillTransfer.EntryCtl(k).FieldName) = UCase("FItemID") Then '物料代码所在列iFItemID = kExit ForEnd IfNext koEntryCtl = m_BillTransfer.EntryCtlmaxrow = UBound(oEntryCtl(iFItemID).DInterID) '获取表体最⼤⾏GetEntryMax = maxrowEnd Function'**********************************'返回单据字段顺序(isEntry True是表体)'**********************************Public Function GetCtlIndexByFld(ByVal fldName As String, Optional ByVal isEntry As Boolean = False) As LongDim ctlIdx As LongDim i As IntegerDim isFind As BooleanDim vValue As VariantfldName = UCase(fldName)isFind = FalseWith m_BillTransferIf isEntry ThenFor i = LBound(.EntryCtl) To UBound(.EntryCtl)If UCase(.EntryCtl(i).FieldName) = fldName ThenctlIdx = .EntryCtl(i).FCtlOrderisFind = TrueExit ForEnd IfNext iElseFor i = LBound(.HeadCtl) To UBound(.HeadCtl)If UCase(.HeadCtl(i).FieldName) = fldName ThenctlIdx = .HeadCtl(i).FCtlIndexisFind = TrueExit ForEnd IfNext iEnd IfEnd WithIf isFind = True ThenGetCtlIndexByFld = ctlIdxElseGetCtlIndexByFld = 0End IfEnd Function三、配置插件 在Visual Basic 6.0⽣成DLL: 启动K/3 Wise BOS开发平台,打开外购⼊库单,并进⾏插件配置: 点击“插件配置管理”,配置客户端插件: 点击“浏览”,找到插件并勾选: 点击“确定”,并保存外购⼊库单。

金蝶K3WISE基础二次开发及案例

金蝶K3WISE基础二次开发及案例
新增COM+组件需要修改配置文件: $/CODE/K3Base/Public/database/MtsSpSetup.LST
$/CODE/K3Base/Public/database/KDCom.cfg $/CODE/K3Base/Public/database/KdLogin.Lst
版权所有 ©1993-2009 金蝶软件(中国)有限公司
基础二次开发及案例
张庆
金蝶软件(中国)有限公司
研发中心
版权所有 ©1993-2009 金蝶软件(中国)有限公司
提纲

K/3环境配置及常见问题 基础领域主要模块及代码结构 基础领域常用开发接口说明及事例代码 问题交流
版权所有 ©1993-2009 金蝶软件(中国)有限公司
P2
K/3环境配置及常见问题

版权所有 ©1993-2009 金蝶软件(中国)有限公司
P6
基础资料
版权所有 ©1993-2009 金蝶软件(中国)有限公司
P7
主控台Biblioteka 版权所有 ©1993-2009 金蝶软件(中国)有限公司
P8
帐套管理
版权所有 ©1993-2009 金蝶软件(中国)有限公司
P9
用户管理,权限管理
版权所有 ©1993-2009 金蝶软件(中国)有限公司
P14
基础领域常用开发接口说明及事例代码
版权所有 ©1993-2009 金蝶软件(中国)有限公司
P15
基础领域常用开发接口说明及事例代码
基础领域插件化开发: 1.基础资料插件化开发 2.用户权限管理插件化开发 3.系统参数平台插件化开发
版权所有 ©1993-2009 金蝶软件(中国)有限公司

金蝶K3全系列使用手册

金蝶K3全系列使用手册

金蝶K3系统K/3系统是它融合先进的管理思想,结合国内企业实际情况,采用MS SQL Server 7.0大型数据库、三层结构和组件式开发等先进技术,严格遵循Windows DNA架构提供网络分布式应用,抓住企业物流和资金流两条主线,优化企业流程,为企业管理层提供最佳的企业管理手段。

使企业信息资源充分共享,全面提升企业的市场应变能力和整体竞争力。

K/3ERP系统主要由三个产品内容组成:K/3财务管理系统、K/3工业管理系统、K/3商贸管理系统。

三个产品内容的应用功能涵盖了中国企业的各种应用需求,形成了以企业自身经营活动为中心,包括供应链管理(SCM)、客户关系管理(CRM)、价值链管理(VM)、知识管理(KM)四个功能管理系统,涉及供应市场、消费市场、资本市场、知识市场四个企业外部环境的信息管理。

完全满足中国企业用户的功能需求。

同时为了满足企业电子商务发展的需要,K/3 ERP的三个产品内容都支持基于Internet的Web应用,完全满足基于浏览器的软件应用,这就是发展成熟的K/3的e系统。

充分满足了不同企业用户的操作习惯和使用要求。

K/3ERP系统的功能组成图如下:K/3 ERP软件产品立足企业实际情况,充分吸收MRPII、JIT等先进的管理理念和技术,扬弃国外ERP软件系统设计思想,集成了对企业物流、资金流、信息流的业务和财务管理功能,优化了企业内部管理和控制的职能,帮助企业实现基础化的管理,提出和推行完善的“数据——信息——决策——控制”的企业管理解决方案,帮助顾客成功。

其三个产品内容的主要功能分述如下。

●K/3财务管理系统在承接部门级财务软件产品金蝶2000客户群的基础上,K/3财务管理系统更加突出了面向中、大型企业和集团型企业用户的应用功能。

一方面在技术上保证了大规模并发用户使用的稳定性;另一方面,除普通财务管理的应用功能之外,还提供了集团控制、结算中心等功能模块,结合管理会计的功能模块,极大地加强了各种类型企业用户的财务管理和控制功能,提高了企业的财务运筹能力。

金蝶K3供应链系统内部技术分析手册之一(初始化设置篇)

金蝶K3供应链系统内部技术分析手册之一(初始化设置篇)

金蝶K3供应系统内部技术分析手册(初始化设置篇)目录一、工业物流初始设置 (3)1.1工业初始化 (3)1.1.1初始化参数设置 (3)1.1.1处理流程 (3)1.1.1.2相关的数据结构: (3)1.1.1.3其他 (5)1.1.2初始化功能流程 (5)1.1.2.1.初始数据录入 (5)1.1.2.2流程 (6)1.1.2.3传递余额到总帐 (7)1.1.2.4初始余额数据录入和保存:icinvinitial (10)1.1.2.5初始化数据的规则 (11)1.1.3结束初始化 (13)1.3.1检查条件如下 (13)1.1.3.2结束初始化过程 (13)1.1.3.3结束初始化的处理内容 (13)1.1.4 反初始化 (13)1.1.5初始化以前三类单据 (14)1.2工业系统参数设置 (15)1.2.1系统设置 (15)1.2.2编码规则设置 (15)1.2.3打印控制 (16)1.2.4单据科目类型 (16)1.2.5工业整体选项:共17项 (16)1.2.6采购系统选项:共10项 (16)1.2.7销售系统选项:共11项 (17)1.2.8仓存系统选项 (17)1.2.9核算系统选项共11项 (17)1.2.10成本核算共4项 (18)1.2.11生产系统选项共11项 (18)1.2.12车间1项 (18)1.2.13 业务流程设计应用: (18)1.2.14其他: (19)1.3工业辅助功能 (19)1.3.1多级审核 (19)1.3.2供应商供货信息 (20)1.3.3物料对应表 (21)1.3.4价格资料 (22)1.3.5折扣资料 (23)1.3.6信用管理 (24)1.3.7批号管理 (25)1.3.8条形码,条形码关联 (26)1.3.9客户BOM和批号对应表 (27)一、工业物流初始设置1.1工业初始化1.1.1初始化参数设置1.1.1处理流程核算参数得设置流程:启用年度和启用期间---------税率----------核算方式------库存结余控制-------库存更新控制---------销售模块设置参数说明:启用年度和启用期间:业务实际的启用年度和期间,其自定义得期间规则参照总帐的设置税率:系统默认为17%,输入时只输入%前面的数据即可,不要输入0.17等数据,参照总帐核算方式:数量核算”和“数量、金额核算”两种方式,“数量核算”,系统以后只核算数量,不核算金额,数量、金额核算”是对材料的数量和成本都核库存结余控制:确定是否允许负结存,负结存是库存即时数量为负数库存更新控制:单据审核后才更新,单据保存后立即更新,在新增、修改、复制、删除、作废、反作废该库存单据时进行库存调整销售模块设置:日常业务中是否存在企业集团内部销售业务,1.1.1.2相关的数据结构:整个核算参数涉及的数据流程如下1.表示销售模块设置是否启用集团分销0:不区分1:区分数据存放于: t_SystemProfile系统参数表 FCategory='GL' AND Fkey='DisCivilExportSale')例如:设置保存过程IF Exists(select * from t_SystemProfile WHERE FCategory='GL' AND Fkey='DisCivilExportSale')UPDATE t_SystemProfile SET FValue='1' WHERE FCategory='GL' AND Fkey='DisCivilExportSale'ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('GL','DisCivilExportSale','1')2-税率参照总帐税率, 数据存放于FCategory='GL' AND Fkey='TaxRate例如:设置保存过程IF Exists(select * from t_SystemProfile WHERE FCategory='GL' AND Fkey='TaxRate')UPDATE t_SystemProfile SET FValue='17' WHERE FCategory='GL' AND Fkey='TaxRate' ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('GL','TaxRate','17')3.表示启用年度和期间,目前年度和期间,数据存放于'CurrentPeriod' 'CurrentYear','StartPeriod','StartYear'例如:设置保存过程IF Exists(select * from t_SystemProfile WHERE FCategory='IC' AND Fkey='CurrentPeriod')UPDATE t_SystemProfile SET FValue='7' WHERE FCategory='IC' AND Fkey='CurrentPeriod'ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('IC','CurrentPeriod','7')IF Exists(select * from t_SystemProfile WHERE FCategory='IC' AND Fkey='CurrentYear')UPDATE t_SystemProfile SET FValue='2003' WHERE FCategory='IC' AND Fkey='CurrentYear'ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('IC','CurrentYear','2003')goIF Exists(select * from t_SystemProfile WHERE FCategory='IC' AND Fkey='StartPeriod')UPDATE t_SystemProfile SET FValue='7' WHERE FCategory='IC' AND Fkey='StartPeriod' ELSEINSERT INTO t_SystemProfile(FCategIF Exists(select * from t_Syory,FKey,FValue) V alues('IC','StartPeriod','7')gostemProfile WHERE FCategory='IC' AND Fkey='StartYear')UPDATE t_SystemProfile SET FValue='2003' WHERE FCategory='IC' AND Fkey='StartYear'ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('IC','StartYear','2003')4.历史遗留的暂估凭证 , 数据存放于FCategory='IC' AND Fkey='ZanguV oucher'例如:设置保存过程:IF Exists(select * from t_SystemProfile WHERE FCategory='IC' AND Fkey='ZanguV oucher')UPDATE t_SystemProfile SET FValue='0' WHERE FCategory='IC' AND Fkey='ZanguV oucher'ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('IC','ZanguV oucher','0')5.库存结余控制(是否允许负结存(1--允许,0--不允许)数据存放于'UnderStock'例如:设置保存过程IF Exists(select * from t_SystemProfile WHERE FCategory='IC' AND Fkey='UnderStock')UPDATE t_SystemProfile SET FValue='1' WHERE FCategory='IC' AND Fkey='UnderStock' ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('IC','UnderStock','1')6.-核算方式0:数量核算,1:数量、金额核算,数据存放于FCategory='IC' AND Fkey='AuditChoice'例如:设置保存过程IF Exists(select * from t_SystemProfile WHERE FCategory='IC' AND Fkey='AuditChoice')UPDATE t_SystemProfile SET FValue='1' WHERE FCategory='IC' AND Fkey='AuditChoice' ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('IC','AuditChoice','1')go7.库存更新控制0:审核更新,1:保存更新数据存放于FCategory='IC' AND Fkey='UPSTOCKWHENSA VE') 例如:设置保存过程IF Exists(select * from t_SystemProfile WHERE FCategory='IC' AND Fkey='UPSTOCKWHENSA VE') UPDATE t_SystemProfile SET FValue='1' WHERE FCategory='IC' AND Fkey='UPSTOCKWHENSA VE' ELSEINSERT INTO t_SystemProfile(FCategory,FKey,FValue) Values('IC','UPSTOCKWHENSA VE','1')1.1.1.3其他核算参数的设置前提有两个:工业供需链系统处于初始化阶段工业供需链系统中不存在任何已录入的初始余额和业务单据1.1.2初始化功能流程1.1.2.1.初始数据录入处理流程采用加权平均法、移动平均法计价的物料:不进行批次管理,直接在“初始数据录入”界面的右边录入期初数量、期初金额;进行批次管理,物料必须保证所有批次的年初余额、期初余额的单价一致,录入每批次的初始数据,对于期初余额,只在“合计行”录入计划成本法计价的物料:直接在“初始数据录入”界面的右边录入期初数量、差异类数采用先进先出法、后进先出法计价的物料:需要通过单击“物料”和“批次/顺序号”对应的空白按钮、调出顺序录入数据分批认定法计价:必须进行业务批次管理,因此需要通过单击“物料”和“批次/顺序号”对应的空白按钮初始录入:初始数据分仓库、仓位录入如果是年中启用:年初金额,年初差异,本年累计收入数量,本年累计收入金额,本年累计收入差异,本年累计发出数量,本年累计发出金额,本年累计发出差异等根据帮助说明,进行相关入录,平衡得到。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

金蝶 K/3 BOS V10.1插件开发指导手册金蝶软件(中国)有限公司2004.9目录打个小广告:金蝶二次开发技术交流QQ群①群 30121062 已满②群 28307002 未满③群待定大家共同学习共同进步1开发基础 (3)1.1插件开发概念 (3)1.2插件开发配置 (3)2开发指南 (4)2.1创建一个金蝶K/3 BOS 插件 (4)2.1.1创建一个金蝶K/3 BOS 客户端事件插件 (4)2.1.2创建一个金蝶K/3 BOS 中间层事件插件 (9)2.2自定义金蝶K/3 BOS 标准菜单、工具栏 (11)2.3添加新的菜单、工具栏 (12)2.4添加新的事件、方法 (12)2.5访问中间层和数据库 (12)2.6保存数据 (12)3参考 (13)3.1客户端插件事件、方法、属性 (13)3.2中间层插件事件 (13)3.3判断业务对象引用存储过程 (13)3.4金蝶K/3 BOS数据库结构 (13)4示例 (13)4.1XXX (13)1开发基础1.1插件开发概念金蝶K/3运行平台为金蝶K/3 BOS开发的业务单据提供了稳定、标准的运行环境,但为了实现客户更加个性化的需求和保持金蝶K/3 BOS架构的开放性,还为客户化开发提供了插件编程机制:通过金蝶K/3 BOS业务单据和序时簿事件代理组件,把业务单据处理的关键事件接口抛出,客户可以接收这个事件代理组件,并对组件的抛出事件编程,从而实现个性化的事件处理方法,对金蝶K/3 BOS运行平台进行有效的扩充和扩展。

需要注意的是:a) 当前版本的金蝶K/3 BOS支持的插件,仅应用在金蝶K/3的GUI版本,不支持WEB版本;b) 当前版本的金蝶K/3 BOS支持采用Microsoft Visual Basic 编写的插件,采用的类型推荐为ActiveX DLL 类型;c) 当前版本的金蝶K/3 BOS支持的插件分为客户端事件插件、中间层事件插件;在本手册中,我们所有关于金蝶K/3 BOS插件的定义、描述、示例等,都符合上述3点特征。

1.2插件开发配置开发、调试金蝶K/3 BOS插件,需要安装:a) 金蝶K/3 客户端部件b) 金蝶K/3 BOSc) Microsoft Visual Basic(推荐使用v6.0 版本,并且安装SP5)另外,如果要通过插件在K/3 BOS标准单据、序时簿界面上增加菜单、工具条,还需要安装:d) Data Dynamics ActiveBar ActiveX v1.0.6.5同时,我们推荐:a) 采用Microsoft Windows 2000 Server(及以上版本)等Server类操作系统作为开发、调试操作系统;b) 在该操作系统上安装Microsoft SQL Server 2000数据库;c) 在该操作系统上安装金蝶K/3 客户端部件、金蝶K/3 中间层部件、金蝶K/3BOS;这样,我们就可以同时开发、调试金蝶K/3 BOS客户端事件插件和金蝶K/3 BOS中间层插件了。

2开发指南2.1创建一个金蝶K/3 BOS 插件在安装、配置完1.2 要求的环境后,我们就可以开始创建一个金蝶K/3 BOS插件了。

2.1.1创建一个金蝶K/3 BOS 客户端事件插件要创建一个金蝶K/3 BOS 客户端事件插件,请按照以下步骤操作:1) 启动Microsoft Visual Basic 6.0。

2) 在出现的“New Project”对话框中选择“ActiveX DLL”。

3) 选择菜单“Project”—〉“References”。

4) 在出现的“References”对话框中,选择下述2项:K3ClassEvents●Kingdee Foundation Objects 1.0如果没有在这个列表中没有找到上述2项,可以点击对话框上的“Browse”按键,在出现的打开文件对话框中分别选择本机上的●K3ClassEvents.dll●Kfo10.dll这2个DLL文件即可(一般在金蝶K/3 客户端部件的安装目录中可以找到)。

5) 重新命名工程及类模块名称,保存工程。

例如将默认的新建工程名和类模块名改为下图所示。

6) 在BOSPlugIns.cls类模块的代码中写入如下的代码。

Option ExplicitPrivate WithEvents m_BillInterface As K3ClassEvents.BillEvent '必须具有的声明, 以此来获得单据事件'这个 Public Sub 必须存在, 且必须如下格式, 请不要修改或删除Public Sub Show(ByVal oBillInterface As Object)'这里获得了K/3的单据对象. 共有 26 个事件, 11 个属性和 49 个方法可以使用'具体的事件、属性、方法,可以通过 VB IDE 的“Object Browser”工具,选'择“K3ClassEvents”下的“BillEvent”察看Set m_BillInterface = oBillInterfaceEnd Sub'这个 Private Sub 必须存在, 且必须如下格式, 请不要修改或删除Private Sub Class_Terminate()'释放K/3的单据对象Set m_BillInterface = NothingEnd SubCode 1: 客户端单据事件插件连接代码在上面的代码中,我们定义了一个名为m_BillInterface的BillEvent对象,来接受金蝶K/3 BOS 的客户端单据事件。

在BOSPlugIns.cls类模块的代码中写入如下的代码则可以接受金蝶K/3 BOS的客户端序时薄事件。

Option ExplicitPrivate WithEvents m_ListInterface As K3ClassEvents.ListEvents '必须具有的声明, 以此来获得序时薄事件'这个 Public Sub 必须存在, 且必须如下格式, 请不要修改或删除Public Sub Show(ByVal oListInterface As Object)'这里获得了K/3的序时薄对象. 共有 8 个事件, 5 个属性和 15 个方法可以使用'具体的事件、属性、方法,可以通过 VB IDE 的“Object Browser”工具,选'择“K3ClassEvents”下的“ListEvents”察看Set m_ListInterface = oListInterfaceEnd Sub'这个 Private Sub 必须存在, 且必须如下格式, 请不要修改或删除Private Sub Class_Terminate()'释放K/3的序时薄对象Set m_ListInterface = NothingEnd SubCode 2: 客户端序时薄事件插件连接代码如果希望在一个插件中同时可以处理客户端单据事件和序时薄事件,可以通过在工程中添加1个类模块,如下图所示,分别在2个类模块中添加上述2段代码。

这样就可以利用1个类来处理客户端单据事件,用另1个类来处理客户端序时薄事件了。

7) 编译工程。

8) 在金蝶K/3 BOS中设置插件。

如下图所示:上图所示的是步骤6中的同时可以处理单据事件和序时薄事件的插件的设置。

以上步骤完成后,我们就建立了一个金蝶K/3 BOS 客户端事件(包括单据事件和序时薄事件)插件。

虽然我们在这个例子中没有进行任何额外的单据事件和序时薄事件操作,但经过设置后,实际上已经在使用了这个插件的单据、序时薄中调用了这个插件。

我们现在需要做的,只是在这个插件中,利用获得的单据、序时薄对象,实现我们希望的具体操作了。

2.1.2创建一个金蝶K/3 BOS 中间层事件插件要创建一个金蝶K/3 BOS 中间层事件插件,请按照以下步骤操作:1) 执行“2.1.1创建一个金蝶K/3 BOS 客户端事件插件”中的步骤1至步骤5。

唯一不同的是在步骤4中,只需要添加Kingdee Foundation Objects 1.0的引用。

2) 在BOSPlugIns.cls类模块的代码中写入如下的代码。

Option Explicit'/********************************************************************/'/*描述:单据保存后扩展处理方法'/*备注:可以将该单触发器处理的过程在此函数中处理'/********************************************************************/Public Function BeforeSave(ByVal sDsn As String, _ByVal dctClassType As KFO.Dictionary, _ByVal vctClassTypeEntry As KFO.Vector, _ByVal dctTableInfo As KFO.Dictionary, _ByVal dctData As KFO.Dictionary, _ByVal dctLink As KFO.Dictionary)Debug.Print "当前资料被保存前扩展处理方法"Code 3: 中间层事件插件连接代码在上面的代码中,我们可以看到,不同于金蝶K/3 BOS 的客户端事件插件的处理,在金蝶K/3 BOS中间层事件插件中,我们只需要实现这4个标准事件就可以了。

关于这4个事件的参数含义,请参考“3.2中间层插件事件”。

3) 编译工程。

4) 在金蝶K/3 BOS中设置插件。

如下图所示:以上步骤完成后,我们就建立了一个金蝶K/3 BOS 中间层事件插件。

和“2.1.1创建一个金蝶K/3 BOS 客户端事件插件”中的示例一样,我们在这个例子中没有进行任何额外的事件操作,我们现在需要做的,只是在这个插件中,利用这4个事件,实现我们希望的具体操作了。

2.2自定义金蝶K/3 BOS 标准菜单、工具栏请注意:因为金蝶K/3 BOS中间层事件插件不处理界面事件,所以这一小节的内容,都是指金蝶K/3 BOS客户端事件插件的操作。

我们可以看到,金蝶K/3 BOS提供了一个标准的单据界面和序时薄界面,如下图所示。

在这个标准界面的菜单和工具栏项,显示、操作了金蝶K/3 BOS的标准功能,非常方便。

可是有时候我们不需要其中的某些功能,例如我们不希望用户使用“套打设置”这个功能,怎么办?AAA2.3添加新的菜单、工具栏2.4添加新的事件、方法2.5访问中间层和数据库2.6保存数据3参考3.1客户端插件事件、方法、属性3.2中间层插件事件3.3判断业务对象引用存储过程3.4金蝶K/3 BOS数据库结构4示例4.1XXX最新文件---------------- 仅供参考--------------------已改成-----------word文本--------------------- 方便更改赠人玫瑰,手留余香。

相关文档
最新文档