簡體   English   中英

Crystal Reports v14找不到所有空值

[英]Crystal Reports v14 not finding all null values

好吧,我以前曾碰到過這個問題,過去已經使所有事情都能正常工作。 我有一個已創建的SQL代碼,現在需要將其轉換為水晶報表。 SQL顯示956行,但是Crystal僅顯示886行。
這是SQL代碼:

SELECT 
I4240,
I4201,
I4202,
I4203,
I4204,
I4206,
I4213,
I4214,
I4225,
I4208,
I4299 
FROM 
    MT.INVENTORY
WHERE
(
    I4202 IN ('UNKNONWN','VERIFY MFR','OTHER','VARIOUS','TBD','NA','N/A') OR
    (
        I4203 IN ('UNKNONWN','VERIFY MODEL NUMBER','OTHER','VARIOUS','TBD','NA','N/A','MISCELLANEOUS') 
        OR I4203 IS NULL 
        OR LENGTH(I4203)=0
    ) OR
    (
        I4204 IN ('UNKNOWN DESCRIPTION','VERIFY DESCRIPTION','OTHER','VARIOUS','TBD','NONE - NO STD USED','NA','N/A','MISCELLANEOUS') 
        OR I4204 IS NULL 
        OR LENGTH(I4204)=0
    ) 
) AND
I4240 NOT IN ('MT','STD','NESD')

ORDER BY I4240,I4202,I4203,I4204

和來自CR的記錄選擇公式:

(
    {Inventory.I4240} <> 'mt' and
    {Inventory.I4240} <> 'std' and
    {Inventory.I4240} <> 'nesd'
) 
AND
(
    (
        {Inventory.I4202} = 'UNKNONWN' OR
        {Inventory.I4202} = 'VERIFY MFR' OR
        {Inventory.I4202} = 'OTHER' OR
        {Inventory.I4202} = 'VARIOUS' OR
        {Inventory.I4202} = 'TBD' OR
        {Inventory.I4202} = 'NA' OR
        {Inventory.I4202} = 'N/A'
    )
    OR
    (
        {Inventory.I4203} = 'UNKNONWN' OR
        {Inventory.I4203} = 'VERIFY MODEL NUMBER' OR
        {Inventory.I4203} = 'OTHER' OR
        {Inventory.I4203} = 'VARIOUS' OR
        {Inventory.I4203} = 'TBD' OR
        {Inventory.I4203} = 'NA' OR
        {Inventory.I4203} = 'N/A' OR
        {Inventory.I4203} = 'MISCELLANEOUS' OR
        ISNULL({Inventory.I4203}) OR
        LENGTH(trim({Inventory.I4203})) < 1 OR
        INSTR(trim({Inventory.I4203}), "") = 0 OR
        TRIM({Inventory.I4203}) = ""
    )
    OR
    (
        {Inventory.I4204} = 'UNKNOWN DESCRIPTION' OR
        {Inventory.I4204} = 'VERIFY DESCRIPTION' OR
        {Inventory.I4204} = 'OTHER' OR
        {Inventory.I4204} = 'VARIOUS' OR
        {Inventory.I4204} = 'TBD' OR
        {Inventory.I4204} = 'NONE - NO STD USED' OR
        {Inventory.I4204} = 'NA' OR
        {Inventory.I4204} = 'N/A' OR
        {Inventory.I4204} = 'MISCELLANEOUS' OR
        ISNULL({Inventory.I4204}) OR
        LENGTH(trim({Inventory.I4204})) < 1 OR
        INSTR({Inventory.I4204}, "") = 0 OR
        TRIM({Inventory.I4204}) = ""
    )
)

任何幫助,將不勝感激。

在水晶,如果一個特定字段可以為空,那么你需要檢查該條件,你用它做的第一件事,否則整個公式將因錯誤而沒有進行評估。

因此,在您的情況下,字段I4203和I4204至少需要將notull isnull()檢查移到其相應部分的頂部。 如果I4240和I4202可以為空,那么您也應該處理這些條件。

另外,您對“ UNKNONWN”一詞有一些引用; 那是錯字嗎?

問題是報告選項設置為默認使用null,但由於記錄選擇公式中的某些原因,將其設置為exception。 將其設置為默認設置后,它可以正常工作,並且計數正確。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM