Patrocinado por
Patrocinado por Inetum

Altera ordens de transporte mesmo que não te deixem

images/thumbnail.jpg - Thumbnail

Como todos nós sabemos os administradores de sistemas são pessoas más, insensíveis e crueis. A prová-lo está o incontornável BOFH.

Nós, programadores ABAP, somos vítimas indefesas nas mãos destas criaturas maléficas.

Mas nem sempre somos obrigados a deixar-nos esmagar pelos dedos peludos dos seus caprichos.

Um exemplo é a gestão de transportes. Por vezes, os malvados administradores de sistemas decidem que nós, programadores coitadinhos, não podemos ter acesso a liberar ou alterar ordens de transporte.

Eis o que devemos fazer para nos desviarmos dessa injusta proibição.

Para fazer tudo em TRs menos liberar a ordem principal:

  1. Mete um break-point na primeira linha da FM TR_AUTHORITY_CHECK_TRFUNCTION

  2. Faz o que queres fazer

  3. (o debug pára no break-point da função)

  4. Faz F7 para sair, altera o SY-SUBRC para 0 e faz F8 para continuar

  5. repete o ponto anterior as vezes que forem necessárias

Para liberar a ordem de transporte:

  1. Mete um break-point na linha 47 da FM TR_READ_PROJECT_SWITCH

  2. Libera a ordem de transporte

  3. A primeira vez que parar na linha 47 limpa a variável EV_PRJ_STATE

  4. Ri para dentro!

Obrigado Gianni pela dica.

O Abapinho saúda-vos.