"
Categoria > Stories
Supported by

ABAP, the lobotomizer

João studies Computer Science at his College where he learns Java, polymorphism, encapsulation and a lot of other programming techniques and best practices. When he graduates, he decides to join a company to work in SAP. At the introduction training which his new company offers, the first thing he learns is how to make a program in ABAP. Here’s how they teach it:

“Go to transaction SE38, create program ZJOAO and then create includes ZJOAO_TOP, ZJOAO_FRM and ZJOAO_SEL. You declare all variables in _TOP, the selection screen you put in _SEL and all the FORMS must go into _FRM. Then write START-OF-SELECTION and under that put all the SELECTs and finally write END-OF-SELECTION and there you show the results in an ALV. It’s that simple. Welcome to ABAP.”

Ler o resto do artigo! »

ABAP popular saying

Don’t put off until tomorrow what you can do SY-DATUM.

It’s my birthday!

I’m 6 years old!

(Thank you Caleb Prichard for the photo)

ABAP sucks

Go to the ABAP Editor (SE38) and check out line 323 of standard program RCIFCUST.

If you’re lazy, here it is:

SAP programmers are wild.

Thanks Brian Wolfe for the photo.

Greetings from Abapinho
Ler o resto do artigo! »

Good mouse

Most of my friends, when they buy a new computer, worry a lot about CPU speed, disk speed and memory speed and whatnot speed. And then they go and buy a €6 mouse and a €7 keyboard. Ironic. While the CPU, the disk and the memory and all that other stuff often end up being wasted, the mouse and the keyboard are used to the max the entire time the computer is in use. I can’t count the number of times I’ve picked up someone else’s mouse and ended up having to whack it a few times to get to an icon, simply because the mouse is of poor quality or because the owner never bothered to get a suitable mouse pad. It doesn’t make sense. For someone like me, whose primary work tool is his or her computer, the way you interact with it should be as hassle-free as possible – it should make your work easier, not harder.

My mouse is a Razer Copperhead and it cost me a fortune. More than €60. And look, it’s even got a cord* and everything. And it’s big**! It was really tough to choose. Even more so because I’m left-handed, and from my left hand’s perspective, most mouse devices are a mass of misshapen, useless plastic. What makes this mouse so special is the simple fact that it is able to perfectly execute what mouse devices are supposed to do: push the little arrow around the screen. It says it’s specially designed for gamers. I don’t know; I’m not a gamer. But I’m just as picky about mouse devices as they are.

So, how do you choose? In the case of keyboards, I look for two things: comfort and sturdiness. In the case of mouse devices: besides the obvious comfort factor, stay well away from ball-type mouse devices (if they even still exist), and choose an optical device, preferably the laser type. An important specification is the number of dots per inch (DPI), in other words, its resolution or sensitivity.

* It’s curious to note that most people don’t think twice about shelling out €50 or more on a cordless mouse, and most of the time these don’t work all that well. I include myself in this group because I did buy one once, but I retired it because I was disappointed in its performance.

** I also know some laptop users who use those feeble little mouse devices made especially for laptops with the excuse that they are lighter and therefore easier to carry in their bags. Let’s be reasonable: the difference in weight is just a few grams, but the difference in ergonomics… is enormous. Besides, these toy mouse devices never work that great anyway.

So, my friends, that’s my advice.

Note: this article was posted a few years back on my personal blog, but since it still seems pertinent, I am posting it again here.

Greetings from Abapinho.

(Português) Entrevista a Mauricio Roberto Cruz do ABAPZombie

Sorry, this entry is only available in European Portuguese. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Depois de o site irmão ABAPZombie (grande site brasileiro sobre ABAP) me ter entrevistado há uns meses atrás, aqui fica finalmente a minha vingança Zômbica. Entrevistar o Mauricio foi muito simples porque as perguntas que me fizeram são tão boas que resolvi virá-las contra o feiticeiro (Mauricio, espero que não leves a mal ter-tas usurpado!). As suas óptimas respostas ajudarão certamente os leitores portugueses a terem uma ideia de como funciona o mercado ABAP lá no Brasil:

Ler o resto do artigo! »

Follow your fingers

I have a number of friends working as managers, lawyers, marketers, programmers, etc., at very dynamic and competitive companies who are allegedly very busy and are always up to their eyeballs in work. They dedicated several years of their lives to their degrees in order to specialise in a particular field and some of them have put in the extra effort to get a postgraduate diploma in order to be better qualified and therefore able to do more both better and faster. However, the vast majority of them use two fingers when typing at a computer. Over a number of years they have acquired many skills that supposedly make them ultra efficient and yet they still type with two fingers.

Ler o resto do artigo! »

RICEF is not transgenic rice nor is it part of the UN

RICEF is an acronym in SAP world which apparently was not invented by SAP. And so it is an unofficial acronym. Which does not mean it is an illegal or secret acronym given that it has become a term in proper usage in more and more projects.

RICEF means Report, Interface, Conversion, Enhancement, Form and, basically, refers to any kind of development that might be needed in a SAP project.

  • Report refers to reports, ALVs, transactions and all kinds of interactive stuff.
  • Interface works as a means of transporting data between SAP and other systems. So it relates to IDOCs, ALE, EDI, RFC, PI things, etc.
  • Conversion refers to data conversion, i.e. data input through BDC, DI, LSMW, etc.
  • Enhancement refers to all kinds of user-exits, BADIs and their ilk;
  • Form are, of course, the famous Layouts and the most recent Smart Forms, Adobe Forms and integrations with MS Office.

And just five little letters can describe all the development types possible in SAP.

It is used to address the need to identify the different developments in a project unambiguously. Note this example from a short dialogue between an operational consultant (green) and an ABAP consultant (purple):

Green – We need a new RICEF in FI.
Purple – Another one? Why? Aren’t there enough already?
Green – No. We always need more.
Purple – And what is this new RICEF called?
Green – F451.
Purple – Damn it, another form.

Greetings from Abapinho.

(Português) Um mal que veio por bem

Sorry, this entry is only available in European Portuguese. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Era uma vez um cliente com um sistema produtivo com 9 servidores mais rápidos que a própria sombra. Esses 9 servidores eram geridos por 4 administradores de sistema muito bons que os mantinham sempre oleados e a fluírem à velocidade máxima. Um dia tive de desenvolver um carregamento muito complexo que criava milhões de classificações. Quando se começou a testar o programa, constatou-se que algo estava muito lento, lento demais. Na maior parte do tempo o programa estava encalhado à espera de SELECTs sequenciais à tabela INOB, que era gigante. Como o meu programa não usava a INOB estranhámos. Depois de alguma investigação descobriu-se um SELECT desnecessário e ainda por cima mal feito (sem usar nem a chave primária nem um índice) que alguém deixou num user-exit amplamente utilizado. Comentou-se o SELECT e de repente o meu programa ficou centenas de vezes mais rápido. Eu fiquei feliz mas quem ficou mesmo a ganhar foram os administradores de sistema que tiveram um inesperado upgrade grátis a todas as 9 máquinas!

O Abapinho saúda-vos.

(Português) Dar de beber à dor

Sorry, this entry is only available in European Portuguese. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

No Inverno de 2006 trabalhava no projecto SAP de um enorme retalhista internacional, com centenas de supermercados espalhados por todo um país. Uma bela manhã, pelas 11h45 comecei a ver várias pessoas com ar alarmado a correr de um lado para o outro no escritório. Perguntei o que se passava e se podia ajudar e explicaram-me que não conseguiam fazer a encomenda de leite para o dia seguinte que tinha de ser feita até às 12h15 mas que não tinha nada a ver comigo, que eu não podia ajudar.

Voltei ao meu trabalho mas fiquei a matutar naquilo. Investiguei e compreendi que o problema era realmente causado por uma pequena alteração que eu tinha feito num user-exit de MM no dia anterior. Corrigi-o imediatamente e fui (também a correr) avisar os meus colegas que ficaram surpresos mas felizes. Conseguiu-se fazer a encomenda antes das 12h15 mas com a pressa, por alguma razão, encomendou-se o dobro dos litros.

No dia seguinte todos os supermercados do país tiveram o dobro do leite do dia. Montes e montes de pacotes de leite para vender. Fez-se uma promoção e lá se vendeu o leite. Vá lá que a coisa passou sem ninguém se zangar.

Esta foi a asneira mais épica que fiz em SAP até hoje: contribuir para a recalcificação de todo um povo.

O Abapinho saúda-vos.

(Português) Was ist ABAP?

Sorry, this entry is only available in European Portuguese. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Mas afinal o que é que quer dizer ABAP?

  • Em 1970 chamaram-lhe ABAP que queria dizer “Allgemeiner Berichts-Aufbereitungs-Prozessor”, ou em português “Processador de geração de reports genéricos”.
  • Em 1990 mudaram-lhe o nome para ABAP/4 e disseram que afinal queria dizer “Advanced Business Application Programming”, ou em português “Programação avançada para aplicações de negócio”.
  • Em 2000 largam o /4 e tornaram a chamar-lhe só ABAP e é o que ainda lhe chamam agora.
  • Estamos em 2010. Já era altura de lhe inventarem um novo significado.

O Abapinho saúda-vos.

(Português) Dá e receberás

Sorry, this entry is only available in European Portuguese. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

Vivia-se o ano do Senhor de 1998. No século XX portanto, quando ainda se trabalhava de gravata. Estava eu com 1 mês de experiência em SAP e pela primeira vez sozinho num cliente, de gravata ao pescoço, num armazém gigante, a fazer formulários de WM e coisas do género ao serviço de um funcional de WM. Certo dia fui directamente abordado por um senhor condutor de um empilhador que me disse que o código identificador na etiqueta das paletes tinha letras muito pequeninas e ele tinha muita dificuldade em lê-lo. O senhor empilhador perguntou-me se eu lhe podia aumentar o tamanho das letras. Situação relativamente irregular visto que tudo o que eu fazia deveria ser pedido pelo tal consultor funcional.

Parecia uma coisa simples e então tomei a iniciativa de tentar ajudá-lo. Afinal acabei por demorar 2 dias porque era uma impressora matricial antiga e tive de obter o seu manual de instruções, descobrir e configurar as sequências de escape no SAP. Mas no fim desses 2 dias, para enorme felicidade do senhor condutor do empilhador, o código começou a aparecer com letras garrafais. Ele, que passava todos os dias 8 horas por dia a transportar paletes, viu a sua qualidade de vida aumentar substancialmente. E até hoje, em quase 12 anos de SAP, esta foi uma das tarefas que me deu mais satisfação fazer, só pela alegria que lhe dei.

Os deuses deviam estar do meu lado porque, quando alguns dias depois fui enviado para um novo cliente, no próprio dia em que cheguei, o chefe desse projecto veio ter comigo e perguntou-me se sabia como é que se aumentava as letras de uma etiqueta, que andavam às voltas com aquilo e ninguém conseguia. Eu, com o ar mais natural e confiante do mundo disse-lhe que sim, que sabia, imprimi e dei-lhe as minhas notas que explicavam detalhadamente os vários passos necessários para fazê-lo, resolvendo-lhe o problema, ficando imediatamente com fama de especialista.

Moral da história: Dá (sempre) e (às vezes) receberás.

O Abapinho saúda-vos.


About Abapinho
Abapinho runs on WordPress
Articles (RSS) e Comments (RSS).