*&---------------------------------------------------------------------**& Report ZETSFEHL ** erstellt 16.04.2002 ** Coded by Thorsten Neubüser - www.4ap.de**&---------------------------------------------------------------------** Senden von SAP-Express-Meldungen* Dieser Report ist nur für die automatische Verarbeitung vorgesehen* Online-Betrieb nur für Testzwecke*&---------------------------------------------------------------------*REPORT ZETSFEHL.DATA: FUBAU(30) TYPE C. " Kurz-Name des FubausPARAMETERS: P_FUBAU LIKE FUBAU, P_KUNNR LIKE VBAK-KUNNR, " Kundennummer P_VKORG LIKE ZETSLIEFER-VKORG. " VerkaufsorganisationDATA: BEGIN OF FEHLER_TAB OCCURS 0, " Tabelle für Fehlermeldungen LINE LIKE LINE, END OF FEHLER_TAB.* für online / TestbetriebINITIALIZATION. P_FUBAU = 'ZETSFEHL online Test'. P_KUNNR = '123456'. P_VKORG = '0001'. FEHLER_TAB-LINE = 'Test im Online ZETSFEHL'. APPEND FEHLER_TAB.START-OF-SELECTION. PERFORM FEHLER_BEHANDLUNG TABLES FEHLER_TAB USING P_FUBAU P_KUNNR P_VKORG.END-OF-SELECTION. WRITE: / 'Online:'. LOOP AT FEHLER_TAB. WRITE: / FEHLER_TAB-LINE. ENDLOOP.*&---------------------------------------------------------------------**& Form FEHLER_BEHANDLUNG*&---------------------------------------------------------------------** -->fehler_tab Tabelle mit zeilenweise hinterlegtem Inhalt* -->P_FUBAU Aufrufer der Fehlermeldung* -->p_kunnr Kundennummer, steuert die Empfängerauswahl* -->P_VKORG dito*----------------------------------------------------------------------*FORM FEHLER_BEHANDLUNG TABLES FEHLER_TAB LIKE FEHLER_TAB[] USING P_FUBAU P_KUNNR P_VKORG.* fehler_tab ausgeben über Fubau SO_NEW_DOCUMENT_SEND_API1DATA: OBJCONT LIKE SOLISTI1 OCCURS 5 WITH HEADER LINE.DATA: RECLIST LIKE SOMLRECI1 OCCURS 5 WITH HEADER LINE.DATA: DOC_CHNG LIKE SODOCCHGI1.DATA: ENTRIES LIKE SY-TABIX.* Fill the documentDOC_CHNG-OBJ_NAME = 'URGENT'. " DokumentnameCONCATENATE 'Fehlermeldung: '(001) P_FUBAU " Titel der Meldung INTO DOC_CHNG-OBJ_DESCR SEPARATED BY ' : '. " max. 50 CharDOC_CHNG-SENSITIVTY = 'O'. " Sensitivität* Meldungsinhalte schreibenOBJCONT-LINE = 'Meldungsliste:'(002).APPEND OBJCONT.LOOP AT FEHLER_TAB. MOVE FEHLER_TAB-LINE TO OBJCONT-LINE. APPEND OBJCONT.ENDLOOP. " at fehler_tabAPPEND INITIAL LINE TO OBJCONT.* Dokumentenlänge ermittelnDESCRIBE TABLE OBJCONT LINES ENTRIES.READ TABLE OBJCONT INDEX ENTRIES.DOC_CHNG-DOC_SIZE = ( ENTRIES - 1 ) * 255 + STRLEN( OBJCONT ).* Fill the receiver list TABLES: ZETS0009. " hinterlegte Empfänger SELECT * FROM ZETS0009 WHERE KUNNR EQ P_KUNNR AND VKORG EQ P_VKORG AND MEDIUM EQ 'TEST'. CHECK ZETS0009-GESPERRT IS INITIAL.* Empfänger in Tabelle RECEIVERS schreiben RECLIST-REC_TYPE = ZETS0009-REC_TYPE. " Typ SAP-Benutzername RECLIST-RECEIVER = ZETS0009-UNAME. " Username RECLIST-EXPRESS = ZETS0009-EXPRESS. " Send express SAPmail APPEND RECLIST. ENDSELECT. " from zets0009* Falls keine Einträge vorhanden sind IF RECLIST[] IS INITIAL. RECLIST-REC_TYPE = 'B'. " Typ SAP-Benutzername RECLIST-RECEIVER = 'SAPADMIN'. " Administrator als default RECLIST-EXPRESS = 'X'. " Send express SAPmail APPEND RECLIST. ENDIF.* Send the documentCALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1' EXPORTING DOCUMENT_DATA = DOC_CHNG DOCUMENT_TYPE = 'RAW' PUT_IN_OUTBOX = 'X'* IMPORTING* SENT_TO_ALL =* NEW_OBJECT_ID = TABLES* OBJECT_HEADER = OBJECT_CONTENT = OBJCONT* OBJECT_PARA =* OBJECT_PARB = RECEIVERS = RECLIST EXCEPTIONS TOO_MANY_RECEIVERS = 1 DOCUMENT_NOT_SENT = 2 DOCUMENT_TYPE_NOT_EXIST = 3 OPERATION_NO_AUTHORIZATION = 4 PARAMETER_ERROR = 5 X_ERROR = 6 ENQUEUE_ERROR = 7 OTHERS = 8.CASE SY-SUBRC. WHEN 0. LOOP AT RECLIST. IF RECLIST-RETRN_CODE = 0. WRITE: / RECLIST-RECEIVER, ': Senden erfolgreich'. ELSE. WRITE: / RECLIST-RECEIVER, ': Senden nicht erfolgreich'. ENDIF. ENDLOOP. WHEN 1. WRITE: / 'Es wurden zu viele Empfänger angegeben !'. WHEN 2. WRITE: / 'Das Dokument wurde von keinem Empfänger erhalten !'. WHEN 4. WRITE: / 'Keine Berechtigung zum Senden !'. WHEN OTHERS. WRITE: / 'Unerwarteter Fehler aufgetreten !'.ENDCASE. " sy-subrcENDFORM. " FEHLER_BEHANDLUNG
Wenn Sie uns hier eine Nachricht hinterlassen, nehmen wir schnellstmöglich Kontakt zu Ihnen auf.
Firma
Name
Telefon
E-Mail
Betreff
Nachricht