crea il tuo primo molto semplice OData Servizio Gateway SAP

Ci sono così tante informazioni e apparentemente nuove tecnologie sullo sviluppo di mobile e di risposta delle applicazioni SAP, al momento, rende molto difficile knowwhere per iniziare. Quindi Fiori è il futuro insieme a SAPUI5, per quanto riguarda SAP Gateway e OData,o anche HANA, Ariba(o come si chiama) e gli infiniti altri nomi e tecnologie in giro….. Come si inseriscono tutti questi nel quadro generale per uno sviluppatore SAP?
Bene, iniziamo a livello del suolo, ovvero il gateway Netweaver in cui sono richieste le tradizionali abilità SAP ABAP come parte della costruzione di un’app Fiori.Il gateway SAP è in realtà in circolazione da molti anni, ma con il passaggio alle app Fiori/Mobile/Responsive viene utilizzato sempre di più ed è ora una parte fondamentale del tuo panorama SAP.Il Gateway consente l’accesso ai dati all’interno dei sistemi SAP dal mondo esterno tramite i servizi OData.
So Quindi in questo nuovo mondo Fiori il front-end viene creato utilizzando SAPUI5 utilizzando l’IDE Web,
…questo chiama un servizio OData che è stato creato sul sistema SAP tramite il gateway SAP
…il servizio OData utilizza ABAP per recuperare i dati SAP e li restituisce tramite il servizio OData
L’esempio seguente mostra come creare rapidamente il primo servizio Gateway OData utilizzando il codice ABAP di base per selezionare i dati da una tabella standard.
Passo 1 – SAP Netweaver Gateway Service Builder
Per prima cosa vai su transaction SEGW dove sarai in grado di creare il tuo servizio

Passo 2 – Crea progetto
Quindi utilizzando il pulsante Crea devi creare un progetto per archiviare tutti i tuoi modelli di dati, implementazioni, tipi di entità, set di entità ecc. Non preoccupatevi troppo della terminologia in questa fase, tutto diventerà chiaro.

Fase 3 – Inserire i dettagli del progetto
Inserire un nome, una descrizione e un pacchetto. Lascia tutto il resto come predefinito a meno che tu non sappia che hai bisogno di qualcosa di specifico.

Fase 4 – Import DDIC structure
Baseremo questo esempio su un sottoinsieme della tabella SAP standard EKKO. All’interno del progetto appena creato,fare clic con il tasto destro del mouse sul nodo “Modello dati” e selezionare Importa->DDIC Structure

Step 5 – Immettere i dettagli della struttura
Immettere EKKO all’interno del campo ABAP structure e immettere un oggetto un nome, ad es. purchaseorder

Step 6 – Proprietà Vista
Espandere il nodo appena creato “Tipo di Entità->purchaseorder” e fare doppio clic sul nodo Proprietà

Ci sono solo andando a utilizzare per primi campi di selezionare tutti i campi di seguito Statu ed eliminarli

Fino a quando non sembra che questo

Nota: Il motivo non ho intenzione di utilizzare tutti i campi, perchè alcuni non sono compatibili con un servizio di gateway senza modificare il tipo di dati.Ti mostrerò dove avresti ottenuto l’errore più in basso se avessi usato tutti i campi. Queste informazioni potrebbero solo aiutare a capire l’errorquicker quando si sta creando uno per davvero in futuro.
Step 7 – Creare Set di Entità
Salvare il processo e quindi fare clic destro sul Set di Entità nodo e selezionare Crea

Step 8 – modo Alternativo per creare Set di Entità
in Alternativa, fare doppio clic sul Set di Entità nodo e quindi fare clic su Aggiungere Riga pulsante

Step 9 – set di Entità dettagli
Dare il set di entità nome (di solito un plurale del Tipo di Entità)

Quindi selezionare il Tipo di Entità da ingresso di selezione help

una Volta selezionato premere ok (segno di spunta verde)

set di Entità è stata creata

Passo 10 – Generare servizio gateway
Fare doppio clic sul nodo del progetto e generare l’intero progetto utilizzando il pulsante “Genera oggetti Runtime”

Ora si noterà che sono stati creati oggetti di implementazione del servizio.Create, Delete, GetEntity(Read), GetEntitySet (Query) e Update

Step 11 – Active and maintain service
Ora devi andare alla transazione “/IWFND/MAINT_SERVICE ” Trovo sempre che possa funzionare solo se iadd / n all’inizio cioè /n/IWFND/MAINT_SERVICE

Passo 12 – Aggiunge il servizio
all’Interno di /n/IWFND/MAINT_SERVICE fare clic su Aggiungi Servizio tasto

Quindi immettere le informazioni per il servizio che si desidera aggiungere (si Noti che è possibile utilizzare caratteri jolly, a questo punto per trovare il tuo servizio)

Premere invio per trovare il tuo servizio o i servizi che corrispondono ai tuoi criteri di ricerca. Una volta fatto clic su quello che si desidera aggiungere

La schermata successiva mostra i dettagli del servizio selezionato, inserire i dettagli del pacchetto(cioè l’oggetto locale) e lasciare tutto come predefinito. Quindi premere il pulsante ok (segno di spunta verde)

ora Si dovrebbe ricevere un messaggio di popup che il servizio “è stato creato ed è metadati è stato caricato con successo”

torna alla pagina precedente

Passo 13 – Trova il tuo servizio aggiunto
ora verrà restituito al servizio di catalogo, a seconda di come molti servizi di installazione nel vostro sistema, potrebbe essere necessario utilizzare il filterfunctionality per trovare il tuo appena aggiunti di servizio.

Ora dovresti vedere i dettagli della configurazione del servizio e un semaforo verde accanto al nodo ODATA ICF nell’angolo in basso a sinistra.

Passo 14 – SAP Netweaver Gateway Client
Ora è necessario testarlo utilizzando il client SAP Netweaver Gateway, a cui si accede tramite il pulsante “Gateway Client” appena sopra il nodo ODATA nell’angolo in basso a sinistra

Quindi, lasciando l’URI di richiesta come predefinito “/sap/opu/odata/sap/ZTEST_PROJECT_SRV/?format format = xml” fai semplicemente clic sul pulsante “Esegui”

Dovresti quindi ottenere un respose HTTP simile a questo con uno status_code verde


Passo 15 – Ulteriori test tramite SAP Netweaver Gateway Client
Ora è possibile modificare l’URL in modo che finisca con ” metadata metadata?sap-ds-debug=true ” e quindi premere esegui di nuovo, in modo da poter restituire le proprietà dei metadati dell’entità purchaseorder

“/sap/opu/odata/sap/ZTEST_PROJECT_SRV / metadata metadati?sap-ds-debug=vero”

Ora cambia l’URI per avere ” / purchaseorders?sap-ds-debug = true”alla fine in modo da poter indirizzare i dati degli ordini di acquisto impostati dall’entità

“/sap / opu / odata / sap / ZTEST_PROJECT3_SRV / ordini di acquisto?sap-ds-debug=vero”


Quando si preme execute si dovrebbe ottenere il seguente errore in quanto non abbiamo implementato il metodo chepopula ancora questi dati

Passo 16 – Implementare il metodo GetEntitySet
Ora tornare alla transazione SEGW e trovare i metodi di implementazione del servizio creati prima. Trova quello chiamatogetentityset (Query) e fai clic destro su di esso. Quindi selezionare “Vai a ABAP Workbench”

Apparirà il seguente messaggio che dice che l’operazione non è stata ancora implementata. Basta fare clic su ok

Ora verrai portato a tcode SE80. All’interno dell’elenco oggetti a sinistra trovare il metodo PURCHASEORDERS_GET_ENTITYSETWITHIN Methods – > Metodi ereditati.
Una volta trovato questo, fare clic destro su di esso e selezionare Ridefinisci

All’interno del codice del metodo che appare è sufficiente aggiungere la seguente istruzione ABAP select
SELECT *
FINO A 10 RIGHE
DA ekko
NEI CAMPI CORRISPONDENTI DELLA TABELLA et_entityset.

Salva e attiva

Passo 17 – Ri-testare il servizio
Modificare nuovamente l’URI in “/sap/opu / odata/sap / ZTEST_PROJECT_SRV / purchaseorders?sap-ds-debug=vero”

Questa volta dovresti ottenere alcuni dati restituiti

Passo 18 – Ulteriori informazioni
Ricorda che ho menzionato di non usare tutti i campi dalla tabella EKKO in quanto alcuni non sono compatibili.Se li avessi inclusi tutti durante l’esecuzione dell’URI ” /sap/opu / odata / sap / ZTEST_PROJECT_SRV / purchaseorders?sap-ds-debug=true ” avresti ricevuto il seguente messaggio di errore http:

<?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>

Passo 19 – Ulteriore sviluppo
Il passo successivo è quello di accedere a questo servizio gateway da SAP Fiori App


Passo per passo le istruzioni su come creare il tuo primo web transazione basata su standard ABAP finestra di dialogo programma di utilizzo SE80
SAP Netweaver Business Client
SAP Sviluppo di Applicazioni Web utilizzando il SUO Esempio di codice ABAP e informazioni
Netweaver – Informazioni su SAP netweaver tecnologie
SAP GUI per HTML – esecuzione di SAP su un PC che non dispone di SAP installato il client
Mantenere i servizi web – Uso di transazione SICF attivare e mantenere servizi web SAP
SAP Sviluppo di Applicazioni Web – il codice di Esempio e informazioni sulle diverse aree di sviluppo per il web
SAP GUI per HTML – esecuzione di SAP su un PC che non dispone di SAP installato il client
Internet transaction server ( il SUO ) – vantaggi e svantaggi
LA logica del Flusso – vantaggi e svantaggi di usando la SUA logica del flusso di
lo Sviluppo di SAP Transazioni Web – utilizzo di SE80 e poi pubblicato il SUO

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.