Blogs | Hexaware

Blogs


Latest Post
The below SQL lists the complete portal navigation along with the process name. I built this SQL when we had to provide this list to our client to review processes that could be retired. The output is useful for generating an inventory or assisting in KEEP/DROP decisions during upgrade. Here it is: SELECT NAVIGATION, A1.PRCSNAME FROM (SELECT LPAD('--',2*(LEVEL-1)) || PORTAL_LABEL "NAVIGATION", PORTAL_URI_SEG2 FROM (SELECT PORTAL_LABEL, PORTAL_PRNTOBJNAME, PORTAL_OBJNAME, PORTAL_URI_SEG2 FROM PSPRSMDEFN A WHERE PORTAL_NAME = 'EMPLOYEE' ) B WHERE B.PORTAL_PRNTOBJNAME != ' ' START WITH (B.PORTAL_URI_SEG2 IN (SELECT D.PNLGRPNAME FROM PSMENUITEM A, PSMENUDEFN B, PS_PRCSDEFNPNL C, PSPNLGROUP D WHERE A.MENUNAME=B.MENUNAME AND…
Posted by Nitin Pai
Comments (3)
January 11th, 2008
What is a BI Appliance? If a data warehouse class database product or a reporting product or a data integration product or an all-in-one software package is pre installed and available in a preconfigured hardware box, then such a “hardware + software” box is called a ‘BI Appliance’. The very purpose of an appliance model is to cover the underlying software components complexity and intricacies and make it simple like operating a TV system. How an Appliance Model evolved? As businesses gathered huge data, the demand for faster and better ways of analyzing data increased, the data warehouse as a…
Posted by Muneeswara C Pandian
Comments (3)
January 3rd, 2008
Almost in every project, this is one of the requirements to get the Current and Previous EFFDTed rows (from JOB table). Most of the times, we will use the Self Join SQL to get the same. SELECT             A.EMPLID, A.EFFDT CURR_EFFDT, B.EFFDT PREV_EFFDT FROM   PS_JOB A, PS_JOB B WHERE             B.EFFDT =(SELECT MAX(A_ED1.EFFDT) FROM PS_JOB A_ED1                         WHERE B.EMPLID = A_ED1.EMPLID                         AND B.EMPL_RCD = A_ED1.EMPL_RCD                         AND A_ED1.EFFDT < A.EFFDT)  …
Posted by Kannappan Krishnan
Comments (2)
December 28th, 2007
Continuing from my previous post... Here are the steps to implement the Fine Grained Access Control feature to mimic the row-level security in your PeopleSoft online Query Manager. Step 1: We will create a function QRY_SEC_FUNCTION that will be used by the policy to add the filter. create or replace function QRY_SEC_FUNCTION (schema_name IN varchar2, table_name IN VARCHAR2) return varchar2 as V_OPRID VARCHAR2(32); V_emplid varchar2(20); V_CLIENT_INFO VARCHAR2(1000); V_QRYSECRECNAME VARCHAR2(32); V_SQL_TEXT VARCHAR2(4000); V_TABLE_NAME VARCHAR2(32); begin V_CLIENT_INFO := SYS_CONTEXT('USERENV','CLIENT_INFO'); V_OPRID := SUBSTR(V_CLIENT_INFO,1,INSTR(V_CLIENT_INFO,',',1)-1); V_TABLE_NAME := TABLE_NAME; If V_OPRID is null then V_SQL_TEXT := 'EXISTS (SELECT ''X'' FROM PS_PERS_SRCH_QRY A1 WHERE A1.EMPLID = '||V_TABLE_NAME||'.EMPLID…
Posted by Nitin Pai
Comments (3)
December 27th, 2007
Let’s for a moment accept the hypothesis that the true intent of Business Intelligence is to help organizations manage their business better. “Better” in this context tends to be a rather elastic adjective as it straddles the entire spectrum of firms using BI for simple management reporting to the other extreme of using BI to ‘Compete on Analytics’ in the marketplace. “Managing business better” presents the classic question of “What aspects of business can BI help manage better”. The Answer – “Pretty much everything”. In this post, I would like to list down the different business areas that ought to…
Posted by Karthikeyan Sankaran
Comments (0)
December 26th, 2007
Most of the times we would have faced a requirement of having Dynamic prompt table for Record Fields. Also PeopleSoft itself very much utilizes Dynamic Prompt table. How can we achieve the same in our project???? Here we go This is accomplished by 2 ways Using EDITTABLE fields for Prompt Table Using Dynamic Views 1. Usage of EDITTABLE Fields In this method, Prompt table property of Record Fields should be assigned with %EDITTABLE value. Actually what does it mean???? Prompt Table value for the Record Field is populated from the Record Field DERIVED.EDITTABLE value. The Record Field DERIVED.EDITTABLE should be…
Posted by Kannappan Krishnan
Comments (12)
December 21st, 2007
How to schedule an employee in a work group schedule? Login to Kronos Timekeeper Central through the web browser using a Super Access / Super User Profile Under the My Genies menu of the navigation bar, click on the "Quick Find" Submenu The quick find genie would be displayed in the navigation bar In the Name or ID field enter the full time employee for whom the work schedule needs to be changed, and In the Time Period option, one could select the time period for which the employee's work schedule needs to be changed After the step 4 and…
Posted by Pon ArunKumar Ramalingam
Comments (0)
December 21st, 2007
Today, I will demonstrate use of Fine Grained Access Control to create row-level security for the database to mimic the row level security setup in the PeopleSoft application. Let me start with asking a few questions. In your PeopleSoft database, do you have Oracle ids created for the PeopleSoft users? Most of the PeopleSoft shops create Oracle ids for Functional support teams, so that they can query the database when they are troubleshooting some issues. If you answered ‘yes’ to the above question then what kind of access has been given to these ids? Most of the PeopleSoft shops will…
Posted by Nitin Pai
Comments (0)
December 20th, 2007
Most of the projects have the below mentioned scenarios….. FTPing the file from one server location to another Deleting the file We can simply execute those in SQR by using CALL SYSTEM built-in...Here is the syntax CALL SYSTEM Using $del_file #del_status Wait if edit(#del_status,'9') = '0' show 'intfiles.txt was deleted sucessfully' end-if $del_file - Specifies the operating system command to execute. The command can be a quoted string, string variable, or column. #del_status - Represents the status of execution of OS Command. This is always going to be Numeric variable UNIX/Linux: Zero (0) indicates success. Any other value is the…
Posted by Kannappan Krishnan
Comments (1)
December 19th, 2007
Following are the design aspects towards getting a DI system dynamic Avoiding hard references, usage of parameter variables Usage of lookup tables for code conversion Setting and managing threshold value through tables Segregating data processing logics into common reusable components Ensuring that the required processes are controllable by the Business team with the required checks built in We had defined the first two aspects in the earlier writing, let us look at the scenarios and approach for the other three items Setting and managing threshold values through tables In data validation process we also perform verification on the incoming data…
Posted by Muneeswara C Pandian
Comments (0)
December 18th, 2007
Contact Us