最近 刚从外地出差回来 工作任务不是很重 能够抽点时间记点东西 下午花了2个多钟头尝试了一下GeneXus的封装方法的功能,这里记一下便于自己以后查看。我们在许多项目中或多或少都会有着重复代码编写的过程 一个方法我们可能在这个项目中用到亦或者在其他项目中也用到了,那么有什么办法能不这样重复造轮子呢,这是wiki链接 从这个里面我们可以知道 在GeneXus中有着这样一种功能封装Model他能够使我们在一个项目中把能够重复利用的方法集合成一个工具包 并且在其他项目中反复使用并且能够不断扩充更新和迭代。知道我们要干什么之后我们就开始搞事情了
首先我在GeneXus中建立一个模块并将其命名为 ConversionListType
然后我们在他的下面建立一个方法 这个方法我随便举个例子写的 只提供参考,我们在按照某个字符在拆分字符串的时候,拆分出来的集合是Character类型的 可我们并不想这样直接去使用 那么我们就写个方法把里面的元素都进行类型转换并且为了看得清楚一点我们在末尾加上点东西 like this↓
输入输出参数如下
这个时候我们觉得这个东西以后可能其他地方也要用到所以我们将其打包 右键当前方法的模块
选择封装 然后按照操作一步一步来
然后它会提示我们东西已经打包完毕
这个文件会生成到项目目录下的一个叫做 modules的文件夹下 是一个opc文件 'opc'扩展名代表Open Packaging Convention;
我们将这个文件拖到桌面上再次启用GeneXus建立一个新的KB来测试 并且导入这个模块 导入方式如下
选择我们之前保存在桌面上的opc文件
点击确定即可 导入成功后 我们就可以看到在KB左侧的知识库引用项里找到我们之前导入的模块
我们打开后发现除了输入输出参数其他的都看不到 是只读的无法提供编辑功能 那么我们如何使用呢?我们新建一个WebPanel 然后放上按钮并为它写上触发事件
点击触发事件按钮即可
我们查看处理结果
需要着重注意一点的是 这个东西我目前只使用同版本的GeneXus尝试 其他不同版本的我还没有尝试过 所以后面有时间再补充吧!