Opret din første meget enkle Odata SAP Portservice

der er så meget information og tilsyneladende nye teknologier til rådighed om udvikling af mobile og lydhøre applikationer inden for SAP i øjeblikket, det gør det meget vanskeligt at vide, hvor man skal starte. Så Fiori er fremtiden sammen med SAPUI5, hvad med SAP-porten og OData, eller endda HANA,Ariba(eller hvad det hedder) og de endeløse andre navne og teknologier omkring….. Hvordan passer disse alle ind i det store billede for en SAP-udvikler?
lad os starte på jordoverfladen, dvs.Netvæverporten, hvor traditionelle SAP ABAP-færdigheder kræves som en del af opbygningen af en Fiori-app.SAP-porten har faktisk eksisteret i mange år, men med overgangen til Fiori/Mobile/Responsive apps bruges den mere og mere og er nu en vigtig del af dit SAP-landskab.Porten gør det muligt for omverdenen at få adgang til data i dit SAP-system(er) via OData-tjenester.
…så i denne nye Fiori-verden oprettes frontenden ved hjælp af SAPUI5 ved hjælp af internettet IDE,
…dette kalder en Odata-tjeneste, der er oprettet på dit SAP-system via SAP-porten
…Odata-tjenesten bruger ABAP til at hente SAP-data og returnerer dem via OData-tjenesten
eksemplet nedenfor viser dig, hvordan du hurtigt opretter din første Odata-Porttjeneste ved hjælp af grundlæggende ABAP-kode til at vælge data fra en standardtabel.
Trin 1 – SAP Service Builder
gå først til transaktionssegment, hvor du vil være i stand til at opbygge din service

Trin 2 – Opret projekt
næste ved hjælp af knappen Opret skal du oprette et projekt til at gemme alle dine datamodeller, implementeringer, enhedstyper, enhedssæt osv. Må ikkebekymre dig for meget om terminologien på dette stadium, alt bliver klart.

Trin 3 – Indtast projektdetaljer
Indtast navn, beskrivelse og pakke. Forlad alt andet som standard, medmindre du ved, at du har brug for noget specifikt.

Trin 4 – Importer DDIC-struktur
vi vil basere dette eksempel på en delmængde af standard SAP-tabellen EKKO. Inden for det nyoprettede projekt skal du højreklikke på noden” datamodel ” og vælge Import->DDIC Structure

Trin 5 – Indtast strukturdetaljer
indtast EKKO i feltet ABAP structure og indtast et objekt et navn, dvs. purchaseorder

Trin 6 – Se egenskaber
Udvid den nyoprettede node “entity Type->purchaseorder” og dobbeltklik på Egenskabsnoden

vi skal bare bruge de øverste få felter, så vælg alle felterne nedenfor Statu og slet dem

indtil det ser sådan ud

bemærk: årsagen til, at jeg ikke vil bruge alle felterne, er fordi nogle er uforenelige med en Portaltjeneste uden at ændre datatypen.Jeg vil vise dig, hvor du ville få fejlen længere nede, hvis du havde brugt alle felterne. Denne info kan bare hjælpe dig med at forstå fejlen, når du opretter en til Ægte i fremtiden.
Trin 7-Opret Entity Set
Gem din proces indtil videre, og højreklik derefter på entity Set node, og vælg Opret

Trin 8-alternativ måde at oprette Entity Set
dobbeltklik alternativt på Entity Set node, og klik derefter på knappen Tilføj række

trin 9 – entity set details
Giv entity set-navnet (normalt et flertal af Entity-typen))

vælg derefter enhedstypen fra selection input help

når du er valgt, skal du trykke på ok (grønt kryds)

Enhedssæt er nu oprettet

Trin 10-Generer porttjeneste
dobbeltklik først på projektnoden og generer hele projektet ved hjælp af knappen “Generer Runtime Objects”

du vil nu bemærke, at objekter til implementering af tjenester er oprettet.Opret, Slet, GetEntity(Læs), GetEntitySet (forespørgsel) og opdater

trin 11 – aktiv og vedligehold service
nu skal du gå til transaktion “/IFND/MAINT_SERVICE” jeg finder altid, at jeg kun kan få dette til at fungere, hvis iadd /n i starten, dvs. /n/IV /MAINT_SERVICE

trin 12 – Tilføj service
inden for/n/IV / MAINT_SERVICE klik på knappen Tilføj Service

indtast derefter oplysningerne om den service, du vil tilføje (Bemærk, at du kan bruge jokertegn på dette tidspunkt til at finde din service)

tryk på enter for at finde den eller de tjenester, der matcher dine søgekriterier. Når det klikker på den, du vil tilføje

det næste skærmbillede viser dig de valgte servicedetaljer, indtast pakkedetaljer(dvs.lokalt objekt) og lad alt være som standard. Tryk derefter på ok-knappen (grønt kryds)

du skal nu modtage en besked popup, at din tjeneste “blev oprettet, og det er metadata blev indlæst med succes”

gå tilbage til forrige side

trin 13 – Find din tilføjede tjeneste
du vil nu blive returneret til servicekataloget, afhængigt af hvor mange tjenester du har konfigureret i dit system, skal du muligvis bruge filterfunktionalitet for at finde din nyligt tilføjede tjeneste.

du skal nu se serviceopsætningsoplysningerne og et grønt trafiklys ved siden af Odata ICF-noden i nederste venstre hjørne.

trin 14-SAP-klienten
vi er nu nødt til at teste den ved hjælp af SAP-klienten, som er tilgængelig via knappen “Portklient” lige over Odata-noden i nederste venstre hjørne

derefter forlader anmodningen URI som standard “/sap/OPU/odata/sap/STEST_PROJECT_SRV/?klik blot på knappen” Udfør “

du skal derefter få en HTTP respose svarende til denne med en grøn status_code


trin 15-yderligere test via SAP-klient
nu Kan du ændre URL ‘ en, så den slutter med “$metadata?sap-DS-debug=true ” og tryk derefter på Udfør igen, så vi kan returnere metadataegenskaber for purchaseorder-enheden

“/sap/opu/Odata / sap / VAREPROJECT_SRV / $metadata?sap-DS-debug=true”

nu ændre URI at have ” / indkøbsordrer?sap-DS-debug=true ” i slutningen, så vi kan målrette dataene fra retity set purchaseorders

“/sap / opu/Odata/sap / STEST_PROJECT3_SRV / indkøbsordrer?sap-DS-debug=true”


når du trykker på Udfør, skal du få følgende fejl, da vi ikke har implementeret den metode, der befolker disse data endnu

trin 16 – Implementer GetEntitySet-metoden
Vend nu tilbage til SEGV-transaktionen og find de metoder til implementering af tjenesten, der er oprettet før. Find den kaldtegetentityset (forespørgsel) og højreklik på den. Vælg derefter “gå til ABAP arbejdsbænk”

følgende meddelelse vises, der siger, at operationen endnu ikke er implementeret. Klik blot på ok

du vil nu blive taget til tcode SE80. I objektlisten til venstre finder du PURCHASEORDERS_GET_ENTITYSET-metodeninden for metoder – > nedarvede metoder.
når du har fundet dette, skal du højreklikke på det og vælge omdefinere

inden for metodekoden, der vises, skal du blot tilføje følgende ABAP select-sætning
vælg *
op til 10 rækker
fra ekko
i tilsvarende felter i tabel et_entityset.

Gem og aktiver

trin 17 – test tjenesten igen
skift igen URI til “/sap/OPU/odata/sap/STEST_PROJECT_SRV/purchaseorders?sap-DS-debug=true”

denne gang skal du få nogle data returneret

trin 18 – Yderligere info
Husk, at jeg nævnte om ikke at bruge alle felterne fra EKKO-tabellen, da nogle ikke er kompatible.Hvis du havde inkluderet dem alle, når du udførte URI ” /sap/OPU/Odata/sap/PROJECT_SRV / purchaseorders?sap-DS-debug=true”du ville have modtaget følgende http-fejlmeddelelse:

<?xml version="1.0" encoding="utf-8" ?>- <error xmlns:xsi="http://www.w3.org/2001/XMLSchema-Instance"> <code>HTTP/500/E/Internal Server Error <message>Call of service /sap/opu/odata/sap/ZTEST_PROJECT_SRV/purchaseorders terminated because of an error. The following error text was processed in system TST : The current statement is only supported for character-type data objects.The error occurred on the application server erpukpltm. The termination type was: RABAX_STATE.If the termination type is RABAX_STATE, you will find more information on the cause of termination in system TST in transaction ST22. If the termination type is ABORT_MESSAGE_STATE, you will find more information on the cause of termination on the application server ????? in transaction SM21. If the termination type is ERROR_MESSAGE_STATE, you can search for further information in the trace file for the work process in transaction ST11 on the application server ______. You may also need to analyze the trace files of other work processes. If you do not yet have a user ID, contact your system adminmistrator.</message> </error>

trin 19-videreudvikling
det næste trin er at få adgang til denne porttjeneste fra din SAP Fiori-App


trin for trin instruktioner om, hvordan du opretter din første sin internettransaktion baseret på standard ABAP – dialogprogram ved hjælp af SE80
SAP – forretningsklient
SAP-applikationsudvikling ved hjælp af dens-eksempel ABAP-kode og information
SAP GUI til HTML-kører SAP på en PC, der ikke har SAP-klienten installeret
vedligehold – Brug af transaktion SICF til at aktivere og vedligeholde SAP-tjenester
SAP-applikationsudvikling – eksempelkode og information om forskellige områder af internetudvikling
SAP GUI til HTML-kører SAP på en PC, der ikke har SAP – klienten installeret
internettransaktionsserver ( ITS) – fordele og ulemper
dens Strømningslogik – fordele og ulemper ved at bruge dens strømningslogik
udvikling af SAP-internettransaktioner-brug af SE80 og derefter offentliggjort til its

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.