Archive

Posts Tagged ‘BADI’

BADI – DA – ME_PROCESS_REQ_CUST

March 28th, 2009 No comments

 Présentation d’une BADI pour vérifier, modifier les données dans une demande achat (ME51N, ME52N, ME53N)

Définition: ME_PROCESS_REQ_CUST

Rappel : Pour activer une BADI, il faut utiliser la transaction SE19.

Il existe plusieurs methodes à utiliser selon les besoins.

badi_ecran_1

Par exemple : La methode : Process_item déclanchée à chaque action sur le poste (Ajout, suppression, modification)

La methode a trois paramètres :

  • IM_ITEM
  • IM_COUNT
  • IM_REF_ITEM

badi_ecran_22 

On ecrit le code pour changer, par exemple, le groupe acheteur du poste de la demande achat.

data : ws_item type mereq_item.

 * Recuperation des données du poste de la demande Achat
  CALL METHOD IM_ITEM->GET_DATA
     RECEIVING
        RE_DATA = WS_ITEM.

** Appel function pour récuperer le groupe acheteur

    CALL FUNCTION ’Z_EKGRP_LIFNR’
        EXPORTING
            LIFNR    = WS_ITEM-FLIEF
            EKORG    = WS_ITEM-EKORG
       IMPORTING
            EKGRP    = WS_ITEM-EKGRP
       EXCEPTIONS
            NO_EKGRP = 1
            NO_LIFNR = 2
            OTHERS   = 3.

 * Enregistrement des modifications
CALL METHOD IM_ITEM->SET_DATA
     EXPORTING
          IM_DATA = WS_ITEM.

 On ne peut pas modifier directement les données, il faut passer par les methodes GET et SET.

Categories: SAP Tags: , ,

AVIS QM – BADI Barre d’activités

October 2nd, 2008 No comments

Un petit rappel pour certains, la BADI qui permet une gestion plus sûre de la barre d’activités est NOTIF_ACTIONBOX avec un filtre sur le type

d’avis.

Elle permet de masquer, griser… les boutons et fonctionne avec les avis CS également.

Transaction : SE19 pour implémenter la BADI et SE18 pour regarder la définition.

Exemple de code :

If i_function-qmart = ‘XX’.

case i_function-funktion.

when ‘Z001′. ” Bouton de la barre d’activités définit dans le custo.

clear c_aktiv. “=> Bouton accessible

when ‘Z002′.

c_aktiv = ’2′. “=> Bouton grisé, pas encore cliquable

when ‘Z003′.

c_aktiv = ’1′ “=> Bouton déjà traité

endcase.

endif.

Categories: SAP Tags: , , ,