Llamada de interacción que devuelve 0 propuestas cuando maxCount está establecido en 0008

Descripción description

Entorno
Adobe Campaign Adobe Campaign Classic

Problema
La llamada de interacción devuelve 0 propuestas cuando maxCount el atributo se establece en 0008 o más que eso en la carga útil SOAP.

Causa
En la siguiente carga útil, la variable urn:maxCount00008/urn:maxCount toma un valor numérico.
Si utiliza un 0, funciona normalmente hasta 0007 (significado 0000,0001,0002,…0007 funciona normalmente)

Pero si usa 0008 y encima, devuelve 0 propuestas.

Carga útil de llamada de interacción:

soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:nms:interaction"
soapenv:Header/
soapenv:Body
urn:Propose
urn:sessiontoken/
!--Recipient Id
urn:targetIdrandom/urn:targetId--
!-Account Id-
urn:targetIdrandom/urn:targetId
!--Contact Id
urn:targetIdrandom/urn:targetId--
urn:maxCount00008/urn:maxCount
urn:uuid/
urn:nlid/
urn:noProp/
urn:categories/urn:categories
urn:themes/
urn:context
!-You may enter ANY elements at this point-
context
interaction onCallOfferFlg="Y" orgName="to be filled"/
/context
/urn:context
/urn:Propose
/soapenv:Body
/soapenv:Envelope

Punto final:
https://Server URL/interaction/liveRcp/offer

Causa

Al comprobar la Interaction.js biblioteca, la parseInt() se utiliza para analizar la función maxCount valor hasta Entero.

Esta parseInt() función devuelve un valor decimal de forma predeterminada.

var iAskedPropositionCount = parseInt(soapMethod.::maxCount.toString());*

Esta función JS hereda una propiedad de C y C++ que, si se pasa un valor en parseInt() que empieza por 0, utiliza base-8 para devolver el valor.
Dado que base-8 no acepta números mayores que 7, cuando se pasa 0008 o más, lo convierte en 0 o NaN por lo tanto, no se devuelve ninguna propuesta.

Si en maxCount, se pasa 8 en lugar de 0008, da como resultado una propuesta en la respuesta a la llamada SOAP.

Resolución resolution

Solución
Modifique la Interaction.js biblioteca y uso:

var iAskedPropositionCount = parseInt(soapMethod.::maxCount.toString(),10);*

para que funcione para todos los números.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f