Procura notas directamente no Google Chrome
O Google Chrome tem uma app para pesquisar notas SAP de forma integrada. Chama-se SAP Notes finder. Instala-se aqui. Obrigado Fernanda Mirabile e Talita Polanczyk pela dica. O Abapinho saúda-vos.
O Google Chrome tem uma app para pesquisar notas SAP de forma integrada. Chama-se SAP Notes finder. Instala-se aqui. Obrigado Fernanda Mirabile e Talita Polanczyk pela dica. O Abapinho saúda-vos.
Sabias que quando invocas uma função com a opção DESTINATION ‘NONE’ estás a iniciar uma nova LUW? Isto pode parecer apenas uma curiosidade, mas há um caso em que pode fazer toda a diferença: sabes aqueles módulos de função que ao serem chamados uma segunda vez têm um comportamento diferente da primeira vez? Isto acontece porque eles hão-de ter alterado alguma variável global ao grupo de funções. Ora se iniciares uma nova LUW quando chamares a função, o seu grupo de funções é automaticamente inicializado e assim garantes que o comportamento da função é o esperado.
Para fazeres debug a um programa que faça parte de um job faz o seguinte:
Há muito tempo atrás dizias “porreiro pá”. Depois começaste a dizer “baril”. Depois era “fixe”. Hoje dizes “altamente”. É importante não te baralhares para não dares mau aspecto.
E como perguntas a uma tabela interna se a linha existe?
Há módulos de função standard que lançam mensagens e não deviam. Não deviam porque depois queremos usá-las em programas não interactivos e, em vez de devolverem o erro, atiram com uma mensagem para o ecrã que dá cabo do processo.
Mas, provavelmente por ter tomado consciência deste problema, a SAP disponibilizou uma forma elegante (mas muito mal documentada) de resolver o problema.
Imagina que tens um programa a executar um ciclo infinito ou, pelo menos, um ciclo com 70x7 iterações. Nunca mais acaba e tu queres saber o que lá se passa.
No passado tinhas de ir à SM50, seleccionar o processo e escolher no menu “Administração | Programa | Depuração”.
Mas agora há uma forma muito mais simples.
Por muitas voltas que eles dêem no ABAP, acaba tudo por ir dar à SE38. Até os métodos das classes ABAP são guardados em includes.
Às vezes quando há um dump diz que o problema está, por exemplo, aqui: CL_MESSAGE_HELPER=============CM001.
Liberaste uma ordem de transporte porque achavas que estava tudo pronto. Mas afinal ainda faltava fazer mais uma pequena modificação. E agora vais ter de criar uma nova ordem e transportar as duas. Que grande chatice.
Calma.
O Abapinho recebeu uma carta.
Sr Abapinho,
Todos sabemos como colocar valores por defeito em select options usando o comando DEFAULT. O que nem toda a gente sabe é que podemos também definir por defeito a opção e o sinal e mesmo o botão para restingir o select options.
Quando chamas um módulo de função que devolve excepções normalmente dás-lhes números sequenciais tipo isto:
CALL FUNCTION 'VAI_ALI_MAS_VOLTA'
EXPORTING
ali = 'Barreiro'
EXCEPTIONS
NOT_FOUND = 1
GOT_LOST = 2
OTHERS = 3.
Mas se a seguir não tiveres o cuidado de ter um IF ou um CASE a olharem para o SY-SUBRC o Code Inspector pode devolve-te um erro caso esteja configurado para tal.
Temos duas variáveis:
DATA palavra1 TYPE string.
DATA palavra2 TYPE string.
DATA: frase TYPE string.
palavra1 = ‘isto’.
palavra2 = ‘aquilo’.
E queremos concatená-las metendo entre elas a palavra ‘mais’ e, claro, separando-as por espaços.
O editor de ABAP tem coisas que não lembram ao diabo. Até dá para escrever ao mesmo tempo em várias linhas.
Não está.
Mas eles - os senhores que fazem e refazem o ABAP propriamente dito - vão tentando remediar a situação.
Olha por exemplo esta nova funcionalidade.
Sabias que podes fazer LOOP de uma tabela interna com uma estrutura A para dentro de uma estrutura do tipo B?
Para indentares um bloco de linhas só com teclas faz assim: