Enviar arquivos de um processo para outro pelo startProcess

Em uma atividade de serviço estou criando perfeitamete uma nova solicitação utilizando o startProcess do ECMWorkflowEngineService, porém estou querendo melhorar a chamada e enviar também os anexos da solicitação que está sendo finalizada para a solicitação que está sendo criada.

                var attachments = serviceHelper.instantiate('com.totvs.technology.ecm.workflow.ws.ProcessAttachmentDtoArray');

                var listAttachments = hAPI.listAttachments();
                for (var i = 0; i < listAttachments.size(); i++) {
                    var doc = listAttachments.get(i);
                    var attachmentDto = serviceHelper.instantiate('com.totvs.technology.ecm.workflow.ws.ProcessAttachmentDto');
        
                    attachmentDto.setFileName(doc.getDocumentDescription());
                    attachmentDto.setFileContent(doc.getDocumentId());
                    attachments.getItem().add(attachmentDto);
                }

Preciso de ajudar para entender o que devo enviar no setFileContent, já que da maneira que estou fazendo não está funcioando.

1 curtida

Boa noite @gomeswjunior
Estou com a mesma necessidade, no processo A tenho um startProcess, gostaria de inserir os anexos do processo A no processo novo. Conseguiu resolver?

Aqui sempre precisei usar o Soap pra buscar o conteúdo, porque não vi lugar nenhum permitindo pegar o conteúdo do arquivo nativamente.

var fluigUser = getFluigUser(); // Função customizada

var documentService = ServiceManager.getServiceInstance("ECMDocumentService")
        .instantiate("com.totvs.technology.ecm.dm.ws.ECMDocumentServiceService")
        .getDocumentServicePort();

attachmentDto.setFileContent(
    documentService.getDocumentContent(
        fluigUser.username,
        fluigUser.password,
        getValue("WKCompany"),
        doc.getDocumentId(),
        "admin",
        doc.getVersion(),
        doc.getDocumentDescription()
    )
);
1 curtida