As funções pertencentes a um código-fonte devem ser nomeadas de acordo com a sua aplicabilidade e seu escopo de atuação.
Os possíveis escopos de atuação são:
1. Funções principais e auxiliares de uma rotina, relatório ou consulta;
Atuação exclusiva e limitada a rotina, relatório ou consulta, sempre declarada com escopo estático quando auxiliar e publico quando a função for a entrada principal;
2. Funções genéricas de utilização pelo módulo (Faturamento, Compras, Contabilidade);
Atuação exclusiva para o ambiente do módulo, presente em um código-fonte do tipo biblioteca e com escopo público;
3. Funções genéricas de utilização pela equipe do produto (Materiais, Vendas e CRM, Framework, RH);
Atuação exclusiva para uma determinada equipe, presente em um código-fonte do tipo biblioteca e com escopo público.
Na criação e desenvolvimento de uma função, é imprescindível que o analista que desenhou e o analista de desenvolvimento, analisem com cuidado a responsabilidade e as funcionalidades que a função terá. Em muitas situações uma determinada função que está desenhada para fazer parte de uma determinada rotina pode ser generalizada para a utilização no módulo, ou na equipe do produto, e até no framework. Evite a criação de funções genéricas dentro de códigos-fonte biblioteca, sempre que possível consulte o framework para que essa função ou classe possa ser transferida para a equipe correta, potencializando assim sua atuação.
Para a função principal de uma rotina, relatório ou consulta, utilizar o nome do arquivo:
Exemplo: Função de inclusão de dados presente FINA050: FINA050().
Atenção
- A função de entrada de um fonte MVC (chamada de menu) de uma rotina padrão deve ter no máximo 7 caracteres, pois caso necessite ser localizada, a função (da rotina localizada) tem o seu nome somado a sigla do país.
Para funções auxiliares de uma rotina, relatório ou consulta, utilizar o padrão:
XYNNNXXXXX()
X - Primeira letra do nome do código-fonte.
Y - Tipo de Operação indicado no código-fonte.
NNN - Identificador do código-fonte.
XXXXX - Abreviação descritiva do objetivo da função.
Exemplo: Função de inclusão de dados presente FINA050: FA050Inclu().
Para funções genéricas de utilização pelo módulo, utilizar o padrão:
XXZZZZZZZZ()
XX - Prefixo do módulo da linha Microsiga Protheus, exemplo: GP para o módulo de Gestão de Pessoal, PO para o módulo de Ponto Eletrônico, FT para o módulo de Faturamento, etc;
ZZZZZZZZ - Abreviação descritiva do objetivo da função.
Exemplo: Função genérica do módulo Faturamento: FTFuncaoGenerica().
Funções genéricas de utilização pela equipe do produto, utilizar o padrão:
XXZZZZZZZZ()
XX - Abreviação no nome da equipe, exemplo: VC para Vendas e CRM, MT para Materiais, etc;
ZZZZZZZZ - Abreviação descritiva do objetivo da função.
Exemplo: Função genérica da equipe de Recursos Humandos: RHFuncaoGenerica().