Crystal reports 创建包含各种字段的crystal reports公式,这些字段可以包含空值
我想创建一个包含各种数据库字段的地址字段。但是,当其中一个值为NULL时,该NULL值之后的字段将不再显示 例如,在我的公式中,字段块为空。因此,Country字段中的值不再显示。如何确保显示的所有字段中都显示空值Crystal reports 创建包含各种字段的crystal reports公式,这些字段可以包含空值,crystal-reports,report,formula,Crystal Reports,Report,Formula,我想创建一个包含各种数据库字段的地址字段。但是,当其中一个值为NULL时,该NULL值之后的字段将不再显示 例如,在我的公式中,字段块为空。因此,Country字段中的值不再显示。如何确保显示的所有字段中都显示空值 IF ISNULL({Header.StreetS}) OR {Header.StreetS} = "" THEN "" ELSE {Header.StreetS} & CHR(13) & IF ISNULL({Header
IF ISNULL({Header.StreetS}) OR {Header.StreetS} = "" THEN "" ELSE {Header.StreetS} & CHR(13)
& IF ISNULL({Header.ZipCodeS}) OR {Header.ZipCodeS} = "" THEN "" ELSE {Header.ZipCodeS} & ' '
& IF ISNULL({Header.CityS}) OR {Header.CityS} = "" THEN "" ELSE {Header.CityS} & CHR(13)
& IF ISNULL({Header.BlockS}) OR {Header.BlockS} = "" THEN "" ELSE {Header.BlockS} & CHR(13)
& IF ISNULL({Header.CountryS}) OR {Header.CountryS} = "" THEN "" ELSE {Header.CountryS}
这是一件我见过很多次的令人讨厌的事情 问题是不能在同一
IF
-子句中计算ISNULL({Column})
和{Column}=”“
。
因为即使
ISNULL
已返回True
,也将对{Column}=”“
进行求值
这应该起作用:
IF ISNULL({Header.StreetS}) THEN "" ELSE IF {Header.StreetS} = "" THEN "" ELSE {Header.StreetS} & CHR(13)
& IF ISNULL({Header.ZipCodeS}) THEN "" ELSE IF {Header.ZipCodeS} = "" THEN "" ELSE {Header.ZipCodeS} & ' '
& IF ISNULL({Header.CityS}) THEN "" ELSE IF {Header.CityS} = "" THEN "" ELSE {Header.CityS} & CHR(13)
& IF ISNULL({Header.BlockS}) THEN "" ELSE IF {Header.BlockS} = "" THEN "" ELSE {Header.BlockS} & CHR(13)
& IF ISNULL({Header.CountryS}) THEN "" ELSE IF {Header.CountryS} = "" THEN "" ELSE {Header.CountryS}
这是我见过很多次的令人讨厌的事情 问题是不能在同一
IF
-子句中计算ISNULL({Column})
和{Column}=”“
。
因为即使
ISNULL
已返回True
,也将对{Column}=”“
进行求值
这应该起作用:
IF ISNULL({Header.StreetS}) THEN "" ELSE IF {Header.StreetS} = "" THEN "" ELSE {Header.StreetS} & CHR(13)
& IF ISNULL({Header.ZipCodeS}) THEN "" ELSE IF {Header.ZipCodeS} = "" THEN "" ELSE {Header.ZipCodeS} & ' '
& IF ISNULL({Header.CityS}) THEN "" ELSE IF {Header.CityS} = "" THEN "" ELSE {Header.CityS} & CHR(13)
& IF ISNULL({Header.BlockS}) THEN "" ELSE IF {Header.BlockS} = "" THEN "" ELSE {Header.BlockS} & CHR(13)
& IF ISNULL({Header.CountryS}) THEN "" ELSE IF {Header.CountryS} = "" THEN "" ELSE {Header.CountryS}