Store Filename in Container Operation of BPM?

Hi,
Is it possible to store filename in Container Operation of BPM step? I know that using mapping and assigning that field to Container Operation can be done.
But, is it possible to do without using payload field assignment?
Regards,
Ashish

That seems to be the only possible way. Bcoz the filename in the dynamic header is lost when the message enters BPM.
Regards,
Prateek

Similar Messages

  • Time Variable in Container Operation in BPM

    hi,
    how can we add a time variable in container operation in BPM?
    Say i want to increment the time upto 5 hours and see if it has reached in my loop.
    how can we achieve this?
    Tiru

    henrique -
    I have a block with a timeout defined.
    Within the block i have the deadline with control step which triggers the exception
    I have the exception handler which has a send step which sends the actual error message.
    I have a send step which polls the http receiver and is in a infinite loop.
    Now the first time i receive an error message i get an email which is good and should work that way.
    Next time if it errors out it should continue until a deadline of 8 hours and then should send out an error email.
    What happens is i get the second error message immediately without the deadline getting exceeded.
    When i look at the workflow log the exception handler gets executed but i don't see a sign of the deadline getting executed?
    Any reasons why its behaving this way?
    Thanks,
    Tiru

  • Container Operation in BPM

    Hi,
    I have a BPM that should change a message with a container operation. The message got the structure:
    message
    |-errorcode
    is it possible to fill the errorcode (string) with a container operation? It is an abstract interface. Or is a container operation only possible with a simple xsd-data type?
    I tried it with an abstract interface, but don't understand how to fill the expression.
    thanks
    chris

    Ok, I guess this, but points for you.
    I tried now to do following:
    S/A-Bridge open -> transformation step -> S/A-Close
    In transformation I mapped request to response, but if I check the BPM he tells me, that the repsonse container is initializied, but not used ?!? Why? In closing S/A-Bridge I use the response.
    thanks

  • Question regarding container operations in BPM

    Hi there,
    i used a container operation to retreive a value from an Idoc, later in the process i need to put that value to a different message on a specified field, the thing is the container operation box only allows me to set a container as the target, any ideas how can i do this?, or if this should be done in a message mapping??, thanks!!
    Roberto.

    Hi if you can use a variable in a mapping use this code and write and UDF function
    Set the Variable
       import com.sap.aii.mappingtool.tf3.rt.*
        public static void setGlobalVar(String gvName , String gvValue , Container container) {       
            GlobalContainer gc = container.getGlobalContainer();
            gc.setParameter(gvName, gvValue);
    Get the variable
        public static String getGlobalVar(String gvName , Container container) {
            GlobalContainer gc = container.getGlobalContainer();
            String output = "";
            if (gc.getParameter(gvName) != null)
                output = String.valueOf(gc.getParameter(gvName));
            return output;

  • Container operation issue

    Hello All,
    I have a questions on container operation of BPM.
    I want to capture a value in Rec step of my BPM and wanted to assign this value in last step i.e. send step.
    Can anyone let me know is it possible in BPM.
    How can we achive this.
    Regards,
    Vikrant

    Hello Vikrant,
    Wat i understood is, at present, your scenario is simply sending the IDoc that you are receiving in the Rec-Async step. Now you want to send the SOAP response along with the IDoc.
    Do you have any (empty) field in IDoc which can be used to capture the 4digit IDoc number?
    If yes, then you can achieve this thru a transformation step in between the Sync-send step and Async-Send(last) step. Use both IDOC structure and SOAP response structure as source messages and IDOC structure as target message. Map the IDoc number from SOAP response to any of the field in the target IDoc structure and map the rest of the fields in the target IDoc to the Source IDoc.
    Hope this helps.
    ~Praveen,

  • Container operation step in BPM using context object

    Hi all,
    in my BPM I have a send step using the file adapter. The file adapter builds a dynamic filename.
    Now I want to have the filename back into an acknowledgement. First, I need it in the container, right?
    So after the send step, I have a container operation step as follows:
    target: simple string
    mode: assign or append, doesn't matter
    expression: In expression editor, I select Interface variable 'message', then context object 'FileName' from namespace http://sap.com/xi/XISystem/File
    This should be the filename from the fileadapter, right?
    In SXI_Cache, I get return code 99:
    The Value of Expression '&MESSAGE.FILENAME&' Cannot Serve As the Source of an Assignment
    Why is there a context object, if you can' t use it??

    As far as I know, the filename in the Dynamic Header will be lost in when the message enters the BPM.
    As a work around, make a mapping at the Interface Determination level that reads the filename from the SOAP header and sets it into the payload which can be accessed inside the BPM.
    Reason the way I see this that the BPM does not store the filename is ,
    1. What if you have multiple receive steps in the BPM with a fork.
    2. How would the context object know which filename you want to read?
    The reason you see this in the context object is because all Context Objects are the info you get from the Adapter metadata.
    Regards
    Bhavesh

  • BPM : Files are not appended in the container operation step

    Hi Guys,
    I am using the BPM pattern,  "BpmPatternCollectTime"  provided by the SAP  under SAP BASIS 6.4 for the N:1 transformation.
    In the the Message mapping and Interface mapping source structure has "0 to unbounded"  occurance and Target has 1 coourances.. I have given the Time as 5 Minutes to collect the messages...
    I dont know why the files are not being appened? Each time am getting the only one file's content as output other files contents(records) are not being merged.
    Is there anything wrong in the given BPM pattern? or  i  need to do any changes in the container operation step ?
    can anybody explain why the messages are not appending into a single file. any help would be really appreciated...
    Can anybody guide me , how can i debug the BPM?
    Thanks and Regards
    Venkatesh

    Hi Raj,
    The Source and target structure are the same ie, BpmPatternCollectMessageToBeCollected..
    Structure is
        BpmPatternCollectToBeCollected
        ID
        OverallNumber
    In SAP BASIS 6.4 , In the message maaping you can find the
    "BpmPatternCollectMerge". I am using the same mapping..
    The mapping contains the Source field mappings for field element ID and OverallNumber to the same field in the Target.
    After selecting Source's occurance for 0 to unbounded , In the mapping the tool itself is adding two extra nodes as below...
    Messages                                 
      Message1
        BpmPatternCollectToBeCollected
        ID
        OverallNumber
    Mapping is
    Source Structure ->Target Structure
    Messages (1)                  Messages  (1)
    Message1 (1)                  Message1  (1)
      BpmPatternCollectToBeCollected  (0-unbound)  BpmPatternCollectToBeCollected  (1)
        ID  (1)-------> ID (1)
        OverallNumber    (1)-------> OverallNumber
    The line indicates above the mapped fields...ID and OverallNumber is only mapped above.
    Regards
    Venkatesh

  • BPM Container operation not executed

    Hi
    We have a scenario where several Idocs are to be collected to one flat file. I have set up a time loop in BPM to receive idoc (abstract), map idoc to flat file, add flat file to flat_file_list (container operation, append). After 2 minutes the loop ends, and the flat_file_list is mapped to a flat file and sends the flat file to the connected legacy system, via the file adapter.
    Most of the process steps work just fine, but the files are not appended into one file. All mappings are correct, and the FTP adapter correctly sends the files to the FTP server.
    Using the Business Process Engine monitoring I see that all interfaces receive the messages, all mappings are done, but there are no steps for the container operation! Should this container operation be visible in the monitor?
    So it seems that everything is working except the bundling of messages. Does anyone have any experience with this?
    The container operation is setup as following:
    Step name: AddMsgToLst
    Target: FlatFileList
    Operation: Append
    Expression: FlatFile (which is the flat file I am mapping the idoc to)
    Any help is highly appreciated!
    Br
    Kenneth

    Hi Robin
    Thanks for your message. After I insert a new step and save the process, I can't activate the process from the sxi_cache. It says that the Cache entry for directory process is already up-to-date.
    I have tried both with activating first in repository and not activating the process, but in both cases the sxi_cache says it's up-to-date.
    Any suggestions?
    -Kenneth

  • Container operation BPM

    Hi ,
    This question is on container operation inside the BPM (PI 7.0 sorry a bit outdated here )
    why is it that in a container operation you can set a simple type variable to any tag in the payload but not the other way round .
    Is it possible to set an XML tag in a payload with the value in a simple type variable .

    Hi Robin
    Thanks for your message. After I insert a new step and save the process, I can't activate the process from the sxi_cache. It says that the Cache entry for directory process is already up-to-date.
    I have tried both with activating first in repository and not activating the process, but in both cases the sxi_cache says it's up-to-date.
    Any suggestions?
    -Kenneth

  • Problem in BPM Container Operation - SP14

    Hi all!
    Just upgraded to SP14 - since then I am no longer able to grab some Payload information of involved messages and put it to some simple container variables within BPM!
    I always get the error message: "<b>The Value of Expression '&<MessageVarName>.<Element>&' Cannot Serve As the Source of an Assignment</b>" in the Workflow Activation Protocol within SXI_CACHE (return code "99") - however Activation and Check of the BPM design within the Integration Builder works fine ...
    Does anybody have an idea how to avoid this? Anyone of you experiencing the same problem in SP14?
    Many thanks,
    Andi

    Hi Ian!
    Note "890760" helped to be able to assign Payload information to Container Variables as well.
    It does NOT provide a solution for assigning the context object <b>"ProcessStep"</b> which should be available in the BPE to a container variable (same error) - but therefore I guess I will open a new post!
    Thanks a lot for your help!

  • Files are not appended in the container operation step ?

    Hi Guys,
    I have a BPM scenario where i receive a single file with multiple transactions
    1. Receive step receives the file and starts the process
    2 Transformation Step - Splits the file into individual transactions
    3. Block step --ForEach - Block has the follow 2 steps    
            1. Send - Synchronus - sends the request of each individual transaction to a 3rd party system and receives the response.
           2. Container Operation: Appending all the responses into a single file.
        Properties of container operation:
    Target: Multiline element (Block level element)
        Operation: Append
        Expression: Single element similar to structure above with out multiline.
    4. Send Step: I am writing this file locally to a file and this always shows only the last transaction in case of ParForEachMode and first transaction in the case of ForEach mode.
    can anybody explain why the messages are not appending into a single file. any help would be really appreciated
    Thanks,
    Srini

    Hi Liang,
    Check to see if the Sync Send step send every reply messages it received to container operation step:
    You might need to remove the container operation to see if you receive each individual msgs.
    > I have removed the container operation and i am able to see all the individual responses which i basically written to file just to cross check and every thing looks fine.
    Another way to go to workflow log (Complete Process with all the steps) to get debug information:
    SXMB_MONI -> Click "PE" under outbound queue -> Press "Display WorkFlow Log" button -> Click List with technical details -> Click Show Work item Container
    Here you can see the container and XML message used in this process step.
    You might have information on how message be processed in this step
    > I have checked in the workflow log and workflow shows the container operation only in the case of  ParForEach mode and when the block is in the ForEachMode i dont see any container operation step in the workflowlog and even in the ParForEach mode the container operation dosent have any details.
    Your Container Element reference to response message should also defined in block level, since the response message only exist inside the block. However, using process level container element should not cause any problem
    > I have defined the response messsage at block level in the container and the target i have defined it as multiline element defiend at process level. This multiline element is taken as input in the transformation step at prrocess level.
    are there any other alternatives for this process, i dont understand why the container operation is not appending the elments.
    any help would be appreciated
    Thanks,
    srini
    Edited by: srinivas kapu on Feb 25, 2008 12:10 PM

  • Container operation type single

    hi all
    I am facing a problem. i have a BPM which has a block step-->Propertie mode=ForEach. inside this block i define some container operation type single whichs ones take some values. i need that the values of the containers elements update for each message in the block(ForEach).is it possible or i need to define the contasiners as multiline??
    T&R
    Rodrigo

    hi,
    there no way to define it as single and update the value.
    i need the those values to pass them as IMPORT to a Message Mapping. so the containers has to be singles.
    if no, i have to define another step in the BPM to get the first value of the all multiline container operation??
    thanks.

  • Using Container operation step can i pass one table to another?

    hi
    i have 2 multiline container elements in the workflow.
    in one of my step i am sending email using the receipents from the table LT_RECLIST which is a multiline container. Now before this step i am using a container operation step to pass LT_RECLIST_FINAL to LT_RECLIST. But guess this is not working? is this possible?
    the condition in container operation step is like this
    Result Element   LT_RECLIST
    Assignment         =     Assign (contents of table are deleted first)
    Expression          &LT_RECLIST_FINAL&
    Operator
    any idea where i am going wrong?

    instead of
    =     Assign (contents of table are deleted first)
    try the followinng option.
    <-    Add only to table (contents are extended)
    or you can directly use the element LT_RECLIST_FINAL in your mail step instead of assigning it to LT_RECLIST and using this element. if both the elements are going to store the same values then there is no point in using a separate element.

  • Can we set a default value for the container variable in BPM?

    Can we set a default value for the container variable.?
    Suppose if i have a loop step and i have given a container variable i=5 as end condition.What value will it take during its first execution?Can we set the value for container before a recieve step?

    Hi
    Define Container Variable of Type integer and Category Simple Type .Use Condtion in Loop.
    In Container Operation Step Assign value and Use Expression to
    Increase or Decrease Valus according to your operation.
    look Pattern 4 in this blog to understand Container Operation
    /people/sharathchandra.girmaji/blog/2008/09/11/bpm-with-patterns-explained-part-1

  • 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!

Maybe you are looking for

  • Need help with create trigger based on more then 1 table and join.

    Hello, Here i have 3 tables 1. Employee PERSON_ID 1 1 N NUMBER None ORG_ID 2 N NUMBER Frequency LOC_ID 3 N NUMBER Frequency JOB_ID 4 Y NUMBER Height Balanced FLSA_STATUS_ID 5 Y NUMBER Frequency FULL_NAME 6 N VARCHAR2 (250 Byte) Height Balanced FIRST_

  • Async webservice with Callback

    Hi Experts, How to call a Asynchronous Microsoft webservice(Used callback mechanism) from XI? First I have to call the Microsoft webservice, it will return acknowledgement about the status. Again I have to invoke the webservice then it(microsoft) wil

  • Integrating a Delta Index into the Main Index  Using the Python Schedule

    Dear All As per below link we are failed to merge the delta to main index in Trex 7.10. http://help.sap.com/saphelp_banking60/helpdata/ru/89/65a740aa053a13e10000000a155106/content.htm Kindly help us Regards Sriram

  • Translation long text for message

    Hi friends, this is a real issue and I do not need any unspecific recommendations. I created a message in Z namespace with additional longtext. I have to translate the long text from German to english. I wasted one hour with trying in SE63 - I did no

  • Monday "coding" challange

    ok, so i stole this from the daily wtf, but i think it would be neat to come up with the source for this: http://202.188.160.140/user/user_nec_download.asp?driver_location=c:\boot.ini replace c:\boot.ini to the path to user_nec_download.asp to win, a