【GeneXus】知ってると便利?プロパティ

GeneXusってプロパティがいっぱいあって忘れる and 知らないのがあります。

今回は使ったことがあったり便利だなーって思ったプロパティを紹介。

First Year of 20th Century

参考 First Year of 20th Century プロパティwiki.genexus.jp

GeneXusの画面にDate型やDateTime型の変数を置くと以下のようになります。
デフォルトで「YY/MM/DD」になってます。

※Date型の変数のPictureを変更すれば「YYYY/MM/DD」になります。

「YY/MM/DD」の場合「12/01/18」と入力された場合
「2012/01/18」なのか「1918/01/18」なのか判断がつきません。
そのとき「First Year of 20th Century」の値を境に2000年なのか
それより前なのかをGeneXusが内部で判断します。

デフォルト:40と設定されているので
「12/01/18」⇒「2012/01/18」と認識されます。
「41/01/18」⇒「1941/01/18」と認識されます。
 

 

 
 

Generate prompt program

参考 Generate Prompt Programs プロパティwiki.genexus.jp

Transactionを作成すると勝手に作成(自動生成)されるコイツ↓です。

プロジェクトによっては不要な場合があるので自動生成されないように設定できます。

Yes:プロンプトが自動生成される
No:プロンプトが自動生成されない

一度プロンプトが自動生成されたあとに Yes⇒No に変えても
自動生成されたプロンプトは勝手に削除されないので手動で削除してください。

プロパティをNoに設定後ビルドしてもプロンプトは自動生成されません。

プロンプトが自動生成されないということは
トランザクションの上部に配置されている選択機能(虫眼鏡アイコン)や、リレーションの選択機能(上矢印アイコン)は
クリックしても機能しなくなります。

 
 

Reorganize Server Tables

参考 Reorganize Server Tables プロパティwiki.genexus.jp

DBの作成・再編成をするかどうかの設定です。
デフォルトは Yes で No に設定するとGeneXusが自動でDDLを作成して
作成・再編成の確認はしますが
実際にDBへ作成・再編成は実行されません。

・Yesの場合

・Noの場合

DBへ作成・再編成が走らない場合はメッセージとボタンのアイコン?が少し違うのがわかります。

KBを作り直したけどDBは作り直したくない場合や
DBは手動でメンテナンスしてるからGeneXusからは弄ってほしくない場合 等々
用途はさまざまですがよくKBぶっ壊す私にとっては便利なプロパティですw
 
 

Initialize not Referenced Attributes

参考 Initialize not Referenced Attributes プロパティwiki.genexus.jp

プロシージャを使用した登録・更新をする場合の挙動を設定します。

以下のようなTransactionがあります。

適当なプロシージャを作成

Initialize not Referenced Attributes:Yes の場合

Transaction4_DATEはNULL許容ですがDate型の初期値が設定されました。

Initialize not Referenced Attributes:No の場合

プロシージャの中ではTransaction4_DATEに対して何も設定しませんが
自動でNULLが設定されました。


 

GeneXusがInsert文を生成するときにNew~EndNew内の項目は全て値を設定すると判断するようで
この場合Transaction4_DATEに値を設定するという判定なので
偶数回の場合は今日の日付が設定されますが、奇数回の場合は初期値が設定されてしまいます。

 
 

Generate COMMENT ON Statements

参考 Generate COMMENT ON Statements プロパティwiki.genexus.jp

GeneXusが作成するDBのテーブル、項目にAttributeのデスクリプションをつけてくれるプロパティです。

Generate COMMENT ON Statements:No

Generate COMMENT ON Statements:Yes

ただしMYSQLは対応してない模様。。。。

 
 

まとめ

まだまだプロパティがいっぱいあって困るわぁ~

以上。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください