Hallo Bilo,
ich habe dies wie folgt in unserem System gelöst. Für die Zahlungsavise wird die Mailadresse im Feld
'Internet Sachb.' im Bereich Korrespondenz hinterlegt. Nun brauchst Du jedoch einige ABAP-Kenntnisse.
Mit dem Business Transaction Event (Transaktion FIBF)
00002040 Automatischer Zahlungsverkehr: Ausgabe von Avisen
kannst Du die Versendung des Avis per Mail/Fax steuern. Nachfolgend die Doku dazu:
FU SAMPLE_PROCESS_00002040
____________________________________________________
Funktionalität
Der Baustein dient als reine Schnittstellenbeschreibung und enthält keine Anweisungen. Er ist für Entwickler von Zusatzkomponenten vorgesehen, die zum Zeitpunkt 00002040 (Zahlungsverkehr: Ausgabe von Avisen (Nachrichtenart)) einen eigenen Funktionsbaustein bereit stellen.
Der Funktionsbaustein SAMPLE_PROCESS_00002040 darf nicht verändert werden!
Wenn Sie einen eigenen Baustein erstellen möchten, der am oben genannten Zeitpunkt aufgerufen werden soll, gehen Sie folgendermaßen vor:
1. Kopieren Sie den Baustein in Ihren eigenen Namensraum.
2. Verändern Sie keine Übergabeparameter !!
3. Schreiben Sie Ihre eigenen Anweisungen in den kopierten Funktionsbaustein.
4. Sichern und aktivieren Sie Ihren Baustein.
5. Nehmen Sie die notwendigen Einstellungen im Customizing vor. (Anleitung)
Prozess
Der Prozess erlaubt die Ermittlung des für das Zahlungsavis zu verwendende Ausgabegeräts (Drucker, Fax oder Internet). Ferner ist es möglich, das in der Konfiguration zum Zahlungsprogramm hinterlegte Avisformular zu übersteuern.
Schnittstelle
Aus den übergebenen Regulierungsdaten (I_REGUH) kann ermittelt werden, ob der Geschäftspartner das Zahlungsavis per Brief, per Fax oder per E-Mail erhalten soll. Beispielsweise kann die Faxnummer aus dem Stammsatz des Geschäftspartners (ZTLFX) für diese Entscheidung hinzugezogen werden. Einen Vorschlag für ein mögliches Kundenprogramm finden Sie im Funktionsbaustein SAMPLE_PROCESS_00002040, wobei das Programm individuell anzupassen ist.
Zurückgegeben wird die Nachrichtenart (1 für Druck, 2 für Fax, I für Internet), eventuell das vom Customizing abweichende Formular und die für das Faxen notwendigen Angaben (C_FINAA). Nähere Angaben entnehmen Sie bitte der Struktur FINAA.
Bei Verwendung des Faxdeckblatts (z.B. FI_FAX_COVER_A4) sollten die Adressen des Buchungskreises (Bearbeiten -> Adresse) und des Buchhaltungssachbearbeiters gefüllt sein. Die Adresse des Geschäftspartners wird dem Stammsatz entnommen.
Zusätzlich können Nachrichten (Messages) übergeben werden, die im Protokoll des gerufenen Zahlungsträgerprogramms ausgegeben werden.
Parameter
I_REGUH
C_FINAA
T_FIMSG
Exceptions
Funktionsgruppe
BFFMSMPL
Du must den Baustein SAMPLE_PROCESS_00002040 auf ein Z-Baustein kopieren und entsprechend Coding einfügen. Nachfolgend mein Coding Z_SAMPLE_PROCESS_00002040:
function z_sample_process_00002040.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_REGUH) LIKE REGUH STRUCTURE REGUH
*" TABLES
*" T_FIMSG STRUCTURE FIMSG
*" CHANGING
*" VALUE(C_FINAA) LIKE FINAA STRUCTURE FINAA
*"----------------------------------------------------------------------
*======================================================================*
* Änderungsprotokoll:
*** Funktionsbaustein für das BTE 00002040 (FIBF) zur Versendung
*** des Zahlungsavis per Mail
* Vendor Communication details
types: begin of lx_lfb1,
qland type lfb1-qland,
tlfxs type lfb1-tlfxs,
intad type lfb1-intad,
end of lx_lfb1.
data lv_vendor_comm type lx_lfb1.
* Static company code Range
* STATICS: SRL_BUKRS TYPE RANGE OF LFB1-BUKRS.
* Only avaible for vendor
check not i_reguh-lifnr is initial.
* not for proposal
check i_reguh-xvorl is initial.
* Retrieve data from vendor master
clear lv_vendor_comm.
select single qland tlfxs intad
into lv_vendor_comm
from lfb1
where lifnr = i_reguh-lifnr
and bukrs = i_reguh-zbukr.
check sy-subrc is initial.
* from the vendor communication details, see how output
* has to be send (Email ? Fax ? Normal Print ?)
if lv_vendor_comm-intad is not initial. "Email First
c_finaa-nacha = 'I'.
c_finaa-intad = lv_vendor_comm-intad.
* no Fax send
* ELSEIF lv_vendor_comm-tlfxs IS NOT INITIAL. "Next Fax
* c_finaa-nacha = '2'.
* c_finaa-tdschedule = 'IMM'.
* c_finaa-tdteleland = i_reguh-land1.
* c_finaa-tdtelenum = lv_vendor_comm-tlfxs.
* c_finaa-formc = 'FI_FAX_COVER_A4'.
else. "Else Print out
c_finaa-nacha = '1'.
endif.
endfunction.
Dann must Du dies noch bei dem Part Kundenerweiterung hinzufügen:
00002040 Z_SAMPLE_PROCESS_00002040 AVISMAIL
sowie Kundenprodukte auch:
AVISMAIL Zahlungsavis per Mail
Wenn Du einen Programmierer hast sollte dies nicht so schwer sein. Falls noch Fragen sind, so lasse es mich wissen.
Gruß und angenehmes Wochenende
pushover
SAP ECC60
Anwendungsbetreuer FI/CO