Create BPM only for WAIT step..

HI All,
I am working on a IDOC-XI-File interface. Its working perfectly fine.
Due to excellent processing times in SAP, our system ends up sending many files almost at same time( diff in milliseconds I guess) to the legacy system. However Legacy system doesnt like it and wants us to send a file every 1 second apart.
I tried using the '
WAIT UP TO 1 SECONDS'
statement in R/3 ssytem but somehow system does not wait for 1 second( I guess that why they call it UP TO and not WAIT TILL ) ).
Instead of relying on R/3 I thought of creating a BPM witha WAIT step. However have never done BPM before, so wanted your opinion before venturing into it for the following:
1. Can I create a BPM just to introduce 1 sec delay.
2. Since my interface is working currently, If I need to use BPM, will I have to redo the mapping etc.
3. How much time effort do you guys think will be needed to convert an existing(working interface) to BPM interface with WAIT step. (Its an Z-IDOC with 3 segments and no-hierarchy)
4. Any blogs, threads to do it would be highly appreciated.
Many thanks
Shirin

u can use BPM to wait for other message.
you have to create abstract message interface for BPM.
but no need to change anything in mapping.
use abstract message interface in interface mapping.
use blog:
Using a BPM to collect messages for a set interval of time
Delivery Modes in BPM.

Similar Messages

  • How to create validation only for created rows in tabular form

    Hi all,
    I have a simple question. Is it possible to create a validation for tabular form which will be fired only for created?
    There is a possibility in APEX 4.1 to choose two types of "*Execution scope*" first is "*For created and Modified Rows*" and second is "*All Submitted Rows*".
    Thanks in advance!
    Regards,
    Jiri

    Hello Jiri,
    >> Is it possible to create a validation for tabular form which will be fired only for created?
    You can still use the scope of For created and Modified Rows and use a PL/SQL Expression condition of:
    :APEX$ROW_STATUS = 'C'You also need to change Execute Condition to For Each Row .
    Hope it helps,
    Arie.
    Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.

  • How do I create gradients (only a few steps) that follow the contour of the artwork?

    I am creating a 'How to' diagram using illustrations from a previous artist. As such I need to recreate his way of creating image gradients. He seems to do it by using only a small amount of gradient steps creating quite block like gradients. Like this: How would I go about getting my smooth gradients like this? At the moment I am creating a smooth gradient filled object, expanding it then specifying the steps in the dialogue box that then appears. But this does not really recreate the same gradient (please see as follows):So my question is does anybody know how this artist has done this? As the gradients also seem to follow the contours of the object.
    Thanks in advance,
    Olly

    Olly,
    If you do wish a more precise recreation, I am afraid you need to approach it some other way.
    As I see the original artwork, it has small roundings at the left end, and it has a dark outer stroke and a blend inside from bottom to top, and on top of that it has three slightly shorter parts, the two lower ones abutted. Everything narrower at the left end, except for the stroke which is uniform.
    You may recreate all that in this maybe rather silly way:
    1) Create a rectangle with the original width and right side height and with the same Stroke Weight and colour as the original and with a solid fill the same colour as the original at the bottom, then create a corresponding rounded rectangle with Corner Radius corresponding to the roundings to the right, and place it on top of the rectangle;
    2) Select both and Pathfinder>Divide, then delete the corner paths to the right, then select the rest and Pathfinder>Unite (or whatever it is called in your version to get one path with rounded corners to the right, then scale the H value to the original left side height;
    3) Copy 2) to the front, remove the fill, and lock the copy (which holds the stroke), to work on with the fill/nostroke path;
    4) Create two copies of 2) and hide the topmost one;
    5) With one of the top Reference Points ticked in the Transform palette, select the visible copy path 4) and reduce the H value to a small suitable value (1pt or something, depending on the size);
    6) Select 3) and 5) and Object>Blend>Make (with Smooth ticked in Object>Blend>Options), this should give you the background fill;
    7) Show the copy hidden in 4) and reduce its height to 1/6 (divide the H value by 6), change the fill to the right (darker) solid colour/shade, move it to a position 1/6 up, and reduce its W value by a small amount so the bottom fill shows at the ends;
    8) Move a copy of 7) 1/6 up;
    9) Move a copy of 8) 1/3 up;
    10) Adjust the colours/shades of 8) and 9), unlock the stroked path from 3), and Group everything, now you should have the whole artwork represented, only rectangular;
    Depending on version, you may then:
    11a) For the newest version(s) create an Art Brush to be applied to simple paths with decreasing width towards the right, or
    11b) For any version, Direct Select the Anchor Points to the far right, and Object>Transform>Scale vertically to get the original height to the right.
    Here is an image in greys, indicating the look after 10) and 11) (the stroke should have been wider, eating away more of the height of the bottom fill blend):

  • FM EDI_PATH_CREATE_CLIENT_DOCNUM is creating XML ONLY for control record

    Hi Experts,
    We have configured a port of XML type and used EDI_PATH_CREATE_CLIENT_DOCNUM function module to create XML and put that XML in a directory path (Configured in FILE transaction).
    IDOCs are being generated using sales order output type and EDI partner for the same is using above configured XML port.
    The problem here is, it does not create a complete XML, it just creates XML for control data.
    Could you please help us here...
    Thanks
    Mohit

    DATA: L_DIRNAME LIKE EPSF-EPSDIRNAM,
            L_FILEMASK LIKE EPSF-EPSFILNAM,
    CALL FUNCTION 'EPS_GET_DIRECTORY_LISTING'
        EXPORTING
          dir_name                     = l_dirname
          file_mask                    = l_filemask
    * IMPORTING
    *   DIR_NAME                     =
    *   FILE_COUNTER                 =
    *   ERROR_COUNTER                =
        TABLES
          dir_list                     = pi_filelist
    EXCEPTIONS
       invalid_eps_subdir           = 1
       sapgparam_failed             = 2
       build_directory_failed       = 3
       no_authorization             = 4
       read_directory_failed        = 5
       too_many_read_errors         = 6
       empty_directory_list         = 7
       OTHERS                       = 8

  • BPM wait step : RWB"To Be Delivered status": SXMB_MONI"Message being sent"

    Hi All,
    I have a BPM interface running fine since 1 year.
    In this BPM I have wait step for 5 minutes.
    But yesterday message  is stopped on wait and not proceeding ahead.
    I checked XML is good as per mapping. and in runtime wirk bench message is still in "To Be Delivered status"
    and in SXMB_MONI message column Outbound Status still showing "Message being sent" even after 12 hours.(wait is only 5 minutes). And below is the trace of last message.
    Please guide how to handle or restart this message. in SMQ1 & SMQ2 there are no queues showing:
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Inbound Message
      -->
    - <SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">
      <Trace level="1" type="T">--start determination of sender interface action</Trace>
      <Trace level="1" type="T">select interface Request_SI</Trace>
      <Trace level="1" type="T">select interface namespace https://www.XXXXX.com/YYYY</Trace>
      <Trace level="1" type="T">--start determination of receiver interface action</Trace>
      <Trace level="1" type="T">Loop 0000000001</Trace>
      <Trace level="1" type="T">select interface Request_SI</Trace>
      <Trace level="1" type="T">select interface namespace https://www.XXXXX.com/YYYY</Trace>
      <Trace level="1" type="T">--start determination of sender interface action</Trace>
      <Trace level="1" type="T">Hence set action to DEL</Trace>
      </SAP:Trace>
    Regards

    Solved, few BASIS jobs were inactive in transaction code "SWF_XI_CUSTOMIZING".

  • Wait step in quality is waiting for long time

    hi friends
      I have transported the workflow to quality. Am using a wait step in my workflow. Its waiting in that step for long time nearly 1 hour still its not cross the step. The workflow works fine in my developement. But in quality its not moving to the next step. i comparted the wait step in quality and developement. In developement wait step in outcomes tab green light is glowing in Actvie mode. but in quality green light is visible but in blured vision. even i have checked the configuration in swu3 in development and quality. Both have same configuration. What could be the problem that its not crossing the wait step. Plz help me
    Regards
    vijay

    hi Pavan
      I havn't used any deadline. Its working fine in development. y in quality its not working. That is my question. Even i have checked in the development wait step from the log i have these 3 steps for histroy
    Wait step created                                No errors
    Condition for wait step fulfilled               No errors
    Result Processing                               No errors
    But in quality
    Wait step created                                No errors
    Only these step is alone there. its has not yet come to other step. But my condition is fullfilling has i checked from the container elements. Am waiting for more than 3 hours. Still its not come to next step. y what could be the reason.
    Regards
    vijay

  • Wait step in BPM

    Hi All,
    The minimum BPM-wait duration is 1 min and cannot be decreased below that....can we use  0.5 for 1/2 min.
    or can any one suggest what would be alternate option to achieve 2 to 3 min delay.
    One solution is to write a mapping and use udf to delay for one 2 to 3 seconds.Apart from this any other better solution
    Please suggest
    Regards,
    Vidya

    Introducing a delay of les than a minute is not possible in the BPM (using a Wait step)
    The other method (using UDF in mapping....sleep.Thread) should work and does not seem to induce any performance issue.
    or can any one suggest what would be alternate option to achieve 2 to 3 *min* delay.
    The Wait step itself should be useful for this requirement.
    For having the delay in seconds use the UDF.
    Regards,
    Abhishek.

  • Wait step in BPM stops the process permanently

    Hi all.
    I have a BPM with a Wait Step inside. When the process reaches the wait step the process gets locked permanently.
    I execute TCODE SM12, remove the lock for the process and the process finishes without errors.
    Why does the BPM hangs with the wait step? Could anybody help me with this issue.
    Thanks a lot,
    Gari.

    Hi Gökhan.
    I'm using SP12. The Self-test about BPE in RWB reports error for "Schedule Background Job for Packaging" and "Schedule Background Job for Reorganization". Details for the error say "Background job for packaging is not required".
    Thanks,
    Gari.

  • Event triggerred before Wait step

    What can we do when the event is triggerred before the wait step? Does anyone know about the concept of parked events?
    Iam using f.m swe_event_create, can we use the start_with_delay option or some other option..
    I would like to have some delay before the second event is raised. but at the same time as this would be a online program, the user should not feel the delay..
    or the Wait step should be modified to pick up already created events..(i think this is called parked events).
    CALL FUNCTION 'SWE_EVENT_CREATE'
    EXPORTING
    *objtype =
    *objkey =
    *event =
    CREATOR = ' '
    TAKE_WORKITEM_REQUESTER = ' '
    START_WITH_DELAY = ' '
    START_RECFB_SYNCHRON = ' '
    NO_COMMIT_FOR_QUEUE = ' '
    DEBUG_FLAG = ' '
    NO_LOGGING = ' '
    IDENT =
    IMPORTING

    Hi Karri, thanks for the reply ..There is a presentation on parked events if you search the wiki and blogs on this site, you will find it but thats the only thing i have seen about it and its not really helpful.
    the problem is.. 2 Inbound idocs are created both at the same time one raises a event for workflow.. one raises a event for Wait step in the same workflow ..
    The 2 inbound F.Ms which raise the events, can error sometimes or the workflow can create a workitem before the Wait step and hang in there till its processed..(its unpredictable which one will trigger first)
    If the second event(for Wait step) is raised first and the workflow processing has not yet reached the Wait step, the workflow waits for the event to be raised(although the event is already there)
    Do you know of some way we can keep reprocessing until the Event receiver is found? (may be in a Raise event workflow step or in a Function Module)
    Edited by: sk123456 on Jun 5, 2010 11:47 AM

  • How to use the Validate step for Approve step

    Hi Experts,
       I have modeled a workflow with the steps start,process, validate, approve, process and stop.
    Process is set to owner and approve is set to some other user user1.
       My requirement is as follows :
    1) Approve the records by approver and then it should send it to the next step for further processing
    1.1)  if the approver did not approve the record it should send a error message until the record is approved. So it should not send it to the next step when record is not approved
    I am using a field called item status for approving and disapproving the records. My validation is based on this field only... Validation working fine when i tested it manually.
    But my issue is when am using this validate step in workflow design validation is getting triggered for all the users.as per my requirement only approver should get the error message.But in my scenario owner is getting the error message and approver is not getting any message.
    How can i use the validate step only for particular step say approve in workflow.
    Can anyone please help me out how should use validate step only for approve step...
    Thanks & Regards
    Sireesha.
    Edited by: sireesha esukapalli on Jun 17, 2008 2:48 PM

    Hi ,
      I have set the validation property to "None".
      My design is as follows :
    start->process->validate->approve->stop.
      Owner is assigned to process step and approver is assigned to approve step.
    Now my problem is owner is also getting this error message along with the approver. AS per the design both process, approve users are getting the error message.
    As per my requirement only approver should get this prompt but not the owner.
    How can i restrict only for specifc user to get this message.
    Can anybody please advice how can restrict the owner to not get this error message...
    Thanks & Regards
    Sireesha.
    Edited by: sireesha esukapalli on Jun 24, 2008 2:18 PM

  • Chart only for result

    Hi all,
    I have a query with key figure SALES and drilldown for customer.
    I must to create a pie chart only for total row and key figure, but I need to keep customer drilldown.
    Is possible to do it in bex or web?
    How can I do, please?
    Thank you
    Gianmarco

    My problem is that I have some virtual key figure in the query and so if I remove the drilldown the result change.
    So I must to keep drilldown and create chart only for result row.
    The problem isn't the filter.
    Can you help me, please?

  • How to add a Wait Step in BPM for the synchronous send step

    Hi,
    we have a scenario where in one of the step in BPM is a synchronous step which sends data to ECC system and gets the Respose .
    The Requirement is that we need to add a wait for the Synchronous step in BPM as the data sent to RFC(ECC) need to get comitted before sendng the response which requires some wait time.
    Currently we are getting the Response to PI from ECC where it was reported as the response is not correct.
    Is this possible to add wait

    > Is this possible to add wait
    No, this does not make any sense.
    The BPM waits for the response anyway.
    You could change the scenario to an asynchonous pair of messages.
    But in my opinion the error is inside the ECC, because the response from ECC is not correct.

  • Wait Step is not working in BPM, any extra settings required?

    Dear Friends,
       I am working on BPM scenario first time.
    I am sending the Idoc from one ECC system to ohter ECC system using XI.
    but in receiver side it has to updated after 60 minutes, for this 60 minutes requirment I am using Wait condition in BPM, but it's not waiting 60 minutes.
    the Idoc is receiving reciever side whenever sender is sending the Idoc.
    the Idoc is not going through BPM,it's going directly. In this case can I do some extra settings?
    In BPM  Receiver-wait-send step types are used.
    Please help me in this issue.
    Regards,
    Shalini Shah.

    Hi Abhishek,
        Thanks for immediate response.
    I have done the following steps:
    IR:
    idoc out bound interface
    Idoc inbound interface
    Idoc abstract interface for sender
    Idoc abstract interface for receiver
    Message mapping
    Interface mapping
    Integration Process(BPM)
    here Receive-wait(60 minutes)-Send these three step types are used.
    ID:
    Sender business system
    Reciever business system here I create the Reciever Communication channel
    Import the Integration Process from IR
    Two reciever determinations(source to BPM and BPM to target)
    Two interface determinations(source to BPM and BPM to target)
    Receiver agreement
    I have done like this, if any else required Please let me know.
    Regards,
    Shalini Shah.

  • ** Is it possible to create new BPM instance for each record (Multiline)

    Hi friends,
    In my scenario, JDBC adapter (sender) polls the open purchase order items from the table at the specified interval and send to BPM. In BPM, we used transformation step to split the messages to process each PO . The scenario is working fine. The problem is assume that if we process 10 PO, the error is in  4th PO while process, the BPM will be stopped in 4th PO. Once we correct the error, we are able to restart.
    In this case, we are not able to skip the 4th PO and process from 5th PO onwards. ie. the processing is sequential. Instead, we want to start new BPM instance for every PO. Advantage is that if 4th PO is error, only that BPM instance (work item) will be stopped. Remaining 9 POs will be completed.
    So, how do we start new BPM instance for every PO ?
    Kindly tell me, friends.
    Thank you.
    Kind Regards,
    Jeg P.

    Hi,
    There are two ways to achieve this.  In BPM and before BPM.
    Before BPM:
    Use 1 to unbounded mapping and 1 to unbounded interface mapping.
    In your mapping, make sure you create a seperate message for each PO.
    In BPM:
    Create a multiline container with you POs using a 1 to n mapping.
    Now add a ForEach block to loop through the multiline container and send each PO.
    Important:  Add an exception branch to catch any exception for each send so that the exception does not make the BPM fail.
    Regards,
    Yaghya

  • Wait for event step without callback

    Hi All,
    In 4.6C I have the following problem:
    We have a workflow that has a fork with 2 branches, with 1 necessary for continuing the fork.
    One of the branches has a dynamic parallel processing step on a multiline container element, where each parallel process is a wait for event step. For example if the multiline element has 5 records, than there will be 5 parallel wait for event steps on this branch, and if all 5 are completed, then the workflow continues after the fork and the other branch should be logically deleted (normal behaviour).
    The other branch has a single wait for event step, if this event is received, the other branch's parallel wait for event steps should be deleted to continue.
    The problem is that when the event for the latter single wait step is received, the step gets completed, but sometimes the parallel wait for event steps on the other branch are not deleted and the wokflow does not continue. The completed wait for event step shows that the callback is not completed yet.
    I tried to fix these steps in SWPC, but in 4.6C it does not work for wait for event steps w/o callback. There's an OSS note for higher releases where this is fixed to enable SWPC for wait for events, so I copied it to a custom program and use that right now.
    First question is why does the system not continue these workflow's when the event is received? My guess is that the tRFC calls get stuck and when the tRFC job reprocesses the entries, it does not do it correctly. For example lately we had a tablespace problem that caused some tRFC calls to go into error. The waiting steps in the instances were completed w/o callback. I reprocessed the tRFC entries, which created new entries in the Workflow logs showing that the events are received, but the workflows still hang.
    Second question, it takes a lot of time to logically delete those parallel wait for event steps. When the event for the single wait for event is received and the workflow continues w/o problem, it may take tens of minutes from the receipt of the event until the parallel wait for event steps get deleted and the WF continues. Why does it take so long?
    Thanks,
    KK

    Hi,
    Regarding the delay and the hundreds of thousand SWW_CONT updates... the main workflow on one branch does a dynamic parallel processing of a subworkflow using a multiline container element that can have 50 or even 100 elements. So we can have 50 or even 100 subworkflows waiting for their event to be triggered.
    The main workflow container contains many elements, some multiline with long structures, so in one instance the main flow had 8000 entries in SWW_CONT (each field of a structure is a separate record in SWW_CONT).
    Now if I do the math, when this workflow loads all the container elements of the main flow into the 100 waiting subflows before deleting them and continuing along the other branch, it creates 100 times 8000 entries in SWW_CONT, that is 800.000 inserts!
    And this was ONE single workflow.. Imagine when we have just a few hundred and they all want to continue at the same time...
    Anyway, the beauty comes now....
    I created a simple main flow with a single multiline import parameter USERS of object USER. It has a fork with 2 branches, 1 enough to continue. One branch is a user decision with 1 option: Continue. The other branch has a subworkflow and it does dynamic parallel processing with the multiline element USERS.
    The subworkflow has one single import element USER of object USER. It has only one step, a wait for event, waiting for the DELETED event of the USER object.
    That's the scenario.
    When I start the main flow, filling the USERS parameter with two user objects, on the first branch it starts the two parallel waiting subflows with one user each, and I get the decision step on the other branch. If I check the subflow containers this time, they only have one USER object each.
    Now if I complete the user decision, the workflow continues, logically deletes the subflows and completes. If I check the subflow containers after this, they all include the USERS multile container element with all the USERS I started the main flow with!
    So this time it was a different main flow, different subflow, different events. I guess there can't be any custom code doing this, unless there's some generic workflow user exit somewhere.
    Feel free to test this yourselves if you have 4.6C, quite easy scenario. Guess I'll try in ECC 6.0 too just to see...
    And I'll report to SAP for sure.
    Regards,
    Krisztian Klausz

Maybe you are looking for