Ao acessar serviço ECMDocumentService de uma atividade serviço no processo,para mover um documento de diretorio ao outro,gera um exception "serviceHelper" is not defined" conforme documentação haveria um bug pois método espera um lista de integers.Melhor maneira de realizar chamada dos serviços de flug dentro de um processo.
function servicetask31(attempt, message)
{
var atividade = getValue("WKNumState");
var documentProvider =ServiceManager.getServiceInstance('ECMDocumentService');
var serviceLocator =documentProvider.instantiate('com.totvs.technology.ecm.dm.ws.ECMDocumentServiceService');
var itensArray = serviceHelper.instantiate("com.totvs.technology.ecm.dm.ws.IntArray");
var documentService = serviceLocator.getDocumentServicePort();
var connector = DatasetFactory.getDataset('dsConnector', null, null, null);
var user = "136115";
var idPasta = 4162912;
var documentId = hAPI.getCardValue("document_id");
itensArray.getItem().add(new java.lang.Integer(documentId));
var result = documentService.moveDocument(connector.getValue(0,'fUser'),
connector.getValue(0, 'fSenha'),
getValue("WKCompany"),
itensArray,
user,
idPasta );
Código que tenho de movimentação:
idDoc = 853;
idPasta = 803;
var stub = ServiceManager.getServiceInstance("ECMDocumentService");
var helper = stub.getBean();
var service = helper.instantiate("com.totvs.technology.ecm.dm.ws.ECMDocumentServiceService");
var servico = service.getDocumentServicePort();
var usuario = "otto.mostaert";
var senha = "*************";
var matricula = "matricula do usuário";
var documentosArray = helper.instantiate("net.java.dev.jaxb.array.IntArray");
var idDocumento = new java.lang.Integer(idDoc);
documentosArray.getItem().add(idDocumento);
var retorno = servico.moveDocument(usuario, senha, getValue("WKCompany"), documentosArray, matricula, idPasta);
Otto, Você precisou cadastrar esse serviço ECMDocumentService passando o WSDL ou o Fluig já identifica automaticamente por ser um serviço padrão dele? A documentação é essa Utilização de Webservices - TOTVS Fluig - TDN e você pega os métodos analisando o WSDL? Eu estava tentando usar a fluigAPI.getDocumentService(), mas na documentação dela Overview (Javadoc for Fluig - SDK - API 1.8.2) já percebi que faltam alguns métodos importantes (esse moveDocument, por exemplo) e acho que vou passar a usar somente essas chamadas WebService manualmente
Sim, cadastrei o proprio serviço ECMDocumentService no fluig pra consumir os métodos dele.
Após realizar troca sugerida e trocar abordagem da resolução,aonde fiz DataSet Genérico que consuma o serviço,contudo gerar Exception ao instancia classe com.totvs.technology.ecm.dm.ws.IntArray.
CÓDIGO:
https://github.com/Rafael2016/Fluig-Totvs/blob/master/wcm_exemplos/dataSet/dsECMDocumentServiceMove
ERRO:

Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.
Rafael, alterei minha resposta lá em cima onde movimento o documento, ve se te ajuda.