At Oracle Open World 2012, Oracle presented three mobile applications for PeopleSoft. In my previous post you could read how to install, setup and use Mobile Expenses and Approvals for FSCM 9.1. Last week the third mobile application, Mobile Company Directory, was released for HCM 9.1.
Download & Setup
Mobile Company Directory is deliverd with Patch 14032782, which requires HCM 9.1 Bundle #10, Patch 13377316. If you are running on HCM FP2 revision recut, which is delivered at Bundle #7, you need to download and appy Bundles 8,9,10. After this you can apply Patch 14032782 and you are ready to go.Customizing Signon page for Mobile Applications
As described in my previous post you can create a second PIA with a mobile look and feel. This is still optional. All files for modifing the signon page are delivered with the patch. Again making sure the Allow Public Acces is disabled on your Webprofile!Permissions
All users that need to access Mobile Company Directory need to granted the Company Directory Mobile User role.Configuring Mobile Company Directory Options
You can define what you want to show on which type of browser of device (tablet, phone)
This gives you more configuration flexibilty compared to Mobile Expenses and Approvals.
Detailed configuration options can be found on MOS note PeopleSoft HCM 9.1: Mobile Company Directory [ID 1494986.1].
Start using Mobile
After installing the patch and configuration what you want to see, you can start the mobile application through menu Self Service > Install Mobile Applications
Clicking on the Company Directory icon will popup a second window. Copy this url and send it to your mobile device.
When you start the url on your mobile device (iPad, iPhone) you will be prompted to add this url to your homepage.
Use the Copy Url icon next to the url to add this to your homepage (most right icon).
Now when we tap on the Company Directory icon, Mobile Company Directory will start without an url bar.
At least that is what I thought ...
First Bug
As seen in the screenshot above Mobile Company Directory stays in Loading mode. After waiting for a couple of minutes it still stayed in Loading mode. I decided to run it in trace mode (since this is still PeopleSoft and build using PeopleTools, we can). The trace file showed the following error:nRecentlyViewedRetentionDays HRCD_COMPANY_DIRECTORY.UserSessionBase.OnExecute
Local SQL &sql = CreateSQL(%This.sRecentlyViewedSQL, %EmployeeId, %This.nRecentlyViewedRetentionDays, %This.recTreeDefn.TREE_NAME.Value, %This.recTreeDefn.EFFDT.Value);
HCM RC=0 Dur=0.001000 COM Stmt=SELECT A.EMPLID , MAX(A.LASTUPDDTTM) , A.EMPLID_VIEWED , A.EMPL_RCD , ' ' FROM PS_HRCD_USER_RECNT A , PS_HRCD_JOB_TREE JT , PSTREENODE TN WHERE A.EMPLID = :1 AND A.HRCD_ORGVIEW_TYPE IN ('HRCD', 'CDOV', 'MOPH', 'MOTB') AND DATEDIFF(DAY,CONVERT(DATETIME, CONVERT(CHAR(10),A.LASTUPDDTTM,121)),{ fn CURDATE() }) <= :2 AND JT.EMPLID = A.EMPLID_VIEWED AND JT.EMPL_RCD = A.EMPL_RCD AND JT.TREE_NODE = TN.TREE_NODE AND TN.TREE_NAME = :3 AND TN.EFFDT = :4 GROUP BY A.EMPLID, A.EMPLID_VIEWED, A.EMPL_RCD, ' ' ORDER BY MAX(A.LASTUPDDTTM) DESC
SQL error. Function: CreateSQL
Error Position: 0
Return: 8602 - [Microsoft][SQL Server Native Client 10.0][SQL Server]Each GROUP BY expression must contain at least one column that is not an outer reference.
[Microsoft][SQL Server Native Client 10.0][SQL Server]Statement(s) could not be prepared. (SQLSTATE 37000) 818
Tracing the error down to Application Class HRCD_COMPANY_DIRECTORY.UserSessionHRCD, you will see this SQL being defined in the constructor. Although this SQL statement will work on a Oracle DB (I assume, haven't tried it yet), I am running on SQL Server and this couses and error.
So I decided to change the SQL statement in the Application Class and log a SR.
Vanilla
%This.sRecentlyViewedSQL = "SELECT A.EMPLID , %DateTimeOut(MAX(A.LASTUPDDTTM)) , A.EMPLID_VIEWED , A.EMPL_RCD , ' ' FROM PS_HRCD_USER_RECNT A , PS_HRCD_JOB_TREE JT , PSTREENODE TN WHERE A.EMPLID = :1 AND A.HRCD_ORGVIEW_TYPE IN ('HRCD', 'CDOV', 'MOPH', 'MOTB') AND %DateDiff(%DatePart(A.LASTUPDDTTM),%CurrentDateIn) <= :2 AND JT.EMPLID = A.EMPLID_VIEWED AND JT.EMPL_RCD = A.EMPL_RCD AND JT.TREE_NODE = TN.TREE_NODE AND TN.TREE_NAME = :3 AND TN.EFFDT = %DateIn(:4) GROUP BY A.EMPLID, A.EMPLID_VIEWED, A.EMPL_RCD, ' ' ORDER BY MAX(A.LASTUPDDTTM) DESC ";
Customization
%This.sRecentlyViewedSQL = "SELECT A.EMPLID , %DateTimeOut(MAX(A.LASTUPDDTTM)) , A.EMPLID_VIEWED , A.EMPL_RCD , ' ' FROM PS_HRCD_USER_RECNT A , PS_HRCD_JOB_TREE JT , PSTREENODE TN WHERE A.EMPLID = :1 AND A.HRCD_ORGVIEW_TYPE IN ('HRCD', 'CDOV', 'MOPH', 'MOTB') AND %DateDiff(%DatePart(A.LASTUPDDTTM),%CurrentDateIn) <= :2 AND JT.EMPLID = A.EMPLID_VIEWED AND JT.EMPL_RCD = A.EMPL_RCD AND JT.TREE_NODE = TN.TREE_NODE AND TN.TREE_NAME = :3 AND TN.EFFDT = %DateIn(:4) GROUP BY A.EMPLID, A.EMPLID_VIEWED, A.EMPL_RCD ORDER BY MAX(A.LASTUPDDTTM) DESC ";
Spot the difference ...
After this, the application worked like a charm.
Update 11/22/2012:
Oracle Support mentioned that this issue is addressed in the following bugs and is to be delivered with bundle #12
- 15862456 - MSS INSTALL MOBILE APPL ERROR OUT ON TABLET
- 15862448 - MSS-PEOPLE CODE ERROR WHILE SEARCHING FOR EMP FROM ORG CHART VIEW
Some screenshots on an iPad.
No comments:
Post a Comment