Multivalued Look up

The source  file we are working contains multiple values as   A,B,C
In destination i have created that field as Lookup multivalued where we can select more than one value of A,B,C we seek your assistance in  how to map this to my Loolup multivalued field.
thanks in advance.

Hi Aditya,
Say your Source file is
Material Number | Category
100 | A; B
200 | B
300 | B; C
Before importing the above file you need to populate the lookup table i.e. category table.
After populating lookup table map Material Number with Material Number field present in the repository and Category field with the Category field of the main table.
In Value Mapping simply press Automap it automatically map the values, import the records and check the output in Data Manager.
Note: There is a space between the Values after delimiter like A; B otherwise it will not recognise the multiple values.
Regards,
Jitesh Talreja

Similar Messages

  • Multivalued lookup field validation not working

    Hi Experts ,
    I have a scenario where one of my table is looking to a multivalued look up table .
    I have placed a validation on the main table , which works fine if the first value is selected properly , but if i select a wrong record (which should fail according to the vlidation ) it does not fail .
    Eg : For a multivalued field first value i have slected as "TRUE" (which is correct ) - No validation error (as expected)
    again if i seltect another value "FALSE" (WHICH IS WRONG) - No validation error ( Not as expected)
    on the other hand if i select the wrong value in the first attampt the validation fails (which is as expected) .
    Please let me know what has to be done .
    Regards,
    Vignesh

    Hi,
    Can you please explain in details whats your requirement is?
    Many thanks
    Regards,
    Kiran

  • Restrict Certain Values seen in Portal

    Hi all,
    We have MDM/Portal  integreation where i want to Resrtict certain Values which is seen Portal I-Views
    Suppose I have some values like in my MDM lookup Table
    Name    Number
    a           1
    b           3
    c           4
    I don't want allow b and 3 to seen in Portal.How can I acheive in MDM.
    Thanks,
    Madhu

    Hi,
    As per your requirement, It seems like Masks and Named Searches would not help in this case.
    Since Mask and Named searches work for Table of TYPE MAIN only. You don't have this option when you select any other table rather than Main table in record mode of MDM Data Manager.
    I mean to say, In Data Manager Record mode when you select Main table as your current table, if you not select Name(B) and Number(3) from Drill down search for that look-up tables then correspondingly all main table records associated with this look-up field value too would not display for the user who is assigned to this mask or Named search.
    So, I feel you want to display all the records in Portal ( you have there i-view of Record details and detail view) but for look-up field only (legal value of entries) you want to restrict the values from main table .
    So, only using look-up table constraints option you can achieve when you unload your repository ->go to Roles--> Tables and Fields-> constraints , assign that role to user for who you want to restrict the limited no. of look-up values. Here corresponding to your look-up table under constraint column you need to add only those values for that look-up table using Available to selected values(Don't add here b).
    Note: Constraints enabled when a field from main table is look up to Single-valued look-up sub-table( say Flat table, Hierarchy table, Taxonomy table) but not multivalued look-up table(e.g. Qualified Flat etc). Further if you select Flat table as also Multi-valued then constraint would not work.
    Thanks and Regards,
    Mandeep Saini

  • #Multivalue error in BO webi.

    Hi
    We are having a webi report based on two Bex queries. One query on top of a multiprovider and another on a DSO. The DSO contains rate category information and mutiprovide contains customer deatils. "Rate Category" is the common field between the two sources. So we have a merged dimension on top of Rate Category.
    In the report we need to display the winter and summer rates used for a particular customer based on his recent rate category in seperate cells outside the table. Based on the recent meter reading date, we are picking the value of rate category using the below formulas.
    [recent MR date] = max(meter reading date)  // measure variable
    [recent rate category] = if (meter reading date = recent MR date) then [customer].[rate category] //dimension variable.
    Once the recent rate category is got, using the below formula we are doing a look up on the another bex query(which is built on DSO)
    [recent winter rate] = if (recent rate category = [DSO].[rate category]) then [winter rate] //measure variable.
    Upon using these formulas we are getting #multivalue error.
    Please suggest some solution for the above issue.

    Hi Vinayak Gole,
    Check the following Property.
    Right click on the table and check the  “Avoid duplicate rows aggregation” option.
    Then save it and reopen the report .
    Regards,
    Anish

  • Bex Percentage Indicator in the WebI report (# Multivalue)

    Hi All!
    I'm having a difficulty to produce a Bex percentage indicator to a WEB I report.
    This is the result of my query:
    Cycles     
    Qty1     
    Qty2     
    (Qty1%AQty2)
    1     
    100     
    200     
    50%
    2     
    200     
    200     
    100%
    3     
    300     
    300     
    100%
    4     
    400     
    400     
    100%
    So far the report remains perfect.
    When I remove  Cycles dimension report, but let the cycles 1,2,3 and 4 in the Query  filter, the result is  # Multivalue for Qty1%AQty2) measure.
    We tried all kinds of aggregation in BO or in Bex query, and  The Sum aggregation  results the sum of the percentages, when need is that the formula is made again with the totals.
    What we need is it looks like this:
    Qty1     
    Qty2     
    (Qty1%AQty2)
    800     
    1100     
    72%
    Is there any way to make this in Bex and then translate to BO? The formula should be Sum (qte1) / Sum (qty2) *100?
    Or some syntax, that the bo understands what he need to regroup and give the right percentage?
    The final user needs the indicator create in the Universe, not in the report. (In the report works, but not in the Universe measure ).
    I donu2019t know if you get the idea, but I am available for any doubts.
    Specification:
    SAP BO XI r3
    SAP BW 7.0
    Tks a lot!
    Livia

    Have you tried:
    = ( sum([Qty1]) / sum ([Qty2]) ) * 100
    or...
    = ( sum([Qty1]) ForAll [Cycles] / sum ([Qty2])ForAll [Cycles] ) * 100
    You could create some global CKF (creating CKF as local structure formula will not work) in BEx. Go to properties, calculation, Calculate Results As... Sum. You may need to use exception aggregation. Find a characteristic that is the same value for all cycles and use that as the exception aggregation reference characteristic. Using BEx may be the best idea if you have a high volume of records since Webi performance on high volumes is not great.

  • #MULTIVALUE error in some cells only

    I am getting #MULTIVALUE error in few cells in a cross-tab report whereas the rest of the cells show correct results. What can be the reason for this.
    My cross tab report consists of : Physician(Dimension) as a Section, Metrics(dimension) in the rows and Month(dimension) as columns.
    The body contains measures- Rate and Scale. Each Metric has got a defined scale of 0-4 based upon a range of the Rate.
    Scale ia a variable created by me as =[Rating Scale] In ([Provider] Where([Rate] Between([Lower Target Pct];[Upper Target Pct]))
    The report looks like:
                        Jan                   Feb                          Mar
                  Rate  Scale
    Metric1  
    Metric2
    When i try to include the Rate of YTD, the data in the Rate shows correct results wheares the Scale certain cells are appropriate but rest of them throughs #MULTIVALUE error.
    I am not able to comprehend whats going wrong in here.
    Can anyone pls resolve this issue.

    Actually , there is no formula for Scale. Its in-built dimension but to get the correct result in the cross-tab( No irregularities are found for teh results in the horizontal and the vertical report format), I created the variable for scale as follows:
    =Scale ForEach(Provider) Where(Rate Between Lower Target AND Upper Target). After using this variable, I got correct results for the monthly/quarterly data wheareas for the YTD it gives #MULTIVLAUE for few cells, where the scale is different for the every months./quarters. It gives correct result where the rate falls in teh same scale zone for all the months/quarters for a certain Metric.
    For .Ex.
    Metric                   Q1                           Q2                  Q3                      YTD
                         Rate     Scale  
    Tetanus        94         3                     92     3                91  3                 93       3
    BRC              71        2                      91      3               98    4               83       #MULTIVALUE
    I am not able to fathom that why its not taking the YTD into consideration even though I created a different variable for the scale of YTD in which I used the YTD(rate) instead of the actual(Rate).

  • Multivalue error when using the previous() function

    I am getting a multivalue error when using the previous() function on a dimension object in the report.  I thought that the previous function was supposed to look at the current report and then look at the previous record's contents.  How could this possibly give me a multivalue error when the value is clearly output in the previous row?  Anyone have any ideas?
    By the way, this is a valuable function for the types of reports that I design.  The next() function would be even more valuable.
    Thanks for your help.

    Hi Michael,
    Could you please test the following solutions it might help you to resolve the issue.
    Solution1:
    Use slice and dice to reset all the tables that have #multivalue in it. The only problem with this workaround is they have to do the formatting manually.
    Solution2:
    Also, test the issue by changing the object to dimension if it is a measure or to measure if it is a dimension.
    Regards,
    Sarbhjeet Kaur

  • "MULTIVALUE" in reports

    Post Author: Adrin
    CA Forum: WebIntelligence Reporting
    On Web Intelligence report I have encountered this problem. In some queries, if there is more than one value in database for some of the fields of query, the report can't display all values in different rows. It returns the data with the value of "#MULTIVALUE" for some fields.

    Post Author: jsanzone
    CA Forum: WebIntelligence Reporting
    Adrin,
    #Multivalue is a tricky item to navigate around, but let me explain a little bit of why it happens in a WebI environment.
    If you create a section on two items, then your two items must synchronized properly, otherwise your second item (the typical culprit) will show up as a #Multivalue entry.  Let me give you a "for instance".
    You have an ID field and a reference (or description field):  A/Dog; A/Cat.
    Both IDs are A, however, the reference one time shows as "Dog", then again as "Cat".  If you put the ID and Reference in a Section but on two lines (or two cells), the Reference will show #Multivalue because WebI is seeing two items that can go into one space, and boom, you get #Multivalue.  The solution is to go back and look at your data for consistency, if there are any inconsistency then you'll need to fix it and that should clear up the problem.  I'm not very familiar with DeskI, so I'm not sure why you get different results, but when you see the problem in WebI, it normally means that something has not gone along with plan, so you need to regroup.

  • Multivalue set

    Hi,
    Is there a way to set multivalued selection list (set more than one value in the list)? I am using remote API EDK.
    Thanks
    Avishay

    Hi Subbu,
    Even I have got the same error. I'm working on the standard repository SP3_VENDOR so that it will be easier to understand my scenario.
    Main table --> Vendors. Field in the Vendors --> Phone Number. Qualified look-up table --> Phone Numbers.
    Now, Phone Numbers table has 5 qualifies field
    1. Telephone
    2. Standard No.
    3. Sequence No.
    4. Extension
    5. Complete No.
    and non-qualifier field --> Country.
    Hope the scenario is clear.
    I have found out both the record ID for "Vendors" and "Phone Numbers" and changestamp for the main table record.
    But after the same procedure suggested by you, I'm getting "StringException: ModifyQualifiedLinks error".
    Code snippet,
    <b>QualifiedLinkArray qualifiedLinkArray = new QualifiedLinkArray();
    QualifiedLink qualifiedLink = new QualifiedLink();
    //set non-qualifier
    //get the record id of the lookup table for the non qualifier
    int lookupRecordID = getRecordID(<Lookup table name>,<Lookup DF>,<value>);
    qualifiedLink.SetLookupID(lookupRecordID); //set qualifier value</b>
    //for all qualifier fields
    <b>Value val = new Value(rec_value);
    A2iField field1 = new A2iField(<FieldName>,val);
    qualifiedLink.GetQualifiers().Add(field1); </b>
    and then the addition to Array and catalogdata.AddQualifiedLinks();
    I would like to ask if values for all the qualifier fields  needs to be specified(none of them are "required" field). Am I doing something wrong here.
    Please suggest,
    Thanks and Regards,
    Mausam

  • Incorrect Sender value when 'mail' attribute is multivalued

    hi,
    i've just upgraded Sun messaging server 2005Q4 from IMS 5.2 and noted some behavioural difference in the reverse_url operations.
    I've noted that reverse_url operations on the 'mail' attribute for ims5.2 seems to ignore subsequent values of this attribute if it's multivalued.
    Sun Messaging 2005Q4, however, seems to have taken into account the multiple values of the 'mail' attribute.
    This is resulting the mail's "From:" field to be using the subsequent values.
    Setup
    Account: mailtes1 (with multivalued 'mail' attribute)
    mail: [email protected]
    [email protected] (Not a configured mail domain handled by Sun messaging. Used by other applications)
    mailhost: mailsit.portnet.com.sg (for Sun messaging 2005q4)
    pnsasit1app1.portnet.com (for ims52)
    test mails are sent to the same accounts.
    Results of ./imsimta test -rewrite -debug mailtes1 on Sun Messaging 2005q4 as follows:
    *** Debug output from rewriting a forward header address:
    00:07:53.03: Rewriting: Mbox = "mailtes1", host = "portnet.com.sg", domain = "$*", literal = "", tag = ""
    00:07:53.03: Rewrite: "$*", position 0, hash table -
    00:07:53.03: Found: "$E$F$U%[email protected]$V$H"
    00:07:53.03: Rewrite failed, not envelope.
    00:07:53.03: Rewrite: "$*", position 1, hash table -
    00:07:53.03: Failed.
    00:07:53.03: Rewrite: "$*", position 0, rewrite database -
    00:07:53.03: Failed
    00:07:53.03: Rewriting: Mbox = "mailtes1", host = "portnet", domain = "portnet.com.sg", literal = "", tag = ""
    00:07:53.03: Rewrite: "portnet.com.sg", position 0, hash table -
    00:07:53.03: Found: "$U%[email protected]"
    00:07:53.03: New mailbox: "mailtes1".
    00:07:53.03: New host: "portnet.com.sg".
    00:07:53.03: New route: "png1app1-mail.portnet.com.sg".
    00:07:53.03: New channel system: "png1app1-mail.portnet.com.sg".
    00:07:53.03: Looking up host "png1app1-mail.portnet.com.sg".
    00:07:53.03: - found on channel l
    00:07:53.03: Routelocal flag set; scanning for % and !
    00:07:53.03: Rewrite rules result: [email protected]
    00:07:53.03: Checking reverse URL cache for: [email protected]
    00:07:53.03: Applying reverse URL pattern ldap:///$V?mail?sub?$Q to: [email protected]
    00:07:53.05: Resulting URL: ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])([email protected]))
    00:07:53.05: mmc_open_url called to open ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg)), flags = 384
    00:07:53.05: URL with quotes stripped: ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg))
    00:07:53.05: LDAP URL identified
    00:07:53.05: URL context #1 will be used
    00:07:53.05: Performing URL search on: ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg))
    00:07:53.05: mmc_read_url result: [uid=mailtes1,ou=People,ou=ZZZ,ou=Customers, l=SGSIN, o=portnet.com]
    00:07:53.05: URL resolution returned: [uid=mailtes1,ou=People,ou=ZZZ,ou=Customers, l=SGSIN, o=portnet.com]
    00:07:53.05: mmc_read_url result: [mail] [email protected]
    00:07:53.05: URL resolution returned: [mail] [email protected]
    00:07:53.05: Attribute index: 16
    00:07:53.05: LDAP URL produced address [email protected]
    00:07:53.05: mmc_read_url result: [mail] [email protected]
    00:07:53.05: URL resolution returned: [mail] [email protected]
    00:07:53.05: Attribute index: 16
    00:07:53.05: LDAP URL produced address [email protected]
    00:07:53.05: No more result to return
    *** Debug output from rewriting a forward envelope address:
    00:07:53.05: Rewriting: Mbox = "mailtes1", host = "portnet.com.sg", domain = "$*", literal = "", tag = ""
    00:07:53.05: Rewrite: "$*", position 0, hash table -
    00:07:53.05: Found: "$E$F$U%[email protected]$V$H"
    00:07:53.05: Match, pattern = "portnet.com.sg", current = "(*domaincheck*)"
    00:07:53.05: old state = not checked.
    00:07:53.05: Domain check on portnet.com.sg.
    00:07:53.05: Added domain result 1 to cache for portnet.com.sg.
    00:07:53.05: new state = succeeded.
    00:07:53.05: New mailbox: "mailtes1".
    00:07:53.05: New host: "portnet.com.sg".
    00:07:53.05: New route: "png1app1-mail.portnet.com.sg".
    00:07:53.05: New channel system: "png1app1-mail.portnet.com.sg".
    00:07:53.05: Looking up host "png1app1-mail.portnet.com.sg".
    00:07:53.05: - found on channel l
    00:07:53.05: Routelocal flag set; scanning for % and !
    forward channel = l
    channel description =
    channel user filter =
    dest channel filter =
    source channel filter =
    channel flags #0 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
    channel flags #1 = NOSMTP DEFAULT
    channel flags #2 = COPYSENDPOST COPYWARNPOST POSTHEADONLY HEADERINC NOEXPROUTE
    channel flags #3 = LOGGING NOGREY NORESTRICTED RETAINSECURITYMULTIPARTS
    channel flags #4 = EIGHTBIT NOHEADERTRIM NOHEADERREAD RULES
    channel flags #5 = SLAVE_DEBUG
    channel flags #6 = LOCALUSER REPORTNOTARY
    channel flags #7 = NOSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
    channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
    channel flags #9 = NOTHURMAN INTERPRETENCODING USEINTERMEDIATE RECEIVEDFROM VALIDATELOCALSYSTEM NOTURN
    defaulthost = portnet.com.sg portnet.com.sg
    linelength = 1023
    channel env addr type = SOURCEROUTE
    channel hdr addr type = SOURCEROUTE
    channel official host = png1app1-mail.portnet.com.sg
    channel queue 0 name = LOCAL_POOL
    channel queue 1 name = LOCAL_POOL
    channel queue 2 name = LOCAL_POOL
    channel queue 3 name = LOCAL_POOL
    channel after params =
    channel user name =
    urgentnotices = 1 2 4 7
    normalnotices = 1 2 4 7
    nonurgentnotices = 1 2 4 7
    channel rightslist ids =
    local behavior flags = %x7
    expandchannel =
    notificationchannel =
    dispositionchannel =
    saslswitchchannel =
    tlsswitchchannel =
    backward channel = l
    header To: address = [email protected]
    header From: address = [email protected]
    envelope To: address = [email protected] (route (png1app1-mail.portnet.com.sg,png1app1-mail.portnet.com.sg)) (host portnet.com.sg)
    envelope From: address = [email protected]
    name =
    mbox = mailtes1
    Results of ./imsimta test -rewrite -debug mailtes1 on ims52 as follows:
    *** Debug output from rewriting a forward header address:
    00:09:58.97: Rewriting: Mbox = "mailtes1", host = "portnet.com.sg", domain = "$*", literal = "", tag = ""
    00:09:58.97: Rewrite: "$*", position 0, hash table -
    00:09:58.97: Found: "$E$F$U%[email protected]$V$H"
    00:09:58.97: Rewrite failed, not envelope.
    00:09:58.97: Rewrite: "$*", position 1, hash table -
    00:09:58.97: Failed.
    00:09:58.97: Rewrite: "$*", position 0, rewrite database -
    00:09:58.97: Failed
    00:09:58.97: Rewriting: Mbox = "mailtes1", host = "portnet", domain = "portnet.com.sg", literal = "", tag = ""
    00:09:58.97: Rewrite: "portnet.com.sg", position 0, hash table -
    00:09:58.97: Found: "$U%[email protected]"
    00:09:58.97: New mailbox: "mailtes1".
    00:09:58.97: New host: "portnet.com.sg".
    00:09:58.97: New route: "pnsasit1app1.portnet.com".
    00:09:58.97: New channel system: "pnsasit1app1.portnet.com".
    00:09:58.97: Looking up host "pnsasit1app1.portnet.com".
    00:09:58.97: - found on channel l
    00:09:58.97: Routelocal flag set; scanning for % and !
    00:09:58.97: Rewrite rules result: [email protected]
    00:09:58.97: Checking reverse URL cache for: [email protected]
    00:09:58.97: Applying reverse URL pattern ldap:///$V?mail?sub?$Q to: [email protected]
    00:09:58.99: Resulting URL: ldap:///l%3Dsgsin%2Co%3Dportnet.com?mail?sub?(|([email protected])([email protected]))
    00:09:58.99: mmc_open_url called to open ldap:///l%3Dsgsin%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg)), flags = 256
    00:09:58.99: URL with quotes stripped: ldap:///l%3Dsgsin%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg))
    00:09:58.99: LDAP URL identified
    00:09:58.99: URL context #1 will be used
    00:09:58.99: Performing URL search on: ldap:///l%3Dsgsin%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg))
    00:09:58.99: mmc_read_url result: [email protected]
    00:09:58.99: URL resolution returned: [email protected]
    forward channel = l
    channel description =
    channel user filter =
    dest channel filter =
    source channel filter =
    channel flags #0 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
    channel flags #1 = NOSMTP DEFAULT
    channel flags #2 = COPYSENDPOST COPYWARNPOST POSTHEADONLY HEADERINC NOEXPROUTE
    channel flags #3 = LOGGING NOGREY NORESTRICTED RETAINSECURITYMULTIPARTS
    channel flags #4 = EIGHTBIT NOHEADERTRIM NOHEADERREAD RULES
    channel flags #5 = SLAVE_DEBUG
    channel flags #6 = LOCALUSER REPORTHEADER
    channel flags #7 = NOSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
    channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
    channel flags #9 = NOTHURMAN INTERPRETENCODING USEINTERMEDIATE RECEIVEDFROM VALIDATELOCALSYSTEM NOTURN
    defaulthost = portnet.com.sg portnet.com.sg
    linelength = 1023
    channel env addr type = SOURCEROUTE
    channel hdr addr type = SOURCEROUTE
    channel official host = pnsasit1app1.portnet.com
    channel queue 0 name = LOCAL_POOL
    channel queue 1 name = LOCAL_POOL
    channel queue 2 name = LOCAL_POOL
    channel queue 3 name = LOCAL_POOL
    channel after params =
    channel user name =
    urgentnotices = 1 2 4 7
    normalnotices = 1 2 4 7
    nonurgentnotices = 1 2 4 7
    channel rightslist ids =
    local behavior flags = %x7
    backward channel = l
    header To: address = [email protected]
    header From: address = [email protected]
    envelope To: address = [email protected] (route (pnsasit1app1.portnet.com,pnsasit1app1.portnet.com)) (host portnet.com.sg)
    envelope From: address = [email protected]
    name =
    mbox = mailtes1
    emails sent to mailtes1 using the Sun messaging 2005q4 service will be en-queued as '[email protected]' for sender but de-queued to mail store with '[email protected]' as sender.
    09-Dec-2007 21:00:47.38 tcp_intranet ims-ms E 1 [email protected] rfc822;[email protected] mailtes1@ims-ms-daemon
    09-Dec-2007 21:00:48.19 ims-ms D 1 [email protected] rfc822;[email protected] mailtes1@ims-ms-daemon
    Physical message file will show '[email protected]' as sender.
    Return-path: <[email protected]>
    Received: from portnet.com.sg (pnsgsit1app2.portnet.com [10.106.65.36])
    by mailsit.portnet.com.sg
    (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
    with ESMTP id <[email protected]> for
    [email protected]; Sun, 09 Dec 2007 21:00:47 +0800 (SGT)
    Received: from [10.106.65.101] (Forwarded-For: 10.10.140.109)
    by mailsit.portnet.com.sg (mshttpd); Sun, 09 Dec 2007 21:00:47 +0800
    Date: Sun, 09 Dec 2007 21:00:47 +0800
    From: [email protected]
    Subject: test
    To: [email protected]
    Message-id: <[email protected]>
    MIME-version: 1.0
    X-Mailer: Sun Java(tm) System Messenger Express 6.2-8.04 (built Feb 28 2007)
    Content-type: text/plain; charset=us-ascii
    Content-language: en
    Content-transfer-encoding: 7bit
    Content-disposition: inline
    X-Accept-Language: en
    Priority: normal
    Original-recipient: rfc822;[email protected]
    test
    Action tried.
    1) Re-order values of mail attribute as follows:
    mail: [email protected]
    [email protected]
    results from ./imsimta test -rewrite -debug mailtes1 on Sun messaging 2005q4:
    *** Debug output from rewriting a forward header address:
    00:21:45.57: Rewriting: Mbox = "mailtes1", host = "portnet.com.sg", domain = "$*", literal = "", tag = ""
    00:21:45.57: Rewrite: "$*", position 0, hash table -
    00:21:45.57: Found: "$A$E$F$U%[email protected]"
    00:21:45.57: Rewrite failed, not envelope.
    00:21:45.57: Rewrite: "$*", position 1, hash table -
    00:21:45.57: Failed.
    00:21:45.57: Rewrite: "$*", position 0, rewrite database -
    00:21:45.57: Failed
    00:21:45.57: Rewriting: Mbox = "mailtes1", host = "portnet", domain = "portnet.com.sg", literal = "", tag = ""
    00:21:45.57: Rewrite: "portnet.com.sg", position 0, hash table -
    00:21:45.57: Found: "$U%[email protected]"
    00:21:45.57: New mailbox: "mailtes1".
    00:21:45.57: New host: "portnet.com.sg".
    00:21:45.57: New route: "mailsit.portnet.com.sg".
    00:21:45.57: New channel system: "mailsit.portnet.com.sg".
    00:21:45.57: Looking up host "mailsit.portnet.com.sg".
    00:21:45.57: - found on channel l
    00:21:45.57: Routelocal flag set; scanning for % and !
    00:21:45.57: Rewrite rules result: [email protected]
    00:21:45.57: Checking reverse URL cache for: [email protected]
    00:21:45.57: Applying reverse URL pattern ldap:///$V?mail?sub?$Q to: [email protected]
    00:21:45.58: Resulting URL: ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])([email protected]))
    00:21:45.58: mmc_open_url called to open ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg)), flags = 384
    00:21:45.58: URL with quotes stripped: ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg))
    00:21:45.58: LDAP URL identified
    00:21:45.58: URL context #1 will be used
    00:21:45.58: Performing URL search on: ldap:///l%3DSGSIN%2Co%3Dportnet.com?mail?sub?(|([email protected])(mailAlternateAddress=mailtes1@portnet.
    com.sg))
    00:21:45.59: mmc_read_url result: [uid=mailtes1,ou=People,ou=PSA,ou=Customers, l=SGSIN, o=portnet.com]
    00:21:45.59: URL resolution returned: [uid=mailtes1,ou=People,ou=PSA,ou=Customers, l=SGSIN, o=portnet.com]
    00:21:45.59: mmc_read_url result: [mail] [email protected]
    00:21:45.59: URL resolution returned: [mail] [email protected]
    00:21:45.59: Attribute index: 16
    00:21:45.59: LDAP URL produced address [email protected]
    00:21:45.59: mmc_read_url result: [mail] [email protected]
    00:21:45.59: URL resolution returned: [mail] [email protected]
    00:21:45.59: Attribute index: 16
    00:21:45.59: LDAP URL produced address [email protected]
    00:21:45.59: No more result to return
    *** Debug output from rewriting a forward envelope address:
    00:21:45.59: Rewriting: Mbox = "mailtes1", host = "portnet.com.sg", domain = "$*", literal = "", tag = ""
    00:21:45.59: Rewrite: "$*", position 0, hash table -
    00:21:45.59: Found: "$A$E$F$U%[email protected]"
    00:21:45.59: Match, pattern = "portnet.com.sg", current = "(*domaincheck*)"
    00:21:45.59: old state = not checked.
    00:21:45.59: Domain check on portnet.com.sg.
    00:21:45.59: Added domain result 1 to cache for portnet.com.sg.
    00:21:45.59: new state = succeeded.
    00:21:45.59: New mailbox: "mailtes1".
    00:21:45.59: New host: "portnet.com.sg".
    00:21:45.59: New route: "mailsit.portnet.com.sg".
    00:21:45.59: New channel system: "mailsit.portnet.com.sg".
    00:21:45.59: Looking up host "mailsit.portnet.com.sg".
    00:21:45.59: - found on channel l
    00:21:45.59: Routelocal flag set; scanning for % and !
    forward channel = l
    channel description =
    channel user filter =
    dest channel filter =
    source channel filter =
    channel flags #0 = BIDIRECTIONAL MULTIPLE IMMNONURGENT NOSERVICEALL
    channel flags #1 = NOSMTP DEFAULT
    channel flags #2 = COPYSENDPOST COPYWARNPOST POSTHEADONLY HEADERINC NOEXPROUTE
    channel flags #3 = LOGGING NOGREY NORESTRICTED RETAINSECURITYMULTIPARTS
    channel flags #4 = EIGHTBIT NOHEADERTRIM NOHEADERREAD RULES
    channel flags #5 = MASTER_DEBUG SLAVE_DEBUG
    channel flags #6 = LOCALUSER REPORTNOTARY
    channel flags #7 = NOSWITCHCHANNEL NOREMOTEHOST DATEFOUR DAYOFWEEK
    channel flags #8 = NODEFRAGMENT EXQUOTA REVERSE NOCONVERT_OCTET_STREAM
    channel flags #9 = NOTHURMAN INTERPRETENCODING USEINTERMEDIATE RECEIVEDFROM VALIDATELOCALSYSTEM NOTURN
    defaulthost = portnet.com.sg portnet.com.sg
    linelength = 1023
    channel env addr type = SOURCEROUTE
    channel hdr addr type = SOURCEROUTE
    channel official host = mailsit.portnet.com.sg
    channel queue 0 name = LOCAL_POOL
    channel queue 1 name = LOCAL_POOL
    channel queue 2 name = LOCAL_POOL
    channel queue 3 name = LOCAL_POOL
    channel after params =
    channel user name =
    urgentnotices = 1 2 4 7
    normalnotices = 1 2 4 7
    nonurgentnotices = 1 2 4 7
    channel rightslist ids =
    local behavior flags = %x7
    expandchannel =
    notificationchannel =
    dispositionchannel =
    saslswitchchannel =
    tlsswitchchannel =
    backward channel = l
    header To: address = [email protected]
    header From: address = [email protected]
    envelope To: address = [email protected] (route (mailsit.portnet.com.sg,mailsit.portnet.com.sg)) (host portnet.com.sg)
    envelope From: address = [email protected]
    name =
    mbox = mailtes1
    emails sent to mailtes1 using the Sun messaging 2005q4 service will be en-queued as '[email protected]' for sender and de-queued to mail store with '[email protected]' as sender.
    10-Dec-2007 00:20:00.88 tcp_intranet ims-ms E 1 [email protected] rfc822;[email protected] mailtes1@ims-ms-daemon
    10-Dec-2007 00:20:01.63 ims-ms D 1 [email protected] rfc822;[email protected] mailtes1@ims-ms-daemon
    Physical message file will show '[email protected]' as sender.
    But this time the recipient is '[email protected]'
    Return-path: <[email protected]>
    Received: from portnet.com.sg (pnsgsit1app2.portnet.com [10.106.65.36])
    by mailsit.portnet.com.sg
    (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
    with ESMTP id <[email protected]> for
    [email protected]; Mon, 10 Dec 2007 00:20:00 +0800 (SGT)
    Received: from [10.106.65.101] (Forwarded-For: 10.10.140.109)
    by mailsit.portnet.com.sg (mshttpd); Mon, 10 Dec 2007 00:20:00 +0800
    Date: Mon, 10 Dec 2007 00:20:00 +0800
    From: [email protected]
    Subject: test mail from ims62
    To: [email protected]
    Message-id: <[email protected]>
    MIME-version: 1.0
    X-Mailer: Sun Java(tm) System Messenger Express 6.2-8.04 (built Feb 28 2007)
    Content-type: text/plain; charset=us-ascii
    Content-language: en
    Content-transfer-encoding: 7bit
    Content-disposition: inline
    X-Accept-Language: en
    Priority: normal
    Original-recipient: rfc822;[email protected]
    test
    Questions:
    1) How do i retain the functionality of using 1st value of the mail attribute as the address to be used?
    I need the address reversing to retain '@portnet.com.sg' value.
    2) I've not encountered the same problem when using ims52.
    Is there a functional diffences here?

    Hi Shane,
    Thank you for the reply.
    We tried adding a mailequivalentaddress attribute, eg [email protected] but the From field still have the value from the mail attribute, eg [email protected]. Do we still need to configure anything to make this to work?
    Besides we tried another option by doing the following:
    a. Changing the following lines in options.dat file:
    REVERSE_URL=ldap:///$V?mail?sub?$Q
    to
    REVERSE_URL=ldap:///$V$N?sub?$R
    b. We ensure that '@portnet.com.sg' is the 1st value
    c. adding a 'noreverse' keyword for the 'ims-ms' channel
    And it works without the need for the mailequivalentaddress, is this a proper implementation?
    any implications with putting 'noreverse' for ims-ms channel?
    We're now considering changing of primary address attribute used.
    Need your advise on the following:
    1) Please advise how go about configuring another attribute to store the primary address.
    2) Can we use mailAlternateAddress as the new primary address attribute?
    If a totally new attribute is needed, please advise on the requirements for the creation of this attribute to be usable by Sun Messaging 2005Q4.
    This change was mentioned in the administration guide.
    Chapter 9 The Direct LDAP Algorithm and Implementation
    Seeding the Reversal Cache
    Next the primary address and any aliases attached to the user entry are considered. This information is used to seed the address reversal cache. It plays no part in the current address translation process. First, the primary address, personal name, recipient limit, recipient cutoff, and source block limit attributes are considered. The primary address is normally stored in the �mail� attribute; another attribute can be specified by setting the LDAP_PRIMARY_ADDRESS MTA option appropriately. (The primary address reverses to itself, of course.) There is no default attribute for any of the other attributes. If you want to use them, you must specify them with the LDAP_PERSONAL_NAME, (see Vacation Autoreply Attributes) LDAP_RECIPIENTLIMIT, LDAP_RECIPIENTCUTOFF, (see Limiting Message Recipients) and LDAP_SOURCEBLOCKLIMIT (see Specifying Absolute Message Size Limits) MTA options. The corresponding domain-level recipient limit, recipient cutoff, and source block limit attributes are also considered at this point. User-level settings completely override any domain-level setting.
    Next, any secondary addresses are considered and a cache entry is made for each one. There are two sorts of secondary addresses: Those that undergo address reversal and those that do not. Both must be considered in order to properly seed the address reversal cache because of the need to check for message capture requests in all cases.
    Secondary addresses that undergo reversal are normally stored in the mailAlternateAddress attribute. Another attribute can be specified by setting the LDAP_ALIAS_ADDRESSES MTA option. Secondary addresses that do not undergo reversal are normally stored in the mailEquivalentAddress attribute. Another attribute can be specified with the LDAP_EQUIVALENCE_ADDRESSES MTA option.
    Edited by: sheeyong on Dec 10, 2007 5:25 AM

  • AD group in multivalue attribute in OIA

    Hi,
    I am trying to load AD groups into OIA via csv feed using schema files. I have created a multivalue attribute adgroup in OIA, but when i am entering multiple AD groups in the csv feed file for one user as "ou=abc,dc=abc ; ou=def,dc=ab", so instead of getting separated into two groups it is getting split into 4 different values at commas, is there any way to handle this type of values in the feed file or OIA cannot handle this kind of multiple values.
    Any pointers would be really helpful.

    Hi there abhishek,
    By default the seperator char is a comma, that's why OIA splits it up into the "wrong pieces".
    If you would like to use a different separator, you'll have to make a config adjustment in the database.
    Find the NAMESPACES table and look for the AD resource you created (resource has to be created first). One of the other fields is the 'multivalue_separator' field, if you change this to a semicolon (;) it should work alright. You might want to restart the application for it to work and re-import the accounts.
    I'm still looking for a more gentle way to commit the change instead of restarting OIA.
    Hope this helps you!
    Best regards,
    Jeff

  • Creating MultiValued Taxonomy Attributes using API

    Hi All,
    I'm trying to create an attribute in the taxonomy table that has text/multivalued type. I am able to create the attribute and set the type to text/multivalued, but I am not sure how to create the actual value set for it.
    For example, a "Color" attribute would have a value set consisting of a list of possible colors, i.e. blue, green, yellow, etc...
    In the AttributeInfo class, I see no methods to accomplish this.
    Please let me know if you have any ideas!
    Thanks!
    Roman D.

    Hi Roman,
    Please have a look at the AttributeInfo.GetFeatures() method.  This returns an instance of FeatureDomain which holds an array/collection of FeatureValue instances.  In your case it will be empty and you must add the FeatureValue instances.
    Hope this helps,
    Richard

  • Error when updating a multivalued property that contains nested types

    we cannnot update a CMS content that contains a multivalued property composed of nested types.
    our CMS content is made of a custom type "t4" and contains the following properties :
    - titre of type "String"
    - compose of type "t1" where t1 is a CMS type containing the property titre of type "String" and doc of type "Binary".
    we get the following stack trace when updating the "compose" property on the CMS document :
    com.bea.content.RepositoryRuntimeException: Error retrieving multivalued nested property via given beginning of indexedName: compose, please check for the complete and correct indexedName on the Property in question. at com.bea.content.Node.getProperty(Node.java:454) at com.bea.content.federated.internal.NodeManagerImpl.getStream(NodeManagerImpl.java:669) at com.bea.jsptools.content.node.properties.editor.BinaryEditor.getValues(BinaryEditor.java:134) at com.bea.jsptools.content.node.properties.editor.NestedPropertyEditor.getValues(NestedPropertyEditor.java:90) at com.bea.jsptools.content.node.properties.editor.NestedPropertyEditor.getValues(NestedPropertyEditor.java:90) at content.node.nodeSelected.properties.NodePropertiesController.saveProperty(NodePropertiesController.java:1018) at content.node.nodeSelected.properties.NodePropertiesController.saveProperties(NodePropertiesController.java:973) at content.node.nodeSelected.properties.NodePropertiesController.saveProperties(NodePropertiesController.java:768) at sun.reflect.GeneratedMethodAccessor524.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:854) at org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:793) at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:463) at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:290) at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:338) at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:51) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:96) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:2025) at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:90) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2096) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:550) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:838) at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:634) at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:156) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1177) at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.executeAction(ScopedContentCommonSupport.java:622) at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.processActionInternal(ScopedContentCommonSupport.java:140) at com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction(PageFlowStubImpl.java:107) at com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiActionHandler.java:99) at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:177) at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:165) at com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackData(NetuiContent.java:219) at com.bea.netuix.nf.ControlLifecycle$2.visit(ControlLifecycle.java:179) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:351) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361) at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:128) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:339) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:330) at com.bea.netuix.nf.Lifecycle.runInbound(Lifecycle.java:162) at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:137) at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java:370) at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:229) at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:183) at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:240) at com.bea.netuix.servlets.manager.PortalServlet.service(PortalServlet.java:574) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:225) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:127) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:273) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42) at com.bea.jsptools.servlet.PagedResultServiceFilter.doFilter(PagedResultServiceFilter.java:82) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42) at com.bea.p13n.servlets.PortalServletFilter.doFilter(PortalServletFilter.java:292) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3191) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:1979) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1886) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1317) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:181) Caused by: com.bea.content.RepositoryException: Error retrieving multivalued nested property via given beginning of indexedName: compose, please check for the complete and correct indexedName on the Property in question. at com.bea.content.internal.client.common.NestedHelper.getContainerIndex(NestedHelper.java:243) at com.bea.content.internal.client.common.NestedHelper.loopNested(NestedHelper.java:278) at com.bea.content.internal.client.common.NestedHelper.getNestedProperty(NestedHelper.java:162) at com.bea.content.internal.client.common.NestedHelper.getProperty(NestedHelper.java:102) at com.bea.content.internal.client.common.NestedHelper.getProperty(NestedHelper.java:126) at com.bea.content.Node.getProperty(Node.java:451) ... 98 more

    I was able to reproduce this issue in the beta also. The issue has since been fixed. For the time being, it looks like you can just clear (delete) that particular value and re-add it w/ the updated binary.

  • Passing input for Multivalue command parameter

    Hi All,
    Currently we are on SAP Crystal Reports 2008 SP2 , We are building reports with command prompts.
    Issue is when we have string Multivalue parameter like {?Country Name} , user has to enter inputs with single quotes as 'Mexico' , 'USA'..
    However, is there anyway so that user can give input without single quotes? like : Mexico, USA
    Regards
    Guruprem
    P.S : We are restricted to use only VARCHAR paramter

    OK. What this is what works for me in Oracle:
    1) Create a blank report
    2) Create a String prompt and call it 'Country'
    3) Create a formula with this code:
    stringvar array s;
    numbervar i;
    stringvar fin_s;
    s := (Split({?Country},","));
    for i := 1 to ubound(s) do
        fin_s := fin_s + "'" + trim(s[i]) + "'" + if i = ubound(s) then "" else ",";
    "("& fin_s &")";
    4) Insert the report in question that contains the Command Object as a Subreport and place it on the Report Header
    5) Right-click the Subreport > Change Subreport Links > Move the formula created in Step 3 to the pane on the right > Look for an option towards the bottom left that says 'Subreport parameter field to use' > Choose the Country prompt from the dropdown
    6) Suppress all the sections of the Main Report except the Report Header
    7) Run the report and type in the values as:
    Mexico, USA, France, England and so on...
    8) If you do not wish to use the Subreport method, create a Stored Proc that accepts a comma delimited string as the prompt value and handles the additional tasks like splitting the values by comma and adding single quotes and brackets.
    -Abhilash

  • Looking for CURSOR replacement, please suggest!

    Hello Experts,
    I having some master tables "#ACTION_MASTER" & "#RPT_MILE_MASTER" and a link table "#ACTION_MILE_RPT_LINK" showing their relationship.
    And again I having a derive table "#TBL" to finally update the master table ''#ACTION_MASTER".
    I am able to do the task with below approach and I would like to know how to optimize it, please suggest and let me know for any other information. Thanks! 
    CREATE TABLE #ACTION_MASTER (UID INT, ACTION_ID INT, IS_ACTV BIT)
    INSERT INTO #ACTION_MASTER VALUES (1, 102, 1), (2, 103, 1)
    --SELECT * FROM #ACTION_MASTER
    CREATE TABLE #RPT_MILE_MASTER (UID INT, RPT_ID INT, MILE_ID INT, MILE_STATUS INT)
    INSERT INTO #RPT_MILE_MASTER VALUES (1, 12, 1, 5), (2, 13, 2, 2)
    --SELECT * FROM #RPT_MILE_MASTER
    CREATE TABLE #ACTION_MILE_RPT_LINK (LINK_ID INT, ACTION_ID INT, RPT_ID INT, MILE_ID INT)
    INSERT INTO #ACTION_MILE_RPT_LINK VALUES (1, 102, 12, 1), (2, 102, 13, 2), (3, 103, 13, 2)
    --SELECT * FROM #ACTION_MILE_RPT_LINK
    CREATE TABLE #TBL (RPT_ID INT, MILE_ID INT, MILE_STATUS INT)
    INSERT INTO #TBL VALUES (13, 1, 5), (13, 2, 5)
    --SELECT * FROM #TBL
    DECLARE @ACTION_ID INT
    DECLARE DB_CURSOR CURSOR FOR
    SELECT DISTINCT ACTION_ID FROM #ACTION_MILE_RPT_LINK WHERE MILE_ID IN (SELECT MILE_ID FROM #TBL WHERE MILE_STATUS = 5)
    OPEN DB_CURSOR
    FETCH NEXT FROM DB_CURSOR INTO @ACTION_ID
    WHILE @@FETCH_STATUS = 0
    BEGIN
    IF EXISTS(
    SELECT * FROM #ACTION_MILE_RPT_LINK
    WHERE MILE_ID IN (SELECT MILE_ID FROM #TBL WHERE MILE_STATUS = 5)
    AND RPT_ID NOT IN (SELECT DISTINCT RPT_ID FROM #TBL)
    AND ACTION_ID = @ACTION_ID)
    BEGIN
    DECLARE @COMPARE TABLE (RPT_ID INT, MILE_ID INT, MILE_STATUS INT)
    INSERT INTO @COMPARE
    SELECT RPT_ID, MILE_ID, 5 'MILE_STATUS' FROM #ACTION_MILE_RPT_LINK
    WHERE MILE_ID IN (SELECT MILE_ID FROM #TBL WHERE MILE_STATUS = 5)
    AND RPT_ID NOT IN (SELECT DISTINCT RPT_ID FROM #TBL)
    AND ACTION_ID = @ACTION_ID
    IF NOT EXISTS(
    SELECT RPT_ID, MILE_ID, MILE_STATUS FROM #RPT_MILE_MASTER WHERE RPT_ID IN (SELECT RPT_ID FROM @COMPARE)
    EXCEPT
    SELECT RPT_ID, MILE_ID, MILE_STATUS FROM @COMPARE)
    BEGIN
    UPDATE #ACTION_MASTER SET IS_ACTV = 0 WHERE ACTION_ID = @ACTION_ID
    END
    END
    ELSE
    BEGIN
    UPDATE #ACTION_MASTER SET IS_ACTV = 0 WHERE ACTION_ID = @ACTION_ID
    END
    FETCH NEXT FROM DB_CURSOR INTO @ACTION_ID
    END
    CLOSE DB_CURSOR
    DEALLOCATE DB_CURSOR
    --SELECT * FROM #ACTION_MASTER
    DROP TABLE #ACTION_MASTER
    DROP TABLE #RPT_MILE_MASTER
    DROP TABLE #ACTION_MILE_RPT_LINK
    DROP TABLE #TBL

    I don't understand the values in #TBL. Why are the manually inserted? Shouldn't they be the same as in #RPT_MILE_MASTER?
    Further more I don't understand the condition in the cursor. Both tables have RPT_ID and MILE_ID in common. Either this is a real multivalued relationship, then why do you only filter by MILE_ID? It looks wrong.
    You can rewrite your cursor internals without IF's to
    WITH Compare ( RPT_ID, MILE_ID, MILE_STATUS )
    AS ( SELECT RPT_ID ,
    MILE_ID ,
    5
    FROM #ACTION_MILE_RPT_LINK
    WHERE MILE_ID IN ( SELECT MILE_ID
    FROM #TBL
    WHERE MILE_STATUS = 5 )
    AND RPT_ID NOT IN ( SELECT DISTINCT
    RPT_ID
    FROM #TBL )
    AND ACTION_ID = @ACTION_ID
    UPDATE #ACTION_MASTER
    SET IS_ACTV = 0
    WHERE ACTION_ID = @ACTION_ID
    AND NOT EXISTS ( SELECT RPT_ID ,
    MILE_ID ,
    MILE_STATUS
    FROM #RPT_MILE_MASTER
    WHERE RPT_ID IN ( SELECT RPT_ID
    FROM Compare )
    EXCEPT
    SELECT RPT_ID ,
    MILE_ID ,
    MILE_STATUS
    FROM Compare )
    AND EXISTS ( SELECT *
    FROM #ACTION_MILE_RPT_LINK
    WHERE MILE_ID IN ( SELECT MILE_ID
    FROM #TBL
    WHERE MILE_STATUS = 5 )
    AND RPT_ID NOT IN ( SELECT DISTINCT
    RPT_ID
    FROM #TBL )
    AND ACTION_ID = @ACTION_ID );
    UPDATE #ACTION_MASTER
    SET IS_ACTV = 0
    WHERE ACTION_ID = @ACTION_ID
    AND NOT EXISTS ( SELECT *
    FROM #ACTION_MILE_RPT_LINK
    WHERE MILE_ID IN ( SELECT MILE_ID
    FROM #TBL
    WHERE MILE_STATUS = 5 )
    AND RPT_ID NOT IN ( SELECT DISTINCT
    RPT_ID
    FROM #TBL )
    AND ACTION_ID = @ACTION_ID );
    You can now remove the cursor and JOIN the cursors SELECT into both UPDATEs.

Maybe you are looking for

  • Stuck in recovery mode. Keep getting (-1) error when trying to update.

    I have problems every single time I update my phone. This is getting ridiculous. Apple needs to step there god **** game up. My phones stuck in recovery mode and I use it for extremely important things. Any suggestions?

  • ITunes Version 7.7.1 is available

    Download now to fix your bugs.

  • Ipad and icloud

    I had to change my email account as it had been hacked;  once I did this I was not able to delete my icloud account on my ipad, because the old password doesn't work, and it can't be sent to the old email address. I need to change the icloud account

  • Multicam Timeline Problem

    I am working on a project that has two camera angles. I named the camera angles, created a multicam clip, and sychronized the two angles manually in the event browser. Up to this point, everything works perfectly. The problem starts when I attempt to

  • Why is the help centre never available

    When I access the Help Centre and select a topic, I always get the error message advising topic not available, check your network settings or try again later.  I am a new user of a MacBook and wondering if anyone elkse has had this problem and how di