简体   繁体   English

TCC - isNull 产生不一致的结果

[英]TCC - isNull producing inconsistent results

I'm working on a report through TCC that gives me a count of applicants by requisition with various filters applied using a complex projections.我正在通过 TCC 编写一份报告,该报告通过使用复杂的预测应用了各种过滤器,通过申请为我提供了申请人的数量。 One of the complex projections counts a list of Applicants where a specific UDF on their candidate profile is Null.其中一个复杂的预测计算了一个申请人列表,其中他们的候选人资料上的特定 UDF 是 Null。 I'm using the Recruiting 17.4 Product, Entity: Requisition, and TCC version 17.4.我正在使用 Recruiting 17.4 产品、实体:申请和 TCC 版本 17.4。 Additionally, the alias for the main query is "mainQuery".此外,主查询的别名是“mainQuery”。

For some reason, this query produces a count of 0 for all requisitions:出于某种原因,此查询对所有申请产生的计数为 0:

<quer:projection alias="TotalWithoutSurveys" xmlns:quer="http://www.taleo.com/ws/integration/query">
  <quer:query projectedClass="Application" alias="Q1">
    <quer:projections>
      <quer:projection>
        <quer:count>
          <quer:field path="Candidate,Number"/>
        </quer:count>
      </quer:projection>
    </quer:projections>
    <quer:filterings>
      <quer:filtering>
        <quer:equal>
          <quer:field path="Requisition,ContestNumber"/>
          <quer:field ownerQuery="mainQuery" path="ContestNumber"/>
        </quer:equal>
      </quer:filtering>
      <quer:filtering>
        <quer:isNull>
          <quer:field path="Candidate,Gallup_5fTeacher_5fScore"/>
        </quer:isNull>
      </quer:filtering>
    </quer:filterings>
  </quer:query>
</quer:projection>

If I replace this chunk:如果我替换这个块:

    <quer:isNull>
      <quer:field path="Candidate,Gallup_5fTeacher_5fScore"/>
    </quer:isNull>

with this chunk:用这个块:

    <quer:isNotNull>
      <quer:field path="Candidate,Gallup_5fTeacher_5fScore"/>
    </quer:isNotNull>

It produces the correct values for this query (though incorrect for my purpose).它为此查询生成正确的值(尽管对我的目的不正确)。 Even stranger, if I replace it with this chunk:更奇怪的是,如果我用这个块替换它:

    <quer:equal>
      <quer:replaceNull>
        <quer:field path="Candidate,Gallup_5fTeacher_5fScore"/>
        <quer:string>None</quer:string>
      </quer:replaceNull>
      <quer:string>None</quer:string>
    </quer:equal>

it works correctly.它工作正常。 Any idea of what I'm doing wrong?知道我做错了什么吗?

Even I experienced this of 'IsNull' not being effective with the the UDF.即使我经历过这种“IsNull”对 UDF 无效的情况。

As an alternative you can do this by using 'isNotNull' and 'Not'作为替代方案,您可以使用“isNotNull”和“Not”来执行此操作

<quer:filtering xmlns:quer="http://www.taleo.com/ws/integration/query">
   <quer:not>
      <quer:isNotNull>
         <quer:field path="Requisition,JobInformation,AD_5fdea_5fEmp"/>
      </quer:isNotNull>
   </quer:not>
</quer:filtering>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM