最近 刚从外地出差回来 工作任务不是很重 能够抽点时间记点东西 下午花了2个多钟头尝试了一下GeneXus的封装方法的功能,这里记一下便于自己以后查看。我们在许多项目中或多或少都会有着重复代码编写的过程 一个方法我们可能在这个项目中用到亦或者在其他项目中也用到了,那么有什么办法能不这样重复造轮子呢,这是wiki链接 从这个里面我们可以知道 在GeneXus中有着这样一种功能封装Model他能够使我们在一个项目中把能够重复利用的方法集合成一个工具包 并且在其他项目中反复使用并且能够不断扩充更新和迭代。知道我们要干什么之后我们就开始搞事情了

  首先我在GeneXus中建立一个模块并将其命名为 ConversionListType

然后我们在他的下面建立一个方法 这个方法我随便举个例子写的 只提供参考,我们在按照某个字符在拆分字符串的时候,拆分出来的集合是Character类型的 可我们并不想这样直接去使用 那么我们就写个方法把里面的元素都进行类型转换并且为了看得清楚一点我们在末尾加上点东西 like this↓

输入输出参数如下

这个时候我们觉得这个东西以后可能其他地方也要用到所以我们将其打包 右键当前方法的模块

选择封装 然后按照操作一步一步来

然后它会提示我们东西已经打包完毕

这个文件会生成到项目目录下的一个叫做 modules的文件夹下 是一个opc文件   'opc'扩展名代表Open Packaging Convention;

我们将这个文件拖到桌面上再次启用GeneXus建立一个新的KB来测试 并且导入这个模块 导入方式如下

选择我们之前保存在桌面上的opc文件

点击确定即可  导入成功后 我们就可以看到在KB左侧的知识库引用项里找到我们之前导入的模块

我们打开后发现除了输入输出参数其他的都看不到 是只读的无法提供编辑功能  那么我们如何使用呢?我们新建一个WebPanel 然后放上按钮并为它写上触发事件

点击触发事件按钮即可

我们查看处理结果

需要着重注意一点的是 这个东西我目前只使用同版本的GeneXus尝试 其他不同版本的我还没有尝试过 所以后面有时间再补充吧!

国庆补充:这里有个文档 比上面那个自我感觉好一点 有需要的话 就请拿去看吧 点我点我

关于GeneXus封装方法Model的方法的更多相关文章

  1. DataTable数据赋值给Model通用方法

    注:该文属本人原创,今后项目中发现该方法存在BUG会实时更新,转载记得附上原文出处,方便大家获得最新代码. 相信大家在做项目中,经常会根据不同的表new各种不同的Model,当需要对Model进行实例 ...

  2. PHP其它常用函数;<<<面向对象(OPP)的三大特性:封装、继承、加态:>>> <----面试题 ;构造方法、析构方法,魔术方法、set、get方法;静态;抽象类;接口

    PHP其它常用函数:     赋值:$r->name = "元素";      取值: echo $r->name;  count()   计算数组中的元素数目或对象中 ...

  3. Java学习-029-JSON 之三 -- 模仿 cssSelector 封装读取 JSON 数据方法

    前文简单介绍了如何通过 json-20141113.jar 提供的功能获取 JSON 的数据,敬请参阅:Java学习-028-JSON 之二 -- 数据读取. 了解学习过 JQuery 的朋友都知道, ...

  4. Unity属性的封装、继承、方法隐藏

    (一)Unity属性封装.继承.方法隐藏的学习和总结 一.属性的封装 1.属性封装的定义:通过对属性的读和写来保护类中的域. 2.格式例子: private string departname; // ...

  5. 自己封装的一个js方法用于获取显示的星期和日期时间

    自己封装的一个js方法用于获取显示的星期和日期时间 /** * 获取用于显示的星期和日期时间 * @param date * @returns {string} */ function getWeek ...

  6. Day 5-4封装.__隐藏属性或者方法

    封装 property 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏. 在python中用双下划线开头的方式将属性隐藏起来(设置成 ...

  7. Entity Framework(EF的Model First方法)

    EntityFramework,是Microsoft的一款ORM(Object-Relation-Mapping)框架.同其它ORM(如,NHibernate,Hibernate)一样, 一是为了使开 ...

  8. 原生ajax与封装的ajax使用方法

    当我们不会写后端接口来测试ajax时,我们可以使用node环境创建一个本地服务器. 1.创建一个本地服务器可参考http://www.cnblogs.com/heyujun-/p/6793900.ht ...

  9. 封装常用的selenium方法

    package com.yk.userlive.base; import java.net.MalformedURLException;import java.net.URL;import java. ...

随机推荐

  1. JS window对象 返回前一个浏览的页面 back()方法,加载 history 列表中的前一个 URL。 语法: window.history.back();

    返回前一个浏览的页面 back()方法,加载 history 列表中的前一个 URL. 语法: window.history.back(); 比如,返回前一个浏览的页面,代码如下: window.hi ...

  2. globalAlpha 示例

    代码实例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  3. python3.x运行的坑:AttributeError: 'str' object has no attribute 'decode'

    1.Python3.x和Python2.X版本有一些区别,我遇到了两个问题如下: a.第一个报:mysqlclient 1.3版本不对: 解决办法:注释掉这行即可: b.第二个报:字符集的问题: 报错 ...

  4. python字符串非空判断

    1. 字符串非空判断 2. list 非空判断

  5. SSM - 全局跨域处理

    这几天在开发中编写项目时需要前后端分离,刚好涉及到跨域这个问题,很早之前做项目时也用过,也是在网上找的列子,来源已经无处可寻了,若侵必删! 跨域问题一般出现两者服务器不同或者不同的端口上访问资源时会存 ...

  6. vue搭配的UI框架 pc端 + 移动端

    PC桌面端UI框架: 1,iview      (最新,用户评分高功能多炫酷 解决和避免了其他UI框架出现的一些小问题) 2, bootstrap  (使用用户最多样式死板没特色) 3,Element ...

  7. element table 通过selection-change选中的索引删除

    <el-table :row-class-name="tableRowClassName" @selection-change="handleSelectionCh ...

  8. (转)docker run的--rm选项详解

    转:https://blog.csdn.net/taiyangdao/article/details/73076770 在Docker容器退出时,默认容器内部的文件系统仍然被保留,以方便调试并保留用户 ...

  9. 高并发大流量专题---11、Web服务器的负载均衡

    高并发大流量专题---11.Web服务器的负载均衡 一.总结 一句话总结: 推荐使用nginx七层(应用层)负载均衡的实现:配置那是相当的简单 http{ upstream cluster{ serv ...

  10. C# Self Injector into non managed process

    Hey all, I'm gonna explain you how make a self injecting program in C#.I hope you guys thinks its us ...