Ws startprocess - Como obter número da solicitação iniciada

Ola pessoal!

Como faço para obter o número da solicitação criada via ws startprocess? Sei que ele esta criando o subfluxo normalmente mas não sei como pegar o iProcess. Meu erro esta dentro do IF q não reconhece o getKey(). Como faço para buscar o iProcess? Segue o meu codigo abaixo:

var rest = workflowEngineService.startProcess("xyz", "zpto", 1, "SolicitacaoDeTeste", 11, stringArray, "Solicitação inicializada pela função", codSolicitante, false, processAttachmentDtoArray, cardData, processTaskAppointmentDtoArray, true);

log.info("REST ITEM :" + rest.getItem().size());

var iProcess = "";

for (var j = 0; j < rest.getItem().size(); j++) {

log.info("DENTRO DO FOR :" + rest.getItem().get(j));

if (rest.getItem().get(j).getKey() == "iProcess") { iProcess = listResult[j].getValue(); log.info("Solitaçãoooo :" + iProcess); }

}

Olá Nilson,

o retorno seria um objeto StringArrayArray, que na verdade é uma lista de strings dentro de outra. No caso a posição 0 da segunda lista seria a chave e a posição 1 o valor:


var iProcess = "";

for (var j = 0; j < rest.getItem().size(); j++) {
    var item = rest.getItem().get(j).getItem();
    var key = item.get(0);
    var value = item.get(1);

    if (key == "iProcess") { 
        iProcess = value; 
        log.info("Solitaçãoooo :" + iProcess); 
    }
}

Sensacional Diogo Boegers!!!
Muito obrigado mesmo meu amigo… funcionou d+!
Quebrei a cabeça o dia todo com esse StringArrayArray, e alguns colegas meus também não haviam conseguido!
Mais uma vez obrigado e parabéns pela informação e apresentação da solução.

Segue a maneira utilizada por mim:


var ret = service.startProcessClassic(login, senha, 1, "procCompras", 0, userArray , "", solic, true, processAttachmentDtoArray,resultArr, appointment, 
var numSolicSubProcesso = ret.getItem().get(4).getValue();

Obrigado Fhaidy Maciel, o negocio é que eu não usei o “startProcessClassic”, eu usei foi o “startProcess” que espera um stringArrayArray. O que o Felipe Louzada me passou atendeu d+!
Mas de qualquer forma muito obrigado pela ajuda!

Caso eu tenha utilizado outra forma do StartProcess, como seria o retorno ? Via Web services.


var retorno = request.startProcess("USUARIO", "SENHA", codEmpresa, 'SA-FILHO', ativDestino, colleagueIds, 'processo iniciado pelo processo pai nº '+numProcessoPai, userId, true, ProcessAttachmentDtoArray, cardData, ProcessTaskAppointmentDtoArray, false);

Me desculpem, a resposta do nosso amigo Diogo Boegershausen foi perfeita.
Obrigado.