File to multiple IDOCs scenario with the same receiver system

Hi guys,
I have to design and implement the following scenario:
I will receive one file with many lines (Records) with data for materials, quantities, operations etc..
Based on the values of some fields of each line, I will have to create an IDOC for each material.
For example:
if operation type = "INSERT", and Labor = 001 then create 3 Idocs of type MBGMCR with movement types=101, 261,311 that have to be posted one after the other to the same receiver system.
else if operation type = "INSERT", and Labor <> 001 then create an Idoc MBGMCR with movement type=311 and plant = 1001.
else if operation type = "Delete", and Labor = 001 the created 3 Idocs MBGMCR with movement type=312, 262 1002 and post them serially to the same receiver system.
else if operation type = "Delete", and Labor <> 001 the created 1 Idoc MBGMCR with movement type=312.
All IDOCS are posted to the same SAP R/3 system. We do not care about the sequence, except for the cases where 3 IDOCS are created.
I am trying to think of a good design in performance terms.
It is obvious that I will need BPM for sure.
I am thinking of creating a mapping program that will produce 4 message types for the different cases from the initial file and then create a different message mapping for each case from the message type to the IDOC.
I am asking you if I have to include everything (mappings) in BPM with a "fork" step?
Or shall I produce only the 4 message types and then post them to R/3 and execute the mappings in R/3?
Best Regards
Evaggelos

hi,
>>I am thinking of creating a mapping program that will produce 4 message types for the different cases from the initial file and then create a different message mapping for each case from the message type to the IDOC.
To me this seems to be the right solution.
here u will create different message mappings and write them sequentially in interface determination. the multi mapping will then be utilised in transformation step in BPM.
thus if this is the only requirement there is no need of using a fork step.
[reward if helpful]
regards,
latika.

Similar Messages

  • More integration scenarios with the same business system in Int. Direct.?

    Hi guys!
    I need to integrate 5 business systems. I tried to create more integration scenarios (to do it clearly), but it is not possible to add already added business system to any other scenario...
    What's the logic of this?
    Can someone explain me it? Or some link?
    Thanx Peter

    hi Peter,
    have you tried:
    service without party ->
    right click on your business system ->
    add to scenario?
    like this you can add your business system
    to as many scenarios as you wish
    Regards,
    michal

  • File to Multiple Idocs scenario. Pls help

    Hi All,
    For Single File to Multiple Idocs scenario i am referring blog --
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/877c0d53-0801-0010-3bb0-e38d5ecd352c
    Suppose my source file is
    AAA, BBB,CCC
    111,222,333
    ZZZ,ZZZ,ZZZ
    I want to make 2 IDOCS for the first 2 records (AAA, BBB,CCC   and  111,222,333)
    and do not want to make IDOC for the 3rd record  -- how to achive this.
    Regards

    Hi,
    If the condition is like, for 'AAA' and '111', IDocs to be generated, then do as follows.
    If IDOCs are of same type.
    1. Value
    > Equals -
    > createIf -
    > IDOC
       Constant('AAA')
    2. Value
    > Equals -
    > createIf -
    > IDOC
       Constant('111')
    3. Value
    > Equals -
    > not -
    > createIf -
    > IDOC
       Constant('ZZZ')
    If 2 IDocs are of differnet types,
    create different mapping programs with same logic.
    If 2 IDocs are to be generated based on the record no in the file rather than the first field value, i think you can go for Global container.
    Refer these,
    [http://help.sap.com/saphelp_nw04/helpdata/en/ee/bf9640dc522f28e10000000a1550b0/frameset.htm]
    [http://help.sap.com/saphelp_nw04/helpdata/EN/49/1ebc6111ea2f45a9946c702b685299/content.htm ]
    [http://help.sap.com/saphelp_erp2004/helpdata/en/75/8e0f8f3b0c2e4ea5f8d8f9faa9461a/frameset.htm]
    thanks.
    Edited by: P.Ravi Varma on Apr 22, 2009 10:27 AM

  • File-XI-multiple IDoc Scenario

    Hi there -
       I am working on single File-XI-multiple IDoc Scenario and have following questions:
    (please keep in mind that there is already an existing multiple IDocs-XI-single File scenario between the same systems)
    1. Please provide any detailed step by step documentation from end-to-end.
    2. I am thinking it's compulsory to use BPM, is there any way to aviod?
    3. Is it possible to update existing IDocs in R/3 directly from the data from XI?
    Thanks everyone in advance...
    Pat

    HI,
    Pls go thru following links-
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    Single inbound file -> XI -> Multiple IDOCs in SAP
    One file for multiple IDOCs
    Hope this helps..
    Regards,
    Moorthy

  • RE: multiple named objects with the same name andinterface

    David,
    First I will start by saying that this can be done by using named anchored
    objects and registering them yourself in the name service. There is
    documentation on how to do this. And by default you will get most of the
    behavior you desire. When you do a lookup in the name service (BindObject
    method) it will first look in the local partition and see if there is a
    local copy and give you that copy. By anchoring the object and manually
    registering it in the name service you are programmatically creating your
    own SO without defining it as such in the development environment. BTW in
    response to your item number 1. This should be the case there as well. If
    your "mobile" object is in the same partition where the service object he is
    calling resides, you should get a handle to the local instance of the
    service object.
    Here is the catch, if you make a bind object call and there is no local copy
    you will get a handle to a remote copy but you can not be sure which one!
    It end ups as more or less a random selection. Off the top of my head and
    without going to the doc, I am pretty sure that when you register an
    anchored object you can not limit it's visibility to "User".
    Sean
    -----Original Message-----
    From: [email protected]
    [<a href="mailto:[email protected]">mailto:[email protected]]On</a> Behalf Of David Foote
    Sent: Monday, June 22, 1998 4:51 PM
    To: [email protected]
    Subject: multiple named objects with the same name and interface
    All,
    More than once, I have wished that Forte allowed you to place named
    objects with the same name in more than one partition. There are two
    situations in which this seems desirable:
    1) Objects that are not distributed, but are mobile (passed by value to
    remote objects), cannot safely reference a Service Object unless it has
    environment visibility, but this forces the overhead of a remote method
    call when it might not otherwise be necessary. If it were possible to
    place a copy of the same Service Object (with user visibility) in each
    partition, the overhead of a remote method call could be avoided. This
    would only be useful for a service object whose state could be safely
    replicated.
    2) My second scenario also involves mobile objects referencing a Service
    Object, but this time I would like the behavior of the called Service
    Object to differ with the partition from which it is called.
    This could be accomplished by placing Service Objects with the same name
    and the same interface in each partition, but varying the implementation
    with the partition.
    Does anyone have any thoughts about why this would be a good thing or a
    bad thing?
    David N. Foote
    Consultant
    Get Your Private, Free Email at <a href=
    "http://www.hotmail.com">http://www.hotmail.com</a>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:<a href=
    "http://pinehurst.sageit.com/listarchive/">http://pinehurst.sageit.com/listarchive/</a>>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:<a href=
    "http://pinehurst.sageit.com/listarchive/">http://pinehurst.sageit.com/listarchive/</a>>

    David,
    First I will start by saying that this can be done by using named anchored
    objects and registering them yourself in the name service. There is
    documentation on how to do this. And by default you will get most of the
    behavior you desire. When you do a lookup in the name service (BindObject
    method) it will first look in the local partition and see if there is a
    local copy and give you that copy. By anchoring the object and manually
    registering it in the name service you are programmatically creating your
    own SO without defining it as such in the development environment. BTW in
    response to your item number 1. This should be the case there as well. If
    your "mobile" object is in the same partition where the service object he is
    calling resides, you should get a handle to the local instance of the
    service object.
    Here is the catch, if you make a bind object call and there is no local copy
    you will get a handle to a remote copy but you can not be sure which one!
    It end ups as more or less a random selection. Off the top of my head and
    without going to the doc, I am pretty sure that when you register an
    anchored object you can not limit it's visibility to "User".
    Sean
    -----Original Message-----
    From: [email protected]
    [<a href="mailto:[email protected]">mailto:[email protected]]On</a> Behalf Of David Foote
    Sent: Monday, June 22, 1998 4:51 PM
    To: [email protected]
    Subject: multiple named objects with the same name and interface
    All,
    More than once, I have wished that Forte allowed you to place named
    objects with the same name in more than one partition. There are two
    situations in which this seems desirable:
    1) Objects that are not distributed, but are mobile (passed by value to
    remote objects), cannot safely reference a Service Object unless it has
    environment visibility, but this forces the overhead of a remote method
    call when it might not otherwise be necessary. If it were possible to
    place a copy of the same Service Object (with user visibility) in each
    partition, the overhead of a remote method call could be avoided. This
    would only be useful for a service object whose state could be safely
    replicated.
    2) My second scenario also involves mobile objects referencing a Service
    Object, but this time I would like the behavior of the called Service
    Object to differ with the partition from which it is called.
    This could be accomplished by placing Service Objects with the same name
    and the same interface in each partition, but varying the implementation
    with the partition.
    Does anyone have any thoughts about why this would be a good thing or a
    bad thing?
    David N. Foote
    Consultant
    Get Your Private, Free Email at <a href=
    "http://www.hotmail.com">http://www.hotmail.com</a>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:<a href=
    "http://pinehurst.sageit.com/listarchive/">http://pinehurst.sageit.com/listarchive/</a>>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:<a href=
    "http://pinehurst.sageit.com/listarchive/">http://pinehurst.sageit.com/listarchive/</a>>

  • Multiple ResourceBundle definitions with the same name

    I created a new web application project with JSF support using Netbeans 5.5Beta. The new project has a simple welcomeJSF page that I did not modify. The only modifications I did is adding a CustomMessages.properties file under com.mywebsite.resourcs and adding the following entry to faces-config.xml:
    <application>
            <resource-bundle>
                <base-name>com.mywebsite.resources.CustomMessages</base-name>
                <var>BundleOne</var>
            </resource-bundle>
            <locale-config>
                <default-locale>en</default-locale>
            </locale-config>
        </application>Now when I right click welcomeJSF and select Run File, the follow error is added to the log file of SJSAS PE9:
    Message ID:
    WebModule[/WebApplication1]Exception sending context initialized event to listener instance of class com.sun.faces.config.GlassFishConfigureListener javax.faces.FacesException
    Complete Message
    Can't parse configuration file: jndi:/server/WebApplication1/WEB-INF/faces-config.xml: Error at line 14 column 27: Error at (14, 27: Multiple ResourceBundle definitions with the same name: BundleOne.
         at com.sun.faces.config.ConfigureListener.parse(ConfigureListener.java:1751)
         at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:524)
         at com.sun.faces.config.GlassFishConfigureListener.contextInitialized(GlassFishConfigureListener.java:47)
         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4236)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4760)
         at com.sun.enterprise.web.WebModule.start(WebModule.java:292)
         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:833)
         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:817)
         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:659)
         at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1468)
         at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1133)
         at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:171)
         at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:275)
         at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:954)
         at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:941)
         at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:448)
         at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:160)
         at com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:296)
         at com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:203)
         at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:285)
         at com.sun.enterprise.deployment.phasing.ApplicationStartPhase.runPhase(ApplicationStartPhase.java:119)
         at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:95)
         at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:871)
         at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:541)
         at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:585)
         at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:719)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:353)
         at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:336)
         at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:448)
         at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
         at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
         at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
         at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
         at sun.reflect.GeneratedMethodAccessor23.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:77)
         at $Proxy1.invoke(Unknown Source)
         at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:297)
         at com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:56)
         at com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle(MBeanServerRequestHandler.java:142)
         at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:109)
         at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost(RemoteJmxConnectorServlet.java:180)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:397)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:278)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:179)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:231)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
         at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
         at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
         at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
         at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)

    Go ahead and doubt if it makes you feel superior.
    For others:
    If your pom has this:
    <dependency>
                   <groupId>javax.faces</groupId>
                   <artifactId>jsf-api</artifactId>
                   <version>${jsf.version}</version>
              </dependency>
              <dependency>
                   <groupId>javax.faces</groupId>
                   <artifactId>jsf-impl</artifactId>
                   <version>${jsf.version}</version>
              </dependency>
    where jsf.version = 1.2, change jsf.version to 1.2_10

  • HT204053 can i have multiple iCloud accounts with the same Apple id

    Can i have multiple iCloud accounts with the same Apple id

    Welcome to the Apple Community.
    No, your ID is essentially your account. You can have email aliases and you can have multiple accounts, but I don't think that's what you are asking.

  • Can I have multiple event structures with the same event cases?

    Hello, 
    I'm doing an application that reproduces the front panel of the HP6675A power supply. To achieve this, I have done a state machine with different states
    (initialize, measures, voltage, current, ocp, ov, store, recall, etc). In each state, should have an event structure that catches the events of the buttons, like for example: if the current state is the Voltage mode and the user press the current button the next state will be the Current mode. For this in each state of the state machine should be the same event structure with the same events.
    My problem is that the Vi doesn't work properly when I have multiple event structures with the same event cases. There are some possibily to do this, and how? Or is impossible to have multiple events? I have been reading some posts, but I don't find solutions. 
    Any help is appreciated.
    Thank you very much.
    Solved!
    Go to Solution.

    natasftw wrote:
    Or as others mentioned, make two parallel loops.  In one loop, have your state machine.  In the other, have just the Event Handler.  Pass the events from the handler to the state machine by way of queues.
    A proper state machine will not need the second loop.  The "Wait For Event" or "Idle" state (whatever you want to call it) is all you really need in order to catch the user button presses.  The setup is almost there.  Maybe add a shift register to keep track of which state to go to in the case of a timeout on the Event Structure.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Make a file extension to open always with the same app

    Hello, do you know how can I make a file extension to open always with the same app. So far I have been doing it by double click > open with > other > and then mark open always with this app, BUT
    I do not want to do this very time with all the same file extension I have in my hard disk, is there any way, like in windows, to select and preset a determined app to always open all files with the same extensión in my hard disk??
    Actually what I´m experiencing and would like to change is to open always .pdf extensión with Acrobat and not with Preview
    Thanks very much in advance for your help!!

    OK!!!!
    Got it!!!
    Thanks anyway!!

  • Why can't I upload Adobe CS3 on another Mac with the same operating system 10.5.8?

    I purchased a MacBook Pro in 2008 and had it installed with Adobe CS3 at the Apple Store. I don't believe I was given any CDs or serial numbers to take home. I still have all the documentation for my other programs I installed myself, like Logic, Final Cut, etc. and those installed fine on my new Mac desktop computer, with the same operating system (10.5.8) as my MacBook. For whatever reason, I don't have the documenation for CS3, but I was able to download a serial number finder and locate the serial number for my version of CS3. But when I enter that serial number into the new computer, Adobe says the serial number is invalid. I thought standard licenses allowed for 2 computers (home/work) per serial number. This is the first computer I've tried to install CS3 on so it seems I should have no problem. Any help here? I'm on a ticking clock because my MacBook could crash any day and I need to get the programs switched over to my new computer. I appreciate any help.
    Thanks,
    Gerald

    Contact serial number support by phone or web chat.
    Mylenium

  • Error Handling in File to Multiple IDOC Scenario?

    Hello Experts,
    My scenario is file with Multiple records and I want to send it to SAP system.If there will be 10 Records in my file I need to create 10 IDOC in Target system.
    I can use below of the two options.
    1) File to Multiple Idoc (1.N Mapping)
    2) Using BPM
    3)Directly place the file in SAP application server and process it via ABAP Program.
    However I am not clear in which option error handling will be more effective.Please suggest.
    Basically I want to handle If out of 10 records 9 are correct and 1 record is not correct then I should be able to report within PI without affecting 9 correct records.Is it possible 9 records will be sent to SAP system and PI will only show error for 1 incorrect record.
    Also I will be doing this scenrio for transaction data with huge size (1 Million Records).Which approach will be more effective in this case.
    Thanks,
    Pushkar

    Hi Patel,
    I want to handle If out of 10 records 9 are correct and 1 record is not correct then I should be able to report within PI without affecting 9 correct records.Is it possible 9 records will be sent to SAP system and PI will only show error for 1 incorrect record.
    when working on graphical mapping, the target structure is created when there are no errors in all records of source structure.
    suppose if we have validation error in 9th and 10th record, then we can not process the first eight records and inturn we can not store the two error records in XI for further.
    i suggest you the third option, you can directly place the file in SAP application server and process it via ABAP Program.
    this is far better because you can do more customizations as you have to deal with millions of records.
    Regards,
    Pradeep A.

  • File to multiple idoc scenarios depending on finput field value

    Hi,
    i have a file to idoc scenario.
    depending on a particular field of the file i have to trigger a single idoc (with all the records in the file)or multiple idocs  (for each record in the file ).
    for example,
    the file has 5 records-
    2 records have field value A (create 1 idoc for all As)
    3 records have field value B (create 1 idoc for each B)
    so in this case 4 idocs (1 for all A, and 3x1 for B) are created
    What is the best solution ?-
    1. to have several outbound idoc interfaces and check each interface mapping for field value (A or B) ?
    this solution seems like overwork to me
    2. handle this in mapping ?
    in that case will UDF be better or ABAP mapping
    3. any other way ?
    Thanks in advance

    Hi,
    if you have one IDOC type you can use ABAP mapping
    this way you will handle everything in tables
    and you will be able to post one IDOC (bundled)
    with all IDOCs inside
    also if you use ABAP mapping you will be able to incorporate changes
    easily in the future I believe
    for idoc bundling:
    <a href="/people/michal.krawczyk2/blog/2006/10/11/xi-new-book-mastering-idoc-business-scenarios-with-sap-xi"><b>Mastering IDoc Business Scenarios with SAP XI</b></a>
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Multiple authentication sources with the same category

    Quote from portal help:
    "Multiple authentication sources can use the same category. However, because the prefix is prepended to the user and group names, you need to be certain that the domains involved do not have different users or groups with the same name. That is, if a LizaR user exists on one domain, and a LizaR user exists on another domain, they must be the same user because only one user will be created."
    Fine, let's say I am "certain that the domains involved do not have different users or groups with the same name".
    But there is other concern I have here. I want to know how portal will RECOGNIZE which authentication source to use?
    Let's say I have 2 auth sources AS1 and AS2 with the same category MyAuth. AS1 use WS1 to authenticate against LDAP1 and AS2 use WS2 to authenticate against LDAP2.
    Now, I have a user - Dmitry. I am trying to login into portal and I selected AS1 to do actual authentication. My question is how portal will CHOOSE which auth source to use because all portal knows about me is <MyAuth\Dmitry> that is came from portal login screen? Both auth sources match this pattern so seems like portal may choose any of them.
    Does it mean that portal will try to authenticate again AS1 and if this attempt failed then you AS2?
    I didn't find any explanation in portal documentation.
    Thank you.
    Edited by Bryazgin at 12/12/2007 10:42 AM

    Yes, it seems you are right. As soon as portal have found CORRECT user there is no issue anymore because user is bind to unique auth source that actually has been used to created this user.
    I think my main confusion come from the fact that having <Category> and <UserName> is not enough to UNIQUE identify user in portal as soon as <Category> can be the SAME for different auth sources.
    Let's have you have user created by AS1. According API this user created by this AS1 will have 4 different names, like sUniqueName, sAuthenticationName, sLoginName and sDisplayName. But portal is going to search user in portal database BASED on information that is available in login form - <Category> and <User Name>. At this point portal has no idea about sUniqueName and all this things.
    Now if there were 2 users in database that have been created by 2 different auth sources with the same <category> and <User Name> then I don't understand how portal will figured out which user to choose from. I guess <Category> value somehow MUST participate in sUniqueName value. <Category> has to be involve in process of finding user in database. In this scenario 2 users will be retrieved from database and what is important these 2 users are different, they have been created by different auth sources. Now question became which user is CORRECT one?
    Edited by Bryazgin at 12/12/2007 1:34 PM

  • Multiple users found with the same name

    Hi,
    In my ADF bean, I am trying to access some users from ldap. I found there are two users with the same email in my console under "Users and Groups" tab.
    I am getting the following error in logs:
    oracle.jbo.JboException: multiple users found with same name
            at com.castandcrew.portal.am.StartPaperworkCenterAMImpl.setStartPaperworkApprovalHistory(StartPaperworkCenterAMImpl.java:627)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at oracle.adf.model.binding.DCInvokeMethod.invokeMethod(DCInvokeMethod.java:657)
            at oracle.adf.model.binding.DCDataControl.invokeMethod(DCDataControl.java:2143)
            at oracle.adf.model.bc4j.DCJboDataControl.invokeMethod(DCJboDataControl.java:3114)
            at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:261)
       at oracle.adf.model.bc4j.DCJboDataControl.invokeMethod(DCJboDataControl.java:3114)
            at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:261)
            at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1635)
            at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2151)
            at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:740)
            at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:402)
            at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:252)
            at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:210)
            at com.castandcrew.portal.view.bean.startpaperwork.StartPaperworkCenterManagedBean.handleRowDisclosure(StartPaperworkCenterManagedBean.java:696)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at com.sun.el.parser.AstValue.invoke(AstValue.java:187)
            at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
            at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodExpression(UIXComponentBase.java:1300)
            at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:263)
            at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:147)
            at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:404)
            at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
            at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:280)
            at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:147)
            at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:404)
            at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
            at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:93)
            at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
            at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
            at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
            at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:93)
            at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
            at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
            at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
            at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1018)
            at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:431)
            at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
            at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
            at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
            at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
            at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
            at oracle.portlet.client.adapter.adf.ADFPortletFilter.doFilter(ADFPortletFilter.java:34)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
    I am wondering how open ldap can allow two users with same email.
    Any suggestions are welcome.can i try some work around for that?
    Thanks.

    Hi.
    For some reason you have duplicates. Normally is something strange but it can occurs in heavy load / database corruptions or other situations.
    You should contact a LDAP Administrator in order to find and fix the duplicate problem.
    Regards.

  • Multiple ios products with the same name.

    Hello guys,
    We have multiple iOS universal products with the same name for different countries. Will it cause any issues when the user installs them in the same device? Using Xcode to push them to my device, i noticed that they are all installed in the same place, i.e only one app is available. So my question is how should we do to use the same name for multiple apps and is it possible?

    Go ahead and doubt if it makes you feel superior.
    For others:
    If your pom has this:
    <dependency>
                   <groupId>javax.faces</groupId>
                   <artifactId>jsf-api</artifactId>
                   <version>${jsf.version}</version>
              </dependency>
              <dependency>
                   <groupId>javax.faces</groupId>
                   <artifactId>jsf-impl</artifactId>
                   <version>${jsf.version}</version>
              </dependency>
    where jsf.version = 1.2, change jsf.version to 1.2_10

Maybe you are looking for

  • VIP still reachable even if primary server farm is down

    Hi, I want to make sure that the a VIP is not PING-able anymore when the primary server farm is down (all servers are down). For that I have the following configuration : serverfarm host NCL_FARM_TEST probe NCL_PROBE_HTTP rserver CHPAUN028 443 inserv

  • TS3212 helppp pleaseee

    i installed itunes and everything went fine but when i go to open it a message pops up saying "the file i tunes library.itl cannot be read because it was created by a newer version of iTunes" what does that mean and how do i fix it ?

  • Safari 4.0.3 On OS 10.5.8 ??? Does not working

    I update the OS to 10.5.8 and then I update the Safari (4.0.3) and mow I can't start the safari. What can I do to fix it???

  • How do you undo highlighted text in adobe for iPad?

    How do you undo highlighted text in adobe for iPad?

  • Re Start message

    On my wife's log in she keeps getting a pop up screen that states the computer needs to be restarted by holding down the power key. It will not function until the computer is shut down and restarted. It does not appear when I am logged on. Model Name