SELECT de registo único com chave incompleta
Durante anos explicaram-me que se deve usar UP TO 1 ROWS
quando a chave não é completa. A minha professora primária disse que devemos sempre perguntar porquê: porquê? Ninguém explica.
Durante anos explicaram-me que se deve usar UP TO 1 ROWS
quando a chave não é completa. A minha professora primária disse que devemos sempre perguntar porquê: porquê? Ninguém explica.
Imagina que queres mostrar um url num formulário. Colocas o url no texto do formulário e partes do princípio que tudo correrá bem. Porque, de facto, geralmente tudo corre bem. Só que às vezes…
Quando escreveres código deves estar sempre preocupado com quão fácil será mantê-lo. Isso é particularmente importante nas declarações de variáveis. E é tão simples de aplicar.
Quando vais modificar registos na base de dados é comum fazeres primeiro um SELECT
para ver como as coisas são e depois então fazeres UPDATE
como as coisas serão.
Quando chego a um projecto novo atribuem-me uma chave de desenvolvimento para cada sistema de desenvolvimento associado. Normalmente esta é-me enviada por e-mail. Normalmente perco-lhes o rasto.
A nova forma de ler de tabelas internas é também a nova forma de escrever em tabelas internas.
Imagina que és um macaco pendurado no galho de uma árvore. Queres saltar para outro galho mas ele está tão longe que não o consegues ver. Se saltares arriscas-te a cair ao chão. É mau.
Há várias desculpas para não usar a nova sintaxe funcional do ABAP 7.4. Uma delas é dizer que é impossível fazer debug.
Só que não é.
Um dos principais pontos fracos de um programa são os dados introduzidos pelos utilizadores.
O ABAP evolui (embora durante muitos anos não parecesse). E à medida que evolui vai deixando para trás alguns comandos ou formas de fazer as coisas porque disponibiliza outras melhores.
Para além de aprender a usar as novidades é também importante aprender a deixar de usar o que vai ficando obsoleto.
Sabias que, se o teu SAP for minimamente actual, podes usar expressões complexas em ABAP no meio de comandos SQL?
A legibilidade é muito importante em todo o texto escrito. Talvez com a excepção da poesia concreta.
Na sequência do post anterior, aqui fica um par de regras que minimizam o esforço que alguém tem de fazer para compreender expressões booleanas.
Porque haveria de ser difícil lê-las? Só tornaria mais difícil a vida de quem vier a precisar de a entender.
Lá porque uma condição IF é complexa não é por isso que tem de ser complicada.
O ABAP está a permitir fazer coisas cada vez mais interessantes em SQL. A última que descobri foi que agora se pode usar CASEs.
Quantas vezes na tua vida de consultor tiveste de lidar com dumps que aconteceram em consequência de um programa tentar inserir duas linhas com a mesma chave numa tabela interna definida com UNIQUE KEY?
Chega.