Árvore de páginas

Versões comparadas

Chave

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

...

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

 

Propriedade

Descrição

Tipo

WKDocument

Objeto do Documento

DocumentDto

WKSubject

Descrição do Assunto do documento

String

WKListApprover

Lista dos Aprovadores do documento

List<ApproverDto>

WKListSecurity

Lista com a segurança do documento

List <DocumentSecurityConfigDto>

WKListRelatedDocument

Lista com os documentos relacionados ao documento

List< RelatedDocumentDto>

WKState

Estado da ação: PUBLISH ou MODIFY

String

WKUser

Usuário logado

String

WKCompany

Código da Empresa

int

...

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

Propriedade

Descrição

Tipo

WKDocument

Objeto do Documento

DocumentDto

WKUser

Usuário logado.

String

WKCompany

Código da Empresa

int

...

Bloco de código
languagejava
titleExemplo
function afterSaveCard(companyId, formId, cardId, versionId, cardData){
}

 

Sendo os parâmetros:

Propriedade

Descrição

Tipo

companyId

Código da Empresa

int

formId

Código do Formulário

int

cardId

Código do Registro de Formulário

int

versionIdVersão do Registro de Formulárioint
cardDataDados do Registro de FormulárioHashmap <String, String>

...

Bloco de código
languagejava
titleExemplo
function afterSaveCard(companyId, formId, cardId, versionId, cardData){
}

 

Sendo os parâmetros:

Propriedade

Descrição

Tipo

companyId

Código da Empresa

int

cardId

Código do Registro de Formulário

int

...

Bloco de código
languagejava
titleExemplo
function beforeWatchContent(companyId, watchDTO){
}

 

Sendo os parâmetros:

Propriedade

Descrição

Tipo

companyId

Código da Empresa

int

watchDTO

Dados do registro

WatchDTO

...

Bloco de código
languagejava
titleExemplo
function afterWatchContent(companyId, watchDTO){	
}

 

Sendo os parâmetros:

Propriedade

Descrição

Tipo

companyId

Código da Empresa

int

watchDTO

Dados do registro

WatchDTO

...

Bloco de código
languagejava
titleExemplo
function beforeUnwatchContent(companyId, watchDTO){
}

 

Sendo os parâmetros:

Propriedade

Descrição

Tipo

companyId

Código da Empresa

int

watchDTO

Dados do registro

WatchDTO

...

Bloco de código
languagejava
titleExemplo
function afterUnwatchContent(companyId, watchDTO){
}

 

Sendo os parâmetros:

Propriedade

Descrição

Tipo

companyId

Código da Empresa

int

watchDTO

Dados do registro

WatchDTO

Bloco de código
languagejava
titleExemplo
function afterUnwatchContent(companyId, watchDTO){
	if(watchDTO.getSocialWatchType() == "POST" && watchDTO.getNumberWatchers() < 3 ){
		log.erro("O post   \"" + watchDTO.getText() + "\" do autor " + watchDTO.getPostAuthor() + " deixou de ser polemico" )
	}
}

 

OnNotify

Para interferir no envio de um e-mail padrão do Fluig, deve ser utilizado o evento global onNotify, que é disparado no momento em que qualquer um dos e-mails  do Fluig é enviado. Nesse evento, podem ser feitas alterações como, por exemplo, adicionar outros destinatários ao e-mail, modificar os valores dos parâmetros utilizados no template de e-mail, etc.

Abaixo se encontra um exemplo de como implementar esse evento:

Bloco de código
themeEclipse
languagejavascript
linenumberstrue
function onNotify(subject, receivers, template, params) {
    if (template.match("TPLDOCUMENT_APPROVAL_PENDING") != null) {
        receivers.add("[email protected]");
    }
}
Nota
titleAtenção

A partir da versão 1.3.3 do Fluig, recomenda-se fazer a validação do template utilizando template == "TPLDOCUMENT_APPROVAL_PENDINGao invés da função match(), evitando assim redundâncias na customização, pois o match() pode retornar como válido para mais de um template em casos como TPLNEW_TASK e TPLNEW_TASK_POOL_GROUP.

 

 

O evento onNotify está disponível na lista de eventos globais. Ao selecionar esse evento na lista de eventos disponíveis, a assinatura da função acima já será preenchida automaticamente. Este evento disponibiliza os seguintes parâmetros:

ParâmetroDescrição
subjectÉ o assunto do e-mail. A alteração desta variável irá implicar que todos os usuários recebam o e-mail com o novo assunto configurado. Exemplo de utilização: subject.add("ASSUNTO");
receiversLista de e-mails destinatários. Também é possível adicionar outros e-mails, de usuários que não participam do processo. Inclusive, podem ser adicionados e-mails de usuários que não estão cadastrados no Fluig, caso seja necessário notificar uma pessoa que não tenha acesso ao sistema.
templatePermite validar qual tipo de e-mail está sendo enviado (por exemplo, template de documento em aprovação, documento expirando, etc). Com base nessa variável podemos distinguir quais e-mails queremos customizar. É recomendável que sempre seja verificado o código do template, para evitar que ocorram alterações em outros tipos de e-mail, que não necessitariam de customização.
paramsÉ um mapa de dados que permite alterar/incluir parâmetros para que sejam apresentados no e-mail. O nome dos parâmetros informados nesse mapa devem ser os mesmos que são utilizados dentro do arquivo de template.

 

No exemplo que foi apresentado acima está sendo validado se o template é o "TPLDOCUMENT_APPROVAL_PENDING" (que corresponde a documento pendente de aprovação). Em caso positivo, um novo e-mail será adicionado na lista de destinatários. Ou seja, além do responsável pela aprovação, outra pessoa será notificada, recebendo uma cópia do e-mail. Como está sendo validado o código do template, os demais tipos de e-mail não serão afetados.

Os templates podem ser consultados dentro do diretório do volume, em: <VOLUME>\templates\tplmail. Se for necessário adicionar algum parâmetro no e-mail padrão, os templates podem ser editados diretamente nesse diretório.

 

 

Nota
titleImportante
  • O evento global onNotify possui bind de variáveis para acesso à log, datasetManager, DatasetFactory, DatasetBuilder, ConstraintType e ServiceManager.
  • Recomenda-se verificar a lista de parâmetros (params) recebida antes de utilizá-los, pois estes variam de acordo com o template utilizado.
  • Quando um workflow possuir evento onNotify, o evento global onNotify será ignorado para os e-mails daquele processo.
  • É imprescindível a validação pelo código do template antes de qualquer implementação, pois TODOS os e-mails passarão por esta customização quando o evento estiver registrado.

 

Objetos utilizados nos eventos

...

Este objeto representa o documento e suas propriedades, na tabela abaixo consta mais informações sobre ele:

 

Função

Descrição da Função

Tipo do Retorno

getDocumentId()

Retorna o número do documento.

int

getVersion()

Retorna o número da versão do documento.

int

getCompanyId()

Retorna o código da empresa em que o documento foi publicado.

Int

getUUID()

Retorna o UUID (identificador Único Global) do documento.

String

getDocumentTypeId()

Retorna o tipo do arquivo físico, se retornar branco ou nulo é porque esse tipo não é conhecido pelo Fluig.

String

getLanguageId()

Retorna o código do Idioma do documento.

String

getIconId()

Retorna o código do Ícone do documento.

int

getTopicId()

Retorna o código do assunto do documento.

int

getColleagueId()

Retorna a matricula do usuário que criou o documento.

String

getDocumentDescription()

Retorna a descrição do documento.

String

getAdditionalComments()

Retorna os comentários adicionais do documento.

String

getPhisicalFile()

Retorna o caminho físico onde o documento está armazenado.

String

getCreateDate()

Retorna a data de criação.

java.util.Date

getApprovedDate()

Retorna a data de Aprovação.

java.util.Date

getLastModifiedDate()

Retorna a Data da última modificação.

java.util.Date

getDocumentType()

Retorna o tipo do documento, onde:

0 à Pasta raiz

1 à Pasta

2 à Documento normal

3 à Documento externo

4 à Fichário

5 à Ficha

7 à Anexo Workflow

8 à Novo Conteúdo

9 à Aplicativo

10 à Relatório

portal à Site

portalPage à Página de Site

String

getExpirationDate()

Retorna a data de expiração.

java.util.Date

getParentDocumentId()

Retorna o número da Pasta/Fichário pai

int

getRelatedFiles()

String com o nome do arquivo físico principal e anexos.

String

getActiveVersion()

Retorna se a versão é ativa.

boolean

getVersionDescription()

Retorna a descrição da versão.

String

getDownloadEnabled()

Retorna se o documento permite Download

boolean

getApproved()

Retorna se o documento está em aprovação.

boolean

getValidationStartDate()

Retorna a partir de que data em que o documento poderá ser visualizado.

java.util.Date

getPublisherId()

Retorna a matricula do usuário que publicou o documento.

String

getCardDescription()

Retorna a descrição da ficha, para documento do tipo 5.

String

getDocumentPropertyNumber()

Retorna o fichário que foi usado como base para criação da ficha, por isso só tem um valor quando o documento é do tipo 5 (ficha).

int

getDocumentPropertyVersion()

Retorna a versão do fichário em que a ficha foi criada.

int

getPrivateDocument()

Retorna se o documento/pasta está abaixo da pasta particular.

boolean

getPrivateColleagueId()

Se é um documento particular retorna a matricula do usuário onde este documento está alocado.

String

getIndexed()

Retorna se o documento já foi indexado.

boolean

getPriority()

Retorna a prioridade do documento.

int

getUserNotify()

Retorna se notifica os usuários que tenham esse assunto de interesse.

boolean

getExpires()

Retorna se o documento está expirado.

boolean

getVolumeId()

Retorna o volume onde o documento foi publicado, se estiver em branco ele utiliza o volume do pai.

String

getInheritSecurity()

Retorna se herda segurança do pai.

boolean

getUpdateIsoProperties()

Retorna se atualiza as propriedades da cópia controlada.

boolean

getLastModifiedTime()

Retorna a hora da última modificação em milissegundos.

String

getDeleted()

Retorna se o documento está na lixeira.

boolean

getDatasetName()

Retorna o documento do dataset , se o documento é um fichário.

String

getKeyWord()

Retorna as palavras chaves do documento. Cada palavra é separada por vírgula.

String

getImutable()

Retorna se a versão/revisão é inalterável.

boolean

getDraft()

Retorna se o documento está em edição, para documento do tipo “Novo Conteúdo”.

boolean

getInternalVisualizer()

Retorna se utiliza visualizador interno.

boolean

getPhisicalFileSize()

Retorna o tamanho físico do documento principal e anexos.

float

...

Este objeto representa os aprovadores e suas propriedades, na tabela abaixo consta mais informações sobre ele:

 

Função

Descrição da Função

Tipo do Retorno

getDocumentId()

Retorna o número do documento.

int

getVersion()

Retorna o número da versão do documento.

int

getCompanyId()

Retorna o código da empresa em que o documento foi publicado.

Int

getColleagueId()

Retorna a matricula de um usuário ou o código do grupo que está aprovando este documento. É possível saber se vai retornar um usuário ou um grupo pelo tipo de aprovação.

String

getApproverType()

Retorna o tipo da aprovação, onde:

0 à Usuário

1 à Grupo

int

getLevelId()

Retorna o nível de aprovação, no caso de aprovação em níveis.

int

...

Este objeto representa a segurança de um documento e suas propriedades, na tabela abaixo consta mais informações sobre ele:

  

Função

Descrição da Função

Tipo do Retorno

getDocumentId()

Retorna o número do documento.

int

getVersion()

Retorna o número da versão do documento.

int

getCompanyId()

Retorna o código da empresa em que o documento foi publicado.

Int

getAttributionValue()

Retorna a matricula de um usuário ou o código do grupo que está na segurança deste documento. É possível saber se vai retornar um usuário ou um grupo pelo tipo da segurança.

Obs.: Retorna em branco quando o tipo é todos os usuários.

String

getAttributionType()

Retorna o tipo da segurança, onde:

1 à Usuário;

2 à Grupo;

3 à Todos os Usuários.

int

getPermission()

Retorna se é uma permissão.

Obs.: Se não é uma permissão é uma restrição.

boolean

getShowContent()

Retorna se lista o conteúdo.

boolean

getSecurityLevel()

Retorna no nível de permissão/restrição, onde:

-1 à sem permissão/restrição (nega acesso);

0 à Leitura;

1 à Gravação;

2 à Modificação;

3 à Total.

int

getSequence()

Retorna a sequência da permissão/restrição.

int

getSecurityVersion()

Retorna se ele utiliza a segurança deste versão nas demais.

boolean

...

Este objeto representa os documentos relacionados e suas propriedades, na tabela abaixo consta mais informações sobre ele:

 

Função

Descrição da Função

Tipo do Retorno

getDocumentId()

Retorna o número do documento.

int

getVersion()

Retorna o número da versão do documento.

int

getCompanyId()

Retorna o código da empresa em que o documento foi publicado.

int

getRelatedDocumentId()

Retorna o número do documento que está relacionado ao documento publicado.

int

...

Este objeto representa as notificações de acompanhamento de comentários e suas propriedades, na tabela abaixo consta mais informações sobre ele:

 

Função

Descrição da Função

Tipo do Retorno

getEntityId()

Retorna o código do Conteúdo.

String

getUserId()

Retorna o código do usuário.

String

getUserAlias()

Retorna o alias do usuário.

String

getSociableId()Retorna ocódigo sociable.String
getCreationDate()Retorna a data de criação.String
getLastUpdateDate()Retorna a data da última atualizaçã.String
getNumberComments()Retorna o número de comentários.String
getNumberLikes()Retorna o número de apoios.String
getNumberShares()Retorna o número de compartilhamentos.String
getNumberWatchers()Retorna o número de acompanhamentos.String
getNumberDenouncements()Retorna o número de denúncias.String
getSocialWatchType()Retorna o tipo (social)String
getPostAuthor()Retorna o autor do conteúdo.String
getTags()Retorna as tags.String
getText()Retorna o texto.String
getDescription()Retorna a descrição.String
getObjectClass()Retorna a classe do objeto.String
getObjectId()Retorna o objectId.String

getThumbURL()

Retorna a url do thumb

String

...

  • event (String): Informa qual o tipo de evento que foi efetuado com o documento, conforme a tabela abaixo:

Evento

Descrição

PUBLISH

Um novo documento publicado.

MODIFY

Documento é modificado

DELETE

Documento é excluído da base de dados.

SENDRECYCLE

Documento é enviado para lixeira.

DELETEFOLDER

Uma pasta é excluída da base de dados.

EXTERNALCONVERTION

Documento com conversão customizada.

CONVERTIONLONGTERM

Documento convertido para longo prazo.

MOVE

Um ou mais documento ou pastas foram movidos de uma pasta para outra.

RESTORERECYCLE

Restaura documentos e pastas da Lixeira.

...

wdkAbstract será disparado quando houver manipulação em alguns objetos no Fluig, conforme tabela abaixo:

 

Objeto

Descrição

Tabela no BD

Icon

Ícone

ICONE

Topic

Assunto

ASSUNTO

Shortcut

Segurança de Menu

MENU_ICONE

LogAccess

Log de Acesso

LOG_ACCESS

ColleagueReplacement

Substituto

COLAB_SUBSTTO

Application

Aplicativo

APLICATIVO

ProgressLib

Ambiente Progress

AMBIEN_PROGRESS

GlobalCalendar

Feriado

CALEND_GLOBAL

Term

Termo

TERMO

Synonym

Sinônimo

SINONIMO

DocumentType

Tipo do Documento

TIPO_DOCUMENTO

Volume

Volume

VOL_FISIC

AttributionMecanism

Mecanismo de Atribuição

MECAN_ATRIBUIC

EmailTemplate

Template de Email

TEMPLATE_EMAIL

CustomizedDatasetBuilder

Dataset

SERV_DATASET

DataService

Serviços

SERV_DADOS

CustomFields

Campos Customizados

CAMPO_CUSTOM

UserGraphicSetings

DashBoard

CONFIGUR_GRAF_USUAR

Watermark

Marca D’água

MARCA_DAGUA

WebLayout

Layout

WEBLAYOUT

Adapter

Adaptadores

ADAPTER

...

  • event (String): Informa qual o tipo de evento que foi efetuado com o objeto, conforme a tabela abaixo:

Evento

Descrição

CREATE

Um novo objeto foi criado.

UPDATE

Um objeto foi modificado

DELETE

Um objeto foi excluído da base de dados.

...