Ansicht
Dokumentation

ISU_SAMPLE_R998 - Event R998: Ermitteln letztes Druck-/SollstellDatum im Vorauszahlungsplan

ISU_SAMPLE_R998 - Event R998: Ermitteln letztes Druck-/SollstellDatum im Vorauszahlungsplan

Addresses (Business Address Services)   TXBHW - Original Tax Base Amount in Local Currency  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Der zum Zeitpunkt R998 gerufene Funktionsbaustein hat die Aufgabe, das Druck-/Solldatum zu ermitteln, mit dem die letzte Fälligkeit eines Vorauszahlungsplans berechnet wird.

Hierzu stehen folgende Daten des Abschlagsplans zur Verfügung:

  • X_OBJ-EABP:,,,,Kopfdaten
  • X_OBJ-T_EABPS:,,Positionsdaten

An das aufrufende Programm zurückgegeben wird:

  • Y_SOLLDAT:,,,,ermitteltes Druck-/Solldatum

Hinweise

Im IS-U Standard wird als Druck-/Solldatum der letzten Fälligkeit, der Endtermin der Abschlagsperiode verwendet. Gleiches gilt auch für den Fall, daß im Kundenfunktionsbaustein ein Initialwert zurückgegeben wird.

Beispiel

Das Druck-/Solldatum der letzten Fälligkeit soll dem gleichen zeitlichen Zyklus folgen wie seine beiden Vorgänger:

function isu_advance_payment_r998.
data: v_duration type i,
v_anz_tag type i,
v_startdate like sy-datum,
v_enddate like sy-datum.
data: wa_eabps like eabps.

*==> Absteigendes Sortieren der Abschläge nach dem Druck-/Solldatum, um
*==> die beiden letzten Termine auszulesen
  sort x_obj-t_eabps by solldat descending.
  loop at x_obj-t_eabps into wa_eabps.
    case sy-tabix.
      when 1.
        v_enddate = wa_eabps-solldat.
      when 2.
        v_startdate = wa_eabps-solldat.
        exit.
    endcase.
  endloop.

*==> Ermitteln des Zeitabstandes
  call function 'DURATION_DETERMINE'
    exporting
      unit       = 'TAG'
    importing
      duration   = v_duration
    changing
      start_date = v_startdate
      end_date   = v_enddate
      end_time   = sy-uzeit
   exceptions
     others      = 1.

  if sy-subrc <> 0.
==> Im Fehlerfall wird das Druck-/Solldatum auf das Endedatum der
==> Abschlagsperiode gesetzt
    y_solldat = x_obj-eabp-endperiode.
  else.

*==> Berechnung des Druck-/Solldatums
    call function 'END_TIME_DETERMINE'
      exporting
        duration   = v_duration
        unit       = 'TAG'
      importing
        end_date   = y_solldat
      changing
        start_date = v_enddate
      exceptions
        others     = 1.

    if sy-subrc <> 0.
==> Im Fehlerfall wird das Druck-/Solldatum auf das Endedatum der
==> Abschlagsperiode gesetzt
      y_solldat = x_obj-eabp-endperiode.
    endif.
  endif.

endfunction.





Parameter

X_OBJ
Y_SOLLDAT

Ausnahmen

Funktionsgruppe

E21U

General Data in Customer Master   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 4277 Date: 20240523 Time: 122850     sap01-206 ( 32 ms )