Desenvolvimento > Dicionário tratamentos > Transacções de actualização 

Esta função permite criar as transacções sistema no dicionário Estas transacções serão utilizadas pela função de execução de transacções sistema para efectuar uma actualização de massa da base de dados (criação, modificação ou supressão de linhas).

Por outro lado, é importante notar que as transacções sistema fazem parte do docionário dos dados. Isto significa que uma revalidaçaõ de dossier suprimie todas as transacções sistema que não terão sido protegidas por um Código de actividade específico, e está susceptível de transferir no dossier das transacções sistema standard, se o editor decide de entregar um dia no dossier de referência do software (actualmente, não é o caso).

Pré-requisitos

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

Gestão do ecrã

A definição de um ecrã se faz com a ajuda de 2 separadores : o separador de definição da transacção, e o separador compreendendo as fórmulas de selecções dos registos a tratar e as tabelas a actualizar.

Cabeçalho

Apresentação

O cabeçalho permite identificar a transacção

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

  • Cód. (campo COD)

Este código identifica a transação sistema a lançar.

  • Descr. (campo ZINTIT)

 

Fechar

 

Separador Geral

Apresentação

Define-se, neste separador, o contexto geral ligado à transacção sistema :

  • de uma parte, a tabela principal e das tabelas eventuais que poderão ser actualizadas.
  • de outra parte, dos parâmetros eventuais a registar (num quadro de 6 linhas máximo) Estes parâmetros são em seguida utilizáveis sob a forma de variáveis nomeadas V1 a V6 no quadsro do segundo separador.

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Bloco número 1

  • Módulo (campo MODULE)

Sélectionnez un module pour le paramétrage.

Ce champ vous permet de renseigner si l'écran doit être créé dans la base de données du dossier. Il l'est si le module auquel l'écran est rattaché est actif pour le dossier.

  • Desc. curta (campo ZINTITSHO)

 

Un code activité vous permet de :

  • rendre optionnel un élément du dictionnaire si la valeur associée au code activité est nulle,
  • signer les éléments spécifiques dès lors qu'ils sont marqués par un code commençant par X, Y ou Z,
  • dimensionner un nombre de lignes maximum lorsque le code activité marque des éléments d'un tableau,

Si le code activité est désactivé :

  • l'élément marqué n'est pas utilisable,
  • le code associé n'est pas généré ou activé.

Ce code d'accès permet d'interdire l'accès à la fiche courante pour certains utilisateurs.

Si le champ est alimenté, seuls les utilisateurs qui ont des droits de lecture sur ce code d'accès peuvent visualiser l'enregistrement ; et seuls les utilisateurs avec des droits d'écriture peuvent le modifier.

O direito de execução que pode ser anexado ao código de acesso permite autorizar a execução da transação sistema.

Conta tida do facto que esta função está sensível, é aconselhado de preencher um código de acesso e de limitar cuidadosamente o número de utilizadores tendo o direito de execução.

Define a tabela principal sobre a qual a transação vai ser executada

Quadro Tabelas ligadas

Identifica as tabelas ligadas à tabela principal.

  • Ligação (campo LNKEXP)

Este campo está definido como uma ou várias expressões calculadas separadas por um ponto e vírgula. Cada expressão está avaliada, e o resultado permite de conhecer o valor da chave utilizada para realizar a junção. Quando as junções múltiplas são autorizadas, pode-se não dar que os primeiros elementos da chave.

Nas expressões, podem-se utilizar constantes, e campos emitidos das tabelas previamente definidas na lista das relações.

Quadro Parâmetros

Define o Tipo de dadoscorrespondentes ao parâmetro registado. Isto permite controlar o seu valor pelo meio de uma tabela, se for caso disso.

  • Descr. (campo ZVARINTIT)

 

  • Comp. (campo VARLNG)

Define o número de caracteres máximo devendo ser registados para preencher o parâmetro.

  • Menu (campo VARMEN)

Quando o parâmetro a registar é de tipo menu local, define-se aqui o número do menu afectado.

  • Parâmetro objecto (campo VARPAR)

Este campo define um complemento necessário à definição do tipo de dados, quando é necessário. No quadro de uma tabela diversa, o complemento define o número da tabela, por exemplo.

  • Valor por defeito (campo VARDEF)

Permite definir um valor por defeito pelo meio de uma expressão calculada podendo conter constantes e variáveis.

O código de uma tabela de controlo pode ser registado neste campo para realizar um controlo de validade particular associado ao parãmetro definido na transação sistema.

Fechar

 

Separador Detalhes

Apresentação

Este separador permite de indicar os critérios de selecção as linhas da junção percorridas, e de detalhar as actualizações feitas pela transacção sistema sobre as linhas. Isso pode ser :

  • uma criação de registo a partir de um registo seleccionado (falta parametrizar uma única linha deste tipo por criação pedida, para o campo chave correspondente). É o equivalente de uma duplicação de registo.
  • uma modificaçaõ do valor de um ou vários campos (uma linha por campo).
  • uma supressão de registos (não se precisa nada para os campos).

Fechar

 

Campos

Os seguintes campos estão presentes neste separador :

Quadro Selecções

  • Formulas (campo SELFRM)

Este campo permite definir as expressões lógicas para filtrar os registos a actualizar ou a suprimir. É possível utilizar os campos da tabela principal, tabelas ligadas e variáveis definidas no quadro dos parâmetros de lançamento do primeiro separador (V1 a Vn).

Se o resultado de uma destas expressões é falso, o registo não será afectado.

Quadro Actualização

Define a tabela sobre a qual uma operação deve ser feita.

  • Transacção (campo FLDSUP)

A operação realizada pode ser :

  • uma modificação (depois enumeração dos campos a modificar)
  • uma supressão (nenhuma informação suplementar ao nome da tabela está a fornecer).
  • uma criação (neste caso, alimentar os campos registos por registo).
  • Campo (campo FLD)

Define o campo cujo se pretende dar o valor (em modificação ou em criação). Este campo está emitido da tabela registada sobre a linha.

  • Formulas (campo FLDFRM)

Esta fórmula está avaliada para dar o valor ao campo a afetar. Pode utilizar nesta fórmula os campos das tabelas em linha, constantes, assim que as variáveis V1 a Vn definidas pelo quadro dos parâmetros de lançamento do primeiro separador.

Fechar

 

Botões específicos

A validação permite gerar o tratamento automático. Contém todo o tratamento personalizado da transacção:.

  • Declaração das variáveis nomeadas V1, V2,…, V6
  • Declaração das tabelas
  • Ligações entre todas as tabelas (instrução Link )
  • Filtro dos registos sobre a tabela, se é única, ou sobre a abreviação resultando da ligação.
  • Transacção de actualização.
  • Registo no ficheiro espion.tra no directorio tmp

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

Bloco número 1

  • Cód. (campo COD)

Este código identifica a transação sistema a lançar.

  • campo DES

Intitulé associé au code précédent

Bloco número 2

  • Modo teste (campo TEST)

Se esta check box está assinalada, a transação está executada sem nenhuma atualização das tabelas, o rasto dando os dados que serão atualizados se o tratamento está lançado em real.

Pode-se então dar um numero máximo de reansações a tratar.

  • Numero de transacções (campo NOMBRE)

Em modo teste, este campo limita o número de linhas de tabelas tratadas.

Quadro

  • Variável (campo VARDES)

Intitulado de cada variável podendo ser registado como parâmetro da transacção sistema.

  • Valor (campo VALEUR)

Define os valores associados aos parãmetros da transação no momento da sua execução.

Fechar

Este botão permite de executar directamente a transacção. Trata-se : o utilitário de transacções sistema.

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 recopiar a definição da transacção versus um outro dossier. Atenção, falta validar a transacção no dossier de destino.

Algoritmo e tratamento gerado

É importante de notar que se pode fazer duplicações e modificações simultãneas na mesma transacção, na condição de respeitar a ordem de declaração. Por exemplo, se se regista as linhas seguintes :

Tabela

Transacção

Campo

Fórmulas :

TABLE1

modificação

CHAMP1

EXPRESSION1

TABLE1

Criação

CHAMP2

EXPRESSION2

TABLE2

Criação

CHAMP3

EXPRESSION3

TABLE2

modificação

CHAMP4

EXPRESSION4

TABLE3

modificação

CHAMP5

EXPRESSION5

O algaritmo aplicado será o seguinte :

Para [todas as linhas da junção afectada]

Leitura da linha corrente da TABLE1, Afectação de CHAMP1 e CHAMP2, depois criação de uma linha de TABLE1

Leitura da linha corrente da TABLE2, Afectação de CHAMP1 e CHAMP2, depois criação de uma linha de TABLE2

Afectação de CHAMP4, depois modificação por reescrita da linha corrente de TABLE2

Leitura da linha corrente de TABLE3, Afectação de CHAMP5, depois modificação por reescrita de TABLE3

Em toda a lista de causa, um desenvolvimento para visualizar o tratamento gerado pela validação. Seu nome está definido pelo código da transacção, prefixado pelos caracteres. WMAMI.

Mensagens de erro

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

Comprimento incorrecto

O comprimento de uma variável está controlada em função do seu tipo.

Tipo

Comprimento máximo

Literal

 30

Inteiro curto :

 4

inteiro longo :

 8

Caracteres

 250

Data

 4, 6 ou 8 (comprimento autorizado)

Decimais :

 32 ( para parte inteira e decimal)

No Menu local incorrecto

O número registado corresponde a uma capítulo de mensagens e não a um menu local.

Menu local não definido

O número preenchido não corresponde a um menu local existente.

Valor incorrecto

Não se pode actualizar uma tabela não definida em tanto que a tabela principal ou tabela nesta ficha transacção.

Campo inexistente

O campo deve existir no dicionário da tabela indicada sobre esta mesma linha.

Índice incorrecto

A dimensão exprimida por este campo não deve ser excedido aquela definida para este mesmo campo no dicionário da tabela.

Tabelas consideradas

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