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 Request:_________________________________________________3
3 Tabela de referencia_________________________________________________10
3.1 Sistemas – Tabela I____________________________________________________10
3.2 Área funcional – Tabela II_______________________________________________10
653439398.docx Página 2 de 14
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 duvida 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 referencia para padrões de nomenclatura e organização do
código. Consultar também o Manual de Boas Praticas de Programação.
2 Requests
Exemplos:
- ECDK938676 MALIMA W-SD003-Correção Exit MV45AFZZ – DUMP ECP
- ECDK938678 MALIMA C-FIGL001-Criação do novo centro
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
653439398.docx Página 3 de 14
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
653439398.docx Página 4 de 14
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
Funções
Módulos de ZSSSMMMFNNNN SSS = Sistema (tabela I)
função MMM = Área funcional (tabela II)
F = Constante (Função)
653439398.docx Página 5 de 14
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
Classe de objetos ZMMM MMM_ = Área funcional (tabela I)
653439398.docx Página 6 de 14
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
de autorização Exemplos:
R3: ZFI
CRM: ZFI
Obs: Somente criar uma nova classe para
uma determinada área funcional se a
mesma já não estiver criada no sistema.
Objetos de ZSSSMMMNNN SSS = Sistema (tabela I)
autorização MMM_ = Área funcional (tabela I)
NNN = Número seqüencial
Exemplos:
R3: ZECCFI001
CRM: ZCRMSD045
Obs.: Antes de criar um novo objeto
verifique senão tem um standard ou outro
Z já criado que atenda a necessidade.
Grupos de ZMMMNNNN MMM_ = Área funcional (tabela I)
autorização NNNN = Número seqüencial
Exemplos:
R3: ZFI0012
CRM: ZSD0034
Outros Objetos
Transação ZMMMNNN MMM = Área funcional (tabela I)
NNN = Número seqüencial
Exemplos:
R3: ZFI012
CCS: ZSD034
Projetos de ZMMMNNNN MMM = Área funcional (tabela I)
Ampliação CMOD NNNN = Número seqüencial
Exemplos:
R3: ZFI0037
CRM: ZSD0343
Classes de ZMMM MMM = Área funcional (tabela I)
mensagens Exemplos:
R3: ZFI
CRM: ZSD
Obs: Somente criar para uma determinada
área funcional se a mesma já não estiver
criada no sistema.
BADI ZXXX Livre
(Implementações ) Usar o bom senso e definir nomes
intuitivos.
653439398.docx Página 8 de 14
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:
653439398.docx Página 9 de 14
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
.
3 Tabela de referencia
653439398.docx Página 10 de 14
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),
653439398.docx Página 11 de 14
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
653439398.docx Página 12 de 14
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
*----------------------------------------------------------------------*
* 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 *
*----------------------------------------------------------------------*
INCLUDE mztopecccfi0325 . " global Data
INCLUDE mzoecccfi0325 . " PBO-Modules
INCLUDE mziecccfi0325 . " PAI-Modules
INCLUDE mzfecccfi0325 . " FORM-Routines
INCLUDE mzvecccfi0325 . " POV-Modules
Funções
Classes
Classes
653439398.docx Página 13 de 14
Guia de padrões de nomenclatura para
desenvolvimento/manutenção de programas ABAP
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
653439398.docx Página 14 de 14