In quasi tutti i sistemi SAP esiste un meccanismo per spostare le configurazioni del sistema dallo sviluppo alla produzione.
Ma perché il sistema dei trasporti è importante e come è possibile sapere chi ha fatto cosa in questo processo?
Cosa è il sistema dei trasporti in SAP?
Nei sistemi aziendali è una best practices quella di avere diverse versioni delle stesso sistema. Ovvero un sistema di sviluppo, uno di test ed infine il sistema produttivo.
Questa struttura è importante (anche se più costosa in termini di gestione) in quanto lavorare direttamente nel sistema produttivi potrebbe esporsi al rischio di problemi in caso di modifiche, con costi/rischi ben più grandi.
Per questo motivo la SAP ha introdotto una funzionalità chiamata TMS (Transport Management System) che permette agli sviluppatori o configuratori del sistema di effettuare una modifica nel sistema di sviluppo, portarla nel sistema di test per poterla verificare e se tutto funziona come previsto, portarla nel sistema di produzione.
Questa modalità ha diversi aspetti positivi ad esempio:
- evita di dover rifare a mano le stesse attività (che in alcuni casi potrebbero essere molte) nei vari sistemi
- limita l'errore (nel caso venga svolta manualmente in più sistemi l'attività)
- permette di tracciare meglio chi ha fatto cosa nel sistema
- permette di inserire dei processi approvati
- permette di tracciare nel corso del tempo tutte le modifiche fatte al sistema
Questo strumento ha molte altre funzionalità e può diventare oggetto di molti approfondimenti. In quanto esistono molte configurazioni ed anche sistemi (ad esempio il Solution Manager) che offrono funzionalità aggiuntive (ad esempio il SAP ChaRM)
Come effettuare un trasporto di una configurazione nei sistemi SAP?
Per potere effettuare un trasporto, semplificando, è necessario inserire l'oggetto tecnico che viene modificato un una "richiesta di trasporto" o Change Request.
Metaforicamente possiamo immaginare la change request come un pacco da spedire che contiene un oggetto. Si può inoltre decidere di inserire all'interno dello stesso pacco (Change Request) più sotto-pacchetti, questi prendono il nome di task. Ogni task può a sua volta contenere più oggetti (programmi, dati, ruoli e molti altri oggetti tecnici del sistema).
Infatti è inoltre possibile fare in modo che ogni task abbia un proprietario "owner" che decida quando sia il momento di chiudere il proprio task.
Infatti, una volta terminati i lavori di modifica, questa change request viene chiusa, o meglio rilasciata. Seguendo la metafora sopra è il momento di chiudere la scatola con del nastro adesivo.
Una volta chiusa la scatola il pacco deve essere inviato (anche se tecnicamente è possibile riaprirlo).
L'invio del pacchetto viene effettuato tramite una transazione chiamata STMS. Mentre la generazione della change request avviene ad esempio tramite la transazione SE10 (ma sono anche altre le transazioni dove è possibile generale una richiesta di modifica).
Come sapere chi ha importato in produzione una change request SAP?
Ma come faccio quindi a sapere chi ha spostato una change request nell'ambiente produttivo.
Seguendo quando detto in precedenza è importante distinguere tra:
- chi è l'owner della change request (ovvero chi l'ha creata solitamente)
- chi è la persona che ha effettivamente importato quella change request nel sistema
Proprio per ragioni di separazione dei compiti, le persone che creano le CR (Change Request), dovrebbero essere diverse dalle persone che le importano.
Esistono diversi scenari a livello di processo in questo caso:
- chiunque può creare e trasportare le CR
- chiunque può creare e trasportare le CR ma solo fino all'ambiente di test
- chi crea una CR non può essere colui che la importa
Anche l'aspetto temporale è importante. Quando è meglio trasportare una CR? In qualsiasi momento oppure in un momento preciso?
Vediamo come capire chi ha fatto l'importazione quindi, ecco i passaggi.
- Esegui la transazione STMS
- Dal menu in alto premi "Goto" e "Import History"
- Premi poi "Edit" e "Display More" (questo permetterà di aggiungere una colonna importante, ovvero quella di chi ha fisicamente effettuato il trasporto. Owner rappresenta la persona che ha creato la Change Request (nell'esempio sotto 800005) mentre User rappresenta chi ha fisicamente importato la Change Request nel sistema (nell'esempio sotto 800006)
Alcuni di questi log sono soggetti ad una retention (41732 - Deletion of data in transport directory).