XML : Unable to select correct element with XSLT in BPEL

I have two variables. One is Input, second is DB. In for loop, I try to match INPUT/numberVPN with DB/userid (they are sorted differently, but all numbers from input exist in DB variable).

Now once I find it, I want the current DB/OLD_PID to be mapped into Input/profileCode, not the first one. I'm always getting just 1st, 2nd, ...

INPUT Variable (removed unneeded/classified data):

  <ns7:VPNProvisioning>      <VPNScenario>                     <profileCodeCollection>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil3</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>              <profileCode>Profil4</profileCode>          </profileCodeCollection>          <numberVPNCollection>              <numberVPN>0099962330481</numberVPN>              <numberVPN>0099962342864</numberVPN>              <numberVPN>0099962342865</numberVPN>              <numberVPN>0099962342867</numberVPN>              <numberVPN>0099962342868</numberVPN>              <numberVPN>0099962342869</numberVPN>              <numberVPN>0099962342870</numberVPN>              <numberVPN>0099962342871</numberVPN>              <numberVPN>0099962342873</numberVPN>              <numberVPN>0099962342882</numberVPN>              <numberVPN>0099962342883</numberVPN>              <numberVPN>0099962343623</numberVPN>              <numberVPN>0099962343624</numberVPN>              <numberVPN>0099962343625</numberVPN>              <numberVPN>0099962343626</numberVPN>              <numberVPN>0099962343627</numberVPN>              <numberVPN>0099932406802</numberVPN>              <numberVPN>0099932618450</numberVPN>              <numberVPN>0099932691124</numberVPN>              <numberVPN>0099932691244</numberVPN>              <numberVPN>0099932691373</numberVPN>              <numberVPN>0099932691376</numberVPN>              <numberVPN>0099932691474</numberVPN>              <numberVPN>0099932691491</numberVPN>              <numberVPN>0099932691531</numberVPN>              <numberVPN>0099961153082</numberVPN>              <numberVPN>0099961153083</numberVPN>              <numberVPN>0099961153084</numberVPN>              <numberVPN>0099961153085</numberVPN>              <numberVPN>0099961153318</numberVPN>              <numberVPN>0099961166999</numberVPN>              <numberVPN>0099961166388</numberVPN>              <numberVPN>0099961176716</numberVPN>              <numberVPN>0099961473357</numberVPN>              <numberVPN>0099961473368</numberVPN>              <numberVPN>0099962336527</numberVPN>          </numberVPNCollection>      </VPNScenario>  </ns7:VPNProvisioning>    

DB Variable:

  <fget_esinfo4vpnterminateOutputCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/fget_esinfo4vpnterminate">  <fget_esinfo4vpnterminateOutput>      <USERID>032/406802</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/618450</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/691124</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/691244</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/691373</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/691376</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/691474</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/691491</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>032/691531</USERID>      <OLD_PID>100002</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/153082</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/153083</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/153084</USERID>      <OLD_PID>400004</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/153085</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/153318</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/166387</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/166388</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/176716</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/473357</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>061/473368</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/330481</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/336527</USERID>      <OLD_PID>400004</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342864</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342865</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342867</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342868</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342869</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342870</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342871</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342873</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342882</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/342883</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/343623</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/343624</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/343625</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/343626</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>  <fget_esinfo4vpnterminateOutput>      <USERID>062/343627</USERID>      <OLD_PID>400001</OLD_PID>  </fget_esinfo4vpnterminateOutput>    

XSLT code from BPEL:

  <xsl:template match="/">  <ns6:VPNProvisioning>    <VPNScenarioCollection>      <VPNScenario>        <profileCodeCollection>          <xsl:for-each select="$esinfo4vpnterminate_OutputVariable.fget_esinfo4vpnterminateOutputCollection/db:fget_esinfo4vpnterminateOutputCollection/db:fget_esinfo4vpnterminateOutput">            <xsl:if test='concat("00999",substring-before(substring(db:USERID,2.0),"/"),substring-after(db:USERID,"/")) = /ns1:ORDCOMPLETE/ns1:VPNProvisioning/VPNScenario/numberVPNCollection/numberVPN'>              <profileCode>                <xsl:value-of select="db:OLD_PID"/>              </profileCode>            </xsl:if>          </xsl:for-each>        </profileCodeCollection>      </VPNScenario>    </VPNScenarioCollection>  </ns6:VPNProvisioning>    

No comments:

Post a Comment