使用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. springboot项目启动成功后执行一段代码的两种方式

    springboot项目启动成功后执行一段代码的两种方式 实现ApplicationRunner接口 package com.lnjecit.lifecycle; import org.springf ...

  2. Oracle恢复误删除表操作语句

    一.表和数据恢复 1.从回收站里查询被删除的表 select object_name,original_name,partition_name,type,ts_name,createtime,drop ...

  3. CF864 E DP 输出路径

    n个物品有Deadline,拿物品需要花费时间,问取得最大价值的方案. 本质是个01背包,先按时间排序,然后把花费的时间作为背包就行了. 主要就是找方案,倒过来找发生转移的就行了. 太菜了真的不会打C ...

  4. 针对移动设备的CSS3布局

    针对移动设备的CSS3布局 一些专业人士预测五年内移动设备将击败普通电脑成为网页浏览领域的霸主,不管这个预言是否应验,让网页在移动设备上较好的显示已经成为网页设计师和开发者的重要任务,本教程学习用CS ...

  5. LintCode 406: Minimum Size

    LintCode 406: Minimum Size 题目描述 给定一个由 n 个整数组成的数组和一个正整数 s ,请找出该数组中满足其和 ≥ s 的最小长度子数组.如果无解,则返回 -1. 样例 给 ...

  6. uefi模式下win10安装双系统ubuntu18.04LTS

    自己折腾了半天,血与泪啊(难得一个可爱的周末 wwww我一定要写下来 跟这个博客几乎一模一样了 https://blog.csdn.net/xrinosvip/article/details/8042 ...

  7. wepy 使用组件时一个注意事项。。。

    组件传值prop 必须使用指定引用地址的数据 如果像下面这样 取为空shop 中的phone ,后续获取数据或就算 shop中有phone元素 子组件也无法获取到修改后的值 <template& ...

  8. 2017 ACM暑期多校联合训练 - Team 4 1007 HDU 6073 Matching In Multiplication (模拟)

    题目链接 Problem Description In the mathematical discipline of graph theory, a bipartite graph is a grap ...

  9. 29、最小的K个数

    一.题目 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. 二.解法 import java.util.ArrayList; ...

  10. redis的备份恢复

    说明:默认rdb方式保存,redis支持主从和哨兵等,但是在某些情况下我们会单机跑,所以有时候我们就会需要设计到备份恢复 环境:原始redis:192.168.1.200 新redis:192.168 ...