Skip to Content

Time spent on Order creation in VA01

Hallo experts,

I have a requirement where in I need to track the time being spent by users in Sales Order creation. Now I do have the sales order creation time in VBAK but that is when the user actually saved the Sales order after putting in details.

Is there any way I can track the time spent between starting TCODE VA01 and creation of Sales Order? If there is no standard way to track this, any ideas how this can be customized are also appreciated.

Regards

Manpreet

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

8 Answers

  • Oct 12, 2016 at 06:36 PM

    Why do you need to do that and what purpose would this information serve? And why not just ask the users? Sitting behind one with a timer will give you just as informative answer as anything else.

    Before you start putting code into VA01, consider that a person could open VA01 and then either navigate to another screen or maybe start a completely new order without leaving the transaction. Unless you force the users to leave the transaction every time, there is no guarantee that the "start time" captured actually applies to the data that end up getting saved. And again - why? This just makes no sense...

    Add comment
    10|10000 characters needed characters exceeded

    • For streamlining you might as well just stand behind a user with a stopwatch, as I and Veselina mentioned. You won't get any better results IMHO as there is no way to measure such things accurately. Also keep in mind there would be different order types (e.g. VC ones would take much longer) and you'll gain much more information by simply talking to the people who enter the orders.

  • Oct 12, 2016 at 05:59 AM

    Did you look at transactions like ST03N, SAT or ST12.

    Regards,

    Raymond

    Add comment
    10|10000 characters needed characters exceeded

  • Oct 13, 2016 at 06:56 AM

    Manpreet,

    one of my old client had similar requirement, but they wanted to do this for 1-3 months of period. So instead of extending VBAK table, we provided solution to write timestamp in header text field once user enters sold-to/Ship-to or material/qty in sales order. We also kept switch in userexit code to turn this functionality ON/OFF.

    Weekly report runs in background & calculate difference between order creation time & header text time (order entry started time). This solution worked because this report was running in background (Reading header text is expensive for high volume of sales order orders). Similar solution can be provided by extending VBAK table if you need permanent solution as suggest by Long. (but by capturing order entry started time)

    Hope this helps.

    NRS

    Add comment
    10|10000 characters needed characters exceeded

    • Hi ,

      Can you please share with me how did you capture the event of user making an entry in one of the fields , in order to make an entry in the header text field and which BADI did you use for this code?

      Regards

      Manpreet

  • avatar image
    Former Member
    Oct 12, 2016 at 06:20 AM

    Hello Manpreet, My suggest as follows:

    1. Create additional field in table VBAK, For example: Z_END_TIME ( First create a Append structure for VBAK, the additional field define in the append structure)

    2. Add code to User Exits, Tcode: SE38 --> Program: MV45AFZZ --> FORM: USEREXIT_SAVE_DOCUMENT_PREPARE --> add code: vbak-z_end_time = sy-uzeit.

    3. 'Z_END_TIME' - 'sales order creation time in VBAK' = 'spent time Sales Order creation.'

    Regards
    --------------------
    Long

    Add comment
    10|10000 characters needed characters exceeded

  • Oct 13, 2016 at 06:47 AM
    -2

    Hi,

    if you really want to track the Time span you can go with workflow concept where it records the Time taken by the user to perform the Task

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Oct 13, 2016 at 06:59 AM

    As Raymond suggested, check those transaction. They have timestamps. Also, there's a BAdI "BADI_SD_SALES" that gets triggered as soon as you start transaction VA01 and you can record the SY-UZEIT from that as start time . And get the SY-UZEIT from the Sales Order SAVE user exit as the end time. Hope it helps.

    Add comment
    10|10000 characters needed characters exceeded

  • Oct 13, 2016 at 08:01 AM

    OK, in this case, I can say - there is nothing in standard, which can help you.

    During some implementation projects we had custom programs to measure the application performance, but for the part how long does it take a user to create a certain document (this includes also the time to navigate between the transaction menus), we did it the old-fashioned way: you stand behind the user and record the times with a chronometer (of course you do this multiple times with different users, at different times per day and with different sets of data).

    Add comment
    10|10000 characters needed characters exceeded

  • Oct 13, 2016 at 09:03 AM

    Generally, such type of statistics would be taken to identify how many hours users are spending for creation of sale orders in a big industry. Depending upon this, the Business would take a decision whether to automate the process or simplify the process to users. Both automation or simplifying are possible in SAP for which, search SCN or Google with the related text like Mass updation of sale orders so that you can get lot of inputs from there.

    Add comment
    10|10000 characters needed characters exceeded