Ansicht
Dokumentation

SOLMAN_CM_REL_NUMBER - BAdI: Release-Nummer definieren

SOLMAN_CM_REL_NUMBER - BAdI: Release-Nummer definieren

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   Vendor Master (General Section)  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Mit dem Business Add-In (BAdI) AIC_RELEASE_NUMBERING_BADI können Sie ein eigenes Muster für Release-Nummern definieren.

Sie benötigen zur Ausführung dieser Aktivität eine Entwicklungsberechtigung. Als Konfigurationsbenutzer können Sie dem Link zum BAdI AIC_RELEASE_NUMBERING_BADI nicht folgen.

Das Standardmuster lautet wie folgt:

<Major-Release-Nummer>.<Minor-Release-Nummer>.<Notfall-Release-Nummer>

Standardmäßig beginnt das Nummerierungsmuster mit 1.0.0 und erhöht sich mit jedem neuen Release um 1. Wenn die aktuelle Release-Nummer z.B. 1.3.0 lautet, heißt das nächste Minor-Release 1.4.0 und das nächste Major-Release 2.0.0.

In einigen Kontexten werden nur die ersten zwei Ziffern angezeigt (Kurzform der Release-Nummer), z.B. 1.3.

Erstellen Sie mithilfe der folgenden Parameter Ihre eigene BAdI-Implementierung:

  • IV_RELEASE_COMPONENT – Import – GUID der Change-Control-Landschaft

  • IV_RELEASE_TYPE – Import – Release-Typ

  • EV_RELEASE_NUMBER – Export – generierte Release-Nummer

Standardmäßig werden Release-Nummern wie folgt generiert:

* Aktuelle Release-Nummern lesen

SELECT * FROM aic_release_cycl INTO TABLE lt_release_cycle

WHERE release_component = iv_release_component

AND ( release_type = /tmwflow/cl_constants=>con_cycle_ty-major_rel

OR release_type = /tmwflow/cl_constants=>con_cycle_ty-minor_rel

OR release_type = /tmwflow/cl_constants=>con_cycle_ty-emergncy_rel ).

IF lt_release_cycle IS INITIAL.

* Erster Eintrag

CASE iv_release_type.

WHEN /tmwflow/cl_constants=>con_cycle_ty-major_rel. " major release

ev_release_number = '1.0.0'.

WHEN /tmwflow/cl_constants=>con_cycle_ty-minor_rel. " minor release

ev_release_number = '0.1.0'.

WHEN /tmwflow/cl_constants=>con_cycle_ty-emergncy_rel. " emergency release

ev_release_number = '0.0.1'.

ENDCASE.

ELSE.

* Weitere Einträge vorhanden.

IF iv_release_number IS INITIAL.

SORT lt_release_cycle BY golive_date DESCENDING.

READ TABLE lt_release_cycle INTO DATA(ls_release_cycle) INDEX 1.

lv_release_number = ls_release_cycle-release_number.

* SORT lt_release_no DESCENDING.

* READ TABLE lt_release_no INDEX 1 INTO lv_release_number.

ELSE.

lv_release_number = iv_release_number.

ENDIF.

SPLIT lv_release_number AT '.' INTO lv_major lv_minor lv_emergency IN CHARACTER MODE.

CASE iv_release_type.

WHEN /tmwflow/cl_constants=>con_cycle_ty-major_rel. " major release

lv_major = lv_major + 1.

lv_minor = 0.

lv_emergency = 0.

WHEN /tmwflow/cl_constants=>con_cycle_ty-minor_rel. " minor release

lv_minor = lv_minor + 1.

lv_emergency = 0.

WHEN /tmwflow/cl_constants=>con_cycle_ty-emergncy_rel. " emergency release

lv_emergency = lv_emergency + 1.

ENDCASE.

* Zeichenfolge für Ausgabe formatieren

MOVE lv_major TO lv_major_str.

SHIFT lv_major_str LEFT DELETING LEADING '0'.

IF lv_major_str IS INITIAL. lv_major_str = '0'. ENDIF.

MOVE lv_minor TO lv_minor_str.

SHIFT lv_minor_str LEFT DELETING LEADING '0'.

IF lv_minor_str IS INITIAL. lv_minor_str = '0'. ENDIF.

MOVE lv_emergency TO lv_emergency_str.

SHIFT lv_emergency_str LEFT DELETING LEADING '0'.

IF lv_emergency_str IS INITIAL. lv_emergency_str = '0'. ENDIF.

CONCATENATE lv_major_str lv_minor_str lv_emergency_str INTO ev_release_number SEPARATED BY '.'.

CONDENSE ev_release_number NO-GAPS.

ENDIF.






ROGBILLS - Synchronize billing plans   rdisp/max_wprun_time - Maximum work process run time  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 5143 Date: 20240604 Time: 022556     sap01-206 ( 29 ms )