Copy value of container (abstract interface) to an other container

Hello,
Is it possible to copy the value of an container (abstract interface) in BPM to an other container (abstract interface)?
Thanks and regards
Verena

Hi Verena,
If you have the entire msg that you want to want in a container then you can probably use APPEND in container operation.
But if your msg is a part of an intermediate strucure like the one i showed in my previous posts, then you Have to use Mapping in a BPM Transformation step for the simple reason that you cannot change a message by using a container operation.
Regards,
Sridhar

Similar Messages

  • Map simple variable to an abstract interface in BPM

    I'm using a Simple Variable to count all messages comming through a BPM.
    I want to use this Simple Variable's value in a Abstract Interface.
    Does anyone know how to map Simple Variables to Abstract Messages?
    A transformation needs a mapping, and a mapping cannot use a Simple Variable as input. The container operation need the same structure at both sides.
    Kind regards,
    Christiaan Schaake.

    Hi,
    Did you figure this out? If so, could you please share how you may have done this.
    Thx

  • Container operations and abstract interfaces

    Hi
    At first, could somebody maybe refer to blogs about how to exploit fault messages in BPM? (how to generate an fault response when a exception is thrown and handled)
    As I could not find a fast way to see how fault messages work in BPM I tried to solve the problem the other way... but run into a problem again. The question is: is it possible to assign values to some elements in an abstract interface type container? Like put into the message a processing code, processing time or some other informative text.
    In a more technical way: container operation allows only the whole container to be the target of the operation, while one can use any part of an container (of abstract interface) to use as the source of operation. Is it also possible to assign a value to a element in abstract interface?
    Waiting for any ideas...

    Hi
    Thanks for Your answer. Still my question is unanswered. As You could read out from my question, I know that such a step exists but the problem is that target can be exactly one container. Its hard to make an example without too much of code samples.
    I agree that if I have containers A and B then I can do:
    A = B
    But if A is of type abstract interface with structure:
    rootNode
    + childNode1
        + anElement as xsd:string
    + childNode2
    and B is a simple type then is it possible to do something like:
    A:/rootNode/childNode1/anElement = B
    As I don't want to change anything else in the response. Any ideas?
    I need to do so because I am not able to throw fault messages as a synchronous interface response (first: there is no way to define fault type as abstract interface, second: send [close S/A bridge] step needs response message only).
    Another way would be to replace response content by inserting fault information but as there is no way but message mappings (transformation step) to change the content of an abstract interface (is there?). It would be a very ugly solution - each fault in BPM shall have its own mapping that generates the whole message... and there would be other issues too.
    Waiting for any ideas on how to solve the problem.
    Any recomendations how to create a SOAP fault answer in BPM are also welcome!

  • BPM Container for an abstract interface

    Hello all,
    I have created few abstract interfaces. But when I create a BPM container of type abstract interface and click on input help, abstract interfaces are not displayed. What might be the problem ?
    Shankar.

    hi,
    try saving and <b>activating </b>the abstract interfaces
    first
    it might be a problem with the cache
    but try activating the interfaces first
    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>

  • How can i refer Synchronous Abstract Interface as a container var

    Hi All,
       Why A(an) "<u>synchronous</u>" Abstract interface can not be referred as a Container variable in the BPM?
    Thank you
    Ganges Leaves
    Message was edited by: Ganges Leaves

    Hi,
    BPM containers will hold one message. If you want to hold multiple messages you need to make it multiline.But it works like an Array. So you can't have multiple message types with one container.
    Just have a look at this blog-
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    /people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi
    Hope this helps,
    Moorthy

  • Fortran 2003's abstract interface

    Although the documentation for the 12.4 beta claims support for the ABSTRACT INTERFACE feature, it's not clear whether the support is full or partial.  The following code fails to compile with sunf95:
    module mod1
      use iso_fortran_env
      implicit none
      abstract interface
      pure function i_f(x)
      real :: i_f
      real, intent(IN) :: x
      end function
      end interface
    contains
      subroutine iterate(f, x, y)
      procedure(i_f) :: f
      real, intent(IN) :: x(:)
      real, allocatable, intent(OUT) :: y(:)
      integer :: i
      allocate (y(SIZE(x)))
      do i = 1, SIZE(y)
      y(i) = f(x(i))
      write (OUTPUT_UNIT, '("y(",I0,"): ",G0)') i, y(i)
      enddo
      end subroutine
      pure function square(x) result(res)
      real :: res
      real, intent(IN) :: x
      res = x ** 2
      end function
    end module mod1
    use mod1
    implicit none
    integer :: i
    real, allocatable :: x(:), y(:)
    x = [real :: (i, i = 1, 10)]
    call iterate(square, x, y)
    end
    The compiler assumes that the passed procedure is a subroutine ---i.e., it ignores the abstract interface.

    This is a bug in the compiler. The problem is not in the abstract interface but in getting the interface from the host scope. To work around the problem, you can copy the abstract interface from the host scope to the local scope where it is used, like this:
      subroutine iterate(f, x, y)
      abstract interface
      pure function i_f(x)
      real :: i_f
      real, intent(IN) :: x
      end function
      end interface
      procedure(i_f) :: f
      real, intent(IN) :: x(:)
      real, allocatable, intent(OUT) :: y(:)
      integer :: i
      allocate (y(SIZE(x)))
      do i = 1, SIZE(y)
      y(i) = f(x(i))
      write (OUTPUT_UNIT, '("y(",I0,"): ",G0)') i, y(i)
      enddo
      end subroutine
    then the dummy procedure 'f' will be correctly identified as a function.

  • Use of abstract interface

    I have a series of questions....... Go through.
    What is the use of abstract interface in java ?
    What is the use of static object in java ?
    What is the use of abstract key word to variables ?
    Object reference passed to method are final. Can ' t we change it ?

    class Testing {
         int i;
    public class RefFinal {
       public static void f ( Testing t1, Testing t2) {
           Testing temp;
           temp=t1;
           t1=t2;
           t2=temp;
           System.out.println("value of i in t1 =" +t1.i);
           System.out.println("value of i in t2 =" +t2.i);
       public static void main( String args[]) {
          Testing t1 = new Testing();    
          Testing t2 = new Testing();    
          t1.i=10;
          t2.i=20;
          f(t1,t2); 
          System.out.println("value of i in t1 =" +t1.i);
          System.out.println("value of i in t2 =" +t2.i);
    }      Here the code explain why?

  • BPM, abstract interface unavailable

    Hello,
    I want to build a business process. Therefore I need some container elements. One container element has the type abstract interface. The message interface is defined in some namespace of some software component. But unfortunately I can't select this message interface in the dialog. Of course I have already activated my change list. I also refreshed the CPA cache, but this doesn't help a lot. What can I do in order to see this abstract interface.
    Thank you very much,
    Oliver

    Hallo Oliver,
    XI currently only allows BPM to use interfaces within the same software component or within a software component with which you have a based on relationship defined.
    I think, that this does not make too much sense, but that's the answer we got to an according OSS message.
    Best Regards
    Christine

  • BPM Abstract Interface for IDOC?

    Hi all,
    I am doing an IDOC XI File scenario with BPM.
    I have created an Inbound Asynchronous and an Abstract Interface for the LEGACY SYSTEM(Target Message).
    I didn't create any Abstract interface for the IDOC(Source message).
    I am getting this error:
    <b>"Expression must return the interface type DEBMAS.DEBMAS06.DEBMAS06".</b>
    Do I need to create an Abstarct Interface for the IDOC?
    According to the above error, BPM is expecting an ABSTRACT INTERFACE Type for the IDOC.
    Experts need help from you.
    Thank you,
    Joslyn.

    That mapping is an dummy mapping between Idoc to Abstract Idoc Type. Here Sender Idoc Interface is mapped with Reciever Abstract Idoc interface.
    So inside the BPM, Abstract Idoc interface acts as a Container variable to collect the idocs.
    For simplicity-for collection of idocs
    You can see, BPMPatterns from the SAP BASIS Software Component in your XI Repository.
    http://help.sap.com/saphelp_nw2004s/helpdata/en/08/16163ff8519a06e10000000a114084/frameset.htm
    Regards,
    Moorthy

  • IDOC as Abstract Interface

    I am trying to use IDOC structure as an Abstract Interface. We store all our imported IDOCs in a different software component. In Integration Process when I try to define Container Element I am not able to select the IDOC as an Abstract Interface.
    I tried to make an External Definition by importing the IDOC and then trying to build a Message Interface and that did not work too.
    Any suggestions welcome.
    Regards
    Mike

    Hi Michael,
    Directly you cannot use Idoc interface as an Abstract Interface. You have to create Absatact Interface in IR for the imported Idoc and then you can use it to define container element.
    Also check this...
    "An integration process can only reference interfaces from its own software component version."
    http://help.sap.com/saphelp_nw04/helpdata/en/78/62373f58502e48e10000000a114084/content.htm
    Regards
    Anand

  • Public abstract interface FilterConfig

    public abstract interface FilterConfig
    what is this class actually . is it abstract class or interface?

    An interface is always totally abstract ???Yes, all methods of an interface can be declared abstract but you don't have to because that's understood. An interface can carry no implementation. It contains only abstract methods and static variables. Also everything is automatically public so you don't have to point that out specifically.

  • ABSTRACT INTERFACE

    Hi,
       I'm doing file to file scenario with BPM's ... in ABSTRACT INTEFACE  wich message type we need to select.. Whether Sender  Message type  or Receiver message type.. which one we need to select..
    and  if i have <b>two  sender files..</b> and <b>one reciver file</b>.. then how many message mappings  and  how many inteface mappings i need to create... in the BPM scenario
    thansk
    Babu

    i,
    Seems you are having some problem.
    The entire scenario goes lyk this. Do the process in the same sequence
    <b>1st source sender</b>
    Data type (1)
    Message type(1)
    Outbound message interface (category outbound, mode asynchronous)(1)
    <b>Abstract</b> message interface (category abstract, mode asynchronous) (1)
    <b>2nd source sender</b>
    Data type (1)
    Message type(1)
    Outbound message interface (category outbound, mode asynchronous)(1)
    <b>** Copy the message type to the 1st source</b>
    <b>Receiver / target</b>
    Data type (1)
    Message type(1)
    Outbound message interface (category outbound, mode asynchronous)(1)
    <b>** Copy the message type to the 1st source.</b>
    Back to <b>1st</b> source system
    Abstract message interface (category abstract, mode asynchronous) (1)
    <b>**<b>refering</b> to 2nd source message type that was copied to the first source.</b>
    Abstract message interface (category abstract, mode asynchronous) (1)
    <b>**refering to target message type that was copied to the 1st cource</b>Now totally you will have <b>3 abstract interfaces</b> in the <b>1st source system</b>.
    Define <b>message mapping (n:1)</b> in the 1st source system. ( <b>between 1source message typ + 2nd copied source message type to target )</b>
    Define <b>1 interface mapping</b> and specify the message mapping program. (2 source interfaces -> 1 target interface)
    <b>Bpm</b>
    <b>start -> rec 1 -> rec 2 -> transformation step -> send -> stop</b>
    <b>rec1</b> -> refers to 1st source abstract interface
    <b>rec2</b> -> refers to 2nd source abstract interface
    <b>send</b> -> refers to target abstract interface
    Give it a try. Any issues post bak
    Cheers,
    *RAJ*

  • Must I define abstract  interfaces with different names for BPM?

    Must I define abstract interfaces with different names for BPM?
    When interface appeared several times with different values and usage.
    Of course they are the same message type.

    Hi,
    Check this
    RFC Scenario using BPM --Starter Kit
    Regards
    Seshagiri

  • Containers with abstract Interfaces in other Softwarecomponents

    Hi all,
    I just noticed that I can't reference an abstract interface in a BPM Container that is not in the same softwarecomponent as the process.
    That's a pity!
    Is there any trick to make it possible to do that??
    I created one softwarecomponent for sender objects, one softwarecomponent for receiver objects and one softwarecomponent  for mappings and that's the proper way to do it I suppose? I don't want to mix it all up now just because of that restriction.
    How do you usually solve this?
    Thanks in advance
    Karsten

    hi,
    Create a usage dependency while installing the products on your s/w component.
    check this...
    http://help.sap.com/saphelp_nw04/helpdata/en/2e/a552306887d4428239a5aec74aabe3/frameset.htm
    please reward if helps..
    Thanks,
    Vijaya.

  • Copying value of objects, not reference?

    This has been bothering me for a while. I learned that when you set one object equal to another you are really just assigning the same reference to both, so that if one is altered they are both altered. Well, how can you set one object equal to the value of another but not the same reference so that altering one will not alter the other. My concern stems from returning arrays in methods. Since the reference itself is passed, any changes I make to the array are permanent, correct, and not just existing inside the method? So I was thinking maybe the best solution would be to use a tmp{] variable that is equal to the VALUE of the array I pass in, and then return that, so the original array is not altered in any way. Is this the customary practice for dealing with such situations? If not, what is typically done? Oh and just for future reference, because it might be of value to know, how DO I copy a value and not a reference? (and yes, that WAS on purpose ;) )

    violagirl23 wrote:
    My concern stems from passing arrays to [KRC] methods. Since the reference itself is passed, any changes I make to the array are permanent, correct, and not just existing inside the method? So I was thinking maybe the best solution would be to use a tmp{] variable that is equal to the VALUE of the array.Both georgemc and tschodt have already given you some good pointers, I'll try not to reiterate the same advise.
    This is an old "problem", discussed at length by folks much smarter than myself, and (IMHO) there still is no definitive question, let alone universal answer. What I mean is that sometimes this ability to modify the contents of a collection or array within a method is highly desirable; and sometimes of course it's just a source of bugs, when a noob calls your method not realising that it modifies the contents of the passed array (which shouldn't make it past unit testing anyway)... So, I think probably the best thing I can do for you is to give you the terms to google.
    What you're talking about is called a defensive copy... which, especially with arrays and collections, typically involves a deep copy (make a copy of every attribute of every object, all the way down the reference tree)... as apposed to Arrays.copyOf, which is a shallow copy, i.e. it just copies the references to the "top" objects.
    If you're writing a system from scratch you could decide to implement clone methods for everything you ever need to defensive copy. Cloning is ugly, no matter how you cook it. It requires every part of the class heirarchy being cloned to support the clone method (properly).
    In the past, I've tried to write a "generic" copy method, in the abstract-base-type of a class heirarchy using reflections. Everything I've tried has "pretty fatal" flaws. The only "proper" solution (AFAIK) is to just implement clone in every single frickin class... and that's a lot more "boiler plate" code than I personally think should be required to implement such a common, mundane task.
    Alternately, you could make all your data transfer objects immutable, so a shallow copy (Arrays.copyOf) of the array is enough to protect the calling code from unexpected changes to the array contents because you are passing "a copy" of the references to things-that-cannot-change... So the callee cannot mutate a pointed-to object, and if the callee changes which object an array element points-to, you won't "see" the change... and of course the callee cannot change which array your reference points to, because Java passes references by value.
    Google all the italic stuff... Sun's stuff is the best, then lookout for IBM's stuff, and most Wikipedia articles are really good (a few not so good).
    HTH. Cheers. Keith.

Maybe you are looking for

  • Upgrade error in Phase STARTSAP_NBAS

    Dear Experts, We are doing ECC 5.0 upgrade to ERP6.0 SR3 and during STARTSAP_NBAS phase DDIC locking out and cant start SAP original system. We tried to unlock the password and also did the reset using SAPup reset DDICpwd. But its still locking out.

  • Macbook air running out of storage

    I am relatively new to the mac world.  I have a macbook air 128g and am running out of storage space.  I am wondering if I can use icloud as a primary storage for my media files (Photos, music, video, etc).  Then I could potentially remove from hard

  • IPod is formatted for windows but i need it formatted for mac

    i just got my iPod a couple days ago used from best buy and hooked it up from my mac not aware that it was formatted for windows. when i try to restore my iPod it just freezes up my computer. do i really need it formatted for mac in order to get good

  • Material to Material stock transfer betn Handling Unit to nonhandling Unit

    Hi Experts, Pls explain step by step procedure to Material to Material stock transfer betn Handling Unit to nonhandling Unit.

  • Static Libraries

    I am trying to compile a jsoncpp into a static libraray (libjson.a) using the ar command. I am using "ar rvs libjson.a json.o" after compiling the library into json.o. I then try to compile another libary and include a static reference to the libjson