I am getting the error 'Unknown key of uninstantiated object {USER_PROFILE.UserID} (91,16)' while saving the component interface using the following code:-
SQLExec("Select OPRID from PSOPRALIAS where PERSON_ID = :1", RD_PERSON.PERSON_ID.Value, &lstrOPRID);
If All(&lstrOPRID) Then
try
rem ***** Set the Log File *****;
&fileLog = GetFile("C:\temp\USER_PROFILE.log", "w", "a", %FilePath_Absolute);
&fileLog.WriteLine("Begin");
&oSession = %Session;
&oSession.PSMessagesMode = 3;
&oUserProfile = &oSession.GetCompIntfc(CompIntfc.USER_PROFILE);
If &oUserProfile = Null Then
errorHandler();
throw CreateException(0, 0, "GetCompIntfc failed");
End-If;
&oUserProfile.InteractiveMode = True;
&oUserProfile.GetHistoryItems = True;
&oUserProfile.EditHistoryItems = True;
&oUserProfile.UserID = &lstrOPRID;
If Not &oUserProfile.Get() Then
errorHandler();
throw CreateException(0, 0, "Get failed");
End-If;
If RD_PERSON.HNSPERSONSTATUS.OriginalValue <> "I" And
RD_PERSON.HNSPERSONSTATUS.Value = "I" Then
&oUserProfile.AccountLocked = 1;
End-If;
If Not &oUserProfile.Save() Then
errorHandler();
throw CreateException(0, 0, "Save failed");
End-If;
catch Exception &ex
WinMessage(&ex.ToString());
&fileLog.WriteLine(&ex.ToString());
end-try;
&fileLog.WriteLine("End");
&fileLog.Close();
End-If;
Then subsequently, I get the following errors:-
(18,2) - Data being added conflicts with existing data. (18,2)
(91,37) - Error saving Component Interface. {USER_PROFILE} (91,37)
Title | Under | Posted on |
---|---|---|
Component interface Error: no rows exist for the specified keys | PeopleSoft Technical | 03/15/2019 - 3:54am |
ADD 24 months starting from current month.(peoplesoft) | PeopleSoft Functional | 07/29/2018 - 8:44pm |
TRC values dropdown | PeopleSoft Technical | 04/04/2018 - 12:54am |
how to find missing sequence in GRID and print the mising sequence number while saving through peoplecode | PeopleSoft Technical | 09/11/2017 - 4:49am |
I would try debugging the component interface from PeopleCode. To accomplish that you need to modify a delivered function. The function is located at FUNCLIB_CI.CI_EXCEPTIONS FieldFormula and is called ciCreateExceptionEntry
Right after the following code
&ExceptionRec.MSG_SEVERITY.Value = ciGetSeverity(&MsgSetNbr, &MsgNbr);
End-If;
add this:
Now when a CI is called and an error occurs you will get a messagebox on the screen indicating the error. Hopefully this will give you a more meaningful error.
Give back to the community and help it grow!
* Help with unanswered forum questions and issues
* Register or login to share your knowledge at your own blog
PeopleTools version : 8.48.05 does not have record FUNCLIB_CI.
I get the following errors:-
(91,16) - Unknown key of uninstantiated object {USER_PROFILE.UserID} (91,16)
(18,2) - Data being added conflicts with existing data. (18,2)
(91,37) - Error saving Component Interface. {USER_PROFILE} (91,37)
Invalid message while SQL transaction in process: Save failed (0,0) RD_PERSON_2.GBL.SavePostChange PCPC:8408 Statement:81 (2,178) RD_PERSON_2.GBL.SavePostChange PCPC:8511 Statement:84
A PeopleCode program tried to issue the indicated message while an SQL cursor is open. The message is invalid because it requires user input.
Review the PeopleCode and either move the message to a place where it will be issued during user "think-time", or change the "style" so no choice is required.
I guess SQLExec("Select OPRID from PSOPRALIAS where PERSON_ID = :1", RD_PERSON.PERSON_ID.Value, &lstrOPRID) is not returning an object that why String &lstrOPRID is null and USER_PROFILE.UserID is uninstantiated
simrose makes a good point.
Give back to the community and help it grow!
* Help with unanswered forum questions and issues
* Register or login to share your knowledge at your own blog