Showing posts with label SQL. Show all posts
Showing posts with label SQL. Show all posts

Friday 19 October 2007

How to Monitor PeopleSoft Messages/Subscription/Publication Contracts?

One of the hallmarks of a good administrator is that they are already troubleshooting the problem before the users complain!
The key to ensuring that the system does not spring surprises is to automate monitoring (without impacting the system performance). In my previous posts, I have provided steps to monitor the process scheduler and application server. This post will provide insights into monitoring the integration broker messages, publication and subscription contracts.
Use the below SQLs for monitoring.
SUBSCRIPTION
SELECT A.CHNLNAME,
DECODE(A.SUBCONSTATUS,0,’ERROR’,1,’NEW’,4,’DONE’,A.SUBCONSTATUS) STATUS, COUNT(*)
FROM PSAPMSGSUBCON A
WHERE
– not older than 99 days
A.LASTUPDDTTM >= sysdate – 99
– in error or timeout status
AND (A.SUBCONSTATUS IN (0, 6)
– in NEW status but was last updated 30 mins agao.
OR (A.SUBCONSTATUS = 1 AND A.LASTUPDDTTM < SYSDATE – 1/48))
GROUP BY A.CHNLNAME, DECODE(A.SUBCONSTATUS,0,’ERROR’,1,’NEW’,4,’DONE’,A.SUBCONSTATUS)
/
MESSAGE
SELECT A.CHNLNAME, DECODE(A.PUBSTATUS,0,’ERROR’,1,’NEW’,4,’DONE’,A.PUBSTATUS) STATUS, COUNT(*)
FROM PSAPMSGPUBHDR A
WHERE
– not older than 99 days
A.LASTUPDDTTM >= sysdate – 99
– in error or timeout status
AND (A.PUBSTATUS IN (0, 6)
– in NEW status but was last updated 30 mins agao.
OR (A.PUBSTATUS = 1 AND A.LASTUPDDTTM < SYSDATE – 1/48))
GROUP BY A.CHNLNAME, DECODE(A.PUBSTATUS,0,’ERROR’,1,’NEW’,4,’DONE’,A.PUBSTATUS)
/
PUBLICATION
SELECT A.CHNLNAME, DECODE(A.PUBCONSTATUS,0,’ERROR’,1,’NEW’,4,’DONE’,A.PUBCONSTATUS) STATUS, COUNT(*)
FROM PSAPMSGPUBCON A
WHERE
– not older than 99 days
A.LASTUPDDTTM >= sysdate – 99
– in error or timeout status
AND (A.PUBCONSTATUS IN (0, 6)
– in NEW status but was last updated 30 mins agao.
OR (A.PUBCONSTATUS = 1 AND A.LASTUPDDTTM < SYSDATE – 1/48))
GROUP BY A.CHNLNAME, DECODE(A.PUBCONSTATUS,0,’ERROR’,1,’NEW’,4,’DONE’,A.PUBCONSTATUS)
/
Value
Status
0
ERROR
1
NEW
2
STARTED
3
WORKING
4
DONE
5
RETRY
6
TIMEOUT
7
EDITED
8
CANCELED
9
HOLD
Read More About  PeopleSoft

Tuesday 11 September 2007

PeopleCode Properties???

Sometime back, I had this question from my team mentioning – How do we determine when and who had customized this particular Record PeopleCode? The compare report showed that the PeopleCode was customized but there were no comments (bad practice!) in the code to show who touched it last.
In Application Designer the properties button is grayed out when you open the peoplecode. Also, the properties at the record level will not answer this question. Here is the SQL you can use to determine who last updated the code and when.
SELECT A.OBJECTVALUE1 RECORD, A.OBJECTVALUE2 FIELD, A.OBJECTVALUE3 EVENT, TO_CHAR(A.LASTUPDDTTM,’YYYY-MM-DD-
HH24.MI.SS.”000000″‘),
A.LASTUPDOPRID
FROM PSPCMPROG A
WHERE A.OBJECTVALUE1 = ‘&RECNAME’
AND OBJECTVALUE2 = ‘&FIELDNAME’
AND UPPER(OBJECTVALUE3) = UPPER(‘&EVENTNAME’)
/
RECORD FIELD EVENT TO_CHAR(A.LASTUPDDTTM,’YYY LASTUPDOPRID
——— ————— ——— ————————– ————
VOUCHER BUSINESS_UNIT RowInit 2006-11-13-18.25.23.000000 PPLSOFT
VOUCHER BUSINESS_UNIT RowInit 2006-11-13-18.25.23.000000 PPLSOFT
Read More about PeopleCode Properties

Thursday 23 August 2007

How do you determine PeopleSoft Portal Navigation?

I was composing this post when there was a comment from “Spamboy” for my previous post where he provided the SQL to identify the portal navigation. Thanks for your comments!!
In this post I will share the SQL I use when I want to determine the portal navigation. Here it is …
SELECT LPAD(‘–’,2*(LEVEL-1)) || PORTAL_LABEL “NAVIGATION”
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 A.PNLGRPNAME = C.PNLGRPNAME
AND A.PNLGRPNAME = D.PNLGRPNAME
AND PRCSNAME LIKE UPPER(‘&PRCSNAME’))
)
CONNECT BY PRIOR B.PORTAL_PRNTOBJNAME = B.PORTAL_OBJNAME;
NAVIGATION
———————————-
Load Transactions into AM
–Load Transactions
–Send/Receive Information
–Asset Management
Also, if you have built the search index (PeopleTools > Portal > Build Registry Search Index) and know the component name. You can directly enter the component name in the search box. Here is what you get.
Portal_search_2 
Read More about  Peoplesoft