Due interfacce ufficiali per lavorare con gli oggetti di SAP Business One: la scelta dipende da ambiente, architettura e funzioni richieste.
Due modi di parlare con SAP Business One
Il Service Layer espone gli oggetti aziendali tramite richieste HTTP, risposte JSON e convenzioni OData. La DI API è una libreria dell’SDK usata da programmi installati in un ambiente compatibile. Entrambe consentono di creare e aggiornare oggetti applicativi, passando dalle logiche di SAP Business One; il loro modello di esecuzione è diverso.
Il confronto in pratica
| Criterio | Service Layer | DI API |
|---|---|---|
| Collegamento | API HTTP, in genere OData v4 su /b1s/v2 | Componenti SDK e oggetti della libreria |
| Applicazione tipica | Servizi web, app esterne, integrazioni distribuite | Add-on e processi .NET già basati sull’SDK |
| Gestione accesso | Sessione, cookie e controllo delle richieste | Connessione Company gestita dal processo |
| Distribuzione | Client HTTP separato dal server SAP | Runtime e componenti SDK compatibili sul sistema ospite |
| Verifica funzioni | Entità e azioni esposte dalla versione installata | Oggetti e metodi disponibili nella versione SDK |
Quando scegliere l’una o l’altra
Per un’applicazione web, un servizio che riceve documenti da fornitori o un’integrazione tra sedi, il Service Layer offre un confine HTTP naturale. La DI API resta sensata quando esiste già un add-on .NET con flussi consolidati, oppure una funzione specifica è disponibile nell’SDK ma richiede una verifica di copertura sul Service Layer. Evitare regole assolute: verificare la versione effettiva, l’oggetto, l’operazione e i requisiti di licenza.
Esempio concreto
Un programma che legge un DDT, propone le righe di un ordine d’acquisto e crea una bozza di entrata merci può tenere elaborazione e revisione fuori da SAP e inviare la bozza tramite Service Layer. Un add-on desktop che usa da anni eventi del client e oggetti DI API può continuare a farlo, mantenendo i controlli applicativi esistenti.
Cosa verificare prima di sviluppare
Definire chi avvia l’operazione, come sono custodite le credenziali, quali utenti e autorizzazioni SAP vengono usati, come trattare gli errori e come evitare documenti duplicati dopo un nuovo tentativo. In entrambi i casi serve una prova sull’ambiente e sulla patch del cliente.
Riferimenti
La disponibilità delle funzioni dipende dalla versione e dalla configurazione di SAP Business One.