cancel
Showing results for 
Search instead for 
Did you mean: 

ABAP user create error

former_member283791
Participant
0 Kudos

Experts,

I'm getting some errors and a lot of warnings when I try to create an account on ABAP.

Firstly, my login credentials are correct since the initial load works.

Error I'm getting is:

Initializing SAP connection with parameters:

com.sap.mw.jco.JCO$Exception: (101) RFC_ERROR_PROGRAM: Missing R3NAME=... or ASHOST=... in connect_param in RfcOpenEx

Warnings are:


<mx:TEXT>Constant JCO_CLIENT_LANG was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="2">
<mx:TEXT>Constant JCO_CLIENT_ASHOST was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="3">
<mx:TEXT>Constant JCO_CLIENT_SYSNR was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="4">
<mx:TEXT>Constant JCO_CLIENT_USER was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="5">
<mx:TEXT>Constant JCO_CLIENT_CLIENT was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="6">
<mx:TEXT>Constant JCO_CLIENT_PASSWD was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="7">
<mx:TEXT>Constant JCO_CLIENT_GROUP was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="8">
<mx:TEXT>Constant JCO_CLIENT_GWHOST was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="9">
<mx:TEXT>Constant JCO_CLIENT_GWSERV was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="10">
<mx:TEXT>Constant JCO_CLIENT_MSHOST was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="11">
<mx:TEXT>Constant JCO_CLIENT_R3NAME was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="12">
<mx:TEXT>Constant JCO_CLIENT_SNC_LIB was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="13">
<mx:TEXT>Constant JCO_CLIENT_SNC_MODE was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="14">
<mx:TEXT>Constant JCO_CLIENT_SNC_MYNAME was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="15">
<mx:TEXT>Constant JCO_CLIENT_SNC_PARTNERNAME was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="16">
<mx:TEXT>Constant JCO_CLIENT_SNC_QOP was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="17">
<mx:TEXT>Constant CUA_MASTER was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>
</mx:WARNING>
<mx:WARNING seq="18">
<mx:TEXT>Constant CREATE_TECHUSER was not defined in the repository (-1)</mx:TEXT>
<mx:ENTRY/>

I'm guessing that for some reason the task doesn't know what repository to use (hence all the warnings) but this seems very odd to me.

Hope you guys can shed some light. Thx

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hello Jonathan,

I ran into the same error and solved it by configuring the missing values in the identidy center:


1. In Indentity Center go to <your database>
   ->Management->Repositories-><your abap repository>
2. Open  the Constants
3. Add values to  JCO_CLIENT_R3NAME,  JCO_CLIENT_USER, JCO_CLIENT_PASSWD
4. GO to the CREEATEABAPUSER Task you are using and assign 
   the <your abap repository> in the Options-Tab
5. Ensure in the ABAP System you have a logon group asigned. If not configured
   in step 3 then JCO uses the lgoon group name PUBLIC. If the ABAP system is not 
   configured accordingly then do this by
5.a Configuring a lgon group in transaction SMLG and 
5.b Run Report RSRZLLG0_ACTUAL with the flag uncheked

IF you run into JCO Errors just check the [JCO error overview|http://wiki.sdn.sap.com/wiki/display/EP/TroubleshootingSAPJavaConnector%28JCo%29].

Good luck

Mark

Former Member
0 Kudos

Hi,

I don't think you should put a repository on the ABAP tasks explicitly as this will limit you to only working with one ABAP repository. You should link the tasks to the repository in the repository event tasks. The repository is then picked up and used explicity, this does however mean you can't test the provisioning task in the MMC but have to create something in the UI to assign a priviliege to perform testing.

Hope this helps,

Ian

Former Member
0 Kudos

Hi Jonathan,

This issue can occur when you tried to launch a provisioning job that needs to get value of constant defined into your repository definition.

How do you launch this task ?

1. If it appends when you add a privilege to an user, make sure your privilege is linked with the correct repository (MX_REPOSITORYNAME attribute of the MX_PRIV). Then make sure constant of this repository are well defined.

2. If it appends by using the "test provisioning" feature from popup menu of "right click", it's normal because job does not know which repository to provision.

3. If it appends from a javascript uProvision function, make sure that you indicate the correct repository ID (and not the name).

Benjamin

former_member283791
Participant
0 Kudos

Well what I did was, I added the ACCOUNT<rep> field to the Change Identity web task.

Then I added 82/ModifyABAPUser to add and modify Event Tasks of the ACCOUNT<rep> Identity Store attribute.

So then when I create a new user through the web interface, use the Change Identity user task and add a user name to the ACCOUNT<rep> field the task triggers and I hoped it would create the user on the ABAP repository. But that's when I get the error.

Former Member
0 Kudos

Jonathan,

The way you work will not work with standard framework. SAP Logic is :

1. You have privilege linked with repositories (from Initial Load)

2. You ADD/REMOVE privilege(s) to an identity

3. Task above is automatically triggered and launches the provisioning task set into your repository constants (MX_PROVISIONTASK and MX_DEPROVISIONTASK)

4. Corresponding workflow is launched

5. Workflow checks if the identity has already an account on the corresponding repository (by checking value of ACCOUNT<REP>)

6. If not, a job will create an ABAP User and then set ACCOUNT<REP> of the identity

7. Then a Job will assign chosen privileges (step1) into ABAP Application.

So you have no web task designed for "Create an ABAP User" naked (means with no role/profile)

But only "ADD or REMOVE Privilege or Business Role" and the workflow will create/remove an ABAP User if needed.

Have a look on Implementation Guide and Starting Guide,

Benjamin

former_member283791
Participant
0 Kudos

I have been reading the implementation guide but I do not feel that it gives me a good insight in the workings of the framework or IDM. You on the other hand are answering questions and saything things I understand. Even though my issue isn't solved yet I already want to thank you.

So I have removed the Event Tasks, created a business role which contains a privilege from the repository I'm trying to create the user on.

I added the user to the repository and on the first step he executes: SetTempAccountFlagForSystem I get the following error:

Exception from Modify operation:com.sap.idm.ic.ToPassException: ToIDStore.modEntry failed modifying entry 'MX_5614'. IDStore returned error message: " Not allowed to modify entry type:Attribute: MX_ENTRYTYPE" when storing attribute 'MX_ENTRYTYPE=MX_PERSON'

Former Member
0 Kudos

Hi,

It sounds that your are using PENDING VALUE. "MX_5614" is a generated MSKEYVALUE of PENDING VALUE object.

I guess you set Provisioning and Deprovisioning task directly on the PRIVILEGE tab.

If you do not want to use pending values, you should not set any value in PRIVILEGE tab but directly into the repository of whom PRIVILEGE are owned.

Benjamin

Former Member
0 Kudos

Hello,

I guess the entry type is selected in the pass. Deselect the Entry type in the destination tab of the pass and also select the repository name at the task level.

former_member283791
Participant
0 Kudos

thanks for your answers guys.

@ Anup: I'm using tasks from the SAP provisioning framework and would firstly like to get every working in the "standard" way (if there is such a thing) so if I need to start changing passes I'm guessing it's not standard anymore so I'd like to look for a different solution there.

@Benjamin: thx for the try but I did actually define my tasks on the repository and not on the privilege.

I am curious though as to what this pending value inclueds which he's sending. Because what I do on the web interface is: load a business role, then add a user to the business role and save it. So based on what I do there he's supposed to know the user doesn't exist yet in the repository and create it ... but what's the pending value he uses then?

Former Member
0 Kudos

You can take help from the framework provided for SAP