ABAP è l’acronimo di Advanced Business Application Programming, originariamente noto in tedesco come Allgemeiner Berichts Aufbereitungs Prozessor, o “processore di creazione di report generali”. Sintassi simile al Common Business Oriented Language (COBOL), è un linguaggio di programmazione per computer sviluppato dalla società tedesca Systeme, Anwendungen und Produkte in der Datenverarbeitung (SAP®) per applicazioni aziendali su larga scala. Come linguaggio di programmazione, ABAP è uno dei tanti linguaggi di quarta generazione, o 4GL, apparsi negli anni ‘1980. Un precursore nel campo, lo sviluppo del linguaggio da parte di SAP® ha fornito la prima applicazione del concetto di database logico per la programmazione.
Nella sua incarnazione originale, ABAP è stato fornito ai clienti SAP® per consentire a ciascun reparto IT (Information Technology) di ciascun cliente di utilizzare il linguaggio per creare report personalizzati e altri strumenti. Ogni cliente potrebbe sviluppare le proprie interfacce dell’azienda per varie applicazioni SAP®. Con il progredire dell’ambiente di business online computerizzato e infine globale, dalla metà alla fine degli anni ‘1990, più applicazioni e programmi SAP® hanno utilizzato il linguaggio ABAP. Oggi, i server delle applicazioni SAP® utilizzano esclusivamente ABAP.
Altri linguaggi di programmazione simili ad ABAP includono COBOL, Java™ e alcuni programmi C++. A differenza di altri linguaggi di programmazione, il linguaggio Advanced Business Application Programming conserva tutte le informazioni, inclusi i file di programma, all’interno del database SAP®. La codifica appare in due forme, codice generato e codice sorgente, con la sorgente generata che ha qualche somiglianza con il bytecode di Java™. La differenza principale tra il linguaggio di programmazione di applicazioni aziendali avanzate e altri linguaggi risiede nel modo in cui i database all’interno dell’interfaccia di programmazione. I database ABAP gestiscono automaticamente tutte le comunicazioni tra database e applicazioni, archiviando contemporaneamente i dati utilizzati di frequente per un rapido recupero dalla memoria locale.
I programmi eseguibili scritti in ABAP sono basati su report o moduli. I programmi basati su report restituiscono vari elenchi o set di dati in base a parametri impostati dall’utente. I programmi basati su moduli si basano su ciò che viene visto dall’utente sul monitor del computer. I programmi non eseguibili scritti nel linguaggio di programmazione di applicazioni aziendali avanzate hanno diversi tipi, ma tutti sono codici di libreria. In altre parole, i programmi non eseguibili sono parti di codice che eseguono determinate funzioni, con ogni codice disponibile per l’uso da parte di altri programmi, ma incapace di essere eseguito in modo indipendente.
Comprendere diversi linguaggi di programmazione richiede una conoscenza approfondita della programmazione, tuttavia, un semplice esempio illustra gli stessi principi. La maggior parte dei consumatori è a conoscenza dei sistemi operativi utilizzati sui personal computer. I linguaggi di programmazione come ABAP e Java™ funzionano allo stesso modo dei linguaggi di programmazione utilizzati per creare programmi e applicazioni per vari sistemi operativi di personal computer. ABAP funziona semplicemente su server applicativi SAP®, un sistema operativo server noto come SAP® Basis, destinato a programmi e applicazioni aziendali su larga scala distribuiti su numerosi server. I sistemi operativi come Windows® per PC e Snow Leopard per Mac forniscono la stessa struttura di base su un’unica macchina che SAP® Basis fornisce per sistemi con più macchine e server.