Archive

Archive for October, 2008

SAP – ABAP – BAPI – Mouvement de stock – MIGO

October 15th, 2008 No comments

La BAPI pour réaliser les mouvements de stock est : BAPI_GOODSMVT_CREATE suivi de BAPI_TRANSACTION_COMMIT comme d’hab.

Exemple de transfert mvt 311 :

data : ws_header type  BAPI2017_GM_HEAD_01 ,

         ws_item type   BAPI2017_GM_ITEM_CREATE ,

         wt_item type table of   BAPI2017_GM_ITEM_CREATE,

data : ws_return type  BAPIRET2,

         wt_return type table of BAPIRET2.

data :  wv_doc    type BAPI2017_GM_HEAD_RET-MAT_DOC,
          wv_year   type BAPI2017_GM_HEAD_RET-DOC_YEAR.
 
  

* Entête 

Clear ws_header.
  ws_header-pstng_date       = sy-datum.
  ws_header-doc_date          = sy-datum.
  ws_header-REF_DOC_NO = ’REFERENCE’.
*    Poste
  clear ws_item. refresh wt_item.
  ws_item-material           = wv_matnr.
  ws_item-plant                = wv_werks.
  ws_item-stge_loc           = ’MAG1.
  ws_item-MOVE_STLOC = ’MAG2′.
  ws_item-move_type        = ’311′.
  ws_item-entry_qnt          = wv_quantite.
  ws_item-entry_uom        = wv_unite.
  ws_item-mvt_ind            = ‘ ’.
  append ws_item to wt_item.

  CALL FUNCTION ‘BAPI_GOODSMVT_CREATE’
    EXPORTING
      GOODSMVT_HEADER             = ws_header
      GOODSMVT_CODE                 = ’04′
   IMPORTING
     MATERIALDOCUMENT             = wv_doc
     MATDOCUMENTYEAR             = wv_year
    TABLES
      GOODSMVT_ITEM                  = wt_item
      RETURN                                 = wt_return.

Attention au paramètre GOODSMVT_CODE qui varie suivant le type de mvt.

Categories: SAP Tags: , ,

AVIS QM/CS – Module Fonction pour la clôture des avis

October 10th, 2008 No comments

Vous pouvez utiliser le MF : IQS0_complete_notification pour clôturer un avis que ce soit de service ou qualité.

exemple :

  CALL FUNCTION ‘IQS0_COMPLETE_NOTIFICATION’
         EXPORTING
            I_QMNUM                  = wv_qmnum
            I_POST                        = ‘X’
          EXCEPTIONS
            OTHERS                   = 2.

Categories: SAP Tags: , ,

BAPI – Modification des offres (SD)

October 9th, 2008 No comments

Bonjour,

Pour modifier les offres client (VA22), on peut utiliser la BAPI : BAPI_CUSTOMERQUOTATION_CHANGE

Exemple :

On veut ajouter un motif de refus dans tous les postes d’un offre wv_vbeln.

 DATA : ws_headerx TYPE bapisdh1x,
              wt_return TYPE TABLE OF bapiret2,
              ws_return TYPE bapiret2,
              wt_item TYPE TABLE OF bapisditm,
              ws_item TYPE bapisditm,
              wt_itemx TYPE TABLE OF bapisditmx,
              ws_itemx TYPE bapisditmx.
 DATA : wt_vbap TYPE TABLE OF vbap,
               ws_vbap TYPE vbap.
  

  
 SELECT * INTO TABLE wt_vbap
                    FROM vbap
                    WHERE vbeln  = wv_vbeln.
    IF sy-dbcnt > 0.
      ws_headerx-updateflag = ‘U’.
      LOOP AT wt_vbap INTO ws_vbap.
        CLEAR ws_item.
        CLEAR ws_itemx.
* N° de poste
        MOVE ws_vbap-posnr TO ws_item-itm_number.
        MOVE ws_vbap-posnr TO ws_itemx-itm_number.
        move ws_vbap-matnr to ws_item-material.
        ws_itemx-material = ‘X’.
* Motif de refus
        IF wv_step IS NOT INITIAL.
          ws_item-reason_rej = ‘XX’.
        ELSE.
          ws_item-reason_rej = ‘YY’.
        ENDIF.
        ws_itemx-reason_rej = ‘X’.
        

        APPEND ws_item TO wt_item.
        APPEND ws_itemx TO wt_itemx.
      ENDLOOP.
      CALL FUNCTION ‘BAPI_CUSTOMERQUOTATION_CHANGE’
        EXPORTING
          salesdocument                = wv_vbeln
          quotation_header_inx   = ws_headerx
        TABLES
          return                               = wt_return
          quotation_item_in          = wt_item
          quotation_item_inx        = wt_itemx .

Ne pas oublier BAPI_TRANSACTION_COMMIT

Categories: SAP Tags: , ,