Script para excluir um documento de uma pasta

cancel
Showing results for 
Search instead for 
Did you mean: 
raquel_ballero
Active Member II

Script para excluir um documento de uma pasta

Boa tarde,

Estou tentando criar um script para deletar um documento de uma pasta.

Criei a regra na pasta A , que ao receber um documento irá transformar e copiar o documento em pdf na pasta B.

Exemplo: se eu carregar o documento Teste.doc na pasta A 

      a regra irá:

                copiar o documento na pasta B em pdf - Teste.pdf

Porém, quando eu retirar este documento da pasta A, ele também terá de ser retirado da pasta B (remover o documento na sua versão em pdf), onde eu irei configurar uma regra para quando o arquivo for excluído ou sair da pasta A.

Segue o script , alguém conseguiria me ajudar?

var folder = companyhome.childByNamePath("Sites/swsdp/documentLibrary/B");
var newFile = document.properties.name;

if (folder !== null) {
   var files = folder.children;

   for (i=0; i<files.length; i++) {
      var file = files[i];
      var fileTitle = file.properties.name;

      if (fileTitle.match(newFile)) {

           file.remove();
     }
   }

}

Não estou obtendo sucesso neste script, esta retornando a msg: Exception from executeScript: Node does not exist

Att.

Raquel Ballero

5 Replies
douglascrp
Advanced II

Re: Script para excluir um documento de uma pasta

Boa tarde.

Creio que você não conseguirá fazer isso, pois a regra é executada após o documento já ter sido excluído, e essa é, muito provavelmente, a causa do erro Node does not exist

Se o objeto foi excluído, não tem nada mais que você possa fazer com ele.

O correto nesses casos seria você trabalhar com behaviours, algo como descrito em Alfresco – Implementing delete behavior | Programming and So 

raquel_ballero
Active Member II

Re: Script para excluir um documento de uma pasta

Douglas, obrigada, irei dar uma olhada neste tutorial.

Mas considerando o que vc disse, configurei a regra para apagar o arquivo quando ele entrar na pasta e de fato o script funciona, porém ele considera o nome do arquivo e sua extensão, teria como comparar somente o nome, como por exemplo Teste.* (apagar todo os documento de mesmo nome independente da extensão .doc .pdf ...) . Pois a versão em doc será alterada e a versão em PDF dever ser excluída e publicada novamente após a sua nova oficialização.

Att.

Raquel Ballero

douglascrp
Advanced II

Re: Script para excluir um documento de uma pasta

Bom, essa questão da comparação é com você.

Você vai ter que listar os filhos da pasta onde você quer remover o arquivo e fazer uma comparação considerando somente o nome sem extensão.

Isso uma simples comparação de string usando algo assim deve resolver JavaScript String indexOf() Method 

O correto mesmo, se você aceita sugestões, seria você criar uma associação entre o objeto original (o doc/docx) e o arquivo pdf gerado quando ele foi criado, e dessa forma você teria apenas que procurar pelo documento associado e removê-lo.

Para isso você precisaria criar um modelo documental contendo essa associação, mas aí já é outro assunto.

raquel_ballero
Active Member II

Re: Script para excluir um documento de uma pasta

Douglas, 

Interessante essa sua sugestão de associação, teria algum tutorial?

Muito Obrigada novamente.

Att.

Raquel Ballero

douglascrp
Advanced II