Beispiele für Kundenerweiterung
Ablage aus MailCenter Outlook zur Lieferantenanfrage – Transaktion ME43
Anforderung Kunde: Ist es möglich beim Senden an die Lieferantenanfrage gleichzeitig an die Anfrage und das Angebot zu senden (Transaktionen ME43 und ME48)? Je nach Fortschritt der Anfrage wäre es an der Anfrage oder dem Angebot wünschenswert und da kam die Idee: warum nicht gleichzeitig an beide …
Lösung: BADi /MESERP/OL_MCPOSTDOCUMENT - Methode: /MESERP/OL_IF_MCPOSTDOCUMENT~ARCHIV_POSTED METHOD /meserp/ol_if_mcpostdocument~archiv_posted. * DATA: l_zt604 TYPE t604. * l_zt604-land1 = 'ZZ'. * l_zt604-stawn = 'ZZ1'. * MODIFY t604 FROM l_zt604. *IM_ARCHIV_ID Importing Type TOAV0-ARCHIV_ID Content Repository Identification *IM_ARC_DOC_ID Importing Type TOAV0-ARC_DOC_ID SAP ArchiveLink: Document ID *IM_AR_OBJECT Importing Type TOAOM-AR_OBJECT Document type *IM_OBJECT_ID Importing Type SAPB-SAPOBJID SAP ArchiveLink: Object ID (object identifier) *IM_SAP_OBJECT Importing Type TOAOM-SAP_OBJECT SAP ArchiveLink: Object type of business object *IM_DOC_TYPE Importing Type TOADV-DOC_TYPE SAP ArchiveLink: Document class *IM_DESCR Importing Type /MESERP/OL_D_CHAR60 Description *IM_FILENAME Importing Type CHAR255 Filename *IM_CREATOR Importing Type SYUNAME Creator (user name) *IM_/MESERP/MC_ARCLI Importing Type /MESERP/MC_ARCLI ArchiveLink *IM_/MESERP/MC_SOOIN Importing Type /MESERP/MC_SOOIN mes MC-DB: Protokoll Dokument Senderequest - eingehend " Fragen, wie hängen Anfrage und Angebot zusammen? => immer gleiche Nummer? " Lieferantenanfrage BUS2010 / ME43 " Lieferantenangebot BUS2011 / ME48 DATA: ls_/meserp/mc_sooin TYPE /meserp/mc_sooin. MOVE-CORRESPONDING im_/meserp/mc_sooin TO ls_/meserp/mc_sooin. ls_/meserp/mc_sooin-typeid = 'BUS2011'. " Eintrag Archiv & Journal *************************************************************************** IF im_arc_doc_id IS NOT INITIAL AND im_sap_object = 'BUS2012'. CALL FUNCTION 'ARCHIV_CONNECTION_INSERT' EXPORTING archiv_id = im_archiv_id arc_doc_id = im_arc_doc_id ar_date = sy-datum ar_object = im_ar_object mandant = sy-mandt object_id = ls_/meserp/mc_sooin-instid sap_object = ls_/meserp/mc_sooin-typeid doc_type = im_doc_type filename = im_filename descr = im_descr creator = im_creator EXCEPTIONS error_connectiontable = 1 OTHERS = 2. IF sy-subrc = 0. COMMIT WORK. MODIFY /meserp/mc_sooin FROM ls_/meserp/mc_sooin. "Journaleintrag ENDIF. ENDIF.
ENDMETHOD.
Erweiterung Freigabestrategie Einkauf
Anforderung Kunde: Für Kontrakte mit einer bestimmten Warengruppe (Langfristverträge) benötigen wir eine eigene Freigabestrategie. Wie können wir das umsetzen?
Lösung: CMOD Erweiterung M06E0004 – Veränderungen der Kommunikationstruktur für Freig. Einkbeleg. Mit dieser Erweiterung können Sie die Kommunikationsstruktur zur
Ermittlung der Freigabestrategie für Einkaufsbelege verändern.
*&---------------------------------------------------------------------* *& Include ZXM06U22 *&---------------------------------------------------------------------* DATA: wa_bekpo TYPE LINE OF mmpur_bekpo. e_cekko = i_cekko. CASE i_cekko-bstyp. WHEN 'F'. IF i_cekko-matkl IS INITIAL. "different matkl in items READ TABLE it_bekpo INTO wa_bekpo WITH KEY matkl = '325'. IF sy-subrc = 0. e_cekko-matkl = '325'. ELSE. e_cekko-matkl = '324'. ENDIF. ENDIF. WHEN 'K'. e_cekko-matkl = '325'. "Kontrakte werden analog Warengruppe 325 geprüft, sprich alle werden zunächst gesperrt. WHEN OTHERS. "do nothing ENDCASE.
BCC Empfänger automatisch setzen
Anforderung Kunde: Jede E-Mail soll automatisch an einen internen Mitarbeiter mit BCC gesendet werden.
Lösung: Programmierung MailCenter User-Exit ZMESERP_MC_CUSTOMER_007
IF i_vkorg = '4000'. IF sy-uname = 'USER01' OR sy-uname = 'USER02' OR sy-uname = 'USER03'. " lwa_address-e_mail = 'info@mustermann.com'. i_receiver-mbcc1 = lwa_address-e_mail. ELSE. MOVE sy-uname TO lv_uname. CLEAR lwa_address. CALL FUNCTION 'BAPI_USER_GET_DETAIL' EXPORTING username = lv_uname IMPORTING address = lwa_address TABLES return = i_return. IF lwa_address-e_mail IS NOT INITIAL. i_receiver-mbcc1 = lwa_address-e_mail. ENDIF. ENDIF. ENDIF.
Weitere interessante Links:
SAP IDoc Überblick
SAP automatische Bestellung
SAP-Bestellung freigeben