【GeneXus】IsNull 判定とか

GeneXusでDB値のNull判定が何回聞いても覚えられない。

下記の状態のデータが存在する場合にGeneXusの条件式での挙動。

想定環境

GeneXus X Ev3 u6
Oracle 11g R2

Where で IsNull を使用

For each
	Where COMPANY_NAME.IsNull()
	MSG(COMPANY_ID.ToString().Trim())
Endfor

該当レコード
COMPANY_ID:3

Where で IsEmpty を使用

For each
	Where COMPANY_NAME.IsEmpty()
	MSG(COMPANY_ID.ToString().Trim())
Endfor

該当レコード
COMPANY_ID:4

If文で IsNull を使用

For each
	If COMPANY_NAME.IsNull()
		MSG(COMPANY_ID.ToString().Trim())
	Endif
Endfor

該当レコード
COMPANY_ID:3

If文で IsEmpty を使用

For each
	If COMPANY_NAME.IsEmpty()
		MSG(COMPANY_ID.ToString().Trim())
	Endif
Endfor

該当レコード
COMPANY_ID:3、4

変数格納後If文で IsEmpty を使用

For each
	&COMPANY_NAME= COMPANY_NAME
	If &COMPANY_NAME.IsEmpty()
		MSG(COMPANY_ID.ToString().Trim())
	Endif
Endfor

該当レコード
COMPANY_ID:3、4


ちゃんと覚えなきゃな・・・・


※当記事の情報はバージョンや言語によって挙動が違う可能性があります。
あくまでも参考程度に使用してください。

コメントを残す

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

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