Evolution of ERP:

MRP: ERP started with Materials Requirement Planning (MRP). MRP catered to the two basic functions of Materials Management and Inventory Management and typically catered to a manufacturing organisation.

MRP-II: An upgrade over MRP was MRP-II. MRP-II provided for production Planning along with Materials Management and Inventory Management.

ERP: Enterprise Resource Planning. This package provided for the complete suite of applications ranging from Sales and distribution, Planning, Materials Management, Quality Management, Human Resources and Financial Accounting.

The keyword with ERP is "Integration".

ERP Vendors:

The following are the major ERP vendors locally and internationally. Local RAMCO : Marshall MASTEK : Mamis International SAP (Systeme Anwengdung Producte) BAAN PeopleSoft Oracle Mfg*Pro J.D.Edword

Technical Architecture

SAP is an ERP package, which caters to the key function of integration. It provides integrated functionality for finance, sales, materials management, production and human resources. SAP is DBMS transactional software written in ABAP/4. Various modules provide various functionalities. It can be configured to meet the business process logic through customisation. SAP is customisable software. The database in SAP can be either Oracle or Informix. Technical Architecture (refer diagram a) The technical architecture of SAP R/3 is as per the diagram. The Technical Architecture of SAP R/3 is a three-tier architecture. This means that the architecture can be broken down into three layers. First is the Data base Layer. The Database layer hosts the central database. The central database is a Relational Database Management System (RDBMS). The next layer is the application layer. The business logic processing occurs in the application layer. The presentation layer is the Graphic user interface or the GUI, which interacts with the user and receives inputs and gives output to the user. SAP recommends four concurrent Servers: To have better control over the production system, SAP recommends four different servers in a typical SAP implementation. These are: Development: All development work is carried out in the development server. Unit testing is done in the development server. Integration: The changes are then tested for their correctness by integration testing in the integration server Consolidation: The consolidation system consolidates all the changes before they are transported to the production environment. Production: The production system is the live system which contains all the current data. Technical Information - SAP SAP is a 32 Bit Client Server Application. SAP uses 4GL (4th Generation Language) called ABAP/4 for Front end Development ABAP/4- Advanced Business Application Programming Language Uses ALE (Application Link Enabling) Loose Coupling of Database Independent Servers SAP uses Messaging Mechanism to Synchronize database IDES - Integrated Documentation and Educational System. IDES contains example data for all transactions. OSS - Online Support System. This is an Online Support System provided by SAP. Modules in SAP SAP is divided into various modules that cater to different functionalities. The various modules of SAP are as follows: Sales and Distribution Project Management Materials Management Quality Management Finance and Controlling Human Resources Production Planning Plant Maintenance

Implementation Approaches

The following are the implementation approaches for ERP

Big Bang Approach


In this approach, ERP is implemented at one-go at all the offices of the organisation.

Pilot Rollout

In the Pilot rollout approach, one subsidiary business unit (SBU) is selected as the pilot and ERP is first implemented in that unit. Then it is rolled out to other business units in a phased out manner.

Functional Rollout


In the functional rollout approach, one function like finance or materials management is selected for implementation. Then one by one ERP is implemented for each of the functions in the organisation.

Cross-Develop Global Prototype

In the cross-develop global prototype, a prototype is first developed and tested. Once successful, the implementation is done for the entire organisation.

requirements for implementation of SAP at site.

VSAT: PAMA VSAT (preferably) or TDMA VSAT.

PC running NetWare or Router for Routing.

NetWare If a PC running Novell NetWare is used for routing then, the PC should have 2 NetWare Interface Cards (NIC), one NIC connected to the LAN and one NIC connected to the IDU of the VSAT. Both the NICs should have valid IP addresses assigned by LTITL.

Router If a Router is used for routing, then the router should have a serial port to connect to the IDU of the VSAT, and it should have one Ethernet port (NetWare interface card) to connect to the local area network.

Hardware One Personal Computer

Pentium 166MHz MMX / Pentium II with 32MB RAM 1.44MB FDD, 4 GB HDD

14" SVGA color monitor

VGA Card with 1MB RAM 101/102 keyboard Mouse Ethernet 32Bit Card SMPS,

2 serial & 1 Parallel Ports

Software MS-DOS 6.2, Windows 95 / Windows 98,MSOffice 97, SAP GUI 3.1H

Printer Printer connected to the LAN can be accessed.

To use the printer connected to the LAN,

1) Set the printer on the PC as the default printer

2) Select LOCL in the SAP print menu

Basis

BASIS provides administrative tools for SAP. It is a logical collection of R/3 software components. Basis is the layer between the hardware and R/3 system software.

BASIS provides for the following

Tools for administration:

Basis includes various administration tools for managing the system resources like hardware, software and printers. It includes tools for monitoring the system performance, monitoring user sessions, setting up alerts and deriving various statistics and graphs which give indications of the system performance.

User Administration:

This includes creating user ids, modifying user details and deleting users ids, viewing system users, sending messages to multiple users.

Runtime environment for the user:

The runtime environment for the user includes the default menu path for the user, the date format for the user, the default printer for the user, changing user’s password.

Provide Authorisations to the users:

In order to enable the user to access the various transactions, it is essential that the users have the correct set of authorisations. Setting of authorisations for the users based on their job roles. An authorisation tool is used to create the user authorisations. Once the authorisations have been created, profiles are created and the authorisations are attached to them. Each profile can have many such authorisations attached to them. The profiles are created based on the role definition of the user in the company. After the authorisations and profiles are created, user ids are created and the profiles are attached to the user profiles. Each user id could have multiple user profiles attached to them. For example, if we create a user profile for a business head, then that user id could have profiles relating to various departments / job definitions attached to it.

Printer Administration:

This includes installing the network printers and local and remote printers for the users, setting up printer queues, and managing printer spooler.

System Administration:

This includes starting and stopping the SAP service manager, diagnosing the system start-up, monitoring work processes, viewing transaction codes, clearing locked entries, monitoring system updates, transport of customising change requests and ABAP change requests at the OS level.

Database Administration (including Backup and Restore):

Database management including database backup and restore, database performance monitor, and analysing database activity.

Interfaces with non-SAP products:

BASIS also includes tools for interfacing with non-SAP products, which will continued to be in use in the organisation.

ABAP/4

ABAP is the development tool in SAP. All SAP Transactions and Reports are developed in ABAP/4. ABAP/4 aids in the development of new reports, batch conversion programs and data entry screens (module pool programs) and interfaces with third party standard software.

SAP software is totally transaction based. All the menu paths in SAP point to a particular transaction. A transaction is a four-letter alphanumeric code, which executes a program in SAP. Everything in SAP is a transaction. For e.g.- Creating a Purchase Order is a transaction, Changing the Purchase Order details is another transaction. Transactions are also used to run various reports. Each report has a unique transaction code. Each transaction code is unique in the SAP system.

ABAP/4 Reports

There are following types of ABAP/4 reports that can be developed.

Simple Lists:

ABAP/4 can be used to generate simple lists as well as interactive reports.

Interactive reports

Event Driven Reports: These reports are generated on click of a button.

Drill Down Reports: Reports are initially shown as simple upper level lists. If the user is interested in getting further details, then he can drill down on a particular item like material code or project number and get further details. Thus many levels can be incorporated into the report based on the user requirements.

Graphic Reports: Reports can be developed to provide a graphical representation of the data.

Layout Sets: ABAP also facilitates developing of various documents sent to external parties like customers and vendors. These documents require special formatting and printing of company logos. This can be done through ABAP Layout sets tool, which enables the programmer to specify various fonts, set the logo in the format and perform special formatting in the document.

ABAP/4 Batch Data Conversion

Batch Data Conversion programs are developed to import the data from legacy systems into SAP. Batch programs are written specifically for the particular transaction. For example, to upload all the purchase order data from the legacy system, a BDC for the purchase order transaction is developed.

Online or Scheduled: BDCs could be online or they could be scheduled to run at a particular time / date or after a particular other BDC has run.

ABAP/4 Job Scheduling: The user can schedule the running of reports / BDCs on a periodic basis (monthly / weekly).

ABAP Module Pool Programs: These are new data entry screens that can be developed in ABAP based on the user requirements.

ABAP Queries: ABAP Query is a quick and effective tool, which is used to create queries and generate simple lists.

ABAP Module Pool Programs: To build interactive data entry screens, Module Pool programs are developed in ABAP/4

SMARTFORMS




Steps to create a simple SMARTFORMS
Read the abap program in step 5 first to see how the data is begin pass to the internal table.
1. Create a new smartforms
2. Define looping process for internal table
3. Define table in smartforms
4. To display the data in the form
5. Calling SMARTFORMS from your ABAP program





1. Create a new smartforms
Transaction code SMARTFORMS
Create new smartforms call ZSMART
The followings screen format will appear :-
- Form ZSMART Form ZSMART
- Global settings Description New form
- Form attributes
- Form interface
- Global definitions General attributes Output Options
- Pages and windows
+ %PAGE1 New page
You can click at the Form Painter button to view the graphical display layout of your smartforms.









2. Define looping process for internal table
Pages and windows
First Page -> Header Window (Cursor at First Page then click Edit -> Node -> Create)
Here, you can specify your title and page numbering
&SFSY-PAGE& (Page 1) of &SFSY-FORMPAGES(Z4.0)& (Total Page)
Main windows -> TABLE -> DATA
In the Loop section, tick Internal table and fill in
ITAB1 (table in ABAP SMARTFORM calling function) INTO ITAB2


3. Define table in smartforms
Global settings :
Form interface
Variable name Type assignment Reference type
ITAB1 TYPE Table Structure
Global definitions
Variable name Type assignment Reference type
ITAB2 TYPE Table Structure


4. To display the data in Smartform
Make used of the Table Painter and declare the Line Type in Tabstrips Table
e.g. HD_GEN for printing header details,
IT_GEN for printing data details.
You have to specify the Line Type in your Text elements in the Tabstrips Output options.
Tick the New Line and specify the Line Type for outputting the data.
Declare your output fields in Text elements
Tabstrips - Output Options
For different fonts use this Style : IDWTCERTSTYLE
For Quantity or Amout you can used this variable &GS_ITAB-AMOUNT(12.2)&






5. Calling SMARTFORMS from your ABAP program
REPORT ZSMARTFORM.
* Calling SMARTFORMS from your ABAP program.
* Collecting all the table data in your program, and pass once to SMARTFORMS
* SMARTFORMS
* Declare your table type in :-
* Global Settings -> Form Interface
* Global Definintions -> Global Data
* Main Window -> Table -> DATA
*
* Written by : SAP Hints and Tips on Configuration and ABAP/4 Programming
* http://sapr3.tripod.com
*
TABLES: MKPF.
DATA: FM_NAME TYPE RS38L_FNAM.
DATA: BEGIN OF INT_MKPF OCCURS 0.
INCLUDE STRUCTURE MKPF.
DATA: END OF INT_MKPF.
SELECT-OPTIONS S_MBLNR FOR MKPF-MBLNR MEMORY ID 001.
SELECT * FROM MKPF WHERE MBLNR IN S_MBLNR.
MOVE-CORRESPONDING MKPF TO INT_MKPF.
APPEND INT_MKPF.
ENDSELECT.
* At the end of your program.
* Passing data to SMARTFORMS
call function 'SSF_FUNCTION_MODULE_NAME'
exporting
formname = 'ZSMARTFORM'
* VARIANT = ' '
* DIRECT_CALL = ' '
IMPORTING
FM_NAME = FM_NAME
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3.
if sy-subrc <> 0.
WRITE: / 'ERROR 1'.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
call function FM_NAME
* EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
* CONTROL_PARAMETERS =
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
* OUTPUT_OPTIONS =
* USER_SETTINGS = 'X'
* IMPORTING
* DOCUMENT_OUTPUT_INFO =
* JOB_OUTPUT_INFO =
* JOB_OUTPUT_OPTIONS =
TABLES
GS_MKPF = INT_MKPF
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5.
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.