ABAP is an object-oriented programming language used to develop applications for the SAP ERP R/3 system. Customers can develop custom reports and interfaces with ABAP programming. The language is fairly easy to learn for programmers but it is not a tool for direct use by non-programmers. Good programming skills, including knowledge of relational database design and preferably also of object-oriented concepts, are required to create ABAP programs. SAP ERP is also combining ABAP with JAVA.
Basis is the SAP ERP version of system administration. In most non-SAP ERP organizations, "Basis" people will be called "system administrators." Basis administrators are responsible for ensuring that the SAP ERP application server and applications are installed and configured properly and remain running smoothly. Depending on the organization, SAP ERP Basis administrators may also be responsible for configuring and maintaining the operating system and database that SAP ERP is running on, but in many organizations there are other system administrators responsible for operating systems and databases that work with Basis experts to configure the full system.