Caros, Meu script abaixo tem a seguinte regra que uso nos gateways exclusivos. Se na lista de itens do pedido de compra houverem algum bem do tipo 01.08 ou 01.05 ou 01.08 e 01.05 o mesmo deve retornar "S" e assim no gateway exclusivo ele é direcionado para uma determinada atividade X. Por tanto se no primeiro item que escolhi na tabela pai x filho for algum item que não seja o item 01.08 ou item 01.05 na primeira linha ele desconsidera que nesse array tenha o item 01.08 ou 01.05 e segue para atividade dizendo que o retorno é "N". Segue o exemplo do código para que possam avaliar se é erro de implementação da Hapi.GetCardData ou se é alguma falha de lógica do recurso.
Código:
function RepassaDiretoriaPrd(){
var process = getValue("WKNumProces");
cardData = hAPI.getCardData(process);
var keys = cardData.keySet().toArray();
for (var key in keys) {
var field = keys[key];
if (field.indexOf("Codigoprd___") > -1) {
var name = cardData.get(field);
var index = field.replace("Codigoprd___", "");
var nomedoitem = cardData.get("NomeItem___" + index);
var retorno = "N";
if ((cardData.get("Codigoprd___" + index).substring(0,5) == "01.08") ||
(cardData.get("Codigoprd___" + index).substring(0,5) == "01.05")) {
retorno="S";
}
return retorno;
}
}
}
Italo, se você conseguiu resolver o problema. Poste a resposta e marque como respondido.
— Rafael Vanat 17 de Oct de 2017