ich habe folgende kurze Frage und hoffe auf schnelle und kurze Antwort.
Ich muss für einen PS Statusbericht Kosten, welche auf PSP-Elemente gelaufen sind in Excel darstellen. Dafür muss ich alle untergeordnete und PSP-Elemente selektieren.
Jetzt die Frage:
Gibt es eine andere Lösung, diese unterge. PSP's zu selektieren, als sich diese mühseelig aus der Tabelle PRHI zusammen zu suchen???
ich habe vor einiger Zeit das gleiche gebraucht.
Das einzige brauchbare, das ich gefunden habe, war der FuBa PLM_GET_SUBORDINATE_PS_OBJECTS, der untergeordnete Elemente liest.
Er liest aber nur eine Stufe nach unten.
Ich hab mir dann eine Schleife gemacht, die die untergeordneten Elemente liest, diese in eine interne Tabelle schreibt, um alle Elemente zu sammeln. Dann wird der FuBa für alle untergeordneten Elemente aufgerufen (in der Schleife), um in der Hierarchie immer weiter nach unten zu kommen.
Du brauchst halt 3 interne Tabellen:
1) speichert immer die aktuellen PSP-Elemente
2) speichert die untergeordneten PSP-Elemente
3) sammelt alle ermittelten PSP-Elemente
danke für deine Antwort. Genau wie du es gesagt hast, hatte ich es jetzt auch realisiert. Nur ich habe es in einer Schleife mit zwei internen Tabellen geschafft.
Habe diese Realisierung jetzt in einen eigenen Funktionsbaustein integriert. Dieser liest jetzt alle untergeordneten PSPs.
FUNCTION zsubordinate_psp.
*"----------------------------------------------------------------------
*"*"Globale Schnittstelle:
*" IMPORTING
*" REFERENCE(IPSPNR) TYPE PRPS-PSPNR
*" TABLES
*" IT_SUB_PSP STRUCTURE PLM_PS_SUBORD_WBS
*"----------------------------------------------------------------------
DATA: wa_sub_psp TYPE plm_ps_subord_wbs,
it_pspnr2 TYPE TABLE OF plm_ps_subord_wbs,
wa_pspnr2 TYPE plm_ps_subord_wbs.
DATA: it_nezplan TYPE TABLE OF plm_ps_subord_ntw,
wa_nezplan TYPE plm_ps_subord_ntw.
DATA: it_vorgaenge TYPE TABLE OF plm_ps_subord_act,
wa_vorgaenge TYPE plm_ps_subord_act.
DATA: it_elemtent TYPE TABLE OF plm_ps_subord_ael,
wa_elemtent TYPE plm_ps_subord_ael.
DATA: l_posid TYPE prps-posid.
DATA: l_pspnr TYPE prps-pspnr.
* Wenn vorhanden, dann in interne Tabelle speichern
LOOP AT it_pspnr2 INTO wa_pspnr2.
MOVE wa_pspnr2 TO wa_sub_psp.
APPEND wa_sub_psp TO it_sub_psp.
ENDLOOP.