今天,继续在为富盛Sbo Add-on程序开发框架添加业务功能,丰富这个开发框架的内涵。主要实现了在原来的模态选择对话框的基础上加入了主数据和主业务明细界面的关联功能,同时实现了对16个单据对象的模态选择与主业务维护界面的关联。
在Sbo-Addon开发中,使用模态对话框进行数据选择,真的很不容易,在程序开发框架中终于成功添加主数据和系统业务的关键值选择,接下来将加入对任意业务对象--包括自定义数据表和自定义业务对象的模态数据选择功能。
尽管在Sbo Add-on中实现模态选择很复杂,在富盛Sbo-Addon程序开发框架中却只需要非常简单的几个语句,就可以完全搞定。在此通过一个实例进行说明:
1、建立一个父窗口,用来测试单据对象的模态选择功能。这个窗口可以使系统窗口、自定义窗口甚至是通过富盛Sbo Add-on程序开发框架的模态窗口派生的窗体。我在这里就直接生成了一个新的窗体来进行测试,这个窗体的界面如下:
使用富盛Sbo Add-on程序开发框架实现这个见面,非常Easy,代码如下:
//任何一个自定义窗体,都必须派生自富盛窗体基础类,并且必须有如下的这个构造函数,或者在主程序中对此进行赋值
public frmTestDocmentSelectForm(fsSboCommon fs)
        {
            fsSbo = fs;
        }
//这是一个Add-on界面绘制的函数,窗体控件就是在此进行定义并添加到窗体之上的
        public override int ShowForm(string strFormId, string strFormName)
        {
            string[] strName4DocmentModalForms = 
            { 
                "销售发票", "销售贷项凭证", "销售发货", "销售退货", "销售订单", 
                "采购发票", "采购贷项凭证", "采购交货", "采购退货", "采购订单", 
                "销售报价单", "其它入库", "其它出库", "仓库转储", "生产订单", "业务草稿" 
            };
if (ShowForm(strFormId, strFormName, 0, 300, 400, 200) == 1) return 1;
try
            {
                oForm.DataSources.UserDataSources.Add("docDs", SAPbouiCOM.BoDataType.dt_SHORT_TEXT, 10);
                stMsg = fsSbo.AddStaticText2Form(ref oForm, "stMsg", "等待选择...", 170, 10, 380, 20);
fsSbo.AddStaticText2Form(ref oForm, "stTitle", "请选择", 30, 10, 60, 20);
                oCombox = fsSbo.AddCombox2Form(ref oForm, "cbxDocSel", "", "docDs", 30, 80, 100, 20);
                for (int i = 0; i < strName4DocmentModalForms.Length; i++)
                    oCombox.ValidValues.Add(strName4DocmentModalForms, i.ToString());
fsSbo.AddButton2Form(ref oForm, "btnQuery", "查询", 70, 90, 120, 30);
            }
            catch (Exception ex)
            {
                fsSbo.ShowMsg(ex.Message);
            }
oForm.Visible = true;
return base.ShowForm(strFormId, strFormName);
        }
2、这个界面其实也很简单,一个ComboBox组件用以提供单据对象选择,选择之后通过点击“查询”按钮,进入到单据对象选择界面。实现这个功能只需要几句话--其实如果自己不进行新的界面绘制,要完成单据对象的查询选择,就这个简单的几个语句就OK了。
protected override bool DoPostItemEventItemPressed(ref SAPbouiCOM.ItemEvent pVal)
        {
            switch (pVal.ItemUID)
            {
                case "btnQuery":        //查询按钮
                    nIndex = Convert.ToInt32(oCombox.Selected.Description);        //获得单据对象类型
fsSbo.SelectSboDocmentData(this, (fsSboCommon.fsSboSelectDocmentFormType)nIndex);  //其实就这么一句话就搞定了选择窗口的建立
break;
            }
return base.DoPostItemEventItemPressed(ref pVal);
        }
比如,我选择了“销售发票”单据对象,点击“查询”按钮之后,就自动进入销售发票单据对象选择界面,如下图:
3、单据对象查询选择界面还是应该花费一点笔墨来介绍一下的。这个界面由四部分组成,顶部是查询条件录入,中间两部分分别是单据对象列表和指定单据的明细列表,单据列表和单据明细列表之间是关联的,就是说选择了单据列表中的某一行,其明细信息就会显示在下面的单据明细列表中。这的确很符合中国人的习惯。
事实上,顶端的查询条件可以对期望的单据内容进行过滤,以便于查找。而很多时候,我们需要权限管理,并不是所有的单据内容都可以被操作人员所浏览,这时候在打开界面的时候,可以通过传递参数进行控制。
在单据列表中,有Sbo中常见的黄色按钮--业务关联按钮,尽管我们使用的是模态对话框,我们仍然支持这种深入查询,点击关联按钮,就会到达业务关联窗口,从而可以浏览更加详细的单据明细。并且,我们屏蔽了导航条功能,从而为权限控制提供了保障。
4、点击选取按钮,获得选中的单据编号(docEntry),并且传递到指定的调用窗口。
5、如果调用窗体不是由富盛Sbo-Addon程序开发框架派生的,或者没有指定调用父窗体,选取按钮将自动失效,这个时候完成的不过是一个检索窗体的功能。
本文转自foresun  51CTO博客,原文链接:http://blog.51cto.com/foresun/48779,如需转载请自行联系原作者

使用富盛Sbo-Addon程序开发框架轻松开发模态单据选择查询功能实例相关推荐

  1. 小程序 数据库 时间_新增NBA2K19数据查询功能 小程序【大P数据库】更新公告

    自微信小程序[NBA2KOL2大P数据库]上线以来,我们就收到了很多朋友的热心反馈,其中就有不少朋友希望加入NBA2K19球员数据的查询功能. 之所以很多朋友会有这样的建议是因为在NBA2KOL2游戏 ...

  2. [原创]开始富盛SBO程序开发框架:Hello, World!

    使用富盛SBO程序开发框架开发SBO Addons非常简单,因为富盛SBO Addon程序开发框架已经为您解决了Addon如何同SBO主程序的链接与通信,您只需要通过程序开发框架软件包衍生一个Addo ...

  3. 富盛Sbo生产管理简介

    很多朋友非常关注即将投放市场的富盛Sbo生产管理功能,在此做一简单介绍. 富盛Sbo生产管理仍然采用富盛Sbo Addons程序开发框架,以保证基于角色的细致化业务管理.究其业务功能主要包括但不限于以 ...

  4. 富盛Sbo插件集Ver1.2.0 简介及免费下载

    如果您希望得到富盛Sbo插件集Ver1.2.0软件的服务器安装软件,请给我来信. 对原来的富盛Sbo Addon开发框架进行了扩充和功能加强,并实现了一系列的具体业务,将这些业务整理成集,定名为富盛S ...

  5. 代驾小程序源码开发这3大功能不可少

    近年来,需求代驾小程序源码开发的企业是与日俱增,随着驾驶安全意识的不断提高,加之酒驾入刑等惩罚措施进入交通法律法规,我国的代驾行业呈现出了蓬勃发展之势.去年因为疫情原因使得代驾行业遭受了一定的受挫,但 ...

  6. 基于富盛SBO程序开发框架的自动序列生成器

    很多时候,我们期望系统中的某些关键字段可以按照我们期望的条件自动生成,比如,员工代码,商品序列号,商品条形码等.的确,针对个体业务,要实现这种自动生成方法很多,那么是否可以实现可以支持所有业务的序列生 ...

  7. 微信小程序-后台使用富文本编辑器返回数据,小程序编译富文本编辑器返回的数据

    最近遇到一个功能,后台管理系统添加商品的时候,商品详情是使用富文本编辑器添加的.小程序获取的商品详情数据是含有<p>标签的. 后台管理系统 百度了多种方法,也试用了很多方法,最终觉得wxP ...

  8. 小程序使用富文本编辑器以及使用wxParse解析html结构

    小程序使用富文本编辑器以及使用wxParse解析html结构 13小程序发布文章功能(富文本编辑器的使用和解析html结构数据的wxParse)

  9. 2023年最全盘点 | 16款跨平台应用程序开发框架

    近年来小程序技术被微信及其生态应用带的如火如荼的,开发者的世界里,小程序的技术非常受关注,特别在流量承接及跨端开发方面,均受到不同规模的企业关注及积极实践. 2023年,小程序依然很火,但却有了一些不 ...

  10. 常用小程序开发框架浅析

    小程序第三方框架对比 ( wepy / mpvue / taro /Mpx /OKAM) 众所周知如今市面上端的形态多种多样,手机Web.ReactNative.微信小程序, 支付宝小程序, 快应用等 ...

最新文章

  1. esp8266 SDK开发之编译流程
  2. php中数组的数组元素最多出现2次,出现3次了就把第三次的数组元素去掉
  3. mysql 查询空字符串 设置默认值_MySQL默认值选型是空,还是 NULL-爱可生
  4. mongodb在aggregate lookup 进行分页查询,获得记录总数
  5. 爬虫-代理的质量控制
  6. python除法保留两位小数_除法巧算(Ⅱ),任何整数除7~9,11的快速心算技巧,爸妈收藏...
  7. MySQL高级知识(八)——ORDER BY优化
  8. 2020杭电多校6 1006A Very Easy Graph Problem血泪史
  9. Flask 蓝图(Blueprint)
  10. Linux命令:tac
  11. ssh公钥的生成、查看以及config的配置
  12. APPSCAN学习目录
  13. 概述HTTPS,简单了解对称性加密算法、非对称性加密算法方式
  14. 石家庄地铁查询双人项目进度总结
  15. 第 5 章 机器学习技术的应用(中)
  16. 展望未来:2023年及未来值得关注的9大元宇宙趋势
  17. A. New Year and Hurry
  18. react路由鉴权 / 路由守卫
  19. 《笨方法学python》第五天
  20. 计算机二级宝典几个人用,计算机二级宝典

热门文章

  1. .grf 读入报表模板失败,请检查网络连接、URL及读取权限,错误提示:网络服务器响应不成功
  2. Raul的新机器学习书!
  3. 如何使用Google TV设置Chromecast
  4. 关于ps抠图问题,制作公章,公章的复制
  5. 路由器、交换机、网关
  6. 淘宝+京东+拼多多+苏宁易购+聚划算百亿补贴,双11秒杀抢购助手脚本,分享源码
  7. python注释语句会不会被解释器过滤掉_Python注释
  8. C语言递归解兔子繁衍问题
  9. #PLC_梯形图简史(内含早期梯形图编程珍贵画面)
  10. Grafana启动失败报错:Grafana-server Init Failed: Could not find config defaults, make sure homepath command