De l’intérêt de contrôler le standard… et de bien tester

J’ai récemment dû traiter un bug qui m’a paru étrange de prime abord, et qui fut finalement simple à corriger. Le contexteUn programme qui propose un paramètre à l’écran de sélection ; ce paramètre peut recevoir soit un chemin de fichier, soit un nom complet de fichier.À l’exécution, si aucun nom de fichier n’est donné,… Poursuivre la lecture de De l’intérêt de contrôler le standard… et de bien tester

Aide à la recherche manuelle avec multiples champs retournés

En règle générale, les outils standard de gestion des aides à la recherche sont suffisants. Il suffit par exemple de créer une zone de saisie sur un dynpro, de bien la typer selon un élément du dictionnaire de données qui ait lui-même une aide à la recherche ou une table de référence, et le dynpro… Poursuivre la lecture de Aide à la recherche manuelle avec multiples champs retournés

Pour simuler ME29N > Stratégie de lancement > Réinitialiser refus :

data(lo_po_handler) = cl_po_handler_mm=>get_instance( ).
lo_po_handler->open(
exporting
im_tcode = 'ME29N'
im_trtyp = cl_mmpur_constants=>ver
im_aktyp = cl_mmpur_constants=>ver
im_po_number = lv_po_number
importing
ex_po_data = data(ls_po_data) ).

ls_po_data-data-procstat = '03'.
ls_po_data-datax-procstat = abap_true.

lo_po_handler->set_po( ls_po_data ).
lo_po_handler->po_process( importing ex_messages = lt_message ).
if lt_message is initial.
lo_po_handler->po_check( importing ex_messages = lt_message ).
if lt_message is initial.
lo_po_handler->po_post( importing ex_messages = lt_message ).
endif.
endif.
lo_po_handler->close( ).
free lo_po_handler.