OIM API: findUsers() with empty fields?

I'm trying to find all users who have an empty USR_USF_CUSTOM field but when I do:
searchParams.put("USR_UDF_CUSTOM","");
tcResultSet result = userOps.findUsers(searchParams);
it returns ALL users. Just like it would if doing this search through the GUI.
Is it possible to find users using the above API who have a blank/empty field?
I know I can do a query based operation and pass it sql query, but I want to stay away from that for the time being.
Thanks.

Nops. That surprises but the API's would never return a ResultSet for any field with blank content. You would have to go for SQL query.
Thanks
Sunny

Similar Messages

  • Import ASCII file with empty fields

    Hi,
    I need to import an ASCII file that for the INTCO dimension has a blank field when the source system does not provide a value. I need a conversion file to convert the other values delivered anyway, so I added EXTERNAL: *EmptyField -> INTERNAL: I_NONE at the end, but that generates an error.
    Does anyone know what the correct syntax is to use for an empty field in a conversion table?
    Thanks

    Hi,
    In that case, I would request you to delete the empty column from the flat file and then use *NEWCOL in the transformation file.
    Hope this helps.

  • Order By Clause with Empty Field values !

    Hello,
    In Oracle , the order by clause does not return the expected query result, if any of the field value in the order by clause has an empty string.
    Oracle treats the empty string as null value and ORDER BY gives a result with the empty string field values listed at last.
    For example :
    test is a sample table containing "name" field.
    Query: "select name from test order by name"
    In SQL Server/Access
    Result (1)
    NAME
    (blank)
    (blank)
    User1
    User2
    User3
    In Oracle
    Result (2)
    NAME
    User1
    User2
    User3
    (blank)
    (blank)
    I know some of the Work arounds for this as listed below :
    1) To use NVL in Order By Clause.
    i.e., the modified query
    "select name from test order by nvl(name,0)"
    gives the result same as Result (1).
    2) To have single blank space in the field value if it is empty.
    I dont want to use either of these two options b'se it would lead to a mass change in my existing code.
    Is there any way i can do a
    collation order settings in the Oracle databases to get the results as in MS SQL/Access.
    Can Any help me out in Solving this?
    Thanks
    Devi Shankar
    null

    Bharath,
    I am moving this question to the SQL forum.
    Regards,
    Geoff

  • Filter out datasets with empty field

    Hi Experts,
    I want to filter a Table: Filter out all datasets where the FieldXY is empty. I tried with the filteroperator with expressions like '... is equal to NOT NULL' or '... is equal to NOT ''', but without result! Can some one give me the right expression?
    Kind regards, Bernd

    Hi Bernd,
    This was a bug in SP04
    I tried the
    =!ISNULL(@FieldXY)
    on SP05 and it worked.
    Sorry for the confusion.
    Best Regards,
    Udi

  • Finding contacts with empty fields

    I'm trying to collect all the contacts that have no entry in the "Maiden Name" field to perform an action on them.
    So...
    tell application "Contacts"
      activate
              set thePeople to every person whose maiden name is missing value
              repeat with thePerson in thePeople
             --blah blah blah
              end repeat
    end tell
    What am I missing? It's returning every entry in my address book, regardless of whether there's info in the maiden name field or not.
    Thanks in advance!

    Well that's really strange because it doesn't work on my system. (10.8.3)
    Some of the contacts have a mothers maiden name filled in, others don't. Reversing the logic didn't work wither, but, oddly, using the logic in a different way DID produced the expected results:
    tell application "Contacts"
      activate
              set thePeople to every person
              repeat with thePerson in thePeople
                        if ((maiden name of thePerson is missing value) and (company of thePerson is false) and (first name of thePerson is not missing value) and (last name of thePerson is not missing value)) then
                                  --blah blah blah
                        end if
      end repeat
    end tell
    Any thoughts why that would work and the other way wouldn't?

  • OIM API: findUsers() vs. findAllUsers()

    Does anybody know what the difference is between the findUsers() and findAllUsers() methods in the tcUserOperationsIntf class?
    The java doc says "Returns a list of users that match the provided attribute list." for both methods.

    There is no difference in the actual method implementation. I could not find anything. So basically the same for OIM11G. I heard someone pointing out that it worked a bit different in 10g but for 11g it looks the same to me. Try and execute both, you will find it

  • Update only non empty fields

    Hi everybody,
    I'm trying to develop a trigger-based solution for a project involving received messages from an MQ queue.
    The messages are all inserted from the queue into a single staging table. (v10.2.0.4)
    Each message's data will need to be either inserted or updated to a destination table based upon a field's value in the staging table.
    I was planning on putting a trigger on the staging table and calling an insert or update procedure based on the staging field's value.
    The inserts are pretty straightforward.
    It's the updates that I'm struggling with - some of the staging fields will be populated, others will be empty. There is no pattern to which fields will or will not be populated.
    I do not want to update the destination table with empty fields - I only want to update fields that contain data.
    Is there an better way than several "if-then check for empty, then update" (one for each field)?
    Maybe some sort of magical dynamic update?
    Any help is greatly appreciated.
    Thanks in advance!

    Hi,
    You can use the NVL function (or COALESCE), which returns the first of its arguments that is NOT NULL.
    Instead of:
    UPDATE  dest
    SET     column_a = x
    ,       column_b = y
    WHERE   id = z;say
    UPDATE  dest
    SET     column_a = NVL (x, column_a)
    ,       column_b = NVL (y, column_b)
    WHERE   id = z;If x IS NOT NULL, then NVL (x, column_a) will return x.
    If x IS NULL, then NVL (x, column_a) will return column_a
    You could also automate this in a BEFORE UPDATE trigger:
    :NEW.column_a := NVL (:NEW.column_a, :OLD.column_a);
    :NEW.column_b := NVL (:NEW.column_a, :OLD.column_b);but if you do, you'll have to disable the trigger to correct mistakes that really should be NULL.

  • Email Notifications - I dont want them including empty fields

    Is this possible?
    After my form is filled out, I only want the filled fields to show in my notification email otherwise it gets cluttered with empty fields.
    I see that the person submitting the form can get an email included submitted data without the empty fields.
    Is there a work around for this?

    We now provide an option to not include empty fields when sending an email notification.

  • FormData Information updation with OIM APIs

    Hey Guys,
    I try to use the OIM APIs to update a custom field that is present on a formdata.
    e.e: in the web base ui, you search for a user, go to resource profile, and then I have my OID provisioned resource, when I click on view, I have the a formdata that popups with fields taht I want to update.
    I've done the following until now:
    - search the user with the findUsersFiltered API to retreive the User.key
    - search the object associated to the user by using getObjects with the User.Key retreived
    This search return a list of objects AND I can identify my provisioned Object:
    The informations that seems usefull are:
    * Users-Object Instance For User.Key-value
    * Object Instance.Key-value
    * Objects.Key-value
    * Process Definition.Process Form Key-value
    I'm block there, I'm not sure the different options for:
    - reading the form data field for this resource
    - updating some form data for this resource
    Any help would be great !

    I've done it,
    For information it was with using Process Definition.Process Form Key-value

  • OIM API portablity issue  with OIM 9.1 / Weblogic 10.3

    Hi , We have a existing piece of code which does some User Mutation through OIM API.
    [I am not well versed with OIM ]
    The code was running fine with Weblogic 8.3 and previous OIM version.
    Here is the piece of code.
    logger.info("Initializing OIM Params from config location:" oimConfigFileUtil.getOIMConfigBase());+*
    +          System.setProperty("XL.HomeDir", oimConfigFileUtil.getOIMConfigBase().getAbsolutePath());+
    +          System.setProperty("java.security.auth.login.config", oimConfigFileUtil.getOIMAuthWLFile().getAbsolutePath());+
    +          ConfigurationClient.ComplexSetting configClient = ConfigurationClient.getComplexSettingByPath("Discovery.CoreServer");+
    +          env = configClient.getAllSettings();+
    *+          try {+*
    +               oimAccessFactory = new tcUtilityFactory(env, oimConfigFileUtil.getUserID(), oimConfigFileUtil.getPassword());+
    I traced all the dependecy's for this piece of code.
    If I run this with Weblogic.jar[8.1] it gives me
    java.io.InvalidClassException: com.thortech.xl.dataaccess.tcDataSet; local class incompatible: stream classdesc serialVersionUID = -5446056666465114187, local class serialVersionUID = -8857647322544023100*
    With the compatablity issue I substituted with weblogic.jar:10.3 , now its giving me all classpath issues.
    Can someone layout the exact jars that are required for this to work?
    Thanks
    Vignesh

    Installl a Design Console. Copy any files that are required. Then take the class paths that are listed in the classpath and basecp files and put those into your application classpath files.
    -Kevin

  • Contract - problem with attachements (empty field in LOIO_OBJID)

    Hi Guys,
    We are using extended classic scenario of SRM 4.0 (SRM Server 500) and our latest support package is SAPKIBKS12. We have the following problem with contracts.
    Sometimes when an attachment is added to a contract the system does not fill the following fields in tabel BBP_PDATT.
    LOIO_CLASS: Normally filled with BBP_L_DOC
    LOIO_OBJID: Normaly filled with a GUID size datastring
    Whenever this happens and later on the contract is changed and released the system will raise an abort. We tried the following notes but no good result.
    891293,919467,932602,964065. Some other notes that might be possible are 1042826/1085700/1083063 but we also don't have good experience with these ones.
    Can anyone give us advice about two things.
    1) Is there a way to fill the empty fields in BBP_PDATT so that existing contract will work properly again?
    2) Does anyone know why this problem occurs and how to fix it for new contracts?
    Hope to hear from you,
    Arie

    Thankyou for the reply. I have made following changes but still not working. I am creating the inquiry and customer material is not getting populated. Please guide in resolving the issue.
    DATA : W_ENQUIRY_ITEM_INX LIKE BAPISDITMX OCCURS 0 WITH HEADER LINE.
    W_ENQUIRY_ITEM_INX-ITM_NUMBER  = THEAD-ITEMNO.
          W_ENQUIRY_ITEM_INX-UPDATEFLAG  = 'X'.
          W_ENQUIRY_ITEM_INX-CUST_MAT22 = 'X'.
    APPEND W_ENQUIRY_ITEM_INX.
    CALL FUNCTION 'BAPI_INQUIRY_CREATEFROMDATA2'
       EXPORTING
       SALESDOCUMENTIN               =
         INQUIRY_HEADER_IN             =  W_ENQUIRY_THEAD
      IMPORTING
        SALESDOCUMENT                 = W_NUMBER
       TABLES
        RETURN                        = W_RETURN
        INQUIRY_ITEMS_IN              =  W_ENQUIRY_ITEM
        INQUIRY_ITEMS_INX             =  W_ENQUIRY_ITEM_INX
         INQUIRY_PARTNERS              = T_INQUIRY_PARTNERS

  • Records with a picklist field with empty values can't be seen from a report

    Records with a picklist field with empty values can't be seen from a report. I've created a report that have a picklist as a column. When there is no values the record(s) associated to this picklist don't appear. Do you know what are the common causes for this event?
    Regards
    Arturo

    Hi samrat chakraborty ,
    go to SUIM > roles > roles by complexselection criteria>
    under the selection according to authorization values give the object's  form SU53 screen and press enter it will asks the values for given object pass the values as per the SU53 and execute it will give the list of roles.... capture the roles. The user gets access if you give the any one of the listed roles is assigned, assign the role as per your approval process.
    Check with the below link for more assistence:
    http://help.sap.com/saphelp_erp2004/helpdata/EN/71/8fba30840c6e4d90da3526971cc684/frameset.htm
    Regards,
    S.Manu.

  • Replace the empty field with below data content field in xml pub report

    Hi Gurus,
    Please give me the solution for the Replacement of empty field with below data content field in XML PUBLISHER REPORT.
    ex:
    Name:Philips.M
    Address 1:XP APPTS,
    Address 2:S:R ROAD
    Address 3:
    COUNTRY:INDIA
    Here i have to get only address 1,address 2 and the COUNTRY data.I dont want to display Address 3 field here.
    Thanks,
    David

    I'm not sure if this answers your question but you could try putting out the address all in one item in the SQL eg somthing like:
    address1 || DECODE(address1, NULL, NULL, 'newline character') ||
    address2 || DECODE(address2, NULL, NULL, 'newline character') ||
    address3 || DECODE(address3, NULL, NULL, 'newline character')
    where 'newline character' is somthing like CHR(12)
    Dave

  • Create Access Policy with OIM API: can't fill child form

    Hi!
    I'm having a problem with creating OIM Access Policy with API. I'm doing the following:
    1. Create a new access policy via AccessPolicyIntf
    2. Add a resource object which will be provisioned to all users who are within policy scope
    3. Get Resource Object (Parent) Form Definition via FormDefinitionIntf
    4. Add data to parent form (AccessPolicyIntf setFormData(FormDefinitionKey))
    5. Now I want to add data to the child form, for that purpose I need to know child form definition key, but I can' get one, because there's no method like 'getChildFormDefinitionKey' in FormDefinitionIntf interface.
    Please, help me to get child form definition key, knowing parent form definition key and version

    See if this code helps:
    public String addChildTableValue(long userKey, String group, String objectName, String fieldName tcDataProvider ioDatabase) {
    log.debug("addChildTableValue() Parameter Variables passed are:" +
    "userKey=[" + userKey + "]" +
    "group=[" + group + "]" +
    "fieldName=[" + fieldName + "]" +
    "objectName=[" + objectName + "]");
    try{
    tcUserOperationsIntf userIntf = (tcUserOperationsIntf)tcUtilityFactory.getUtility(ioDatabase, "Thor.API.Operations.tcUserOperationsIntf");
    tcFormInstanceOperationsIntf formIntf = (tcFormInstanceOperationsIntf)tcUtilityFactory.getUtility(ioDatabase, "Thor.API.Operations.tcFormInstanceOperationsIntf");
    boolean roleExists = false;
    //Result set of all Object for user
    tcResultSet obResultSet = userIntf.getObjects(userKey);
    if (obResultSet.isEmpty()){
    log.error("User has no provisioned objects");
    return "NO_OBJECTS_EXIST";
    }else{
    for (int ii=0; ii<obResultSet.getRowCount(); ii++){
    obResultSet.goToRow(ii);
    if ((obResultSet.getStringValue("Objects.Name").equals(objectName)) &&
    (!(obResultSet.getStringValue("Objects.Object Status.Status").equals("Revoked")) &&
    !(obResultSet.getStringValue("Objects.Object Status.Status").equals("Provisioning")))){
    log.debug("Resource object found: " + objectName);
    //Process Instance Key of the object
    long plProcessInstanceKey = obResultSet.getLongValue("Process Instance.Key");
    log.debug("Process instance key: " + plProcessInstanceKey);
    //Process Key for the parent for
    long plParentFormDefinitionKey = obResultSet.getLongValue("Process.Process Definition.Process Form Key");
    log.debug("Parent form definition key: " + plParentFormDefinitionKey);
    //Form version of the parent form
    int pnParentFormVersion = formIntf.getProcessFormVersion(plProcessInstanceKey);
    log.debug("Parent form version: " + pnParentFormVersion);
    //Result set of Child Form information
    tcResultSet childFormResultSet = formIntf.getChildFormDefinition(plParentFormDefinitionKey, pnParentFormVersion);
    //Child form definition key
    long plChildFormDefinitionKey = childFormResultSet.getLongValue("Structure Utility.Child Tables.Child Key");
    String plChildTableName = childFormResultSet.getStringValue("Structure Utility.Table Name");
    log.debug("Child form definition key: " + plChildFormDefinitionKey);
    log.debug("Child table name: " + plChildTableName);
    tcResultSet childFormData = formIntf.getProcessFormChildData(plChildFormDefinitionKey, plProcessInstanceKey);
    if (!(childFormData.isEmpty())){
    log.debug("Searching child table current values");
    for (int iii=0; iii<childFormData.getRowCount();iii++){
    childFormData.goToRow(iii);
    String fieldValue = childFormData.getStringValue(fieldName);
    log.debug("Child table entry: " + iii + " | value: " + fieldValue);
    if (fieldValue.equals(group)){
    roleExists = true;
    log.debug("Value already exists in child table");
    return "DUPLICATE_VALUE";
    log.debug("Value not found in child table");
    if (!roleExists){
    Hashtable childFormHash = new Hashtable();
    childFormHash.put(fieldName, group);
    formIntf.addProcessFormChildData(plChildFormDefinitionKey, plProcessInstanceKey, childFormHash);
    log.debug("Value successfully added to table");
    return "VALUE_ADDED";
    log.debug("Provisioned resource " + objectName + " object not found");
    return "OBJECT_NOT_FOUND";
    catch(Exception ex){
    ex.printStackTrace();
    return "ERROR";

  • How to Integrate OIM API with the Application in NetBeans

    Hi All,
    I'm Facing problems to Integrate OIM API with the Application. I'm using Netbeans IDE. Can anyone please let me know the steps to do so?? any documents will also help me.
    Thanks

    Hey,
    Helpful links for you:
    1- http://www.youtube.com/watch?v=Yccl0HqfA3o
    2- http://www.youtube.com/watch?v=ZdMTLRF7P_4
    Let me know if it helps you. I hope so.
    Thiago Leoncio Guimaraes

Maybe you are looking for

  • Eed=off in kernel and unable to get my hp printer to work

    ok so im having some trouble with 2 things. the eed=off thing during the kernel booting isnt as much of a problem as it is an annoyance. im more or less having major issues with trying to set up my hp photosmart printer. ive followed the wiki page fo

  • How do you change the MTU size in a Cisco 871?

    This 871 is at a remote site and is an ezvpn IPsec client (network extension mode) back to a 3030 headend. We're having problems with a PC trying to connect through the IPsec tunnel and we think it may be an MTU size problem. Int F4 is the outside in

  • Please help about JTable...thanks

    HI everyone! Please tell me how to write a ACTIONLISTENER for a JTABLE? JTABLE table; Object[][] myArray = {  {"Mary", new Integer(5)}, {"Alison", new Integer(3)}, {"Angela", new Integer(1)} String[] columnNames = {"First Name", "Scores"}; table = ne

  • Another user-modified table '' (NNM1) (ODBC -2039)  [Message 131-183]

    Hi All, I am trying to create a new numbering series in SAB B1 2007 B PL 14 and facing with this error: Another user-modified table '' (NNM1) (ODBC -2039)  [Message 131-183] I would really appreciate your advise since new numbering series is not gett

  • Proxy Server in File Transfer System

    Hi, I need to write out a file transfer system through a proxy server for my project All the while i was writing a file transfer system directly from client to server without any security issue Anyway, the scope is given as below, and i know it needs