龙空技术网

金蝶云星空插件实战开发-新手保姆级教程-表单插件

黄老四 777

前言:

此刻我们对“c语言编写动态星空源代码”都比较重视,姐妹们都需要了解一些“c语言编写动态星空源代码”的相关资讯。那么小编在网上网罗了一些关于“c语言编写动态星空源代码””的相关文章,希望兄弟们能喜欢,姐妹们一起来学习一下吧!

本文为金蝶云星空表单插件开发新手教程。内容为技术类文章,而且内容较长。做星空系统二次开发的新手朋友,可以收藏作为参考。非技术职业的朋友,可以直接划走,以免耽误您的宝贵时间。

本以为技术类文章在头条不会有什么阅读量,实际情况出乎意料,看来头条的朋友们都是非常爱学习的。不多啰嗦,上菜。

文章末尾可以找到本教程源码仓库地址。

阅读对象:云星空二次开发新手

需求场景:在采购订单表单工具条上新增一个按钮,命名为“测试按钮”,点击按钮弹出“Hello world”提示

开发工具:Visual Studio 2019

开发语言:C#

云星空版本:7.6.0

插件类型:表单插件

说明:本文前提是开发机已经安装好金蝶云星空系统和金蝶BOS IDE。

星空系统安装部署教程:

金蝶云社区课程详情-课程详情-金蝶云社区官网

开发步骤使用BOS新增按钮创建Visual C#类库添加星空系统类库的引用编写按钮点击事件编译代码生成dll文件使用BOS注册插件重启IIS服务器1、使用BOS新增按钮

打开【金蝶云星空集成开发平台】,在业务视图窗口,选择“供应链”选项,并在右侧的子系统中选择“采购管理”,选择完毕之后,点击“确定”按钮。如下图所示:

BOS的右侧“项目”视图窗口会加载出采购管理的基础资料和单据等对象。如下图所示:

说明:在上面截图中“项目”视图的单据列表中,选择“采购订单”,点击右键,呼出右键菜单,选择“扩展”选项。

根据星空系统的机制,系统默认的单据对象是只读状态,不允许修改和调整,只有扩展之后,才可以对单据继续修改调整。

点击“扩展”选项,系统执行完成之后,点击“保存”按钮,保存之后,点击项目窗口工具栏上的“刷新”按钮,就可以得到下方截图所示窗口:

我们可以看到项目窗口的单据列表中,“[KD]采购订单”下方出现了一个名称为“采购订单”的单据对象。

这个单据对象就是我们需要操作的单据对象。

在BOS右下侧的“采购订单”的属性窗口中找到“菜单集合”这一属性,呼出“菜单编辑”窗口。如下图所示:

选择上图窗口中的“工具条”,点击右键呼出右键下拉菜单,选择“按钮”选项。

【重要】设置“测试按钮”的属性。

标题:测试按钮

标识:Test_tbButton

后面插件代码中,会根据这个标识来判断是测试按钮的点击。

如下图所示:

设置完成之后,关闭“菜单编辑”窗口,回到BOS主窗口,点击主窗口左上方工具栏的“保存”按钮。

打开星空系统客户端,在采购订单表单窗口的工具条上,可以找到“测试按钮”的按钮。如下图所示:

2.创建Visual C#类库

打开Visual Studio IDE,在启动窗口中选择“创建新项目”选项。如下图所示:

在Visual Studio IDE的项目类型列表中找到“类库(.NET Framework)”选项。如下图所示:

点击“下一步”按钮,配置项目信息。

【重要】项目名称是一个比较重要的配置项,金蝶官方在《二次开发规范》中有说明。

按照规范我们暂时将项目命名定为:

Test.K3Cloud.SCM.MyPlugin

【重要】框架选择 .NET Framework 4

具体配置如下图所示:

项目初始化代码

3.添加星空系统类库的引用

在Visual Studio IDE的解决方案资源管理器窗口中,选择“引用”,点击右键,呼出右键菜单,选择“添加引用”选项。

打开“应用管理器”窗口,选择“Kingdee.BOS.dll“和“Kingdee.BOS.Core.dll”。

如果窗口列表中没有此类库,可以点击窗口下方的“浏览”按钮,在星空系统的安装目录中找到此类库文件。

默认目录为:C:\Program Files (x86)\Kingdee\K3Cloud\WebSite\Bin

4.编写按钮点击事件

在Visual Studio IDE中编写如下代码:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using Kingdee.BOS.Core.Bill.PlugIn;using Kingdee.BOS.Core.DynamicForm;using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;namespace Test.K3Cloud.SCM.MyPlugin{    public class Class1:AbstractBillPlugIn    {        /// <summary>        /// 工具条菜单点击事件        /// </summary>        /// <param name="e"></param>        public override void BarItemClick(BarItemClickEventArgs e)        {            base.BarItemClick(e);            // Test_tbButton 为自定义按钮的标识            if (e.BarItemKey == "Test_tbButton")            {                View.ShowMessage("Hello world", MessageBoxType.Notice);            }        }    }}
5.编译代码生成dll文件

在Visual Studio IDE菜单栏中选择“项目”选项,选择 “Test.K3Cloud.SCM.MyPlugin”选项,打开属性配置窗口。

选择窗口右侧的“生成”菜单选项,将输出路径设置为金蝶的安装目录的Website\bin目录。

默认路径为:C:\Program Files (x86)\Kingdee\K3Cloud\WebSite\Bin

配置完成之后,点击“保存”按钮。如下图所示:

点击菜单中的“生成”选项,在下拉菜单中选择“生成Test.K3Cloud.SCM.MyPlugin”选项。

生成“Test.K3Cloud.SCM.MyPlugin.dll”动态链接库文件。

在Visual Studio IDE下方的输出窗口中显示生成成功,则说明Test.K3Cloud.SCM.MyPlugin.dll文件生成成功。如下图所示:

Test.K3Cloud.SCM.MyPlugin.dll 文件位于

C:\Program Files (x86)\Kingdee\K3Cloud\WebSite\Bin目录。

如下图所示:

6.使用BOS设计器注册插件

在BOS的项目窗口中打开“采购订单”表单对象,在右下方的“属性”窗口中找到“表单插件”属性。

打开“插件配置信息”窗口。如下图所示:

点击“注册”按钮,打开表单“插件选择”窗口,点击“插件选择”窗口最上方的“选择程序集”,呼出下拉菜单,点击“浏览”。如下图所示:

在C:\Program Files (x86)\Kingdee\K3Cloud\WebSite\Bin目录,

找到Test.K3Cloud.SCM.MyPlugin.dll文件并选择。

点击“插件配置信息”窗口的“确定”按钮。回到BOS主窗口,点击“保存”。

等系统保存成功之后重启IIS服务。

7.重启IIS

打开IIS管理器。选择站点,然后点击右侧窗口中的“重新启动”按钮。

重启IIS。每次代码更新,编译之后,都需要重启IIS服务器。如下图所示:

重启完成之后,打开星空系统客户端的“采购订单”窗口。

点击“测试按钮”按钮,如果没有出错的话,就会弹出“Hello world”提示框。如下图所示:

以上为云星空系统插件开发的一个最简单示例。

除自定义插件外,其他插件的开发都是遵循以上流程。

开发星空系统插件和调试的过程中,每次更新都需要重启IIS服务器,当然星空系统是支持“热更新”和“代码调试分析”的,本教程为了聚焦插件本身的开发流程,就没有将热更新和代码调试放到教程中。

如果可能,后面会推出教程来专门讲述这两个部分。

本文的例子虽然是最简单的,但是对于初次接触星空系统插件开发的新手来说,想要一次成功也有一定的难度,因为这里除了那几行代码以外,相应的配置也不少,配置错了或者在某个环节有遗漏,那么就不会成功。

在还不熟悉星空系统的情况下,最好的办法是多尝试一下。

当成功一次之后,这就是大家起飞的起点。

本教程源码地址:

更多精彩内容发布于公众号:代码乾坤 (CoderLand)

说明:

本人当前为独立开发者,在做软件开发的同时也在尝试做自媒体;

做自媒体的初心是为了帮助那些需要帮助的朋友,特别是程序员朋友;

如果我输出的内容对您有所帮助,请帮忙点赞支持一下,如果有冒犯到的地方,请私信给我,我这边做调整。谢谢大家!

标签: #c语言编写动态星空源代码