Changing DN for GROUPS using API

I have such code that I change GROUP attributes in OID with:
ModPropertySet m=new ModPropertySet();
Group mygroup;
mygroup=new Group ( Util.IDTYPE_DN,groupName );
m.addProperty(LDIF.RECORDCHANGE_TYPE_MODDN,"distinguishedname",newDN);_
m.addProperty(LDIF.ATTRIBUTE_CHANGE_TYPE_REPLACE,"displayname",newDisplayName);
m.addProperty(LDIF.ATTRIBUTE_CHANGE_TYPE_REPLACE,"description",newDescription);
mygroup.setProperties(dirctx,m);
The above piece of code works well if I exclude the line with distinguishedname or DN.
otherwise it returns this exception:
NamingException encountered in ldapModify [LDAP: error code 65  Failed to find distinguishedname in mandatory or optional attribute list]
Interestingly, if I put a bad newDN there, such as "hello", (not in the form of cn= .. , ...) it says:
NamingException encountered in ldapModify cn=tester,cn=groups,dc=pooyaco,dc=com: [LDAP: error code 34 - Invalid DN Syntax]
My question is that whether I can change DN using APIs like this or not? and how?
Thank you.
Farbod

To change the RDN or DN you will need a modRDN/modDN operation, and not a direct LDAP modify.
For this you can use the Java JNDI API, see:
http://java.sun.com/docs/books/tutorial/jndi/ldap/rename.html
BR,
Octavian

Similar Messages

  • Delete future changes in person Screen using API

    Hi all,
    I am working on converting Contingent worker into an Employee using API. (Steps : terminate CWK API -> hire_into_job API)
    In that, If any future changes exists in person screen for a contingent worker then its not allowing me to terminate that person.My client requirement is to remove future changes if exists and convert as an Employee.
    I am not able to find the correct API to delete the future changes in person screen. I have checked the hr_person_api.delete_person but in API description, they mentioned it is to purge the person totally from database.
    Please help me on this.
    Thanks in Advance.
    Regards,
    Mani

    Sorry mate, cant find any.
    Bad that there isn't a public API for the same.
    Not checked the code in PERWSHRG.fmb.
    But how many people would have future changes ? Are there 10s of 100s ?
    may be you can -
    # If you just have simple changes in the future(i.e. no person_type changes which effect Periods of service etc..), you can simply delete the future changes and move the end-date of the penultimate record to end-of-time(31-Dec-4172). Just be sure this wont effect any others child tables(assignments, per_periods_of_service, per_person_type_usages_f etc..)
    Cheers,
    Vignesh

  • Unassign user from a OIM Group using API/Java Code

    Hello OIMers,
    Can you please tell me how should I Un-assign a group membership through code?
    This is the case:
    When the user is deleted from Active Directory, I want to Unassign the User from a group, assume the name of the group is "FullTime Employees".
    Currently How I do this is Click on the User Profile in Admin Console then select Group Membership from drop down and then select unassign for that group.
    Please tell me how should I do the above task programmatically, This would solve my problem.
    Thanks everyone in advance.
    Regards,
    VSN

    Hi all,
    I am using the following api:
    uintgroupf = (tcGroupOperationsIntf)tcUtilityFactory.getUtility(db, "Thor.API.Operations.tcGroupOperationsIntf");
    uintgroupf.removeMemberUser(arg0, arg1);
    arg0 - is group key............Can you tell me how should I fetch this Group Key??
    Thanks.
    Regards,
    VSN

  • How to set default payment method for Supplier using API

    Hi All,
    I am doing data conversion and loading suppliers using ap_vendor_pub_pkg.create_vendor api. But, I cannot see any payment_method_lookup_code column in the RECORD type AP_VENDOR_PUB_PKG.r_vendor_rec_type.
    how do I assign a default payment method to a vendor ?
    Thanks
    Shankar

    Seems like an ER with Oracle Support.
    Bug 11895105: ADDING PAYMENT_METHOD_LOOKUP_CODE FOR AP_VENDOR_PUB_PKG.UPDATE_VENDOR_SITE
    Currently system doesnt allow you to update the PAYMENT_METHOD_LOOKUP_CODE in AP_VENDOR_PUB_PKG.Update_Vendor_Site.Because above column does not define in l_vendor_site_rec regardless other procedure.

  • Objectclass for change documents for contracts using condition record no.

    I want the changes for price, Price per and currency for contract based on the info record number and contion record number.
    Presently i am using object class is COND_A. But if user changes  multiple times price, price per and currency by deleting existing price  and created new price or price per or currency, this case it is saving only latest data based on the change document.
    I want to change the logic as based on the change document, i will display the all changes of price, price per and Currency.
    Could you suggest object class for this?

    Hello,
    Please check with the following user exit for the requirement that you have cited :
    1. USEREXIT_XKOMV_FUELLEN_O_KONP (SAPLV61A) ( RV61AFZB ).
    2. EXIT_SAPLV45L_001
    Kindly check with these two above user exit and let me know if your requirement is fulfilled.
    Regards,
    Sarthak

  • Need to submit request for revoke using API

    Hi,
    I need to submit request for revoke application instance using the OIM API, so that once the request is raised OIM approvals should get trigger.
    Could you please share some sample code to achieve this, I am able to raise the request for provisioning but facing issue while raising request for revoke.
    Thanks.

    Hi,
    Refer this : OIMService (Oracle Fusion Middleware Java API Reference for Oracle Identity Manager)
    Specify operation as RequestConstants.MODEL_REMOVE_ROLES_OPERATION
    Reference : RequestConstants (Oracle Fusion Middleware Java API Reference for Oracle Identity Manager)
    Thanks,
    Pallavi

  • Comparing dates for equality using API

    Hello,
    I was wondering if you could help me understand if it is possible for me to compare two dates for equality.
    I am looking to only compare the date and the month. So, if I am checking "today" with another objects Date for equality, it obviously fails because the compareTo and the equals method of both Date and Calendar, I think, are comparing even the timestamps.
    here is something I wrote for testing, which obviously is of no use
    Calendar today = Calendar.getInstance();
    Calendar later = Calendar.getInstance();
    later.set(Calendar.HOUR, 03);
    System.out.println(today.getTime());
    System.out.println(later.getTime());
    if(today.equals(later)){
       System.out.println("BIG BANG");
    if(today.compareTo(later)<0)
       System.out.println("Today Date is Lesser than my Date");
    else if(today.compareTo(later)>0)
       System.out.println("Today Date is Greater than my date");
    else
       System.out.println("Both Dates are equal");   
    Date today = new Date();
    Date myDate = new Date();
    myDate.setHours(23);
    System.out.println(today);
    System.out.println(myDate);
    if(today.compareTo(myDate)<0)
       System.out.println("Today Date is Lesser than my Date");
    else if(today.compareTo(myDate)>0)
       System.out.println("Today Date is Greater than my date");
    else
       System.out.println("Both Dates are equal");   
       So is then the only way left, is using the simple date formatter and going about things ?

    package forums;
    import java.util.Calendar;
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    public class CalendarExample
      private static final DateFormat DF = new SimpleDateFormat("yyyy-MM-dd");
      public static void main(String[] args) {
        Calendar today = Calendar.getInstance();
        Calendar later = Calendar.getInstance();
        later.set(Calendar.HOUR, 3);
        System.out.println("today="+DF.format(today.getTime()));
        System.out.println("later="+DF.format(later.getTime()));
        System.out.println("isSameDayAndMonth(today, later) = "+isSameDayAndMonth(today, later));
        System.out.println("\n");
        Calendar tomorrow = Calendar.getInstance();
        tomorrow.set(Calendar.DATE, tomorrow.get(Calendar.DATE)+1);
        System.out.println("today="+DF.format(today.getTime()));
        System.out.println("tomorrow="+DF.format(tomorrow.getTime()));
        System.out.println("isSameDayAndMonth(today, tomorrow) = "+isSameDayAndMonth(today, tomorrow));
        System.out.println("\n");
      public static boolean isSameDayAndMonth(Calendar a, Calendar b) {
        return a.get(Calendar.DATE) == b.get(Calendar.DATE)
            && a.get(Calendar.MONTH) == b.get(Calendar.MONTH)
    }You're welcome... Javas standard date libraries leave a lot be desired. I recommend you try Joda, which is [a long standing JSR, which has never gotten up|http://www.theserverside.com/news/thread.tss?thread_id=44248].

  • Change portal login ID using API.

    Can anybody let me know how to go about changing the login ID of portal users from the API.

    Hi Michael,
    We have a custom app where admins can change the UME users. All the users login with email ID. And admin will be able to change the email ID's (which inturn should change the portal login ID). Can you put some light on how I should do this. Is there a work around ?
    Thanks

  • Error in creating Employee using API

    Hi , i am not able to send the data to base table using the below mentioned code for employee using API:
    --Declaration of Variables
    DECLARE
    --l_person_type_id integer;
    l_per_object_version_number number;
    l_asg_object_version_number number;
    l_person_id number;
    l_assignment_id number;
    l_per_effective_start_date date;
    l_per_effective_end_date date;
    l_full_name varchar2(60);
    l_per_comment_id number;
    l_assignment_sequence number;
    l_assignment_number varchar2(30);
    l_name_combination_warning boolean;
    l_assign_payroll_warning boolean;
    l_emp_number varchar2(100);
    v_ogi number;
    v_bgi varchar2(100);
    CURSOR g_valid_emp_cur
    IS
    SELECT *
    FROM xyl_conv_employee_stg
    WHERE error_flag = 'V';
    Begin
    --select business_group_id,organization_id  into v_bgi,v_ogi from hr_operating_units h where h. name=oraganization_name AND TRUNC (NVL (date_to, SYSDATE + 1)) > TRUNC (SYSDATE);
    for valid_rec in g_valid_emp_cur
    loop
    select h.business_group_id,h.organization_id into v_bgi,v_ogi from hr_operating_units h where h.name='Vision Sweden' AND TRUNC (NVL (date_to, SYSDATE + 1)) > TRUNC (SYSDATE);
    -- l_emp_number := valid_rec.employee_number;
    dbms_output.put_line('Business Group Id' || v_bgi);
    begin
    hr_employee_api.create_employee
    (p_validate => false
    ,p_hire_date => to_date(valid_rec.hire_date, 'dd/mon/yyyy')
    ,p_business_group_id => v_bgi
    ,p_last_name => valid_rec.last_name
    ,p_sex => valid_rec.sex
    ,p_date_of_birth => to_date(valid_rec.date_of_birth,'dd/mon/yyyy')
    ,p_employee_number => l_emp_number
    ,p_first_name => valid_rec.first_name
    ,p_nationality => null
    -- p_person_type_id => l_person_type_id
    ,p_person_id => l_person_id
    ,p_assignment_id => l_assignment_id
    ,p_per_object_version_number => l_per_object_version_number
    ,p_asg_object_version_number => l_asg_object_version_number
    ,p_per_effective_start_date => l_per_effective_start_date
    ,p_per_effective_end_date => l_per_effective_end_date
    ,p_full_name => l_full_name
    ,p_per_comment_id => l_per_comment_id
    ,p_assignment_sequence => l_assignment_sequence
    ,p_assignment_number => l_assignment_number
    ,p_name_combination_warning => l_name_combination_warning
    ,p_assign_payroll_warning => l_assign_payroll_warning
    commit;
    EXCEPTION
    WHEN OTHERS THEN
    ROLLBACK;
    dbms_output.put_line(SQLERRM);
    end;
    end loop;
    end;
    SHOW ERR;
    It says enter a person number. Any help would be appreciated.
    Edited by: user8984055 on Feb 9, 2013 4:25 AM

    Hi,
    When you are doing the initial data migration at that stage you should set up the employee numbering and other numbering mechanism to manual. The reason of doing so is that when you are doing migration at that point you have the employee numbers with you for existing employees.
    Once you data migration is done then you have to go to BG information and update the mechanism to Automatic. Also, if you numbering mechanism is automatic and you are not able to change to manual or vice-verse in the BG definition then use will have to use the concurrent program "Change Employee number mechanism". You will have to make the decision of changing from one type to another in a proper way.
    Please find below some related articles on metalink for your reference
    How to Change Employee Numbering from Manual to Automatic?     (Doc ID 292257.1)
    Is it Possible to Update Generate Employee Number Method From Automatic to Manual?     (Doc ID 393827.1)
    Unable to Switch From Auto to Manual for Employee Number Generation in Shared Hr     (Doc ID 452044.1)
    How to control automatic employee numbering?     (Doc ID 473065.1)
    Need To Change The Employee Numbering From Automatic To Manual     (Doc ID 291634.1)
    Hope this helps.
    Thanks,
    Sanjay

  • TO for Group (VL06O)

    Hello,
    I am facing an issue while creating 'TO for group' using VL06O. Many deliveries are bundled in WM-group.
    Sometimes I found that deliveries are skiped while TO creation, but when I again try to create the TO (using TO for group) it giving error that "Group xxxxx already processed".
    This way I can not attach the TO with that particular group...
    Is there any smooth way to create the "TOs (outbound delievries) bundle to a particular group"
    Please suggest....
    Regards,
    JPS

    Hi JPS,
    In our WM environment we group together deliveries and then create transfer orders for the group for the purposes of picking and then allocate picked stock back to deliveries before post goods issue.  We have a slightly different process which works well, which may/may not be applicable to your situation.
    1. Group deliveries by VL06O 
    Select deliveries to be grouped
    Subsequent fuctions > Group > Wave Pick
    Enter wave description
    Then you are given a group number.
    2. Create TOs via transaction LT0E (product will be picked into 996 storage type) for the group number.
    3. Once picked, product is allocated back to deliveries (storage type 916) via LT42.
    Thanks
    Colin

  • How do you change the volume used for group folders in Lion Server?

    So I'm slowly acclimating to Lion Server, however, I'm not able to determine how to specify the parent folder for Groups.  By default it's the /Groups root directory on the boot volume however I'm trying to change it to an alternate drive on a separate volume.  I've tried removing the sharepoint from the 'Server' admin utility and adding the alternate Group folder (on a separate volume) but to no avail.
    Has anyone else worked with this?

    Hey,
    Open Workgroup Manager app, from the ServerAdminTools, (link) enter your domain name for your server (FQDN), enter your OpenDirectory administrator user and password, go to Groups > Groups Folder.
    Hope this helps.

  • How do i use WGM or dcsl to change the primary groups of users, defined by another group?

    i've got a ton of users, whose primary group is "current student". they all belong to the other group "year 13"
    they've left school, so i thought it would be easy to do a search of users with GID equal to or containing the GID for "year 13" (in this case 1121) and then change their primary group to "left school"
    except that doesn't work. i can only search for them in WGM by primary group, it seems. therefore i cannot do any batch operations on a secondary group.
    so. how do i do this? is there a way of scripting dcsl to find users by 'other group' and then change the primary group attribute?
    i'm going to need to be doing a lot of this (changing the other gropus of a school full of students). bit stumped.
    help!

    ok. for some reason neitehr root nor my account (which is part of the open directory admin group) can make changes using dscl.
    when addingremoving users from groups, remember that teh UUID has to be added/removed too
    this is getting there:
    old=year11
    new=year12
    for item in `dscl /LDAPv3/127.0.0.1/ read /Groups/$old GroupMembership | cut -d: -f2`
    do
    echo $item
    UUID=`dsmemberutil getuuid -U $item`
    case "$UUID"
              in
              "There is no uuid for user $item")
                        echo "user $item need personal attention"
                        dscl -u diradmin -P 'somepassword'  /LDAPv3/127.0.0.1 append /Groups/$new GroupMembership $item
                        dscl -u diradmin -P 'somepassword'  /LDAPv3/127.0.0.1 append /Groups/$new GroupMembers $UUID
                        if [ "`dsmemberutil checkmembership -U $item -G $new`" == "user is a member of the group" ]  ; then
                        echo "$item added to $new"
                        dscl -u diradmin -P 'somepassword'  /LDAPv3/127.0.0.1 delete /Groups/$old GroupMembership $item
                        dscl -u diradmin -P 'somepassword'  /LDAPv3/127.0.0.1 delete /Groups/$old GroupMembers $UUID
                                  if [ "`dsmemberutil checkmembership -U $item -G $old`" == "user is a member of the group" ]  ; then
                                  echo "removal of $item from $old failed"
                                  else
                                  echo "removal of $item from $old succeded"
                                  fi
                        else echo "append of $item to $new failed"
                        fi
              esac
    done

  • Profit Center Group Organization Change - Effective for Prior Periods

    Hi Experts,
    A client wants to perform a horizontal organization change (profit centers) and see the effects retroactively to the prior periods.  To achieve this, they plan to re-execute the consolidation tasks going back two to three years once the org change is made, so that they have comparative financial statements that take into account the change.  The requirement is to re-post the group level postings to the updated profit center group after the change.  For example, Italy related postings would occur under the group Central Europe instead of Western Europe as before.  All the group level postings previously booked to Western Europe would now need to recorded under Central Europe going back prior periods.
    Does anyone have any ideas as to how to meet the requirement without re-consolidating?
    One option was the restatement feature but based on the SAP help description of the monitor required, it does not take into account consolidated postings, only uploaded PL00-10 data and translation.
    Another option is to copy the version but then the results is in another version rather than the original 'actual' "100" version.
    Any ideas would be appreciated.
    Thanks
    Eyal Feiler

    Eyal,
    I know of no other way to accomplish this than to re-execute the consolidation for the prior periods after the hierarchy has been changed.
    I have used the restatement feature and like you have found it very limited.
    The copy to another version would only work if you copied the existing data to the new version before re-executing the consolidation. The the version 100 can be re-consolidated for the previous periods and the existing reports do not have to be changed for a new version.
    However, with the copy, it is important to set the cons group and cons unit hierarchies to be version dependent so the changes are only good for the version that is to be re-consolidated for previous periods. This allows you to report on the data before the change where the logic will read the old, unchanged version of the hierarchy.
    Dan

  • [svn] 4283: PARB Review changes for Group and DataGroup.

    Revision: 4283
    Author: [email protected]
    Date: 2008-12-10 14:34:18 -0800 (Wed, 10 Dec 2008)
    Log Message:
    PARB Review changes for Group and DataGroup. The main API changes are:
    - content property on Group and FxContainer renamed to mxmlContent.
    - contentFactory property on FxContainer renamed to mxmlContentFactory
    - New names for DataGroup methods: getRendererForItemAt(index:int):IVisualElement and getItemIndexForRenderer(renderer:IVisualElement):int. These are now in the mxml_internal namespace (not public anymore)
    - registerRenderer and unregisterRenderer are private methods (not public)
    Also, I made a minor fix to ITransformable.
    QE Notes: Steve's changing the mustella tests for me and will be checking in shortly.
    Doc Notes: None
    Bugs: SDK-18042
    Reviewer: Hans
    tests: checkintests, Steve ran mustella tests for all of gumbo and states
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-18042
    Modified Paths:
    flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/CircularScrollBarSkin.mxml
    flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/CircularScrollBarTrackSkin.mx ml
    flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/MyScrollBarTrackSkin.mxml
    flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/MyVScrollBarSkin.mxml
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.as
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButtonBar.as
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxListBase.as
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.a s
    flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxDefaultComplexItemRenderer. mxml
    flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/ITransformable.as
    flex/sdk/trunk/frameworks/projects/wireframe/src/wireframe/FxDefaultComplexItemRenderer.m xml
    flex/sdk/trunk/frameworks/projects/wireframe/src/wireframe/FxDefaultItemRenderer.mxml

    Dear friend,
    Check table: V_503_ALL 
    V_T512Z and V_511_B are the tables for assigment of Permissibility based on ESG and PSA
    After creating new EG/ESG (grouping also).
    Please note that when we update Employee Group/Subgroup of position in PP01, it is not effective to PF in master data which was maintained with that position & old Employee group/supgroup.
    So you should check:
    - Position
    - PFs with old EG/ESG.
    Regards
    Edited by: tungph on Oct 19, 2011 11:14 AM
    Edited by: tungph on Oct 19, 2011 11:17 AM

  • Change to Consolidation Group and avoid using CoI

    Hello,
    We would like to use the BCS functionality Change to Consolidation Group but we don't want to implement CoI Consolidation of Investment at all. All the threads I have read seem to indicate that one has to set up CoI. Please can you advise.
    Thanks

    Hello all,
    thank you for your responses - where under Consol Grp Change do I find the setting for the the appropriation of retained earnings? I can see the one for CoI.
    Also I have had a look at both the Preparation for Acquisition and Preparation for Divestiture
    http://help.sap.com/saphelp_sem60ep1/helpdata/EN/0c/ab0240536fe369e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_sem60ep1/helpdata/EN/63/af0240536fe369e10000000a155106/frameset.htm
    which give some examples of what to expect in terms of postings and reporting re posting levels. but would still appreciate more explanations of the Posting Logic when one runs the task if you know.
    Thanks

Maybe you are looking for

  • How can I get my macbook to load photos on Pinterest the little spinner in the address bar spins forever.

    I have never been in apple communities so I may not be posing this correctly.  Here goes.  When I go to my Pinterest account sometimes the pin photos to not appear.  If they do and I go to my pin boards none of my pin photos show. I have turned off m

  • Way of using EL.

    Hello. I'm wroking on my assignment,now. And I found my way of using expresion language is wrong.... I use HashMap and I put elements like below. String username = request.getParameter("username"); String userpage = request.getParameter("pagename");

  • HOW DO I TURN OFF "ALL CAPS"?

    I'M WRITING THIS IN ALL CAPS BECAUSE I CAN'T TURN OFF ALL CAPS...THE CAPS LOCK DOESN'T SEEM TO WORK. WHAT CAN I DO TO CORRECT THIS? THANKS AND I'M SORRY I'M YELLING.

  • T440S screen suddenly turns blue-grey and I had to force it to power off

    (Updated with Event Viewer logs. Not sure if they are relevant. See the end of the message, right before the picture) This computer is less than 1 year old and has already given me several problems. This is the the most recent one. Basically, the scr

  • Using system configuration gui tools in Gnome - Permission problems.

    I have been using Arch for a couple of months now, on both my laptop and desktop, I have the same problems on both of them. I have searched all through these forums, and still have no enlightenment on my problem. I am using Gnome 2.26.3, and have not