Escolar Documentos
Profissional Documentos
Cultura Documentos
de programas ABAP
Versão 1
Março/2015
Conteúdo
1 Objetivo____________________________________________________________3
2 Requests___________________________________________________________3
2.1 Nomenclatura/Projeto Request:__________________________________________3
3 Tabela de referencia_________________________________________________11
3.1 Sistemas – Tabela I____________________________________________________11
3.2 Área funcional – Tabela II_______________________________________________11
653439470.docx Página 2 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
1 Objetivo
Todos os programas a serem desenvolvidos para qualquer ambiente SAP da Focus, independente do
projeto, deve seguir os padrões descritos neste documento.
Qualquer dúvida deve ser direcionada ao departamento de TI antes de qualquer codificação.
Todos os padrões são verificados na liberação das requests pelo Code Inspector, sendo assim qualquer
exceção será bloqueada e não será possível transportar os objetos sem as devidas correções.
Este documento é apenas um guia rápido de referência para padrões de nomenclatura e organização do
código. Consultar também o Manual de Boas Práticas de Programação.
2 Requests
W-ID-Iniciais_nome-Descrição breve
W = Constante
ID = Modulo + Chamado ( mesmo da EF )
Descrição breve = Descrição - Se possível inserir nome Objeto
Exemplos:
- ECDK938676 W-TM92546-WLJ-Ajuste Função ZECCTNF002 Programa ZTM004
- ECDK938678 C-FI93471-WLJ-Criação do novo centro
Exemplos
653439470.docx Página 3 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
3. Nomenclatura
NOMES DE OBJETOS
Objetos do Dicionário
Tabelas ZSSSMMMTNNNN SSS = Sistema (tabela I)
MMM = Área funcional (tabela II)
T = Constante (Tabela)
NNNN = Número seqüencial
Exemplos:
R3: ZECCFIT0234
CRM: ZCRMLEST0045
Visões ZSSSMMMVNNNN SSS = Sistema (tabela I)
MMM = Área funcional (tabela II)
V = Constante (Visão)
NNNN = Número seqüencial
Exemplos:
R3: ZECCFIV0435
CRM: ZCRMFATV0009
653439470.docx Página 4 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
Programas
Programas do ZSSSMMMRNNNN SSS = Sistema (tabela I)
tipo 1 MMM = Área funcional (tabela II)
R = Constante (Report – não
necessariamente o programa é um
Relatório)
NNNN = Número seqüencial
Exemplos:
R3: ZECCFIR0234
BW: ZBWFIR0045
653439470.docx Página 5 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
Classes
Classes ZSSSMMMCLNNNN SSS = Sistema (tabela I)
MMM_ = Área funcional (tabela I)
CL = Constante (Classe)
NNNN = Número seqüencial
Exemplos:
R3: ZECCFICL0001
CRM: ZCRMFICL0001
Exemplos:
R3: ZECCFIIF0001
CRM: ZCRMFIIF0001
Autorização
653439470.docx Página 6 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
653439470.docx Página 7 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
653439470.docx Página 8 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
TY_ = Constante
Exemplos:
TY_MARA
TY_BSIK
Constantes GC_XXX GC_ = Constante
XXX – Livre
Exemplos:
GC_TIPO_DOCUMENTO
GC_MOEDA
Parâmetros de Telas P_XXX P_ = Constante (Parameter)
de Seleção S_XXX S_ = Constante (Select-Options)
XXX – Livre
Exemplos:
P_ARQUIVO
S_BUKRS
Obs.: RadioButtons, CheckBox, etc..
Seguem a mesma regra do Parameter.
Parâmetros de Variáveis: E_ = Variável ou tabela exportação
funções E_XXX (Função -> Programa)
I_XXX I_ = Variável ou tabela Importação
Tabelas: (Função <- Programa)
T_XXX T_ = Tabela (TABLES)
XXX – Livre
Ranges R_XXX R_ = Constante (Ranges)
XXX – Livre
Exemplos:
R_BUKRS
R_BLART
FIELD-SYMBOLS <XXX> <> - Obrigatório
XXX – Livre
Exemplos:
<ERDK>
<MARA>
Business Object ZXXX (cópia do standard) XXX – Livre. Para copia de objetos
ZSSSMMMONNNN standard aconselha se a simplesmente
(objetos novos) colocar um Z na frente do nome original.
Exemplos:
Cópia do Standard:
653439470.docx Página 9 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
ZBUS1001006
Objeto novo:
ZECCFIO0010
Qualquer Tarefa de XXX Livre.
Workflow (TS, WS) Usar o bom senso. Pois a sigla é a melhor
maneira de encontrar as tarefas.
Programa do Mesmo nome do Business Mesmo nome do Business Object
Business Object Object correspondente. correspondente.
WORKFLOW
.
653439470.docx Página 10 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
3 Tabela de referencia
653439470.docx Página 11 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
ORGANIZAÇÃO DO CÓDIGO
Tipos 1, I, T, J, e K.
*----------------------------------------------------------------------*
AT SELECTION-SCREEN.
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* FOCUS TEXTIL *
*----------------------------------------------------------------------*
* Projeto : XXXXXXXX *
* Transação : ZXXXXX *
* Descrição breve : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX *
* Autor : XXXXXXXXXXXXXXXXXX *
*----------------------------------------------------------------------*
* Histórico de Alterações: *
*----------------------------------------------------------------------*
* Data | Autor |Alteração *
*----------------------------------------------------------------------*
* dd/mm/aaaa | Codificador2 |É obrigatório colocar aqui de forma *
* |resumida, simples e inteligível as *
* |alterações, caso não seja colocado *
* |a liberação da request será bloqueada *
* |pelo Code Inspector *
*----------------------------------------------------------------------*
REPORT zxxx.
*----------------------------------------------------------------------*
* Tipos: POOLS
*----------------------------------------------------------------------*
TYPE-POOLS: slis,
icon.
*----------------------------------------------------------------------*
* Includes
*----------------------------------------------------------------------*
INCLUDE: XXXX.
*----------------------------------------------------------------------*
* Tabelas/Estruturas do Dicionário
*----------------------------------------------------------------------*
TABLES: zccsacct0075.
*----------------------------------------------------------------------*
* Types
*----------------------------------------------------------------------*
TYPES: BEGIN OF ty_arq,
line(1000),
END OF ty_arq,
BEGIN OF ty_job,
jobname TYPE tbtco-jobname,
END OF ty_job.
*----------------------------------------------------------------------*
* Tabelas internas
*----------------------------------------------------------------------*
DATA: gt_header TYPE slis_t_listheader.
*-----------------------------------------------------------------------
* Definição de Ponteiros
*-----------------------------------------------------------------------
FIELD-SYMBOLS: ...
*----------------------------------------------------------------------*
* Variaveis globais / Estruturas
*----------------------------------------------------------------------*
DATA: gv_file TYPE string,
gv_log(80),
gs_header TYPE slis_t_listheader.
653439470.docx Página 12 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
*----------------------------------------------------------------------*
* Ranges
*----------------------------------------------------------------------*
RANGES: r_bukrs FOR mara-bukrs.
*----------------------------------------------------------------------*
* Constantes
*----------------------------------------------------------------------*
CONSTANTS: c_empresa(4) VALUE 'T100'.
*---------------------------------------------------------------------*
* Definição da Tela de Seleções
*---------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_bukrs FOR zccsacct0075-zzbukrs NO INTERVALS,
s_faedn FOR zccsacct0075-zzfaedn NO-EXTENSION,
s_exbel FOR zccsacct0075-zzexbel.
SELECTION-SCREEN END OF BLOCK b1.
*---------------------------------------------------------------------*
* Eventos
*---------------------------------------------------------------------*
TOP-OF-PAGE.
* PERFORM top_of_page.
AT SELECTION-SCREEN OUTPUT.
PERFORM screen_output.
AT SELECTION-SCREEN ON s_faedn.
PERFORM valida_faedn.
*---------------------------------------------------------------------*
* Principal
*---------------------------------------------------------------------*
START-OF-SELECTION.
* Os comentários devem ser colocados desta forma. O código deve ser como este
* exemplo, observar as sessões e como são separadas. Qualquer coisa diferente,
* esta errado e será bloqueado e o programador orientado a seguir o padrão.
…..
…..
…..
END-OF-SELECTION.
*&--------------------------------------------------------------------*
*& Form select_processamento
*&--------------------------------------------------------------------*
* Selecionar dados
*---------------------------------------------------------------------*
FORM select_processamento.
...
...
653439470.docx Página 13 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
653439470.docx Página 14 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
Funções
Para funções tambem é a mesma regra seguida para programas do tipo 1, a única
diferença é que o cabeçalho deve ser colocado somente no programa Básico e cada
função deve possuir uma descrição breve própria.
*---------------------------------------------------------------------*
* Grupo de funções : ZXXXXXXXX *
* Projeto : XXXXX *
* Módulo : FI *
*---------------------------------------------------------------------*
*---------------------------------------------------------------------*
* FIELD_EXIT_AD_FLOOR
*---------------------------------------------------------------------*
* Função criada para validar o CNPJ e não permitir duplicidades
*---------------------------------------------------------------------*
* ZCRMSDF00010
*---------------------------------------------------------------------*
* Funcão criada para validar a conta contrato no faturamento e é
* utilizada no evento 453
*---------------------------------------------------------------------*
* Histórico de Alterações: *
*---------------------------------------------------------------------*
* Data | Autor |Alteração *
*---------------------------------------------------------------------*
* dd/mm/aaaa | Codificador2 |Função: FIELD_EXIT_AD_FLOOR *
* |Feito correção no calculo do digito *
* |verificador *
* |------------------------------------ *
* dd/mm/aaaa | Codificador2 |Função: ZCCSACCF00010 *
* |XXX YYYY *
*---------------------------------------------------------------------*
*******************************************************************
* System-defined Include-files. *
*******************************************************************
INCLUDE LZAD_FLOORTOP. " Global Data
INCLUDE LZAD_FLOORUXX. " Function Modules
*******************************************************************
* User-defined Include-files (if necessary). *
*******************************************************************
* INCLUDE LZAD_FLOORF... " Subprograms
* INCLUDE LZAD_FLOORO... " PBO-Modules
* INCLUDE LZAD_FLOORI... " PAI-Modules
Funções
Classes
653439470.docx Página 15 de 16
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
Classes
Para classes, colocar as sessões conforme necessário e incluir as informações de modificação em cada método
alterado.
method IF_CI_TEST~NAVIGATE .
*---------------------------------------------------------------------*
* Histórico de Alterações: *
*---------------------------------------------------------------------*
* Data | Autor |Alteração *
*---------------------------------------------------------------------*
* dd/mm/aaaa | Codificador2 |Função: FIELD_EXIT_AD_FLOOR *
* |Feito correção no calculo do digito *
* |verificador *
* |------------------------------------ *
* dd/mm/aaaa | Codificador2 |Função: ZCCSACCF00010 *
* |XXX YYYY *
*---------------------------------------------------------------------*
*---------------------------------------------------------------------*
* Definição de Variaveis/Estruturas
*---------------------------------------------------------------------*
DATA: g_bukrs TYPE bukrs.
*-----------------------------------------------------------------------
* Definição de Ponteiros
*-----------------------------------------------------------------------
FIELD-SYMBOLS: <erdk> TYPE erdk.
……………..
……..
……..
endmethod.
Classes
653439470.docx Página 16 de 16