Creazione Servizio Odata mediante BAPI
Richiamare la transazione SEGW, creare un
nuovo Progetto, premendo il pulsante NEW:
Sulla cartella Data model, tasto dx, selezionare Import ->RFC/BOR Interface
Inserire il nome della Entity,
se il gateway è presente sulla stessa macchina, selezionare LOCAL,
altrimenti Remote.
Selezionare il type “Remote
Funcion Call”, ed inserire il nome della BAPI da usare
Come Entity selezionerei solo la tabella di output SALES_ORDERS, quindi premendo il pulsante NEXT, seleziono SALES_ORDERS con tutti i campi (e possible anche selezionare solo alucni campi di questa tabella)
Indico la Key “Doc number” e
premo il pulsante Finish.
Premo il pulsante “Generate
Runtime Objects”. In questo modo vengono generate le classi associate al nostro
Odata.
Nella cartella Entity Types -> SalesOrder -> Properties, settiamo il flag NULL, per tutte quelle properties che ha il tipo Edm.DateTime e Edm.Time
Nella Cartella Service
Implementation -> SalesOrderSet -> GetEntitySet (Query) tasto dx, seleziono
“Map to Data Source”
Nella schemata successiva far il mapping dei campi della Entity con i campi della Bapi, premendo il pulsante “Propose
Mapping”.
Cancello i campi doppi che non
sono mappati con la struttura SALES_ORDES, tipo il materiale e materialLong
Inserisco i campi di input obbligatori della BAPI: SoldTo e SalesOrg
Premo il pulsante “Generate Runtime Objects”.
Se andiamo a vedere il metodo SALESORDERSSET_GET_ENTITYSET
della classe ZCL_ZBAPI_SALES_ORD_01_DPC_EXT, vediamo che è stato scritto
tutto il codice con il richiamo alla bapi
Registriamo il servizio richiamando il servizio /n/IWFND/MAINT_SERVICE
Premiamo il pulsante Aggiungere servizio
Inserire l’Alias e il nome del nostro servizio, battere invio, selezionarlo e premere “Aggiungere servizio selezionati”
Ritornare nella lista dei servizi e vedere se vediamo il servizio creato
/sap/opu/odata/sap/ZBAPI_SALES_ORDER_PRJ_SRV_02/SalesOrdersSet?$filter=SalesOrg
eq 'Z233' and SoldTo eq '23100001'&$format=json
Estrae i dati
Chiamata con TOP e SKIP
Top3 =
significa che ci estrae I primi 3 record
/sap/opu/odata/sap/ZBAPI_SALES_ORDER_PRJ_SRV_02/SalesOrdersSet?$filter=SalesOrg
eq '2310' and SoldTo eq '23100001'&$top=3&$format=json
Skip1 =
significa non estrae il primo record
/sap/opu/odata/sap/ZBAPI_SALES_ORDER_PRJ_SRV_02/SalesOrdersSet?$filter=SalesOrg
eq '2310' and SoldTo eq '23100001'&$skip=1&$format=json
Possiamo
usare insieme sia Skip che Top ad esempio
/sap/opu/odata/sap/ZBAPI_SALES_ORDER_PRJ_SRV_02/SalesOrdersSet?$filter=SalesOrg
eq '2310' and SoldTo eq '23100001'&$top=3&$skip=1&$format=json
In questo caso estriamo non consideriamo il primo record ed estraiamo I successivi 3 record
1. SAP EWM (Extended Warehouse Management)
3. SAP VIM (Vendor Invoice Management)
>>> RECENSIONI DEI LIBRI su Amazon Kindle <<<
Ebook: SAP MM: https://www.amazon.it/dp/B0C3MKD9BR#customerReviews
Ebook: SAP MII: https://www.amazon.it/dp/B0C4392MY9#customerReviews
Ebook: SAP VIM: https://www.amazon.it/dp/B0C6FBK8QN#customerReviews
Nessun commento:
Posta un commento