28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any, type any. "Die...

40
28. August 2010 1 FIVE1 GmbH & Co. KG Essence of quality FIVE1 GmbH & Co. KG | SAP Partner Port | Altrottstraße 31 | 69190 Walldorf | T: +49 6227 73 2840 | www.five1.de

Transcript of 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any, type any. "Die...

Page 1: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

28. August 2010

1 FIVE1 GmbH & Co. KG Essence of qualityFIVE1 GmbH & Co. KG | SAP Partner Port | Altrottstraße 31 | 69190 Walldorf | T: +49 6227 73 2840 | www.five1.de

Page 2: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Stammdatenplanung mit SAP BW IPAm Beispiel eines Planungsfunktionstyps zur Attributsänderung beliebiger Merkmale

Dieses Dokument

2 FIVE1 GmbH & Co. KG Essence of quality

Merkmale

Version 1.0

Zuletzt geändert am 28.08.2010

Verröffentlicht am 29.08.2010

Page 3: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Szenario

In einem Unternehmen wird ein rollierender Projekt-Forecast auf Basis SAP Business Warehouse eingesetzt.

Der Vertrieb initiiert die Planung. Er trifft Annahmen über mögliche Projekte und deren Eintrittswahrscheinlichkeit.

Aus geplanten Projekten sollen bei Beauftragung tatsächliche Projekte werden.

Ein zuständiger Projektleiter wird dem Projekt zugeordnet.

3 FIVE1 GmbH & Co. KG Essence of quality

Ein zuständiger Projektleiter wird dem Projekt zugeordnet.

Beauftragte Projekte werden im Projekt-Forecast nicht mehr angezeigt.

Der Projektleiter bekommt eine Übersicht seiner Projekte mit den zugehörigen Umsätzen angezeigt.

Page 4: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Software

SAP Business Warehouse ab Version 7.0

SAP Business Explorer ab Version 7.0

Umsetzung

Ausreichende Berechtigungen für Infoobjektpflege, integrierte Planung, BEx Web Application Designer, ABAP Workbench

Know-How

Voraussetzungen

4 FIVE1 GmbH & Co. KG Essence of quality

Know-How

Grundkenntnisse im SAP BW 7.0

Grundkenntnisse BEx Query Designer, eingabebereite Queries

Fortgeschrittene Kenntnisse mit dem BEx Web Application Designer

Fortgeschrittene Kenntnisse der SAP BW Integrierten Planung

Fortgeschrittene Kenntnisse in ABAP

Page 5: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Das Merkmal „Projekt“ wird durch ein Attribut als „planungsrelevant“ oder „nicht planungsrelevant“ gekennzeichnet. Projekt wird zusätzlich um das Attribut Projektleiter angereichert.

In einem Webtemplate soll durch Markieren eines Projektes (einer Zeile der angezeigten Tabelle) und einen Klick auf einen entsprechenden Button ein Attributänderung durchgeführt werden.

Die Änderung des Attributes kann unter Verwendung der integrierten Planung im SAP Business Warehouse erfolgen.

Technische Umsetzung

5 FIVE1 GmbH & Co. KG Essence of quality

SAP Business Warehouse erfolgen.

Die Information welches Projekt selektiert wurde ist eine Standardfunktionalität im Web Application Designer. Die Änderung des Attributes kann über eine Planungsfunktion realisiert werden.

Die Planungsfunktion zur Änderung von Attributen muss einmalig als Planungsfunktionstyp implementiert werden. Im Folgenden finden Sie eine Schritt für Schritt Anleitung dazu.

Page 6: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Beispielanwendung

Aufbau des Szenarios im Web Application Designer

Integration der Planungsfunktion

Schritt für Schritt Anleitung zum Anlegen des notwendigen Planungsfunktionstyps

Inhalt

6 FIVE1 GmbH & Co. KG Essence of quality

Anhang

Page 7: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Vertriebssicht

7 FIVE1 GmbH & Co. KG Essence of quality

Die Vertriebssicht zeigt Projekte und bietet eine einfache Möglichkeit künftige Umsätze zu planen.

Sobald ein Projektleiter einem Projekt zugeordnet wird ist es auch für den Projektleiter sichtbar.

Page 8: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Projektleiter wählen

8 FIVE1 GmbH & Co. KG Essence of quality

Projekt 1 wurde durch einen Klick auf die Zeile selektiert. Die Zeile ist nun farblich hervorgehoben.

Es erscheint eine Dropdownbox in der der Projektleiter gewählt werden kann

Durch einen Mausklick auf Projektleiter ändern wird die Planungsfunktion aufgerufen, das Attribut Projektleiter gesetzt. Das Projekt ist nun auch für den Projektleiter sichtbar.

Page 9: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

In der Projektleitersicht erhält der Projektleiter eine Übersicht der ihm zugeordneten Projekte

Wird ein Projekt selektiert können Detailinformationen erfasst werden

Die Freigabe eines Projektes zur Pflege durch die Mitarbeiter erfolgt wieder mit der Planungsfunktion zur Attributsänderung.

Abgeschlossene Projekte werden aus der Planungsansicht wieder entfernt.

Projektleitersicht

9 FIVE1 GmbH & Co. KG Essence of quality

Page 10: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Beispielanwendung

Schritt für Schritt Anleitung zum Anlegen des Planungsfunktionstyps

Anlegen der Planungsfunktion

Aufbau des Szenarios im Web Application Designer

Inhalt

10 FIVE1 GmbH & Co. KG Essence of quality

Integration der Planungsfunktion

Anhang

Page 11: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Infoobjektpflege

Wechseln Sie in dieAdministratorWorkbench (se80) undlegen Sie ein InfoobjektWGHRIOBJ an.

Dieses Infoobjekt dient später als „technische Hülle“ für die Angabe

11 FIVE1 GmbH & Co. KG Essence of quality

Hülle“ für die Angabe welches Attribut zu welchem zugehörigen Merkmal verändert werden soll.

Page 12: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Infoobjektpflege

Legen Sie das Merkmalohne Stammdaten undohne Texte an!

12 FIVE1 GmbH & Co. KG Essence of quality

Page 13: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Nachrichtenklasse

Legen Sie eine Nachrichtenklasse YWGHR_MESSAGES_001 an.

13 FIVE1 GmbH & Co. KG Essence of quality

Page 14: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Nachrichtenklasse

14 FIVE1 GmbH & Co. KG Essence of quality

Tragen Sie die Nachrichten nummern und –texte wie oben zu sehen ein.

Page 15: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Klasse als Implementierung des Planungsfunktionstyps

Legen Sie die Klasse YWGHR_CLASS_MDATA an. Die Klasse ist final und public.

15 FIVE1 GmbH & Co. KG Essence of quality

Page 16: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Klasseninterfaces

16 FIVE1 GmbH & Co. KG Essence of quality

Für den verwendeten Planungsfunktionstyp müssen die Interfaces

IF_RSPLFA_SRVTYPE_IMP_CHECK und IF_RSPLFA_SRVTYPE_IMP_EXEC

implementiert werden.

Page 17: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Klassen-Attribute

17 FIVE1 GmbH & Co. KG Essence of quality

Legen Sie die Klassen-Attribute wie oben zu sehen an.

Page 18: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Methode INIT_EXECUTION

18 FIVE1 GmbH & Co. KG Essence of quality

Die Importparameter werden in Klassen-Attributen zur Verwendung in der FINISH_EXECUTION Methode gespeichert. Die Importparameter werden vom System vorgegeben.

Page 19: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Methode Execute

19 FIVE1 GmbH & Co. KG Essence of quality

Die Importparameter i_r_param_set werden in dem Attribut P_R_PARAM_SET zur Verwendung in der FINISH_EXECUTEIN Methode gespeichert. Die Importparameter werden vom System vorgegeben.

Page 20: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Methode FINISH_EXECUTION

Die Implementierung der Methode „FINISH_EXECUTION“ finden Sie im Anhang. Der Importparameter I_R_MSG wird vom System vorgegeben.

20 FIVE1 GmbH & Co. KG Essence of quality

Page 21: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Planungsfunktionstyp anlegen

Wechseln Sie in die Transaktion rsplanund wählen Sie dort die Funktionstypenpflege.

21 FIVE1 GmbH & Co. KG Essence of quality

Page 22: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Planungsfunktionstyp anlegen

Tragen Sie die Klasse ein in der die Implementierung der Funktionalität erfolgt.

Die Implementierung erfolgt ohne Referenzdaten, ohne Blockbildung und ohne die Verarbeitung von Nullsätzen.

22 FIVE1 GmbH & Co. KG Essence of quality

Page 23: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Planungsfunktionstyp anlegen

Wechseln Sie zur Schaltfläche Parameter und legen Sie zwei elementare Parameter „Merkmal“ und „Attribut“ an.

Funktionstyp sichern und aktivieren

Beide Parameter referenzieren das Infoobjekt WGHRIOBJ.

23 FIVE1 GmbH & Co. KG Essence of quality

WGHRIOBJ.

Page 24: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Beispielanwendung

Schritt für Schritt Anleitung zum Anlegen des Planungsfunktionstyps

Anlegen der Planungsfunktion

Aufbau des Szenarios im Web Application Designer

Inhalt

24 FIVE1 GmbH & Co. KG Essence of quality

Integration der Planungsfunktion

Anhang

Page 25: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Mit Hilfe der Transaktion rsplan den Planning Modeler öffnen

Planungsfunktion anlegen

25 FIVE1 GmbH & Co. KG Essence of quality

Mit Hilfe der Transaktion rsplan den Planning Modeler öffnen

Eine Planungsfunktion vom Typ „Stammdatenattribut ändern“ anlegen

Page 26: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Planungsfunktion anlegen

26 FIVE1 GmbH & Co. KG Essence of quality

Das Merkmal zu welchem das Attribut geändert werden soll als Merkmal eintragen. Im Beispiel ist dass 0COORDER (Name des Infoobjektes)

Der technische Name des Attributs welches geändert werden soll als Attribut eintragen.

Page 27: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Beispielanwendung

Schritt für Schritt Anleitung zum Anlegen des Planungsfunktionstyps

Anlegen der Planungsfunktion

Aufbau des Szenarios im Web Application Designer

Inhalt

27 FIVE1 GmbH & Co. KG Essence of quality

Integration der Planungsfunktion

Anhang

Page 28: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Aufbau des Webtemplates

28 FIVE1 GmbH & Co. KG Essence of quality

Das Webtemplate zur Vertriebssicht besteht im Wesentlichen aus einem Analysis Item (der Query) und dem Dropdown-Item zum Ändern des Projektleiters.

Die Zeilenauswahl kann im Eigenschaftenmenü unter Verhalten eingestellt werden

Die hinterlegten Befehler sorgen für das Ein- und Ausblenden der Dropdownbox

Page 29: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Dropdownbox

29 FIVE1 GmbH & Co. KG Essence of quality

Die Dropdownbox wird über eine Query als Dataprovider (hier DP3) mit Daten versorgt.

Page 30: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Beispielanwendung

Schritt für Schritt Anleitung zum Anlegen des Planungsfunktionstyps

Anlegen der Planungsfunktion

Aufbau des Szenarios im Web Application Designer

Inhalt

30 FIVE1 GmbH & Co. KG Essence of quality

Integration der Planungsfunktion

Anhang

Page 31: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Planungsfunktion einbinden

31 FIVE1 GmbH & Co. KG Essence of quality

Die Button Group wird mit der Planungsfunktion im Eigenschaftenfenster verknüpft.

Klicken Sie dazu auf die Schaltfläche neben „Drucktaste“.

Durch einen Klick auf die Schaltfläche Befehl wird der Befehls-Wizard aufgerufen.

Page 32: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Die Selektionsbindung erfolgt durch die Merkmale 0COORDER und 0COORDER__0EMPLOYEE

Als Planungsfunktion wird der technische Name der zuvor angelegten Planungsfunktion eingetragen

Selektion der Planungsfunktion

32 FIVE1 GmbH & Co. KG Essence of quality

Page 33: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Die Bindung des Merkmals erfolgt über das Web-Item, also für 0COORDER über die selektierte Zeile in der angezeigten Query.

Datenbindung zur Planungsfunktion

33 FIVE1 GmbH & Co. KG Essence of quality

Die Bindung des Attributs kann über den gewählten Wert der Dropdownbox erfolgen.

Page 34: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Beispielanwendung

Schritt für Schritt Anleitung zum Anlegen des Planungsfunktionstyps

Anlegen der Planungsfunktion

Aufbau des Szenarios im Web Application Designer

Inhalt

34 FIVE1 GmbH & Co. KG Essence of quality

Integration der Planungsfunktion

Anhang

Page 35: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Anhang

*************************************************************************** Author: Sven Zech, FIVE1 GmbH & Co. KG***** Version: 1.0***** Date: 22.06.2009******************************************************************************** Ändert ein Attribut gemäß dem übergebenen Filterwert aus***** dem Aufruf der Planungsfunktion**********************************************************************

TYPE-POOLS: rsarc, rssm, rsdm, rsdds.

DATA: l_iobjnm type rsdiobjnm,l_attr type rsdiobjnm,l_attr_comb type rsdiobjnm,l_iobj_found type rs_bool,l_attr_found type rs_bool,

DATA: l_param_elem type ref to IF_RSPLFA_PARAM_ELEM,l_ptabelle type RSCHNTAB,l_t_data type ref to data.

FIELD-SYMBOLS: <l_t_fields> type ANY TABLE,<l_s_fields> type any,<l_field> type any.

"Die Parameter die für die Planungsfunktion in rsplan hinterlegt wurden einlesen"Lesen welches Merkmal eingestellt wurdeCALL METHOD P_R_PARAM_SET->GET_PARAM_ELEMEXPORTINGI_PARAM_NAME = 'MERKMAL'

RECEIVINGR_R_PARAM_ELEM = l_param_elem.

call METHOD l_param_elem->get_value

35 FIVE1 GmbH & Co. KG Essence of quality

l_attr_found type rs_bool,l_attr_comp_found type rs_bool,l_attr_filter_value type RSCHAVL,l_iobj_filter_value type RSCHAVL,l_chanm type RSD_CHANM,l_s_minfo TYPE rssm_s_minfo,l_t_idocstate TYPE rsarr_t_idocstate,l_message_text type string,l_s_data_charsel like line of p_t_data_charsel,l_subrc TYPE sy-subrc,l_where TYPE string,l_iobj_fieldnm TYPE RSD_FIELDNM,l_t_viobj type RSD_T_VIOBJ,l_s_viobj like LINE OF l_t_viobj,l_attr_fieldnm TYPE RSD_FIELDNM.

call METHOD l_param_elem->get_valueIMPORTINGe_value = l_iobjnm.

"Typkonvertierungl_chanm = l_iobjnm.

"Lesen welches Attribut eingestellt wurdeCALL METHOD P_R_PARAM_SET->GET_PARAM_ELEMEXPORTINGI_PARAM_NAME = 'ATTRIBUT'

RECEIVINGR_R_PARAM_ELEM = l_param_elem.

call METHOD l_param_elem->get_valueIMPORTINGe_value = l_attr.

Page 36: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

"P-Tabelle des Merkmals lesenCALL FUNCTION 'RSD_CHKTAB_GET_FOR_CHA_BAS'EXPORTINGI_CHABASNM = l_chanm

IMPORTINGE_CHNTAB = l_ptabelle

EXCEPTIONSNAME_ERROR = 1OTHERS = 2.

"Attribute des Merkmals lesenCALL FUNCTION 'RSD_ATR_GET'EXPORTINGI_CHABASNM = l_chanm

IMPORTINGE_T_VIOBJ = l_t_viobj

Anhang

if l_attr_comb is not INITIAL.

l_iobj_found = rs_c_false.l_attr_found = rs_c_false.l_attr_comp_found = rs_c_false.

loop at p_t_data_charsel into l_s_data_charsel where IOBJNM =l_iobjnm or IOBJNM = l_attr_comb or iobjnm = l_attr.case l_s_data_charsel-iobjnm.when l_iobjnm.l_iobj_filter_value = l_s_data_charsel-low."Übergebener Filterwert aus Planungsfunktion (Merkmalswert)l_iobj_found = rs_c_true.

when l_attr_comb or l_attr.if l_attr_comp_found = rs_c_false.l_attr_filter_value = l_s_data_charsel-low."Übergebener Filterwert aus Planungsfunktion (Attributswert)

36 FIVE1 GmbH & Co. KG Essence of quality

E_T_VIOBJ = l_t_viobjEXCEPTIONSATR_NOT_FOUND = 1ILLEGAL_INPUT = 2OTHERS = 3.

IF SY-SUBRC <> 0.MESSAGE e003(ywghr_messages_001) with l_attr.

else.

"Im folgenden Prüfen ob das Attribut in der Stammdatentabelle

"gefunden werden kannclear l_attr_comb.loop at l_t_viobj into l_s_viobj where iobjnm = l_attr.l_attr_fieldnm = l_s_viobj-fieldnm.CONCATENATE l_iobjnm '__' l_attr into l_attr_comb.

endloop.

"Übergebener Filterwert aus Planungsfunktion (Attributswert)l_attr_found = rs_c_true.if l_s_data_charsel-iobjnm = l_attr_comb.l_attr_comp_found = rs_c_true.

endif.endif.

ENDCASE.endloop.

"Wird das eingestellte Attribut, bzw. das Merkmal selbst nicht gefunden"Fehlermeldung ausgeben!if l_attr_found = rs_c_false.MESSAGE e003(ywghr_messages_001) with l_attr.

ELSEIF l_iobj_found = rs_c_false.MESSAGE e002(ywghr_messages_001) with l_iobjnm.

Page 37: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Anhang

else.CALL FUNCTION 'RSD_FIELDINFO_GET_FOR_IOBJ'EXPORTINGI_IOBJNM = l_iobjnm

IMPORTINGE_FIELDNM = l_iobj_fieldnm

EXCEPTIONSNAME_ERROR = 1IOBJ_NOT_FOUND = 2OTHERS = 3.

"Dynamische where-Bedingungen aufbauenCONCATENATE l_iobj_fieldnm '=' '''' into l_whereSEPARATED BY space.CONCATENATE l_where l_iobj_filter_value '''' into l_where.

create data l_t_data type TABLE OF (l_ptabelle).

if sy-subrc = 0.DO 5 TIMES. "Im Falle einer Sperre -> bis zu 5 mal wiederholen"Update attribute YASTATUS of YSTSINDCALL METHOD cl_rsdmd_update_master_data=>update_attribut

es_staticEXPORTINGi_iobjnm = l_iobjnmi_t_data = <l_t_fields>i_s_minfo = l_s_minfoi_monitoring = ' '

IMPORTINGe_subrc = l_subrc

CHANGINGc_t_idocstate = l_t_idocstate

EXCEPTIONSiobj_not_found = 1generate_program_error = 2

37 FIVE1 GmbH & Co. KG Essence of quality

create data l_t_data type TABLE OF (l_ptabelle).assign l_t_data->* to <l_t_fields>.if sy-subrc <> 0.MESSAGE e000(ywghr_messages_001) with 'Fehler.'.RETURN.

endif.select * into table <l_t_fields> from (l_ptabelle)where (l_where).

loop at <l_t_fields> ASSIGNING <l_s_fields>.ASSIGN COMPONENT l_attr_fieldnm of structure <l_s_fields>to <l_field>.if sy-subrc <> 0.MESSAGE e004(ywghr_messages_001) with l_attr_fieldnm.exit.

endif.<l_field> = l_attr_filter_value.

ENDLOOP.

generate_program_error = 2OTHERS = 3.

if l_subrc = 0 and ( sy-subrc <> 0 or l_t_idocstate is not INITIAL ).if sy-subrc = 0.l_subrc = 4.

else.l_subrc = sy-subrc.

endif.endif.IF l_subrc <> 0.WAIT UP TO 3 SECONDS.

ELSE.EXIT.

ENDIF.ENDDO.

Page 38: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Anhang

CASE l_subrc.WHEN 0.WHEN 1.l_message_text ='Error: Could update the status attribute: InfoObject not found!'.message e000(ywghr_messages_001) with l_message_text.return.

WHEN 2.l_message_text = 'Error: Could update the status attribute: Erro

r when generating master data routines!'.message e000(ywghr_messages_001) with l_message_text.return.

WHEN 4.l_message_text = 'Error: Invalid data in infoobject YSTSIND: c

heck records of table rsarr_t_idocstate'.

*************************************************************************** Activate master data**************************************************************************

CALL FUNCTION 'RSDDS_ATTRIBUTES_ACTIVATE'EXPORTINGi_chabasnm = l_chanm

EXCEPTIONSattr_in_aggr = 1inherited_error = 2OTHERS = 3.

CASE sy-subrc.WHEN 1."Error handling attr_in_aggr

38 FIVE1 GmbH & Co. KG Essence of quality

heck records of table rsarr_t_idocstate'.message e000(ywghr_messages_001) with l_message_text.return.

WHEN OTHERS.l_message_text = 'Error: Could update the status attribute: OT

HERS!'.message e000(ywghr_messages_001) with l_message_text.return.

ENDCASE.

"Error handling attr_in_aggrWHEN 2."Error handling inherited_error

WHEN 3."Error handling others

ENDCASE.

commit work.

endif.endif.

endif.endif.

endmethod.

Page 39: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

FIVE1 Kontakt

39 FIVE1 GmbH & Co. KG Essence of quality

FIVE1 GmbH & CO. KGAltrottstraße 31D-69190 Walldorf

T: +49 6227 73 28 40E: [email protected]

FIVE1 GmbH & CO. KGAltrottstraße 31D-69190 Walldorf

T: +49 6227 73 28 40E: [email protected]

Sven ZechSolution ArchitectSven ZechSolution Architect

FIVE1 GmbH & CO. KGAltrottstraße 31D-69190 Walldorf

T: +49 6227 73 28 40E: [email protected]

Sven ZechSolution Architect

Page 40: 28. August 2010 - FIVE1blog.five1.de/wp-content/uploads/2010/08/... type any,  type any. "Die Parameter die für die Planungsfunktion in rsplan hinterlegt

Alle Rechte vorbehalten Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auchimmer, ohne die ausdrückliche schriftliche Genehmigung durch die FIVE1 GmbH Co. KG nicht gestattet. Die in dieser Publikationenthaltenen Informationen können ohne vorherige Ankündigung geändert werden.

SAP, SAP ERP, R/3, SAP BI, SAP NetWeaver, Business ByDesign, Business All-in-One und weitere im Text erwähnte SAP-Produkte und-Dienstleistungen sowie die entsprechenden Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland undanderen Ländern weltweit. Alle anderen Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen. DieAngaben im Text sind unverbindlich und dienen lediglich zu Informationszwecken. Produkte können länderspezifischeUnterschiede aufweisen.

Die in dieser Publikation enthaltene Information ist Eigentum der FIVE1 GmbH Co. KG. Weitergabe und Vervielfältigung dieserPublikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, nur mit ausdrücklicher schriftlicherGenehmigung durch die FIVE1 GmbH Co. KG gestattet.

Bei dieser Publikation handelt es sich um eine vorläufige Version, die nicht Ihrem gültigen Lizenzvertrag oder anderenVereinbarungen mit der FIVE1 GmbH Co. KG unterliegt. Diese Publikation enthält nur vorgesehene Strategien, Entwicklungen undFunktionen. FIVE1 GmbH Co. KG entsteht aus dieser Publikation keine Verpflichtung zu einer bestimmten Geschäfts- oderProduktstrategie und/oder bestimmten Entwicklungen. Diese Publikation kann von der FIVE1 GmbH Co. KG jederzeit ohne

Copyright 2010 FIVE1 GmbH & Co. KG

40 FIVE1 GmbH & Co. KG Essence of quality

Produktstrategie und/oder bestimmten Entwicklungen. Diese Publikation kann von der FIVE1 GmbH Co. KG jederzeit ohnevorherige Ankündigung geändert werden.

Die von FIVE1 GmbH Co. KG, deren Vertriebs- oder Tochterfirmen angebotenen Softwareprodukte könnenSoftwarekomponenten auch anderer Softwarehersteller enthalten.

Die FIVE1 GmbH Co. KG übernimmt keine Haftung für Fehler oder Auslassungen in dieser Publikation. Des Weiteren übernimmt dieFIVE1 GmbH Co. KG keine Garantie für die Exaktheit oder Vollständigkeit der Informationen, Texte, Grafiken, Links und sonstigenin dieser Publikation enthaltenen Elementen. Diese Publikation wird ohne jegliche Gewähr, weder ausdrücklich nochstillschweigend, bereitgestellt. Dies gilt, aber nicht ausschließlich, hinsichtlich der Gewährleistung der Marktgängigkeit und derEignung für einen bestimmten Zweck sowie für die Gewährleistung der Nichtverletzung geltenden Rechts.

Die FIVE1 GmbH Co. KG haftet nicht für entstandene Schäden. Dies gilt u. a. und uneingeschränkt für konkrete, besondere undmittelbare Schäden oder Folgeschäden, die aus der Nutzung dieser Materialien entstehen können. Diese Einschränkung gilt nichtbei Vorsatz oder grober Fahrlässigkeit.

Die gesetzliche Haftung bei Personenschäden oder Produkthaftung bleibt unberührt. Die Informationen, auf die Siemöglicherweise über die in diesem Material enthaltenen Hotlinks zugreifen, unterliegen nicht dem Einfluss der FIVE1 GmbH Co.KG. FIVE1 GmbH Co. KG unterstützt nicht die Nutzung von Internetseiten Dritter durch Sie und gibt keinerlei Gewährleistungenoder Zusagen über Internetseiten Dritter ab.

Bildquellen, Copyright: FIVE1 GmbH Co. KG