即使条件为真也找不到数据

时间:2018-11-21 15:27:21

标签: xml oracle dataset bi-publisher

说我有一个名为 PO_HEADER 的下表,其中包含以下数据:

PO_HEADER_ID    PO_NUMBER   LEGAL_ENTITY_ID
-------------   ---------   ----------------
1               XXX1        101
2               XXX2        101
3               XXX3        102

和另一个名为 LEGAL_ENTITY 的表,其中包含以下数据:

LEGAL_ENTITY_ID     LEGAL_ENTITY_NAME       DETAILS
---------------     ---------------------   -----------
101                 BB                      new
102                 FF                      old
103                 LH                      middle

我在BI Publisher中进行了以下数据集查询以及两个名为p_po_numberp_is_draft的参数:

DS1:

    Select  PO_HEADER_ID    as PO_HEADER_ID 
        ,   PO_NUMBER       as PO_NUMBER        
        ,   LEGAL_ENTITY_ID as LE_ID
    from    PO_HEADER
    where   PO_NUMBER   = :p_po_number  
    and     'Y'         = :p_is_draft

DS2:

    Select  PO_HEADER_ID    as PO_HEADER_ID 
        ,   PO_NUMBER       as PO_NUMBER        
        ,   LEGAL_ENTITY_ID as LE_ID
    from    PO_HEADER
    where   PO_NUMBER   = :p_po_number  
    and     'N'         = :p_is_draft

DS3:

    select  LEGAL_ENTITY_NAME   as  LEGAL_ENTITY_NAME   
        ,   DETAILS             as  LEGAL_ENTITY_DETAILS
    from    LEGAL_ENTITY
    where   LEGAL_ENTITY_ID = :LE_ID

DS1被组链接到DS3,DS2也被组链接到DS3。 方案如下:

  1. 当p_is_draft等于“ Y”且p_po_number等于有效的PO编号时,DS1将与D3详细信息一起获取
  2. 当p_is_draft等于“ N”且p_po_number等于有效的PO编号时,DS2将与D3详细信息一起获取。

方案2正常运行:当提供p_is_draft =“ N”和p_po_number“ XXX1”时,它将显示DS2和DS3的正确数据。

方案2的XML输出示例:

<DS2>
    <PO_HEADER_ID>1</PO_HEADER_ID>  
    <PO_NUMBER>XXX1</PO_NUMBER>
    <LE_ID>101</LE_ID>
    <DS3>
        <LEGAL_ENTITY_NAME>BB</LEGAL_ENTITY_NAME>
        <LEGAL_ENTITY_DETAILS>new</LEGAL_ENTITY_DETAILS>    
    </DS3>
</DS2>

但是,问题出在方案1。当提供p_is_draft =“ Y”和p_po_number“ XXX1”时,仅显示DS1的数据。

方案1的XML输出示例:

<DS2>
    <PO_HEADER_ID>1</PO_HEADER_ID>  
    <PO_NUMBER>XXX1</PO_NUMBER>
    <LE_ID>101</LE_ID>
</DS2>

为什么当与DS1给出的LEGAL_ENTITY_ID匹配时,DS3不显示数据?

重要说明:我知道“ p_is_draft”似乎毫无意义,但这是我无法删除的。

0 个答案:

没有答案
相关问题