Olá Quemuel,
se você tiver informado um pacote diferente pras classes do seu serviço é só alterar o caminho no código.
var DATAAVL1 = instanceservice.instantiate("br.com.lactosul.protheus._7999.DATAAVL");
DATAAVL1.setDDTAVALIACAO("01/05/2018");
var DATAAVL2 = instanceservice.instantiate("br.com.lactosul.protheus._7999.DATAAVL");
DATAAVL2.setDDTAVALIACAO("02/05/2018");
var REGISTROS = instanceservice.instantiate("br.com.lactosul.protheus._7999.ARRAYOFDATAAVL");
REGISTROS.getDATAAVL().add(DATAAVL1);
REGISTROS.getDATAAVL().add(DATAAVL2);
var A_LINHAS = instanceservice.instantiate("br.com.lactosul.protheus._7999.DATAS");
A_LINHAS.setREGISTROS(REGISTROS);
A variável A_LINHAS é a que você vai passar como o último parâmetro da operação do seu WebService.
Uma forma de conseguir esse código é usar o gerador de Datasets do Painel de Controle e observar o código do Dataset gerado.
=======
Vamos supor que o nome do campo do seu pai x filho que contém a data da avaliação é dtavaliacao, você poderia percorrer os campos do formulário e ir alimentando o objeto:
var processInstanceId = getValue('WKNumProces');
// Retorna um mapa com os valores dos campos do formulário do processo
var cardData = hAPI.getCardData(processInstanceId);
// Pegar só as chaves do mapa, que seriam os nomes dos campos do formulário
var cardFields = cardData.keySet().toArray();
var fieldName = 'dtavaliacao___';
var REGISTROS = instanceservice.instantiate("br.com.lactosul.protheus._7999.ARRAYOFDATAAVL");
for (var i = 0; i < cardFields.length; i++) {
// Se o campo de formulário começar com o nome do seu campo pai x filho cria uma data de avaliação
if (cardFields[i].startsWith(fieldName)) {
var DATAAVL = instanceservice.instantiate("br.com.lactosul.protheus._7999.DATAAVL");
DATAAVL.setDDTAVALIACAO(cardData.get(cardFields[i]));
REGISTROS.getDATAAVL().add(DATAAVL);
}
}
var A_LINHAS = instanceservice.instantiate("br.com.lactosul.protheus._7999.DATAS");
A_LINHAS.setREGISTROS(REGISTROS);
Olá Quemuel,
quando você gerou o serviço foram geradas algumas classes correspondentes aos objetos complexos e uma delas vai ser a do objeto A_LINHAS, aí você teria que instanciar ela: instanceservice.instantiate("pacote e classe correspondente ao objeto A_LINHAS") . Você pode descobrir a classe consultando o seu serviço pelo plugin do Studio no eclipse. Caso prefira, você pode salvar o seu WSDL e anexar aqui que eu vejo quais as classes que você vai utilizar.
— Diogo Boegershausen 02 de May de 2018@Diogo, http://protheus.lactosul.com.br:7999/WSSZU.apw?WSDL
— Quemuel Rodrigues 02 de May de 2018Adicionei como anexo também!
— Quemuel Rodrigues 02 de May de 2018