ABAP
Origem: Desciclopédia, a enciclopédia livre de conteúdo.
Padre Quevedo sobre ABAP
Associação Baiana de Acessoria de Programação. Vixe... programação de rede aqui. Deitadinho nela, 'num' sei se é delphi, cobol, sql, basic. Só sei que o dono da empresa quer deixar rico os alemães. ![]()
Preto Jóia sobre ABAP
Associação Brasileira de Ajuda ao Próximo??? Há, eu conheço, eles fazem um lindo trabalho!!! ![]()
Carla Perez sobre ABAP
Associação Brasileira de Ajuda ao Próximo! ![]()
Alguém de São José dos Campos sobre ABAP
ABAP_SYSTEM_EXCEPTION ![]()
DUMP sobre ABAP
Você quis dizer: POG![]()
Google sobre ABAP
Isso não é erro cacete ![]()
Instrutor sem noção ao se deparar com a mensagem "Function module name is reserved for SAP" teimando em criar função com o dominio da SAP
é aquele menino que fica mexendo no sistema ![]()
Usuário sem Noção sobre ABAP
Coloca um Flag que funciona!! ![]()
Funcional burro sobre ABAP
É só colocar um IF que funciona ![]()
Funcional idiota dando uma de ABAP
Quem não entender é só debugá! ![]()
Instrutor ABAP sobre programas de 10.000 linhas
É só copiar o Standard, facinho ![]()
Funcional sem noção sobre a nova Va01
Ah... Tem uma função standard que faz isso aí, fica tranqüilo... ![]()
Funcional sobre qualquer tipo de dúvida de ABAPeiro
Se eu púdesse eu debugarrá millll... ![]()
Jeremias sobre ABAP
Você não está comprometido com o projeto! ![]()
Seu gerente, após as 320 horas trabalhadas no mês
Nem esquenta... Depois agente negocia essas horas. ![]()
Seu gerente, após mais 320 horas trabalhadas no mês seguinte
Função não é função. É perform. ![]()
Instrutor ABAP sobre ABAP
Tu é muleque! Mu-le-que! ![]()
Capitão Nascimento sobre um Dump no report.
Macro não é macro. É Batch Input. ![]()
Instrutor ABAP sobre ABAP
Nada de orientações a objeto por aqui ![]()
Aluno ABAP sobre ABAP
Por que facilitar se podemos debugar ![]()
Aluno ABAP sobre ABAP
Não se diz erro, se diz sy-subrc NE 0 ![]()
ABAP sobre erro
Não se diz formulário, se diz TABELA ![]()
Instrutor ABAP sobre formulário
Não se diz Struct, se diz TABELA ![]()
Instrutor ABAP sobre estrutura
Não se diz tabela, se diz Selection Screen ![]()
Instrutor ABAP sobre tabela
É uma cilada, Bino!!! ![]()
Pedro sobre curso de Abap
Pior que é mesmo Pedro... ![]()
Bino sobre citação acima
I wanna fuck ABAP in the ass ![]()
Tom - Blink 182 sobre Abap
Tenho Medo!! ![]()
Regina Duarte sobre ABAP
Isto non ecsiste!!! ![]()
Padre Quevedo sobre Utilidade do ABAP
Então você junta o Pascal e o COBOL e vem me dizer que fez uma linguagem ?!?! ![]()
você sobre criador do ABAP
Não é linguagem, é TABELA!!! ![]()
Outro sobre citação acima
PERFORM f_destroy USING h_bomb CHANGING t_world FUCKING t_programmer ![]()
Adolf Hitler sobre ABAP
A culpa é do funcional ![]()
ABAPeiro sobre erro no programa
A culpa é de Basis ![]()
Funcional sobre erro no programa
A culpa é do ABAPeiro ![]()
Basis sobre erro no programa
Maldito alemão! ![]()
ABAP se deparando com um DUMP não traduzido
ABAP (Advanced Bubble Acrean Programming) é uma linguagem de programação desenvolvida por programadores seringueiros do Acre escravizados por alemães na guerra do Paraguai.
O conceito de Bubble Programming vem de programar em seu mundinho ignorando qualquer conceito mundialmente padronizado, ultilizando-se das tecnicas milenares de POMM (Programação Orientada a Mim Mesmo).
Além disso ABAP utiliza o conceito de POSG (Programação Orientada à Seu Gosto) onde você tem infinitos modos de fazer a mesma coisa, e você escolhe aquilo que achar mais legal, ou consulta o mapa astrológico pra decidir qual modo adotar, mas por qualquer caminho que você siga na próxima versão virão com um novo conceito que deixará ultrapassado aquilo que você usou. O ambiente de trabalho dos ABAPs é facilmente reconhecido, geralmente ficam em uma sala com janelas de vidro e uma placa na entrada avisa "Não alimente os ABAPs".
Tabela de conteúdo |
[editar] Acesso aos Editores
O acesso aos editores Abap é feito através das denominadas transações, que fáceis de decorar com QUAISQUER 2 letras e 2 números sem nenhum tipo de relação com sua função. As transações mais usadas usam "SE" + um dezena. O conjunto "SE" de transações obedece ao critério dos cartuchos de mil jogos do atari, onde, temos 20 transações diferentes e o resto é tudo repitido com nomes diferentes.
A principal diferença entre um programador comum e o abapeiro é a facilidade de tirar o seu da reta e culpar o consultor funcional. Caso isso não funcione é só procurar outra consultoria que vai pagar o dobro e te deixar fazer o triplo de merda, e esse ciclo se repete como um loop infinito.
[editar] Padrões
Nomear Programas:
Por padrão os programas SAP customizados devem seguir os seguintes passos de nomeação:
1. Digite a Letra Z
2. Dois tapas com a mão no teclado
3. Uma testada no centro do teclado
O que resulta em algo semelhante a "ZBC402_24_CONN". Sendo assim, muito cuidado com os erros de digitação, qualquer erro de digitação o interpretador ABAP pode chamar uma transação não prevista em seu programa.
O Abap possui diversas funções-padrão para os mais variados tipos de necessidade com nomes irreconheciveis que com certeza você vai levar mais tempo pra descobrir pra que serve do que programando sua propria função.
Exemplos:
Com um típico comentário de abapeiro que ignora que o resto do mundo fala ingles:
*"-----------------------------------------------------
*"
*" Anweisung flache Struktur entsteht chucrutis
*" trotzdem eindeutige Feldnamen entstehen
*" deren flacher Darstellung die Namen der Hail Hitler
*"
*"-----------------------------------------------------
REPORT Z_YIG_34_1945
DATA wa_carrier LIKE LINE OF italy_conn_dead_list.
TRY
CALL FUNCTION 'EBTE_3478_ATTACK_NORMANDIA_D_DAY90843'
EXPORTING
bullet_star = bullet_star
IMPORTING
CONNECTION_SEBRAE = connection_sebrae
CATCH abort_mission
MESSAGE e345(it24) RAISING no_bullet
ENDTRY
[editar] Documentação
Por ser baseada na linguagem de povos antigos das Ilhas Tumbuctu, a documentação da ABAP é totalmente escrita em gaélico irlandês. Qualquer profissional que deseja se tornar um abapeiro (profissional que tenta entender de abap) de verdade deve entender também de gaélico irlandês. Quanto a documentação de programas, é muito comum conter apenas uma página, sendo ela em branco.
[editar] Erro. Erros? Onde?
Abap tem um diferença fundamental se comparada a uma outra linguagem esquisita qualquer. É a ÚNICA delas em que, mesmo com erros identificados pelo compilador, você pode ativar e compilar seus programas. É um salto. No escuro.
[editar] Acessando o Banco de Dados
Quem já tem uma simples noção de programação, não terá problemas com banco de dados. Levando em consideração que cada formulário é uma tabela, o acesso do banco de dados é direto, ou seja, escreva no meio do código mesmo qualquer coisa que lembre vagamente uma intrução SQL, sempre lembrando que o Abap tem o grande diferencial do comando SELECT ser um LOOP.
[editar] Debugando
Pra quem sempre quis saber o que róla nos bastidores da programação, o Debugger do Abap é o Nelson Rubens das linguagens.
Quando se manda debugar um programa, o Pointer mostra o que você pediu e principalmente o que você não pediu. Ao inserir um breakpoint], esteja pronto para viajar nas entranhas dos programas em que as principais informações são antigos bugs comentados e didáticos comentários em alemão.
Durante o Debug você pode verificar os erros via a variável sy-subrc, que retorna zero caso tudo de certo. Se sy-subrc retornar algo diferente de zero, algum problema tem, dos quais podem ser:
4 = você fez o select direito, agora faça como deve ser no ABAP.
8 = você fez a lógica correta, agora faça como deve ser no ABAP.
1001 = provavelmente o compilador não foi com sua cara.
666 = seu código irá destruir o mundo.
[editar] Orientação a Objetos
O ABAP tem sido atualizado para acompanhar os avanços tecnológicos nas linguagens de programação, uma das grandes novidades é a Orientação a Objetos ou ABAP Objects onde foi incorporado a infeliz possibilidade de trabalhar com Orientação a Objetos dentro da Linguagem estruturada.
Exemplo de uma sem noção boa implementação de objeto, utilizando RIDE (Redundância Incrível De Encapsulamentos)
CLASS lcl_event_receiver IMPLEMENTATION.
METHOD handle_data_changed.
PERFORM data_changed USING er_data_changed.
ENDMETHOD. "handle_data_changed
METHOD catch_doubleclick.
PERFORM f_double_click USING e_row
e_column
sender.
ENDMETHOD. "handle_data_changed
METHOD catch_hotspot.
PERFORM f_hotspot_click USING e_row_id
e_column_id
es_row_no.
ENDMETHOD. "catch_hotspot
METHOD handle_user_command.
PERFORM data_usercommand USING e_ucomm.
ENDMETHOD. "handle_data_changed
ENDCLASS. "lcl_event_receiver IMPLEMENTATION
| Linguagens de Programação |
|
ABAP •
|




