I sistemi ERP On-premise di SAP sono di fatto sistemi open source. Ovvero è possibile vedere ed anche modificare il codice messo a disposizione da SAP.
Nonostante sia in corso una migrazione dai sistemi on-premise a quelli cloud da parte di SAP, molte installazioni dei sistemi gestionali sono ancora in versione On-premise.
Ma come accorgersi che sono state apportate personalizzazioni o modifiche allo standard? Perché potrebbe essere importante verificare questo aspetto?
Come vedere il codice SAP?
Esistono diverse transazioni che permettono di vedere il codice dei programmi che vengono eseguiti tramite l'utilizzo delle "Transazioni" SAP o APP Fiori.
Inoltre, esistono diversi oggetti tecnici:
- Programmi
- Classi, Metodi
- librerie, "include"
- Function
- e diversi altri oggetti
In generale la transazione più classica per poter vedere, ma anche modificare se con le opportune abilitazioni è la transazione SE38. Analoga alla SA38. Nel primo caso non solo è possibile modificare o visualizzare dei programmi, ma anche modificarne degli attributi, mentre nel secondo caso è possibile "solo" eseguire dei programmi.
Vedi immagine seguente per transazione SE38
Vedi immagine seguente per transazione SA38
Esiste un modello autorizzativo per gli sviluppatori?
Come riportato nella OSS note seguente "13202 - Security aspects in ABAP programming" non è previsto da parte di SAP l'introduzione di un concetto autorizzativo per gli sviluppatori.
Come verifico se un programma è stato modificato?
Esistono diverse modalità, come spesso accade, soprattutto in SAP non c'è una unica possibilità per gestire questo aspetto. Anche se nel caso di oggetti standard le principali modalità sono:
- modifica tramite applicazione di OSS note, in questo caso è la via ufficiale e corretta per apportare modifiche ad oggetti standard SAP. Ovvero quanto la SAP rilascia una "path" o correzione, una nota appunto, questa deve/può essere applicata dal cliente
- modifica manuale. In questo caso si tratta di una modifica arbitraria al codice SAP. Questo tipo di modifica seppur possibile non è mai suggerita e consigliata. Nemmeno supportata da SAP.
Vediamo qualche suggerimento:
- Tramite la transazione SE95/Version Management vedi immagini seguenti:
Versione Management (tramite transazione SE38) - Tramite la consultazione sul portale OSS degli oggetti modificati, vedi tile SSCR - SAP Software Change Registration - (vedi anche OSS "1710320 - How to delete SSCR Object and/or Developer Keys - SAP ONE Support Launchpad") seguente
- Attenzione in S/4HANA ci sono state modifiche a riguardo, vedi nota OSS seguente: 2309060 - The SSCR license key procedure is not supported in SAP S/4 HANA
- Attenzione in S/4HANA ci sono state modifiche a riguardo, vedi nota OSS seguente: 2309060 - The SSCR license key procedure is not supported in SAP S/4 HANA
- Tramite una trace, ad esempio attraverso transazione ST01 o ST05, in alcuni casi (ma non sempre), può essere utile nel caso sia intercettata una lettura di qualche tabella custom, utile per capire se è avvenuta una modifica anche in un programma custom
- Tramite l'utilizzo dello strumento ANST_SEARCH_TOOL. Vedi immagine seguente
- Pur non essendo lo strumento nato a questo scopo permette di cercare tutte le eventuali problematiche che possono affliggere una certa funzionalità. Infatti, questo strumento è stato introdotto per troubleshooting. Tuttavia, può riportare delle informazioni utili anche in caso di parti "custom" rilevate nei programmi.