使用GeneXus产品开发项目时,在开始,有一些属性我会经常改一下。我现在使用的GeneXus版本是GeneXus U3,由于在做手机应用的开发,所以一般使用最新的版本,老外那边差不多两个月会有一个upgarde,解决一些bug或者增加一些新的特性。

1. 言归正传,创建一个项目。在创建页面,如果点击Advanced的时候,会弹出一些数据库的配置信息,如下图所示。其实这个数据库并不是我们这个项目的业务数据库,而是GeneXus每创建一个项目,都会默认建立一个数据库用来保存项目信息(这也就是为什么安装GeneXus时也要安装一个SQL Server数据库),所以正常情况下,不用管这个数据库,只是注意后面不要把业务数据库和这个数据库放在一起了。

2. 经过漫长的等待,项目创建好了,接下来改几个属性。【郑重声明:本人所分享的所有经验都是个人在使用过程中所理解的,由于使用场景不一样,未必是百分百正确的,所以大家也要根据自己的情况判断一下】。

1)Enable national language support属性改为Yes,默认值是No。

(有没有感觉经常不知道去哪里找一些属性,里面选项太多了,所以最好用一下Filter功能)。这个属性的作用是,对于vachar或char类型的字段,在建表时,对应的数据库字段是nvarchar或nchar,如果不改,例如建立了一个字段,长度是varchar(20),在页面,其实只能输入10个汉字或20个英文字母,而我们做的项目基本都是国内的,所以一般直接把这个属性的默认值改掉,这样字段长度和业务上的要求就统一了。如果有个别地方不需要启用,只要在不需要的地方把对应字段的这个属性改为No就可以了。

2)Date time storage timezone属性。我们一般会设置为undefined,很少使用(GMT/UTC)时间。因为在GeneXus,每个时间是可以把时区信息包含进去的,我们基本都是国内的项目,也是面向国内的用户,如果设置为GMT/UTC时区,就意味着数据库里面存的时间和你页面上看到的时间会差8个钟头,这个会感觉很别扭(个人喜好…), 其实设置为Application Server也会有时区,不过是相当于以我们服务器时间为标准了,而undefined则是不考虑时区问题了(国内项目可能考虑这个设置)。这个wiki是有很详细的解释(可惜是英文-_-!),大家可以看一下。

点击:Date Time Storage Timezone property

3)Declare referential integrity属性设置为No. 这个属性是属于数据库的配置,如果设置为No,则在创建数据库时不会建立表外键关系,当然这个属性不会影响业务层面之间的关系。主要是我们所开发的系统,客户在上线后会经常有需求变动,或者需要在数据层面维护的工作,所以如果把表之间的制约关系创建了,在调整数据时会非常麻烦。每个人做项目的经验不同,想法不同,大家可以根据实际情况判断。

4)Business Component属性设置为True,由于我们基本上每个Transaction都会使用到Business Component,所以全局的属性设置为True后,每次创建的Transaction的该属性都默认是True,主要是为了省事。

5)Blank when empty属性设置为True,主要是对于日期为空时,希望也是显示空白,默认是显示一些斜杠。其实还有一个就是数字,默认的录入页面,是会显示一个0,目前没有想到好办法去掉…

没有对比就没有伤害,见下图:

暂时就想起这几个,后面想起来了再写…

除了配置之外,还有一个是GeneXus IDE的配置,可以把对象的名字和描述都显示出来,这样在使用的时候会很方便,毕竟随着项目越来越大,只根据名字很难看懂一个对象的作用,尤其是有很多procedure的时候。

GeneXus项目启动的更多相关文章

  1. maven 项目启动tomcat报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    maven项目启动tomcat报错: java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLi ...

  2. eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错? java.lang.ClassNotFoundException: com.branchitech.app.startup.AppStartupContextListener java.lang.ClassN

    eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错?java. ...

  3. 项目启动异常java.lang.OutOfMemoryError: PermGen space

    java.lang.OutOfMemoryError: PermGen space 解决办法: Eclipse-->window-->Tomcat -->JVM setting  - ...

  4. 【项目启动】 tomcat启动,项目无法启动,无法正常访问/项目可以启动,报错:java.lang.ClassNotFoundException: ContextLoaderListener

    使用maven搭建项目(这个错误和是不是使用maven搭建项目没有关系),然后部署到tomcat中运行. 出现问题1: tomcat跑起来了,但是启动时间很短,没有报错,项目不能正常访问 项目启动时间 ...

  5. SpringMVC——项目启动时从数据库查询数据

    SpringMVC项目中遇到这样的问题: 1.很多数据字典需要从数据库中查询: 2.懒得修改SQL语句: 3.想在项目中声明静态变量存储数据字典,但是希望这个字典可以在项目启动时进行加载. 当遇到这样 ...

  6. eclipse 中导入 maven项目 启动报错

    导入Maven项目到Eclipse中时,出现问题如下: java.lang.ClassNotFoundException: org.springframework.web.context.Contex ...

  7. 关于ionic开发的一些总结(项目启动设置,app图标名称更改)

    1.更改包名称 一般项目刚生成时,ionic会根据项目名称自动给你生成一个包名.要修改包名的话,在根目录的config配置文件中,<widget id="x.x.x"换成自己 ...

  8. 在web项目启动时,使用监听器来执行某个方法

    在web项目中有很多时候需要在项目启动时就执行一些方法,而且只需要执行一次,比如:加载解析自定义的配置文件.初始化数据库信息等等,在项目启动时就直接执行一些方法,可以减少很多繁琐的操作. 这里写了个简 ...

  9. web项目启动流程探索

    在web项目的启动过程中,我们希望知道它的一般流程是什么,这样我们就可以在各个流程中加入相应的功能,或者对于我们排错也有帮助. 我们知道,当我们启动tomcat容器以后,容器首先初始化一些必要的组件, ...

随机推荐

  1. 2017北京国庆刷题Day1 morning

    期望得分:100+100+100=300 实际得分:100+100+70=270 T1位运算1(bit) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK ...

  2. 莫队+分块 BZOJ 3809

    3809: Gty的二逼妹子序列 Time Limit: 80 Sec  Memory Limit: 28 MBSubmit: 1634  Solved: 482[Submit][Status][Di ...

  3. 816B. Karen and Coffee 前缀和思维 或 线段树

    LINK 题意:给出n个[l,r],q个询问a,b,问被包含于[a,b]且这样的区间数大于k个的方案数有多少 思路:预处理所有的区间,对于一个区间我们标记其(左边界)++,(右边界+1)--这样就能通 ...

  4. MySQl学习-——Mysql体系结构与Mysql存储引擎

    Mysql体系结构与Mysql存储引擎 Mysql体系结构 mysql体系结构图:

  5. mysql查询日期相关的

    今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ...

  6. HDU 1577 WisKey的眼神 (找规律 数学)

    题目链接 Problem DescriptionWisKey的眼镜有500多度,所以眼神不大好,而且他有个习惯,就是走路喜欢看着地(不是为了拣钱哦^_^),所以大家下次碰见他的时候最好主动打下招呼,呵 ...

  7. Tornado/Python 学习笔记(二)

    部分ssrpc.py代码分析 -- 服务端: 1 #!/usr/bin/python3 2 3 from xmlrpc.client import Fault, dumps, loads 4 impo ...

  8. Axure RP 授权码

    Axure RP 8.1.0.3372Licensee:KoshyKey:wTADPqxn3KChzJxLmUr5jTTitCgsfRkftQQ1yIG9HmK83MYSm7GPxLREGn+Ii6x ...

  9. iOS中响应者链条-触摸事件,hitTest方法坐标转换

    总体来说,分2个步骤: 一,从上到下寻找合适的控件来处理这个触摸事件.如下图,如果点击了黄色4,则UIApplication -> UIWindow -> 1白色 -> 2橙色 -& ...

  10. OGG相关操作

    参数文件详解: 1)truncate ogg 进程: Manager进程:manager进程是配置在源端和目标端 Extract(抽取)进程:部署在源端,用于捕获数据表或者日志中的数据文件: Pump ...