"
Apoiado por

Boas prácticas
Usarás uma tabela de constantes

Sempre que achares que um valor que estás a usar num programa pode mudar e não o puderes tornar um parâmetro de entrada ou do ecrã de seleccção, guarda-o numa tabela de constantes (ex: ZCONSTS). Esta tabela nunca deverá ser usada directamente. Em vez disso, cria uma classe ZCL_CONSTS que aceda a ela e usa sempre esta classe para obter as tuas constantes. Como é mostrado neste artigo:
https://abapinho.com/2009/06/constantes/

Não caias na tentação de usar a T900 ou outras tabelas do género para este propósito. É certo que muita gente faz isso. Mas é feio, sujo e essas tabelas nem sequer têm uma chave adequada porque não foram pensadas para isso.

2 comentários a “Usarás uma tabela de constantes”

  1. Pedro Diz:

    Viva,

    A t-code STVARV pode ser uma boa opção, dependendo das situações.

    Cumprimentos,

  2. Nuno Godinho Diz:

    Olá Pedro,

    Só concordo num cenário muito simples em que chegas a um cliente que não conheces, ficas lá só por um dia e só te pedem para fazer um relatório com um valor constante parametrizável. Mas só mesmo num cenário simplista desses.

    Porque numa situação em que estás num cliente por um período maior, ficarão todos a ganhar se criares uma alternativa mais robusta que não dependa de fazer SELECTs a tabelas dessas directamente no código. É preferível fazer uso de uma classe que obrigue à sua boa utilização.

    Além disso a transacção que sugeres não permite agrupar valores, nem identificar qual o desenvolvimento a que cada constante pertence, nem adicionar comentários ao valor para o descrever. É tudo a eito. Por isso é certinho que se for muito usada resulta no caos.

    É como tudo. É como as variáveis globais. Se precisares de uma, apenas uma, para uma coisa muito simples, OK, às vezes até pode ajudar a deixar tudo mais simples. Mas se usares e abusares delas, caos.

Deixe um comentário


Acerca do Abapinho
O Abapinho é suportado pelo WordPress
Artigos (RSS) e Comentários (RSS).