Programme SAP BUPTDTRANSMIT_OLD - OBSOLETE (Previously Distribution of Time-Dependent BP Data)


Report docu does not need to be translated: Exists since ABA 640 &
Report is availalbe for customers for emergency purposes only

Purpose
In Release 6.40, time dependency is partially introduced for the SAPBusiness Partner, in the form of time constraints for bank details(table BUT0BK), business partner roles (BUT100), addresses (BUT020), andcommunication data for address usages (ADR2-13, ADRU), as well as fulltime dependency for address usages (BUT021_FS). For Release 7.0 fulltime-dependency was implemented for central data (BUT000_TD).
This could result in problems when business partner data is exchangedwith other applications or systems, if they do not support timedependency, or cannot process time-dependent data.
Therefore when business partner data is saved, the data records whosevalidity start falls in the future or whose validity is restricted andfalls in the future, are saved in a separate table BUT_TDTRANS. Thusthis data is not distributed to applications that do not support timedependency.
The data records in question may be distributed only when the validityactually begins or ends. Distribution takes place by means of the reportBUPTDTRANSMIT that distributes all entries from table BUT_TDTRANS thatare valid on the current date to applications registered in table TB048.Execute the report daily if possible in order to keep the dataup-to-date.
The table BUT_TDTRANS is filled only if at least one active applicationis registered in the table TB048 when the data is saved. However, it isalways possible to use the program BUPTDTRANSGEN to generate theBUT_TDTRANS entries at a later date.

Integration
The entries in the table BUT_TDTRANS are generated using the reportBUPTDTRANSGEN.

Prerequisites
All applications that want to participate in the distribution oftime-dependent data using the report BUPTDTRANSMIT must registerthemselves in the table TB048 (maintenance view V_TB048) as activeapplications. Function modules are defined here for transferring thedata.
The standard SAP system contains the function module SAP BWBUPA_DEF_ADDRESS_DELTA_QUEUE_B (with active usage) and the functionmodule BUPA_OUTBOUND_TDTRANSMIT (with active usage), for example, forthe outbound processing of the SAP Business Partner.
The relevant module is called by the report BUPTDTRANSMIT as follows:
call function lt_tb048-funcname
TABLES
t_but0bk = lt_but0bk
t_but020 = lt_but020
t_but021_fs = lt_but021_fs
t_but100 = lt_but100
t_adr2 = lt_adr2
.....
t_adr10 = lt_adr10
t_adr13 = lt_adr13
t_adru = lt_adru
EXCEPTIONS
others = 1.
The table parameters must be categorized as follows:
t_but000_td LIKE vbut000_td
t_but0bk LIKE vbut0bk
t_but020 LIKE bbut020
t_but021_fs LIKE vbut021_fs
t_but100,, LIKE vbut100
t_adr* LIKE vadr*

Features
The program BUPTDTRANSMIT can be started for any selection of theapplications listed in table TB048. Initially, all the records that havebecome valid in the meantime are determined from table BUT_TDTRANS andare read subsequently together with the table key of the respectivebusiness partner tables. If the record is not found in the table, thenthis is a case of a deletion operation; meaning that the updateindicator of the table record is filled with 'D'. If the record onlybecomes valid for that date, the indicator 'I' for Insert istransferred. If it is a move that does not coincide with the deletiondate or validity start data, a 'U' is transferred.
The table records determined in this way are transferred to the selectedapplications using the module defined in table TB048.
If a record cannot be processed, the application returns it with theupdate indicator 'E'. If the transfer module triggers an exception thatis marked as containing errors by at least one application, then all therecords are treated as containing errors.
All records that are marked as containing errors by at least oneapplication, are recorded application-specifically in the tableBUT_TDMISS. Only when a record has been distributed successfully to allapplications is it deleted from the table BUT_TDTRANS (and if necessaryalso from BUT_TDMISS).
The date of the last erroneous and the last successful BUPTDTRANSMIT runis recorded subsequently in table BUT_TDAPPLI for each application.