Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagejs
linenumberstrue

function beforeDocumentPublisher() {

	// RecuperaExemplo de evento que impede o usuário Objetode publicar doum documento que está sendo duplicado.
	 com descrição 
	// repetida em uma determinada pasta .
	
	
	var state = getValue("WKState");
	

	if (state == "PUBLISH") {

		var doc = getValue("WKDocument");

	
	// Faz validações apenas se o documento estiver sendo publicado na pasta
		// 624
		if (doc.getParentDocumentId() == 624) {
	    		// Reduzir o retorno de registros para reduzir impacto em
			// performance.
			var constraintDocument1 = DatasetFactory.createConstraint(
					'sqlLimit', '1', '1', ConstraintType.MUST);
			// Passando código da pasta pai para o Dataset
			var constraintDocument2 = DatasetFactory.createConstraint(
					'parentDocumentId', doc.getParentDocumentId(),         docdoc
							.getParentDocumentId(), ConstraintType.MUST);
			// Consultando apenas registros de documentos ativos.
			var constraintDocument3 = DatasetFactory.createConstraint(
					'activeVersion', 'true', 'true', ConstraintType.MUST);
			// Consultando apenas nos documentos não foram removidos.
			var constraintDocument4 = DatasetFactory.createConstraint(
					'deleted', 'false', 'false', ConstraintType.MUST);
			// Consultando documentos que tenham a mesma descrição informada na
			// publicação
			var constraintDocument5 = DatasetFactory.createConstraint(
					'documentDescription', doc.getDocumentDescription(), doc
							.getDocumentDescription(), ConstraintType.MUST);
		//var colunasDocument = new Array('documentDescription', 'documentPK.companyId', 'documentPK.documentId', 'documentPK.version', 'documentType', 'activeVersion', 'deleted', 'parentDocumentId');	
			var datasetDocument = DatasetFactory.getDataset('document', null, 
					new Array(constraintDocument1, constraintDocument2, 
							constraintDocument3, constraintDocument4, 
							constraintDocument5), null);

			if (datasetDocument.rowsCount > 0) {
				throw "Já existe um documento com a mesma descrição informada";
			}

		}
	}
}






São disponibilizadas algumas propriedades referentes ao documento que esta sendo criado ou editado, porem somente para consulta através do método getValue.

...