중복 노드를 제거하려면 xml에서 중복 노드를 제거하는 데 도움을주십시오. 중복 노드를 제거하는 것은 상당히 복잡합니다.조건에 따라 중복 노드를 제거하는 방법
조건 1 : policyKey 노드 아래의 각 정책 노드에서 정책 노드와 PolicyFormCode/code 및 policyEffectiveDt를 확인해야하고 policyID 이 동일한 경우 모든 정책 노드에서 동일합니다. sourceSystemCd/code = 'SCBP'가 있습니다.
조건 2 : 위의 조건 인 경우 policyNbr 및 PolicyFormCode/code 및 policyEffectiveDt 및 policyID에 모두 differnt 값이 있으면 모든 정책 노드를 표시해야합니다.
조건 1 : 정책 1과 정책 2에서 policyNbr과 policyFormCd가 같아야합니다. 그러면 policyId가있는 정책을 disaply해야합니다. 같지 않으면 둘 다 표시하십시오. 이것이 가능한가 ? 모든 조건은 단일 xsl에서 작동해야합니다.
조건 1 : 입력 XML : conndition 3
<policies>
<!-- policy 1-->
<policy>
<policyKey>
<policyNbr>4567</policyNbr>
<policyEffectiveDt>2014-11-14</policyEffectiveDt>
<policyFormCd>
<code>669</code>
</policyFormCd>
</policyKey>
<transactionSplitTrans>
<sourceSystemCd>
<code>ARA</code>
</sourceSystemCd>
</transactionSplitTrans>
</policy>
<!-- policy 2-->
<policy>
<policyKey>
<policyNbr>4567</policyNbr>
<policyEffectiveDt>2014-11-14</policyEffectiveDt>
<policyID>54545</policyID>
<policyFormCd>
<code>669</code>
</policyFormCd>
</policyKey>
<transactionSplitTrans>
<sourceSystemCd>
<code>SCBP</code>
</sourceSystemCd>
</transactionSplitTrans>
</policy>
<!-- third -->
<policy>
<policyKey>
<policyNbr>1234</policyNbr>
<policyID>115774001</policyID>
<policyEffectiveDt>2014-11-14</policyEffectiveDt>
<policyFormCd>
<code>660</code>
</policyFormCd>
</policyKey>
<transactionSplitTrans>
<sourceSystemCd>
<code>ARAR</code>
</sourceSystemCd>
</transactionSplitTrans>
</policy>
<!-- fourth -->
<policy>
<policyKey>
<policyEffectiveDt>2014-11-14</policyEffectiveDt>
<policyFormCd>
<code>660</code>
</policyFormCd>
<policyID>115774001</policyID>
<policyNbr>1234</policyNbr>
</policyKey>
<transactionSplitTrans>
<sourceSystemCd>
<code>SCBP</code>
</sourceSystemCd>
</transactionSplitTrans>
</policy>
</policies>
예상 출력 :
<policies>
<!-- policy 2-->
<policy>
<policyKey>
<policyNbr>4567</policyNbr>
<policyEffectiveDt>2014-11-14</policyEffectiveDt>
<policyID>54545</policyID>
<policyFormCd>
<code>669</code>
</policyFormCd>
</policyKey>
<transactionSplitTrans>
<sourceSystemCd>
<code>SCBP</code>
</sourceSystemCd>
</transactionSplitTrans>
</policy>
</policies>
조건 belwo XSLT에 대한 제대로 작동 1과 조건 2. 동일한 xsl에 조건 3을 포함해야합니다.
을보십시오 : 그것은 연결된 키를
그런 다음 모든 필드를 포함하는 것입니다, 당신과 같이 템플릿을 무시하는 템플릿을 가질 수 두 번째 및 정책은 서로 다른 "policyEffectiveDt"값을 갖습니다. 이 올바른지? 감사! –
안녕하세요, Tim, 문제를 해결했습니다. 이제는 동일한 policyEffectiveDate입니다. –
안녕하세요, Tim, 고맙습니다. 잘 작동하지만, 만족할만한 조건이 하나 더 있습니다. 제발 저를 도울 수 있어요. 조건 3 –