Final Project Peoplesoft Application Development: Advisor: Prof. Khaled Elleithy
Final Project Peoplesoft Application Development: Advisor: Prof. Khaled Elleithy
Advisor: Prof. Khaled Elleithy Submitted By: Madhan Maram Student ID: 514512
What is ERP?
ERP attempts to integrate all departments and functions across a company onto a single computer system that can serve all those different departments' particular needs. That is a tall order, building a single software program that serves the needs of people in finance as well as it does the people in human resources and in the warehouse. Each of those departments typically has its own computer system optimized for the particular ways that the department does its work. But ERP combines them all together into a single, integrated software program that runs off a single database so that the various departments can more easily share information and communicate with each other.
Architecture Diagram
PeopleSoft Internet Architecture Application Designer Application Engine Component/component Interface File/File Layout PeopleCode Security Manger Integration Broker Portals Reporting Data Archiving
Application Development
PeopleSoft Applications are made up of a navigational structure, menus, components and pages. Using these elements new data or change, delete and modify the existing data in the application. PeopleSoft web browsing and working with database.
Application Designer:
Every PeopleSoft Internet Architecture (PIA) application contains a collection of related objects that work together for a specific purpose. Developing and customizing PeopleSoft applications is a step-by-step process where you define and build the objects, establish relationships among objects, implement security, run your PeopleSoft application within an Internet Browser, and test every aspect thoroughly. You use one interactive tool, Application Designer, for the majority of these activities. Application Designer is an integrated development environment that enables you to work with the numerous objects of a business application in a single work area. The following section introduces you to Application Designer's development environment.
Application Engine:
Called App Engine is mostly used for batch processing, for example we have to schedule a students registration list for the whole semester on a particular date, and we can schedule and automates the process. Application Engine is the People Tool that you use to develop batch or online programs that are effective alternatives to COBOL or SQR programs (for non-report processing). Using Application Engine, you can create programs that perform high-volume, background processing against your data. Application Engine is comprised of two distinct components: the "front-end" where you define your batch program and the"backend," which entails running and monitoring our program .
Web Interface
Navigation Left-hand navigation . Updated structure
Peoplecode:
Plays the major role in the application, considering the administration at UB. Not all users get the same access towards the application. This security is contained in the application sample.
The PeopleSoft Internet Architecture falls into the category of PeopleSoft online security, also known as runtime security. Only authorized users can connect to the web and application servers, and only authorized application servers can connect to a given database.
Security:
Plays the major role in the application, considering the administration at UB. Not all users get the same access towards the application. This security is contained in the application sample. The PeopleSoft Internet Architecture falls into the category of PeopleSoft online security, also known as runtime security. Only authorized users can connect to the web and application servers, and only authorized application servers can connect to a given database.
Web Interface
Navigation
Left-hand navigation . Updated structure
Security Enhancements
Create Row Level Security for Various Profiles
How the tables are created. How the pages are created, various tools used. How the relations are developed. How components are developed. How permissions and roles are created for access to only specific personnel in a business. How reports are generated. How search Engines can be developed. How batch processes are scheduled. Security Administration.
Creation of Records
Open Application Designer File New > Select type > Record The Records are thus created very much similar to any Online Objects. The fields, Application Engine Programs, and every other online objects skeletal build initiates through Application Designer. The ability to create robust and powerful internet applications of PeopleSoft functions like web pages. Support as many existing page controls and concepts as possible. Ability for the application to operate in a menu system independently.
Select File, Open or click the Open toolbar button to open an existing record definition. Select Record from the Object Type list and then click Select. In the Open Object dialog, enter the first letter of the record you are searching for and click Select. You can narrow the search criteria by specifying Type and/or Project. You can also open an existing record from the project tree view by double-clicking a record name.
Creating Components
For all the WebPages, there will be a corresponding component create. The hierarchy All the online pages are built in application designer and are attached to a Component. The Components are Attached to Menu. The Menus are classifies as USE and SET UP The Set up menu Mostly are Configuration tables. A one time bulk data entry The USE tables are Transaction Tables, These are Informative and Helps to Query out the Information from the Database. The Components are Added to the Menu File New Menu Insert Component
To Load PeopleSoft tables from External Files These files are scheduled through Process Scheduler This loads Bulk data in to Application tables replicating the enterprise batch processing. The programs to write the bulk data in to a Flat File. The Programs using component Interface to load information, which helps to validate the information prior to loading.
Local ApiObject &Session; Local ApiObject &MM_CI_READ_CS; Local ApiObject &MM_SESSIONCol; Local ApiObject &MM_SESSIONItm; Local ApiObject &PSMessages; Local string &ErrorText, &ErrorType; Local number &ErrorCount; Local boolean &Error; Local File &Source; Local Record &c_rec, &s_rec; Local Rowset &c_rs; Function CheckErrorCodes() &PSMessages = &Session.PSMessages; &ErrorCount = &PSMessages.Count; For &i = 1 To &ErrorCount &ErrorText = &PSMessages.Item(&i).Text; &ErrorType = &PSMessages.Item(&i).Type; End-For; End-Function; /* Initialize Variables */ &Error = False; /* Get Current Session */ &Session = %Session; &MM_CI_READ_CS = &Session.GetCompIntfc(Component.MM_CI_READ_CS);
/* Set Component Interface Standard Properties */ &MM_CI_READ_CS.InteractiveMode = False; &MM_CI_READ_CS.GetHistoryItems = True; &Source = GetFile("C:\TEMP\cou_sess.TXT", "R", %FilePath_Absolute); &Source.SetFileLayout(FileLayout.MM_COU_SES_FL); &c_rec = CreateRecord(Record.MM_COURSE_TBL); &s_rec = CreateRecord(Record.MM_SESSION); &c_rs = CreateRowset(Record.MM_COURSE_TBL, CreateRowset(Record.MM_SESSION)); &c_rs = &Source.ReadRowset(); /*read from rowset to rec and values of fields*/ While &c_rs <> Null &c_rs.GetRow(1).MM_COURSE_TBL.CopyFieldsTo(&c_rec); &courseid = &c_rec.RV_COURSE_ID.Value; /* Set Component Interface Get Keys */ &MM_CI_READ_CS.RV_COURSE_ID = &courseid; /*&MM_CI_READ_CS.RV_COURSE_ID = &c_rec.rv_course_id.value;*/ &MM_CI_READ_CS.descr = &c_rec.DESCR.Value; &MM_CI_READ_CS.start_dt = &c_rec.START_DT.Value; &MM_CI_READ_CS.end_dt = &c_rec.END_DT.Value; For &row = 1 To &rs.GetRow(1).GetRowset(1).ActiveRowCount &c_rs.GetRow(1).GetRowset(1).GetRow(&row).MM_SESSION.CopyFieldsTo(&s_rec);
/* Set MM_SESSION Collection Field Properties -- Parent: PS_ROOT Collection */ &MM_SESSIONCol = &MM_CI_READ_CS.MM_SESSION; &MM_SESSIONItm = &MM_SESSIONCol.Item(&row); &MM_SESSIONItm.sessionid = &s_rec.SESSIONID.Value; &MM_SESSIONItm.START_DT = &s_rec.START_DT.Value; &MM_SESSIONItm.END_DT = &s_rec.END_DT.Value; &MM_SESSIONItm.DURATION = &s_rec.DURATION.Value; &MM_SESSIONItm.R_DURATION_UNIT = &s_rec.R_DURATION_UNIT.Value; &MM_SESSIONItm.MIN_STUDENTS = &s_rec.MIN_STUDENTS.Value; &MM_SESSIONItm.MAX_STUDENTS = &s_rec.MAX_STUDENTS.Value; &MM_SESSIONItm.LANGUAGE_OPTION = &s_rec.LANGUAGE_OPTION.Value; &MM_SESSIONItm.STATUS = &s_rec.STATUS.Value; &MM_SESSIONItm.LOCATION = &s_rec.LOCATION.Value; /* &MM_SESSIONItm.START_TIME = &s_rec.START_TIME.Value; &MM_SESSIONItm.END_TIME = &s_rec.END_TIME.Value;*/ End-For; &c_rs = &Source.ReadRowset(); &MM_CI_READ_CS.Cancel(); End-While; &Source.Close();
File Layout
A File Layout is a definition (or mapping) of a file to be processed. It identifies where in a file data fields are located. Once a File Layout has been created, you can write PeopleCode programs that use the file object, which in turn use the File Layout, to either read data from or write data to a file. Types of File layouts. Fixed Positional Each field has a starting position and a length which is their descriptive location. Sequence Positional (CSV) Fields are separated and the order of appearance is their descriptive location. Tagged (XML) Each field has predefined tags (or identifiers) surrounding it. In the Application that I have developed File Layout is used with application engine program for importing data in to the system and to send data out of the system. Replicating the arching job process at the corporate level.
2 3
The Special Characters at the top of the report defines the printer configuration.
Interface
Thanks for the interest you showed in presentation, also special thanks to Professor Khaled elleithy and all CS department for the support throughout my course curriculum
Thanks
Design
Application
Cycle