FIORI - kilka setów w ramach szczegółów jednego rekordu

Jeśli programujesz, administrujesz, integrujesz i masz wątpliwość lub obawę, to właśnie najlepsze miejsce dla Ciebie. Pisz śmiało...
emil
Posty: 139
Rejestracja: pt gru 27, 2019 11:02 am
Has thanked: 29 times
Been thanked: 43 times

FIORI - kilka setów w ramach szczegółów jednego rekordu

Post autor: emil »

Rodzę jeża, czyli staram się wystrugać pierwszą sensowną apkę we FIORI.
Założenia: kierownik komórki organizacyjnej ma listę pracowników, gdy wybierze pracownika - pojawią mu się szczegółowe dane dotyczące wybranej osoby.

Przygotowałem sobie odpowiednią usługę, która wystawia co następuje:

PracownicySet - lista podległych pracowników

A za nią:
DetailsSet
HistoriaStanowiskSet
SzkoleniaSet

Kod: Zaznacz cały

-<entry>
<id><ciach>/PracownicySet('00001234')</id>
<title type="text">PracownicySet('00001234')</title>
<updated>2024-05-15T06:08:40Z</updated>
<category scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" term="<ciach>.Pracownicy"/>

<link title="Pracownicy" rel="self" href="PracownicySet('00001234')"/>
<link title="toDetails" type="application/atom+xml;type=entry" rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/toDetails" href="PracownicySet('00001234')/toDetails"/>
<link title="toSzkolenia" type="application/atom+xml;type=feed" rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/toSzkolenia" href="PracownicySet('00001234')/toSzkolenia"/>
<link title="toHistoriaStanowisk" type="application/atom+xml;type=feed" rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/toHistoriaStanowisk" href="PracownicySet('00001234')/toHistoriaStanowisk"/>

-<content type="application/xml">
-<m:properties xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<d:Pernr>00001234</d:Pernr>
<d:Imie>Fabia</d:Imie>
<d:Nazwisko>Dabacka</d:Nazwisko>
<d:DataUr>1982-12-01T00:00:00</d:DataUr>
<d:Stanowisko>ST. ANALITYK BIZNESOWY</d:Stanowisko>
<d:Przelozony>00743242</d:Przelozony>
<d:Umowa>I um. na czas okr.</d:Umowa>
<d:Przelozonytxt>KARGUL LEOKADIUSZ</d:Przelozonytxt>
<d:Zorg1>DEPARTAMENT TELEINFORMATYKI</d:Zorg1>
<d:Zorg2>BIURO WSPARCIA BEZPOŚREDNIEGO</d:Zorg2>
<d:Zorg3/>
<d:Orgtx/>
<d:Directmng/>
</m:properties>
</content>
</entry>
Dla np. danych dotyczących szkoleń, mam utworzone:
/sap/opu/odata/sap/<ciach>/PracownicySet('00000128')/toSzkolenia
- tu mam zwracaną listę szkoleń, na których był wybrany pracownik, szczegóły dotyczące pracownika to :
/sap/opu/odata/sap/<ciach>/PracownicySet('00000120')/toDetails
...itd.

Od strony backendu teoretycznie wszystko działa.

Wziąłem się za frontend, skorzystałem z SAP Fiori application Generator dostępnego w Visual Studio Code.
W szablonach (Deprecated Templates) wybrałem SAP Fiori Worklist Application, generator poprowadził mnie przez zapięcie się do systemu, wskazałem PracownicySet jako punkt wyjścia z danymi itd itd wg kreatora. Opublikowałem sobie apkę, zapiąłem ją do menu, wszystko działa.

Lista podległych pracowników:
pm1.png
Szczegóły wybranego pracownika:
pm2.png
ALE...
Cały czas poruszam się w zakresie danych dostępnych PracownicySet:
https://<ciach>-display&/PracownicySet/('00744363')
i nie bardzo wiem, jak teraz pożenić kartę ze szczegółami wybranego pracownika z danymi dotyczącymi np. szkoleń.

Gdyby chodziło o prosty zestaw danych, który mogę ująć w PracownicySet - problem byłby z głowy. Niestety dane dotyczące np. szkoleń, to już kolejne całe sety:

/sap/opu/odata/sap/<ciach>/PracownicySet('00000128')/toSzkolenia

Zerkałem w kod innych apek, które korzystają z większej ilości setów, ale to jest taka skala aplikacji, że niewiele (jeszcze) rozumiem z tego, co się tam dzieje.

Pytanie brzmi: czy macie jakieś wskazówki/linki/tutki, które pozwolą poradzić sobie z powyższym tematem?

Teoretycznie spróbuję jeszcze poklikać w tym, co dostarcza VSC w zakresie szablonów Fiori Elements, ale boję się, że to co zostanie wygenerowane, będzie miało kod, który doprowadzi mnie do... znacznego pogorszenia samopoczucia ;)
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
ZETKA
Posty: 83
Rejestracja: czw lis 04, 2010 10:49 pm
Has thanked: 1 time
Been thanked: 81 times

Re: FIORI - kilka setów w ramach szczegółów jednego rekordu

Post autor: ZETKA »

To nie takie straszne :)
Jeżeli masz dostęp do LH - szkolenie UX410, rozdział 14, niestety tutorial na learnig.sap.com tego tematu nie zawiera.
VC i BAS mają fajną funkcjonalność - Guided Development, pozwalającą np. na dogenerowanie dodatkowych komponentów. Nie wiem jak tworzyłeś usługę oData ale wygodniejsza jest w tym przypadku usługa generowana z widoków CDS za pomocą @oData.publish
Pozdrawiam,
Krzysiek