Parametrização > Workflow > Regras Workflow 

As regras de Workflow permitem definir a execução de um certo número de acções quando os eventos particulares chegam no seio dos software Enterprise Management.

As acções possíveis são :

  • O envio de mensagens pelo serviço de mensagens.
  • A aparição de notificações no plano de trabalho
  • A actualização de dados para a execução de acções, seja directamente no momento onde o evento se produz, seja ulteriormente quando o ou os destinatérios da notificação terão reagido (acção de visa ou de assinatura no plano de trabalho, clique sobre uma ligação na mensagem, duplo clique para se conectar num contexto ligado e a realizar as actualizações manualmente)

Os dados emitidos do contexto de desencadeamento poderão ser utilizado nas mnesagens, as notificações, as acções.

Os eventos na origem de uma regra de Workflow podem ser muito diversos :

  • acção do utilizador numa gestão de objecto (criação, modificação, desencadeamento de uma acção)
  • execução de uma tarefa batch, de uma importação, de uma edição
  • acção de assinatura sobre uma notificação anterior (neste caso, pode-se ter circuitos complexos de assinatura imbricados)
  • tratamento batch percorrendo um conjunto de tabelas da base

O envio das mensagens está condicionada pela utilização de um serviço de mensagens aceitando o interface MAPI no momento do envio depois o posto cliente SMTP POP3 no momento do envio depois o servidor (o que é o caso da maior parte dos programas de mensagens do mercado).

Os destinatários das notificações do Workflow podem ser parametrizados directamente na regra, seja pelo desvio de um código utilizador, seja pelo desvio de um código terceiros e de um tipo interlocutor no terceiro. Mas é também possível de criar as tabelas multi-critérios nomeados regras de afectação, para permitir a um utilizador terceiro de definir os destinatários em função de valores dos critérios pré-definidos.

Pré-requisitos

SEEREFERTTO Consulte a docuemntação de Implementação

Gestão do ecrã

O ecrã de parametrização das regras Workflow está composto de 5 separadores, cujos 3 primeiros substituem a parametrização de base, (é suficiente de os preencher os campos essenciais destes três ecrãs simples de notificação), e os dois seguintes permitem uma parametrização avançada :

  • O primeiro separador permite definir o contexto de desencadeamento da regra.
  • O segundo dá a lista dos destinatários da mensagem ou das notificações.
  • O terceiro permite de registar o corpo da mensagem, quando uma mensagem deve ser enviada, assim que a definição de eventuais documentos juntos.
  • O quarto permite definir as condições eventuais de assinatura, quando uma regra de Workflow supõe um encadeamento de etapas ulteriores e um processo de assinatura.
  • O quinto é utilizado quando é necessário de desencadear as acções particulares (por acção, entende-se os sub-programas normalizados, seja pré-definidos e documentados, como por exemplo as acções ligadas ao compromisso de um orçamento, seja específicos realizados por um integrador para responder a uma necessidade particular).

Cabeçalho

Apresentação

Uma regra é identificada por um código, mas pode-se associar, para razões de organização, uma categoria definida numa tabela diversa. São estas informações que se encontram em cabeçalho do ecrã.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Bloco número 1

Este campo identifica a regra de Worflow

  • Descr. (campo INTIT)

Permet de définir un intitulé associé à chaque fiche.

Bloco número 2

Este campo permite de fazer reagrupamentos por tipologia das regras de workflow.

  • Activo (campo ENAFLG)

Tanto que esta check box está assinalada, a regra de Workflow não é susceptível de se desencadear

Fechar

 

Separador Geral

Apresentação

Este separador define o contexto de desencadeamento, dado por um tipo de evento e um código associado, assim que, em certos casos, códigos operação complementares. Encontra-se também um quadro de condições : eles devem ser verificados para que a regra seja desencadeada. Certos eventos agem sobre os dados organizados segundo um esquema em cabeçalho e linhas, indica-se então a qual nível cada uma das condições porta.

Pode-se por outro lado associar a uma regra um modelo de dados, que descreve um conjunto de tabelas complementares que serão lidos quando a regra será testada. No caso onde uma regra cujo tipo é Manual, este modelo de dados é obrigatório, apenas o contexto existente sendo ligado ao modelo. No caso de regras ligadas a objectos, ou a eventos diversos, este modelo é opcional, e permite simplesmente completar as tabelas em linha.

Em função de tipo de regra e do modelo que lhe está associado, poder-se-á definir se o workflow leva sobre informações de cabeçalho ou sobre as informações de linha, e, se for caso disso, definar-se-á como as linhas são reagrupadas.

Enfim, uma regra de afectação pode ser dado para definur a maneira cujos destinatários da mensagem serão definidos. Uma tal regra pode reenviar um ou vários destinatários. Os destinatários em questão poderão receber a notificação emitida da regra, ou serem transmitidos a uma regra seguinte, no caso de assinaturas encadeadas.

Encontrar-se-á num anexo técnico o detalhe das informações disponíveis no contexto de execução.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Evento desencadeador

  • Tipo de evento (campo TYPEVT)

O tipo de evento pode tomar os valores seguintes:

  • Objeto : está numa função de tipo objeto ( gestão de uma ficha em criação, modificação, duplicação, supressão...). O código evento corresponde então ao código do objeto.
  • Entrada em função : desencadeia-se a regra na entrada numa função do software. O código evento corresponde ao código da função (um objecto codificado XXX corresponde a função GESXXX, este tipo de evento pode então também ser utilizado para os objetos).
  • Edição : lança-se um estado, cujo modo pode ser especificado no campo código evento.
  • Fim de tarefa: desencadeia-se um Workflow em fim de tarefa batch, cujo código correspondente ao código evento (é necessário que a terefa batch em questão tenha a check box Mensagem utilizador assinalada, senão não funcionará mais: uma mensagem de advertência assinala que não é o caso, sem portanto impedir o registo).
  • Fim de tarefa: esta regra de workflow está desencadeada quando um utilizador decide, depois a vigilância das tarefas, de parar uma tarefa batch, cujo código corresponde ao código de evento. Envia então um pedido de paragem ao servidor batch, é o servidor que para a tarefa. Conta tida do contexto de execução deste evento, está-se limitado nas possibilidades de desencadeamento. Assim:
    • não se dispõe de variáveis de ambientes habituais (GUSER, por exemplo), mas unicamente do registo corrente na tabela corrente na tabela ABATRQT de abreviação [ABR].
    • não se pode enviar que uma mensagem via o servidor de mensagens (nenhuma tabela de seguimento pode ser actualizada).
  • Importação/Exportação : este tipo de evento se desencadeia em início (e/ou em fim) de importação (e/ou de exportação), o código evento permitem indicar o modelo utilizado.
  • Assinatura : esta regra está desencadeada no momento da assinatura de uma regra anterior, cujo código pode ser dado pelo código evento.
  • Manual : esta regra está desencadeada sobre o percurso de um conjunto de tabelas descritas no modelo de dados. Este percurso está desencadeado por uma operação manual, que pode bem entendido ser lançada em batch. Isto permite nomeadamente de desencadear as regras Workflow ligados a modificações de campos na base (a regra percorre as tabelas de auditoria).
  • Diversos : esta regra está desencadeada sobre eventos particulares identificados por uma lista finita de código de eventos. Estes eventos podem seja ser genéricos para todos os softwares escritos em tecnologia sage (por exemplo conexão, desconexão...), Encontrar-se-á a lista dos eventos genéricos num primeiro anexo de documentação, e a lista dos eventos próprios a cada software num segundo anexo de documentação.
  • Cód. de evento (campo CODEVT)

Este campo permite indicar o contexto desencadeador, segundo o tipo que está definido préviamente:

  • para um tipo Objecto, dá-se o código de objeto que corresponde.
  • para um tipo Entrada em função, dá-se o código da função.
  • para um tipo Edição, dá-se o código de estado.
  • para um tipo Fim de tarefa ou Paragem de tarefa, dá-se o código da mesma tarefa batch.
  • para um tipo Importação / Exportação, dá-se o modelo de importação/exportação utilizada.
  • para um tipo Assinatura, dá-se o código da regra à origem do pedido de assinatura.
  • Para um tipo Manual, o código não foi registado.
  • Para um tipo Divers, dá-se o código identificando o evento diverso na origem do desencadeamento da regra.

Este campo não é obrigatório que para o tipo de evento Diversos Se não é o caso preenchido, o evento se desencadeia de maneira genérica, sabendo que é sempre possível de testar de vantagem o contexto para ser selectivo (graças nomeadamente às variáveis GFONCTION, GOLDETAT...)

  • campo LIBEVT

Título associado ao código registado na rubrica precedente.

  • Operações (campo OPERATION)

Este campo permite indicar de maneira mais fina o contexto de execução da regra de Workflow. Segundo os tipos de Workflow, as informações registadas são diferentes :

  • Para um tipo Objeto, regista-se uma série de códigos permitindo definir as operações standard ( M como modificação, C como criação...) e particulares a um objeto se ele é específicado (botões e items de menus) que provocarão o desencadeamento do evento. Pelo menos um código operação é então obrigatório
  • Para um tipo Edição, regista-se C (ou nada) para impressão ou P para enviar a lista em documento junto.
  • Para um tipo Assinatura, regista-se o código operação afixado à resposta feita no processo de assinatura.
  • Para um tipo Importação/Exportação, precisa-se por uma lista de 4 códigos máximos se o desencadeamento da regra deve ser feita em início e/ou fim, e se ele concerne às operações de importação/e ou de exportação.
  • Para todos os outros tipos, esta zona não foi preenchida.
  • Fim de transac. (campo TYPDEC)

No caso de modificação de uma ficha de um objecto simples, o workflow pode ser desencadeado antes da atualização das tabelas (o que permite de definir os critérios sobre as classes [F] e [M]) ou em fim da transação de modificação (após a actualização das tabelas).

Bloco número 4

Pode-se indicar aqui um modelo de dados que define um conjunto de tabelas ligadas que devem estar disponíveis no contexto do Workflow. No caso de um evento de tipo Manual, este código é obrigatoriamente para definir o contexto de execução; nos outros casos, permite simplesmente de completar este contexto.

Este campo permite definir as regras de afetação dos destinatários de Workflow de maneira externa à regra. Faz referência a uma tabela de regras na qual se definiu uma lista de campos sobre os quais porterão os critérios de afetação dos destinatários.

Uma regra é avaliada no momento de desencadeamento do Workflow, em função do contexto, e reenvia uma ou várias utilizadores definidos por um quadro de variáveis locais [L]USER, o que permite seja de dar uma lista de destinatários para um dado Workflow, seja uma cadeia de destinatários no encadeamento de regras.

É importante notar que :

  • quando uma regra de afetação está definida numa regra de Workflow, o conjunto dos destinatários é avaliado em função dos critérios definidos e guardado no quadro [L]USER.
  • Quando nenhuma regra de afectação está definida, mas que a regra de Worflow é de tipo Assinatura, herdam-se as variáveis de [L]USER calculadas no evento na origem da assinatura (estes valores são guardados no histórico). Se deseja que a regra de afectação de origem seja re-avaliada (porque os valores de critério podem alterar), falta preencher a novo esta regra de afetação na regra de Workflow.

Bloco número 5

  • Tipo workflow (campo TYPWRK)

Define se desencadeia um Workflow sobre cada linha de detalhe ou unicamente sobre o cabaçalho.

Este campo não está registado, mas afixado :

  • se nenhuma regra de afetação nem nenhum modelo de dados são definidos. O tipo vale Linha se o Workflow é manual, senão é de tipo Cabeçalho.
  • Se uma regra de afetação utilizando uma tabela linhaestá definida, o Workflow é de tipo Linha.

Se nenhuma regra de afetação é dada, mas que um modelo integrnado as ligações (1,N) está associada, o campo está registado. Pode-se então escolher o desencadeamento se faz à linha ou em cabeçalho (sabendo que as linhas podem ser reagrupadas por outro lado para enviar uma notificação por grupo).

Permite de definir o campo linha no caso onde uma regra onde o contexto integra as tabelas de cabeçalho e das tabelas de linha.

  • campo ABRLIG

 

  • Agrupamento linhas (campo GROUPE)

Este campo permite definir os critérios de reagrupamento em dando uma lista de expressões (ou de campos) separados por pontos e vírgula. Isto permite de reagrupar as linhas de detalhe para não desencadear que um Workflow que em casa ruptura sobre os valores definidos por estas expressões.

Isto é possível nos dois casos :

  • Quando um evento de Workflow utiliza um modelo de dados fazendo aparecer as ligações (1,N), e que o Workflow é de tipo linha (ele percorre a integralidade de linha da tabela linha escolhida), pode-se reagrupar as linhas entre elas.
  • Quando um evento de Workflow é de tipo Manual (conjunto das linhas lidas pode ser reagrupado da mesma maneira).

Quadro Condições

  • Tipo (campo TYPCND)

Quando o evento de Workflow é de tipo Linha, as condições podem ter seja sobre o cabeçalho, seja por linha, segundo a escolha registada aqui.

  • Condições (campo CONDITION)

Estes campos permitem condições complementares sob a forma de expressões lógicas (Fórmula de Cálculo) incluindo as variáveis em linha no momento de execução da regra (conteúdos de máscaras de ecrãs ou de tabelas em linha, segundo a descrição do contexto...). Se estas condições são todas verdadeiras, a mensagem será enviada e/ou o rasto escrito no ficheiro log.

Deve-se notar que, quando o contexto é de tipo cabeçalho e linhas, pode-se filtrar uma parte das linhas religadas a um cabeçalho em definindo as condições linhas para não ter contas de linhas para as quais a condição é falsa. Se resta ao menos uma linha afetada e que as condições de cabeçalho são verdadeiras, o desencadeamento far-se-á mesmo assim.

Gestão

  • Activação mail (campo ENAMES)

Indicador permitindo de activar ou não as mensagens indicadas no separador correspondente

  • Activação acção (campo ENAACT)

Indicador permitindo de activar o desencadeamento das acções indicadas no separador correspondente

  • Activação seg. (campo ENASUI)

Este campo permite definir as regras de afetação dos destinatários de Workflow de maneira externa à regra. Faz referência a uma tabela de regras na qual se definiu uma lista de campos sobre os quais porterão os critérios de afetação dos destinatários.

Uma regra é avaliada no momento de desencadeamento do Workflow, em função do contexto, e reenvia uma ou várias utilizadores definidos por um quadro de variáveis locais [L]USER, o que permite seja de dar uma lista de destinatários para um dado Workflow, seja uma cadeia de destinatários no encadeamento de regras.

É importante notar que :

  • quando uma regra de afetação está definida numa regra de Workflow, o conjunto dos destinatários é avaliado em função dos critérios definidos e guardado no quadro [L]USER.
  • Quando nenhuma regra de afectação está definida, mas que a regra de Worflow é de tipo Assinatura, herdam-se as variáveis de [L]USER calculadas no evento na origem da assinatura (estes valores são guardados no histórico). Se deseja que a regra de afectação de origem seja re-avaliada (porque os valores de critério podem alterar), falta preencher a novo esta regra de afetação na regra de Workflow.
  • Ajustar (campo DEBUG)

Indicador permitindo activar uma ajuda à colocação ao ponto. No momento de execução de uma regra se esta opção esté activa, o motor de workflow emitido no ecrã as mensagens eventuais de erro de avaliação sobre as condições, o log e a mensagem.

  • Ttilização tema (campo USETHEMEFL)

 

Fechar

 

Separador Destinatários

Apresentação

Este separador permite o registo da lista dos destinatários das mensagens ou das notificações. Um destinatário pode ser definido como um utilizador (encontra-se então o seu endereço de correio electrónico na ficha utilizador) ou como um terceiro (identifica-se então os contactos afectados pela função).

Cada linha do quadro define um ou vários destinatários (segundo aopção delegada retida), e estes destinatários podem receber :

  • uma mensagem
  • uma notificação implicando um seguimento (visa) ou uma assinatura
  • ou os dois

O grupo de destinatários definidos por uma linha de quadro está considerado como solidário do ponto de vista das assinaturas : é suficiente que os membros do grupo tenha assinado que a linha seja considerada como assinada (o nome do signatário sendo propagado nas assinaturas em espera para o grupo).

Por outro lado, se existem várias linhas, a assinatura de um dos destinatários de uma linha não se propaga às outras linhas. Poder-se-á então testar, num contexto de assinatura, o número de grupos (de linhas) tendo já assinado, afim de provocar uma actualização em tendo eventualmente em conta as outras assinaturas.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Quadro Destinatários

  • Condição (campo CNDDES)

Este campo permite definir uma condição lógica. Se a avaliação desta condição reenvia um valor falso (ie. nulo), a linha de destinatários não está afetada pelo evento.

Deve-se referir que se dispõe, variáveis ligadas ao contexto do evento, do quadro de variáveis [L]COND, que permite, sobre uma linha dada, de fazer referência à condição da linha número N (N sendo índice).

Assim, por exemplo, se se exprime uma condição sobre a primeira linha do quadro, e que por segunda linha, se utiliza a expressão: not [L]COND(1), isso significa que os destinatários da segunda linha serão tidos em conta se a condição da primeira linha é falsa.

  • Tipo (campo TYPDES)

Dans l'application Sage X3, le destinataire peut être lié à :

  • un code utilisateur (on recherche alors ses coordonnées dans la fiche utilisateur),
  • un tiers (on saisit sa fonction dans le tableau pour identifier, sur la fiche tiers, quels sont les destinataires concernés).

Dans l'application Sage HRM, le destinataire peut être lié à :

  • un tiers,
  • un utilisateur,
  • un salarié,
  • un chef,
  • un circuit hierarchique.

Dans l'application Sage Géode, le destinataire peut-être lié à :

  • un utilisateur,
  • un site,
  • un déposant,
  • un transporteur,
  • un fournisseur,
  • un client société.

  • Destinatários (campo DESTIN)

 

  • Função (campo FNCDES)

Esta informação não é registada que se o tipo de destino é um terceiro. Ela faz referência ao menu local que define as funções dos interlocutores na ficha terceiros.

  • Envio mail (campo ENVOI)

Três valores podem ser registados aqui, que afetando os destinatários da linha :

  • Não: nenhuma mensagem não será enviada.
  • Sim: uma mensagem lhe é enviada em tanto que destinatários principais.
  • Cópia : uma mensagem lhe é enviada em cópia.
  • Seg. (campo SUIVI)

Este indicador indica se os destinatários da linha vão receber uma notificação no seu plano de trabalho, segundo o valor registado :

  • Não: neste caso, nenhuma notificação será disponível no plano de trabalho.
  • Sim: uma notificação será-lhe enviada, ela poderá ser simplesmente avisada, para assinalar que o utilizador leu.
  • Com assinatura : esta notificação deverá ser assinada por um dos destinatários da linha.

Desde logo que uma notificação está enviada ao menos uma das linhas de destinatários, o separador Seguimento define o texto aparecendo no seguimento assim que as respostas podendo ser trazidas em caso de pedido de assinatura.

Este campo pode ser utilizado para classificar as linhas de seguimento segundo a sua categoria. É nomeadamente um critério que pode figurar no plano de trabalho ou ser utilizado como filtro sobre os seus separadores.

  • Opção delegados (campo OPTDEL)

Este campo permite indicar a maneira cujo é gerado o facto que o destinatário identificado na linha seja ausente (ie. que tenha definido um utilizador delegado por um período de tempo incluindo o momento onde a regra foi desencadeada). Se definiu os utilizadores delegados Com poder, o valor deste campo define que é o destinatário da notificação ou da mensagem :

  • Se ele vale Não, apenas o destinatário indicado de origem está afetado.
  • Se ele vale Todos, o destinatário de origem e todos os utilizadores definidos como delegados direto do destinatário são afetados. O destinatário direto e seus delegados diretos podem assinar.
  • Se vale Cascata, o destinatário de origem, os seus delegados, os delegados dos seus delegados, etc...são afetados. O destinatário, os seus delegados diretos, e os delegados dos delegados podem assinar.
  • Se vale Primeiro livre , o primeiro destinatário que não tem delegado está afectado. O destinatário directo não pode assinar neste caso se existe ao menos um delegado.

Fechar

 

Separador Mensagem

Apresentação

Este separador permite a definição do conteúdo da mensagem enviada aos destinatários afectados. Uma mensagem é composta :

  • de um campo "objecto" (exprimido sob forma de uma fórmula sage incluindo se necessário das constantes, das funções, e das variáveis emitidas do contexto). Este contexto está definido mais precisamente em o anexo técnico da documentação.
  • de um texto principal definido no bloco correspondente. Pode-se incluir as fórmulas sage em as enquadrando com as barras verticais. A data corrente, por exemplo, será exprimida sob a forma | date$ |, o código de utilizador corrente sob a forma | GUSER |. Pode-se inserir um clob (máximo 5) em escrevendo |CLB/CLOB|, onde CLOB é uma variável de tipo clob ou expressão cujo resultado é um clob.
  • de um eventual texto de linha, correspondendo a um sub-detalhe linha quando o Workflow é de tipo cabeçalho/linha. O quadro das linhas associadas a cada cabeçalho está então inserido no texto principal no ambiente onde a fórmula |LIG| foi definida.
  • eventuais ligações permitem desencadear as assinaturas por solicitação de um servidor http. Estas ligações se escrevem com as fórmulas de tipo |SIG/CÓDIGO/Mensagem :|, onde CÓDIGO é o código da resposta que vai ser feita.

    Assim, por exemplo, poder-se-á escrever :
        |SIG/VAL/"Para assinar, clique sobre :"|
        |SIG/REJ/"Para recusar, clique sobre :"|
    Ver-se-á então aparecer no corpo da mensagem:
    Para assinar, clique sobre ligação desencadeante a assinatura
    Para recusar, clique sobre ligação desencadeante a recusa
    Estas ligações sendo bem entendido das ligações http variáveis incluem o contexto necessário para transmitir informação necesssária.

Independenteemnte destes elementos, um certo número de campos complementares definem as condições do envio, assim que as informações (documentos juntos) que podem ser inseridos na mensagem.

É necessário que o parâmetro geral TYPMES : seja igual a Servidor para que oo documentos juntos possam ser enviados. Se não é o caso, apenas o primeiro documento junto está enviado (isto está assinalado por uma mensagem de advertência quando se impõe um envio para cliente). Por outro lado, os documentos juntos devem estar acessíveis depois o servidor de aplicação (para um caminho rede se não estão armazenados na base).

O envio das mensagens está condicionada pela utilização de um serviço de mensagens aceitando o interface MAPI no momento do envio depois o posto cliente ou SMTP POP3 no momento do envio depois o servidor (o que é o caso da maior parte dos programas de mensagens do mercado).

Os destinatários das notificações do Workflow podem ser parametrizados directamente na regra, seja pelo desvio de um código utilizador, seja pelo desvio de um código terceiros e de um tipo interlocutor no terceiro. Mas é também possível de criar as tabelas multi-critérios nomeadas regras de afectação, para permitir a um utilizador terceiro de definir os destinatários em função de valores dos critérios pré-definidos.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Mensagem

  • Email remetente (campo SENDMAIL)

 

  • Assunto (campo OBJET)

Este campo permite definir o conteúdo do campo Objecto da mensagem enviada, sob a forma de uma expressão calculada que será avaliada no momento do desencadeamento do evento.

Texto

  • Texto (campo TEXTE)

O campo permite de definir o conteúdo principal da mensagem. O seu registo se faz sob a forma de texto livre incluindo as expressões lógicas (Fórmula de cálculo) entre duas barras verticais que têm lugar de separador. Assim, por exemplo, poder-se-á escrever conteúdos tais que :

O evento surgido o | num$(date$) | lugar dado a este envio por | GUSER |

Balisas particulares :

"LIG" Permite inserir a expressão definida no campo "Linha" da regra workflow.
"CLB/variável clob ou expressão" permite inserir o conteúdo de um campo clob no texto. Este número de balisas está limitado a 5.
"SIG/código resposta/expressão texto" permite afixar uma ligação http no texto. O clique sobre esta ligação da resposta da regra workflow. Esta parametrização não pode ser operacional que se os parãmetros gerais supervisor do grupo "WRK" são corretamente preenchidos.

Gestão

  • Linha (campo TEXLIG)

A expressão calculada registo neste campo está avaliada, no momento do desencadeamento do evento, para cada linha de detalhe (no caso de um Workflow de tipo linha com um reagrupamento dos dados).  Esta linha assim calculada está inserida no corpo da mensagem ao sítio onde se encontra a fórmula |LIG|

Em função do comprimento da linha, falta por vezes reacrescentar a expressão "chr$(13)+chr$(10)" na fórmula para forçar o salto de linha entre cada linha.

Gestão

  • Envio (campo TYPMES)

Este campo permite indicar se o envio deve ser feito localmente pelo posto (em interface MAPI), depois o servidor (via SMTP), ou indeferentemente depois um ou outro (ao qual um parãmetro geral nomeado TYPMES o define.

  • Icône de retorno (campo RETOUR)

Esta cheque box permite, se ela está assinalada, de inserir em documento junto, na mensagem enviada, um ícone contendo o contexto de lembrar a ficha (por duplo clique em cima). Atenção, isto não funciona que para uma conexão em modo cliente-servidor.

Quando um ícone permitindo de voltar a Sage X3 está junto no corpo da mensagem, este campo permite indicar uma função de devolução diferente da função tendo desencadeado o Workflow.

Em Workflow objeto, no caso de criação ou da modificação de uma ficha, isto permite, mais cedo de se conectar sobre a ficha por defeito, de ir sobre uma ficha ligada (a ficha do utilizador tendo criado ou modificado a informação que desencadeou o Workflow, por exemplo).

  • Chv ligação (campo BAKLNK)

Este campo permite, se a check box a assinalar Ícone de devoluçãoestá assinalada, de definir a função sobre a qual o utilizador será conectado após duplo clique sobre o Ícone incluido na mensagem.

Se a função de devolução é de tipo objeto, não é util de registar a função que se esta é diferente do objeto de origem.

No caso de um Worflow Manual, o código função é obrigatório se o Ícone de devolução está incluído (não pode existir o valor por defeito neste caso).

Bloco número 6

 

  • Chv ligação (campo BAKLNKSYRA)

 

 

  • Chv ligação (campo BAKLNKMOBI)

 

Bloco número 7

  • Mensag. modificável (campo INTERV)

Este indicador permite de tornar a mensagem modificável antes do envio : um ecrã abre-se então para registar as modificações. Isto não é possível que se o desencadeamento do Workflow se faz de maneira interactiva (senão, a janela não se abrirá).

Atenção, o facto de assinalar esta check box provoca a interrupção temporária do processo de workflow, pois que se está à espera de uma validação de utilizador. Se o evento de workflow se produz então que uma transação está em curso (o que pode estar testado pela condição adxlog<>0), todos os eventos de workflow concorrentes são bloqueados por este registo. É então fortemente recomendado de não assinalar que esta check box quer sobre os eventos se produzindo fora transação (excepto, de maneira muito temporária, com fins de "degugging").

Uma boa maneira de se assegurar contra este risco consiste a acrescentar, os critérios de desencadeamento de um evento de tipo, a condição adxlog=0 (o que volta a impedir o desenvolvimento de eventos deste tipo).

  • Agrupamento p/destinatário (campo GRPENV)

Quando um evento de Workflow cria várias notificações, esta check box a reagrupar as mensagens criadas pelo envento.

Existem várias notificações se o Workflow é de tipo "linha", ou se trata do evento especial "ANU" (desencadeia sobre a anulação de assinatura).

As notificações são reagrupadas entre elas se elas têm as características seguintes em comum :

  • o emissor
  • o tipo de servidor
  • o contexto de devolução
  • o objeto da mensagem
  • o acuso de receção
  • Os destinatários :
  • a "flag" signatária
  • Acusar leitura (campo REQREC)

Esta check box permite, se ela está assinalada, de enviar a mensagem em pedindo uma acusação de receção. Atenção, isto não pode funcionar que se a mensagem está enviada depois o posto cliente, e não depois o servidor.

Anexos

  • Fich. rasto lig. (campo TRACE)

Esta cheque box pode ser assinalada que se o evento desencadeante corresponde ao fim de uma tarefa batch

Neste case, se ela foi assinalada, o ficheiro rasto associado à tarefa batch vai ser junta à mensagem enviada.

  • Doc. a anexar (campo JOINT)

Este campo permite associar um documento junto à mensagem, em dando um caminho de acesso rede sob a forma de uma expressão calculada que será avaliada no momento do desencadeamento do evento.

  • Doc. anex. (campo JOIOBJ)

Quando esta check box está assinalada, sobre um workflow de tipo objeto, os documentos juntos à ficha podem ser enviados em documentos juntos da mensagem.

  • Todos os tipos (campo ALLTYPJOI)

Este campo permite, quando a check box Todos os tipos não está assinalado, de definir um filtro sobre tipo de documentos juntos à ficha (tabela diversa 902) que devem ser enviados com a mensagem.

 

  • Todas categorias (campo ALLCATJOI)

Esta check box não está registada que :

  • para um workflow de tipo objeto
  • para o qual a check box Documento Junto está assinalada (envio dos documentos juntos à ficha como documentos ligados à mensagem).

Se esta check box foi assinalada, todas as categorias de documentos juntos à ficha desencadeando o Workflow são enviados como documentos juntos à mensagem. Senão, registar-se-á a categoria afetada.

  • Categoria (campo CATJOI)

Este campo permite, quando os documentos juntos a uma ficha devem ser reenviados em documento junto à mensagem , de filtrar os documentos ligados pela sua categoria (menu local 96)

Fechar

 

Separador Seguimento

Apresentação

Este separador permiyte definir a maneira cujas notificações de tipo Seguimento são feitos nos planos de trabalho dos utilizadores destinatários, e igualmente as condições de assinatura associadas, se existir uma. Esta condição de assinatura não são aplicáveis que se, no quadro dos destinatários de separador correspondente, os utilizadores destinatérios estão em seguida Com assinatura :.

Define-se então, sob a forma deexpressões avaliadas, a mensagem a fazer aparecer no plano de trabalho, e a data limite esperada de assinatura se uma assinatura foi esperada

Encontra-se em seguida um quadro permitindo indicar as respostas que o utilizador poderá fazer no momento da sua assinatura, com possibilidade de actualizar directamente a um dia um campo da ficha corrente quando o worflow é de tipo Objecto. Objecto.

De referir que os elementos avaliados no quadro das respostas são ao momento da assinatura, então que os elementos relativos à notificação ou à mensagem associada o são ao momento do desencadeamento do Workflow de origem. Isto significa que o contexto não é exactamente o mesmo. Assim, num contexto Workflow de tipo objecto, tem-se em linha:

  • no momento de desencadeamento, o conjunto das variáveis e das tabelas ligadas ao objecto, assim que as tabelas complementares ligadas a um modelo de dados e a uma regra de afectação eventuais, e as variáveis globais ligadas ao contexto do signatário (GUSER representa o código do utilizador tendo desencadeado o evento).
  • No momento da assinatura, temos em linha o registo da tabela principal do objecto, assim que as tabelas descritas num modelo de dados e uma regra de afectação eventual, mas não se dispõe de ecrãs em linha, e as variáveis globais são aquelas do contexto da assinatura.

Para permitir transmitir os valores do contexto de desencadeamento versus o contexto de assinatura, dispõe-se de um quadro nomeado Contexto. As expressões que são aqui descritas são avaliadas e transmitidas no momento da assinatura sob a forma de um quadro de variáveis locais nomeadas [L]CTX. Estas variáveis podem então ser utilizadas na parametrização dos planos de trabalho, nas condições e valores ligados à assiantura, e igualmente nos valores e variáveis ligadas às acções doseparador seguinte, quando se trata de acção desencadeadas no momento da assinatura.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Texto

  • Texto seguim. (campo TEXSUI)

Este campo contém uma expressão avaliada no momento do desencadeamento do Workflow. O resultado desta avaliação é uma cadeia alfanumérica guardada na variável [AWS]TEXSUI. É este valor que está normalmente apresentada no monitor Workflow para qualificar o evento a assinar.

Assinatura

  • Assinatura (campo FLGSIG)

Se esta check box está assinalada, o seguimento dá lugar a um processo de assinatura : encontramos então, no quadro situado no baixo de ecrã, um certo número de escolhas de assinatura possíveis.

  • Data limite (campo DELSIG)

Desde logo que a check box Assinatura está assinalada, é possível de definir uma expressão de tipo data definido a data para além daquela que se considera que existe atraso se a assinatura não foi feita.

O valor do campo correspondente está guardado no campo DATREL da tabela dos seguimentos AWRKHISSUI Este campo pode ser explorado no monitor Workflow, para definir uma ordem de classificação, uma colocação em valor por um estilo particular (condiçãon de tipo date$>=[AWS]DATREL+1, por exemplo). Mas pode também ter explorado por uma gestão de reativações dos eventos em espera de assinatura, sabendo que o campo [AWS]NBREL permite de contar as reativações eventuais feitas.

Quadro Contexto

  • Contexto (campo VARCTX)

Este quadro contém as expressões avaliadas ao momento do desencadeaamento de um Workflow Estas variáveis são :

  • guardadas no histórico de Workflow (variáveis VALCTX1 a VALCTX15)
  • utilizáveis no contexto de assinatura (quadro de variáveis CTX(1) a CTX(15)) associado ao evento original, ou a um evento de Workflow consecutivo à assinatura.

O interesse destas variáveis é que elas permitem de transmitir as informações que não estão situadas nas tabelas na origem do contexto desencadeador, e logo que não são transmitidas automaticamente de um evento na assinatura ou no evento seguinte. Com efeito, as tabela de objeto, ou aquelas da regra de afetaçao são trnasmitidos automaticamente, por contra, não são transmitidas:

  • as variáveis globais (as variáveis GUSER, GFONCTION, GABREV, CLEOBJ, por exemplo, que definem respetivamente o utilizador corrente, a função corrente, o código de objeto, e da chave corrente no momento do desencadeamento de um Workflow objeto).
  • variáveis ligadas aos ecrãs em linha
  • expressões tais que date$, time$... que qualificam o contexto do desencadeamento

É então este tipo de variável que é interessante de transmitir via o contexto. Mas está também interessante de definir no contexto das variáveis transmitidas por outro lado no contexto, simplesmente para saber os visualizar no monitor de Workflow.

Quadro Resposta

Este campo faz referência à tabela diversa número 54, que define as escolhas possíveis à assinatura (por exemplo Validação, Recusa No plano de trabalho das assinaturas, um clique direito sobre a linha permitirá de propor por entre a lista das escolhas emitidas nesta lista, aqueles para os quais a condição é verificada.

Este código operação, definido pela tabela diversa 55, é o código qualificando a assinatura realizada. Corresponde ao código operação utilizado num evento de tipo Assinatura consecutivo ao evento assinado. Deve-se notar que várias linhas podem ter o mesmo código de operação.

Este código não está guardado no histórico de Workflow na emissão da assinatura. É com efeito o valor do campo Resposta, que não admite homónimos entre as diferentes linhas, que está guardado).

  • Condição (campo CNDSIG)

Esta coluna contém uma expressão lógica avaliada no momento da assinatura. Se a condição é realizada, então a resposta define sobre a linha está proposta por entre as escolhas possíveis. Isto permite, por exemplo, de dispor de vários níveis de assinatura, em função do número de signatários tendo já assinado (apenas o último signatário tendo acesso a uma assinatura que desencadeia uma actualização final). Assim, é possível de definir uma escolha aparentemente impossível (por uma condição sempre falsa de tipo 1 = 0). Esta escolha poderá ser forçada por uma ação de assinatura desencadeada por outro evento de Worflow. É assim que são tratados, nas parametrizações standards, escalas no processo de assinatura.

Esta coluna permite indicar um número de tabela diversa contendo os motivos de resposta.
Se ele está registada, um motivo de resposta será pedido à assinatura do evento.

  • Campo actualizado (campo FLDMAJ)

Esta coluna contém o nome de um campo emitido das tabelas do contexto desencadeador. Este campo vai ser atualizado pelo valor calculado a partir de expressão seguinte, no momento de assinatura. Assim pode-se, por exemplo, atualizar um campo tal que ENAFLAG (indicador Ativo) do objecto corrente no momento de um processo de assinatura.

  • Valor (campo EXPVAL)

Esta coluna permite de definir a expressão de um valor calculado no momento da assinatura. O valor corrrespondente à linha de resposta escolhida será utilizada, em caso de assinatura :

  • seja para atualizar o campo definido na coluna precedente com este valor.
  • seja então no momento do desencadeamento acções definidas no separador seguinte Neste caso, encontramos o valor correspondente na variável alfanumérica [L]RESULT.
  • Modificável (campo MODSIG)

Se este campo vale Sim, o valor calculado na coluna correspondente é proposta, após a escolha da assinatura, afim de permitir uma eventual modificação. Isto permite por exemplo de registar uma modificação detalhada. O valor resultante do registo será utilizado para realizar a atualização se existe uma, e transmite à variável [L]RESULT para a exploração por uma ação complementar.

Fechar

 

Separador Acção

Apresentação

Este separador descreve uma lista, num primeiro quadro, uma lista de acções que podem ser desencadeadas no momento do evento ou da fase de assinatura. Isto permite chamar seja as acções standards pré-definidas a este fim (encontraremos uma lista noanexo técnico correspondente), seja as acções específicas. De referir que a acção em questão não está chmada que se a condição de execução é realizada.

O quadro situado a seguir está automaticamente carregado com a lista dos parâmetros da acção, afim de permitir registar em vista uma lista de expressões avaliadas no contexto e transmitidas (seja como valores, seja como apontadores: neste último caso, os valores de devolução são utilizáveis no seguinte).

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Quadro Acção

Este campo contém um código acção cuja execução pode ser desencadeada se as condições estão preenchidas. Deve-se referir que esta ação deve ter a check box Workflow assinalada, e que por consequência ela não possa interagir com o interface utilizador (sem janela associada).

  • Arranque (campo DECACT)

Este campo, cujos valores são definidos pelo menu local 2923, define as condições de desencadeamento do Workflow. Os valores seguintes são utilizáveis :

  • Início Workflow : a ação está desencadeada em início de constituição do texto da mensagem. Quando o Workflow é de tipo Linha, ele não é executado que uma vez por cabeçalho, antes da constituição do texto de cabeçalho. As variáveis retornadas pela ação podem ser utilizadas no texto do mail (mais para definir os destinatários ou as condições do envio, que são já avaliadas neste estado).
  • Fim Workflow : a ação está desencadeada após o envio da mensagem Quando o Workflow é de tipo linha, esta ação não é executada que uma vez por grupo de linhas.
  • Antes Linha : a ação está desencadeada antes da leitura da primeira linha, quando se tem um Workflow de tipo em cabeçalho e linhas. Isto permite por exemplo inicializar as variáveis de acumulado para obter um total das linhas, o acumulado sendo realizado numa ação Linha
  • Linha : A ação está desencadeada justamente antes da constituição de cada linha de mensagem, no caso de um Workflow de tipo linha. As variáveis retornadas pela ação podem então ser utilizadas no texto linha.
  • Assinatura : a ação está desencadeada após o registo da assinatura (a variável [L]RESULT emitida deste registo é então conhecida), mas antes da atualização (pode-se modificar este valor durante a ação). No caso de uma assinatura, todas as atualizações são realizadas numa única transação. Assim, se um Rollback foi realizado numa das ações desencadeadas pelo evento, revem-se à situação de partida para todas as atualizações feitas.

No caso geral geral, do ponto de vista transacional, é necessário notar que a ação faz parte da transacção de Workflow da mensagem (se um Rollbackestá feito no momento da constituição da mensagem, as atualizações feitas na ação são afetadas). Uma transacção independente é feita para o seguimento (mas esta transação sendo realizada em seguida, os valores retornados pela ação podem ser utilizados.

No caso particular do Workflow sobre o objecto, tudo é feito numa única transação. Dito de outra forma, se a criação ou a modificação de uma ficha encalhou, um Rollback é feito sobre o conjunto das atualizações desencadeadas pelas ações.

É o mesmo para o seguimento : A transação que segue o registo do seguimento inclui o desencadeamento das ações.

  • Cond. de execução (campo CONACT)

Regista-se aqui uma expressão lógica, avaliada no contexto de desencadeamento da ação. Se o resultado da avaliação é verdadeiro (ie. não nulo), a ação está desencadeada. Se o resultado é falso, a ação não é desencadeada. Se nenhuma expressão não foi registada, a ação está sempre desencadeada.

Quadro Parâmetros

 

  • Tipo (campo TYPPAR)

 

  • Devol. (campo ADRVAL)

 

  • Valor parâmetro (campo PARVAL)

Regista-se aqui uma expressão avaliada que foi transmitida como argumento à ação, ou um código de uma variável que conterá um valor de devolução (se o argumento é de tipo Apontador) Todas as variáveis do contexto de Workflow podem ser utilizados aqui.

Fechar

 

Botões específicos

Este botão permite gerar e de compilar o tratamento automático associado ao evento de Workflow. Este tratamento está codificado pelos caracteres WMK seguidos do código do Workflow. Como a validação se faz de uma outra maneira automática no registo ou na modificação de um Workflow, este botão não é útil que para validar um evento que terá sido transferido por cópia depois um outro dossier.

Os seguintes campos estão presentes na janela aberta por este botão :

Bloco número 1

  • campo OBJET

 

  • campo CLES

 

Bloco número 2

  • A partir do dossier (campo DOSORG)

Use this field to define the folder from which the record will be copied. The possible syntaxes are described in the Dedicated appendix.

  • Todos dossiers (campo TOUDOS)

Use this option to copy the record to all the folders defined in the dictionary (ADOSSIER table of the current solution).

  • Para o dossier (campo DOSDES)

Use this field to define the folder to which the record will be copied. The possible syntaxes are described in the Dedicated appendix.

Fechar

Este botão permite copiar um evento Workflow versus um outro dossier, simplesmete em dando o seu código. Na caixa que se abre, uma check box a assinalar permite realizar a transferência versus todos os dossiers definidos na tabela dos dossiers corrente.

Barra de menu

Opção / Workflow manual

Esta função permite : lançar directamente um Workflow quando é de tipo manual. A caixa de diálogo permitindo registar os parâmetros eventuais associados está então registada.

Documentação / Parágrafos

Esta função permite aceder à gestão da documentação, sobre o primeiro parágrafo da documentação (se ela existe) associada à ficha corrente.

Documentação / Ligações

Esta função permite aceder à gestão das ligações. Ela permite definir as relações entre a ficha corrente e de outras fichas (por exemplo das ligações entre funções e parâmetros). Estas ligações, puramente documentários, permitindo alimentar o mecanismo de geração dos esqueletos de documentação.

Documentação / Geração

Apresentação

Este menu permite lançar uma geração de documentação. A geração pode-se lançar igualmente a partir do botão [Génération] em baixo da janela.

Três tipo de geração podem ser lançadas, separadamte ou simultaneamente :

  • a geração do esqueleto de documentação a partir do dicionário (tabelas ADOCUMENT, ADOCBLB, ADOCCLB).
  • a geração da documentação a partir das tabels precedentes.
  • a geração da documentação sobre campo.

Os limites propostos por defeito têm em conta da ficha em curso, mas elas podem ser modificados ao lançamento.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Selecções

  • Todas as línguas existentes (campo ALLLAN)

Se esta check box está assinalada, todas as línguas são tomadas em conta pela operação.

Se a check box não foi assinalada, tomar-se-á segundo o caso :

  • A língua por defeito do utilizador, se nenhum código língua não foi registado.
  • A língua registada por outro lado senão.

Permite de definir a língua de geração (quando a check box permitindo de gerar em todas as línguas não foi assinalada).

  • Todos os tipos (campo ALLTYP)

Se esta check box está assinalada, todos os tipos de documentação são tomados em conta para a geração. Deve-se referir que, neste caso, limita-se a geração às documentações standard (apenas as documentações de código inferior a X são tomados em conta).

Permite definir o tipo de documentação a tomar em conta no tratamento (quando não se assinalou a check box para os tomar todos em conta).

  • Desde códigos documentos (campo FUNDEB)

Permite de dar um limite sobre os códigos a ter em conta para a geração de documentação.

  • Cód. documentação fim (campo FUNFIN)

 

Geração ADOCUMENT

  • campo GENDOC

Este botão redondo permite criar/atualizar a parametrização da documentação (hierarquia dos parágrafos) a partir dos elementos técnicos encontrados no dicionário dos dados. Pode-se escolher de retomar unicamente as documentações existentes ou criar novas documentações se necessário

As relações de documentação são igualmente tomados em conta. Os parágrafos susceptíveis de serem criados são definidos no anexo técnico correspondante.

  • Para todos os grupos (campo ALLCREGRP)

Este campo permite escolher entre :

  • Tratar todas as documentações ou ajudas sobre campo indeferentemente do grupo de pertença de utilizador.
  • Tratar unicamente as documentações ou ajudas sobre campos cujo grupo de utilizador é equivalente ao grupo criador da documentação encontrada na tabela AOBJGRPDEV

Geração documento final

  • campo GENFIN

Este botão redondo permite gerar a documentação final a partir do conteúdo dos parágrafos de documentação. Esta documentação foi criada em diferentes sub-directórios do directório definido pelo parâmetro utilizador DIRDOC.

A geração "Completa" trata o conjunto das documentações não tendo código de atividade mas também aquelas tendo os códigos atividades standards (código atividade < "X")

Falta utilizar a geração "segundo o código atividade" para obter a geração das documentações das funções tendo os códigos atividades ativos (quer sejam standards ou específicos).

  • Somente as documentações validadas (campo HLPVLD)

Permite gerar o documento final unicamente para as documentações válidas.

  • Ajudas sobre campos ligados às documentações (campo HLPLNKFLD)

Si cette case est cochée, sont traitées spécifiquement les aides sur champs relatives aux documentations sur fonction ou objet traitées par ailleurs. Pour savoir quelles sont les aides sur champ à traiter, explorez les écrans associés aux paragraphes de documentation correspondants.

  • Outras ajudas sobre campos (campo HLPFLD)

Se esta check box assinalada, cria-se a documentação final a partir do conteúdo dos parágrafos de documentação. Esta documentação foi criada em diferentes sub-directórios FLD do directório definido pelo parâmetro utilizador DIRDOC.

  • Códigos ajuda campos inicio (campo HLPDEB)

Permite de dar um limite sobre os códigos a ter em conta para a geração de documentação.

  • Cód. ajuda campos fim (campo HLPFIN)

 

  • Directorio de geração (campo REPERT)

 

Fechar

 

Mensagens de erro

Para além das mensagens genéricas, as seguintes mensagens de erro podem aparecer durante o reg. :

Esta regra deve utilizar o modelo XXXX.

Define-se, num primeiro separador, uma regra de afectação não repousando sobre o modelo de dados definidos previamente.

Export, Import ?

Início, Fim ?

Num evento Workflow asociado a uma importação / exportação, convém de indicar na zona operação, por uma combinação dos códigos (I ou E, e D ou F), se o desencadeamento está feito no momento de uma importação, de uma exportação, em início ou em fim.

X : Operação incorrecta

Num evento Workflow associado a um objecto, a operação X registada não existe.

Chave incorrecta na chave de fim

Registou-se uma sintaxe não correspondendo a uma expressão de ligação válida.

XXX  : Este modelo é incompatível com o tipo de evento "Manual" (Tipo de ligação 1,N)

É impossível de percorrer uma estrutura com as relações (1, N) neste caso de um Workflow manual. Falta sempre partir do detalhe o mais fino e de fazer as ligações (1,1) versus o cabeçalho. Isto não impede em seguida de reagrupar as linhas sobre o valor da chave de cabeçalho, em se tratando sobre o critério de reagrupamento.

A opção Mansagem utilizador não está activada sobre esta tarefa

Não se trata aqui que uma advertência, que está afixado quando se cria uma regra de Workflow sobre fim de tarefa batch, em especificando uma tarefa para a qual a notificação não está activa.

Tabelas consideradas

SEEREFERTTO Consulte a docuemntação de Implementação