VS Workflow - Erroring out when multiple records are created by same user

Hi,
I am using SP 2013. I have a visual webpart and custom sequential workflow. The webpart saves the data to a custom list and the workflow is associated to the custom list on Item creation only. In the workflow, I am breaking the role inheritance and setting
permission to specific set of users, and then the normal approval workflow happens. The whole workflow condition works fine, but if the user is raising multiple requests one after another, the workflow seems to break either in the Break inheritance or granting
permission. If the user raises only one or two requests then everything works fine.
Below are the errors which I am getting in the workflow:
Error 1:
Error: Save Conflict. Your changes conflict with those made concurrently
by another user. If you want your changes to be applied, click Back in your Web
browser, refresh the page, and resubmit your changes.
I have already checked this :
http://social.msdn.microsoft.com/Forums/sharepoint/en-US/60ab04fd-9650-427d-a48f-784bc22fae05/workflow-and-save-conflict-your-changes-conflict-with-those-made-concurrently-by-another-user?forum=sharepointdevelopmentprevious_
http://adrianhenke.wordpress.com/2010/08/20/sharepoint-error-save-conflict-your-changes-conflict-with-those-made-concurrently-by-another-user/
I have also implemented the "Reload" thing posted in the above URL. This error only happens when multiple new requests are getting raised by same user. This error does not happen if I terminate the workflow and re-start the workflow.
How to fix this?
Thanks

Hi,
Based on my understanding, you have a Visual Web Part for adding new item into a list. A workflow will be triggered when item creation in this list. Everything works
fine except when an user adds multiple items in a short period.
If this is the case, plus with the error message, a possible cause is that the SharePoint Server and the workflow engine are not functioning effectively enough to
handle the multiple request in a short time, therefore a scenario is that when there is new item being added into the database, the workflow modifies the “RoleAssignments” property of this item at the same time, this may cause a “Save Conflict” error.
As you said, “If the user raises only one or two requests then everything works fine”, a workaround is that you can disable the adding item function in Visual Web
Part forcibly in a specific period after a new item is being added by current user, it can leave some time for handling the item creation and item modification.
Or if there is a need to submit multiple items concurrently, we can organize the requests into one request, then handle this item with other custom logic in your workflow.
Thanks
Patrick Liang
Forum Support
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support,
contact [email protected]
Patrick Liang
TechNet Community Support

Similar Messages

  • Multiple records are present for same key in lookup DSO

    Hi,
    I want to populate quantity value from lookup dso in target dso. I have written code to populate it in start and end routine. While populating value in target It is taking first value of quantity. there are two records in lookup and target DSO with same key and different Quantity value. there is not any common key field in lookup and target dso. So that I can not populate correct values in the target DSO.
    Can anyone suggest me for this?

    Hi All,
    I have written below code for populating Qty:
        LOOP AT RESULT_PACKAGE ASSIGNING <RESULT_FIELDS>.
          IF <RESULT_FIELDS>-/BIC/ZSHPCRTID IS NOT INITIAL.
            CLEAR  : WA_ITAB.
    READ TABLE IT_ITAB TRANSPORTING NO FIELDS WITH KEY
            /BIC/ZSHPCRTID = /BIC/ZSHPCRTID.
            IF SY-SUBRC = 0.
              TMP = SY-TABIX.
            ENDIF.
            LOOP AT IT_ITAB INTO WA_ITAB FROM TMP.
              IF WA_ITAB-/BIC/ZSHPCRTID <> /BIC/ZSHPCRTID.
                EXIT.
              ELSE.
                <RESULT_FIELDS>-BBP_SCQTY = WA_ITAB-BBP_SCQTY.       
              ENDIF.
            ENDLOOP.
          ENDIF
        ENDLOOP.
    in this case my output/target DSO is:
    key1  key2    key3  qty
    1000   10       200   30
    1000   10       300   30
    1000    20      400   30
    Below is the lookup DSO data:
    key1   key2  key3   qty
    1000   10      1        10
    1000   10      2        20
    1000    20     3        30
    It is taking last record's qty value and putting it for all records.
    Please suggest something for this issue.

  • How to set Default database when multiple databases are residing in same server.

    I am using solaris and 9i version.
    Can you please provide me the steps.
    i have selected the O/S category, you did not see that?
    Rgds,
    G. Rajakumar.

    In the home directory of the user you log in as, there should be a file called .profile or .cshrc or possibly .login depending on your O/S. I believe that Solaris has .cshrc, but I don't use Solaris. You should be able to see it using
    ls -lat
    You need to add a line to this something like
    export ORACLE_SID=<<yoursid>> or
    ORACLE_SID=<<yoursid>> ; export ORACLE_SID or
    setenv ORACLE_SID=<<yoursid>>
    There is probably a similar line there already which you can just modify. The change will take effect the next time you log in.
    HTH
    John

  • Error: Show Details cannot be executed when multiple items are selected in a report filter field or in a slicer

    I have connected TABULAR Model to Excel, and in the pivot the filter is on multiple dimensions. When doing the drillthrough action it gives error - Error: Show Details cannot be executed when multiple items are selected in a report filter field or in a slicer
    Is there any workaround to this error?  so that drillthrough can be done even with multiple selection.

    Hi Vikas,
    The reason behind the error message requires the knowledge on what happens at the backend. When you perform a drill-through action, a query is sent to Analysis Services. This query is expressed in a query language called Multi-Dimensional Expression (MDX).
    Since the MDX language doesnot support drill-through command against a set (collection of tuples) an error is persisted. 
    For now, there is no workaround as it is a limitation of the underlying language that is generating the query.
    When multiple items are selected you lose the ability to drill-down on individual metrics. To resolve you must either:
    1. Select a single Item.
    2. Select all items.
    Hope this helps!
    Please mark as Answer if this helps! Thanks, Rajasekhar.

  • File corruption on SDCard when multiple files are being written from WinCE 6.0R3

    We currently have file corruption problems which we have been able to reproduce on our system which uses WinCE 6.0R3. We have an SDCard in our system which is mounted as the root FS.  When multiple files are being written to the file system we occasionally
    see file corruption with data destined from one file, ending up in another file, or in another location in the same file.  We have already written test SW that we have been able to use to reproduce the problem, and have worked with the SDCard vendor to
    check that the memory controller on the card is not the source of the problems.
    We know that the data we send to WriteFile() is correct, and that the data which eventually gets sent through the SDCard driver to the SD card is already corrupted.
    We believe that the problem is somewhere in the microsoft private sources between the high level filesystem API calls and the low level device calls that get the data onto the HW.
    We have confirmed that the cards that get corrupted are all good and this is not a case ofpoor quality flash memory in the cards. The same cards that fail under WinCE 6.0R3 never fail under the same types of testing on Windows, Mac OX, or linux.  We
    can hammer the cards with single files writes over and over, but as soon as multiple threads are writing multiple files it is only a matter of time before a corruption occurs.
    One of the big problems is that we are using the sqlcompact DB for storing some data and this DB uses a cache which get's flushed on it's own schedule. Often the DB gets corrupted because other files are being written when the DB decides to flush.
    So we can reproduce the error (with enough time), and we know that data into the windows CE stack of code is good, but it comes out to the SDcard driver corrupted.  We have tried to minimize writes to the file system, but so far we have not found a
    way to make sure only one file can be written at once. Is there a setting or an API call that we can make to force the OS into only allowing one file write at a time, or a way of seeing how the multiple files are managed in the private sources?
    Thanks
    Peter

    All QFE's have been applied we are building the image so we have some control.
    I have build an image which used the debug DLL's of the FATFS and I have enabled all of the DebugZones.  The problem is still happening. From the timings in the debug logs and the timestamps in the data which corrupts the test file I have been able
    to see that the file is corrupted AFTER the write is complete. Or at least that's how it seems.
    We finished writing the file and closed the handle. Then more data is written to other files. When we get around to verifying the file it now contains data from the files that were subsequently written.
    What I think I need to do is figure out in detail how the two files were "laid down" onto the SDCard.  If the system used the same cluster to write the 2 files then that would explain the issue.

  • Workflow Error out while intiatiating forms(Hcm Forms and Process)

    Hi All,
    Our workflows are getting error out when forms are initated from Portal.
    Workflows are getting triggered when it comes to a task(all type of tasks) its getting errored.
    "An exception with the type CX_SY_REF_IS_INITIAL oc curred, but was neither handled locally".
    what i came to know is for users with SAP_ALL access in the R/3 workflow is not getting error.
    without SAP_ALL its happening.
    Please if anything is missing in configuration.
    Thanks,
    Santosh

    clearly correct authorisation is missing for the employees
    and ensure the WF task is set to general in PFTC> Please verify this and you can do a trace too
    as indicated
    you can start via Hrasr_test_process

  • Dynamic sql reurns no data when multiple values are passed.

    (Dynamic sql returns no data when multiple values are passed.)
    Hi,
    While executing the below dynamic sql in the procedure no data is returned when it has multiple input values.
    When the input is EMPID := '1'; the procedure works fine and returns data.Any suggestion why the procedure doen't works when input as EMPID := '1'',''2'; is passed as parameter?
    =======================================================
    create or replace PROCEDURE TEST(EMPID IN VARCHAR2, rc OUT sys_refcursor)
    IS
    stmt VARCHAR2(9272);
    V_EMPID VARCHAR2(100);
    BEGIN
    V_EMPID :=EMPID;
    stmt := 'select * from TEST123 where Empid is NOT NULL';
    IF V_EMPID <> '-1' THEN
    stmt := stmt || ' and Empid in (:1)';
    ELSE
    stmt := stmt || ' and -1 = :1';
    END IF;
    OPEN rc FOR stmt USING V_EMPID;
    END Z_TEST;
    ============================================================
    Script for create table
    ==================================================================
    CREATE TABLE TEST123 (
    EMPID VARCHAR2(10 BYTE),
    DEPT NUMBER(3,0)
    ===========================================
    Insert into PDEVUSER.TEST123 (EMPID,DEPT) values ('1',20);
    Insert into PDEVUSER.TEST123 (EMPID,DEPT) values ('2',10);
    Insert into PDEVUSER.TEST123 (EMPID,DEPT) values ('3',30);
    Insert into PDEVUSER.TEST123 (EMPID,DEPT) values ('3',30);
    Insert into PDEVUSER.TEST123 (EMPID,DEPT) values ('2',10);
    =============================================
    Select * from TEST123 where Empid in (1,2,3)
    EMPID DEPT
    1     20
    2     10
    3     30
    3     30
    2     10
    ===================================================================
    Any suggestion why the procedure doen't works when input EMPID := '1'',''2';?
    Thank you,

    The whole scenario is a little strange. When I tried to compile your procedure it couldn't compile, but I added the missing info and was able to get it compiled.
    create or replace PROCEDURE TEST (EMPID IN VARCHAR2, rc OUT sys_refcursor)
    IS
      stmt        VARCHAR2 (9272);
      V_EMPID     VARCHAR2 (100);
    BEGIN
      V_EMPID := EMPID;
      stmt := 'select * from TEST123 where Empid is NOT NULL';
      IF V_EMPID = '-1' THEN
        stmt := stmt || ' and Empid in (:1)';
      ELSE
        stmt := stmt || ' and -1 = :1';
      END IF;
      OPEN rc FOR stmt USING V_EMPID;
    END;If you pass in 1 as a parameter, it is going to execute because the statement that it is building is:
    select * from TEST123 where Empid is NOT NULL and -1 = 1Although the syntax is valid -1 will never equal 1 so you will never get any data.
    If you pass in 1,2 as a parameter then it is basically building the following:
    select * from TEST123 where Empid is NOT NULL and -1 = 1,2This will cause an invalid number because it is trying to check where -1 = 1,2
    You could always change your code to:
    PROCEDURE TEST (EMPID IN VARCHAR2, rc OUT sys_refcursor)
    IS
      stmt        VARCHAR2 (9272);
      V_EMPID     VARCHAR2 (100);
    BEGIN
      V_EMPID := EMPID;
      stmt := 'select * from TEST123 where Empid is NOT NULL';
      stmt := stmt || ' and Empid in (:1)';
      OPEN rc FOR stmt USING V_EMPID;
    END;and forget the if v_empid = '-1' check. If you pass in a 1 it will work, if you pass in 1,2 is will work, but don't pass them in with any tick marks.

  • Fixed length fileadapter [multiple records are of multiple types]

    Hi,
    I am using Jdev 10133 and SOA suite 10133.
    I am using fixed length(multiple records are of different type) file adapter to read data from a DAT file.
    I need to read the data based on condition.
    i.e: the DAT file looks like below
    city1           EMPName1                      female                organisation1
    city2           EMPName2                      male                   organisation2
    city2           EMPName3                      male                   organisation1
    city1           EMPName4                      female                organisation1Here i need to read the records based on gender.
    I was able to read based on city i.e first column.
    In adapter wizard it is giving only endposition.
    How to read data based on gender??
    Plz help me regarding this.
    Regards.
    Edited by: [email protected] on May 21, 2009 1:44 AM

    not sure if this is an exact example but when you create youe xsd you can use white space as a delimiter, so if your fields don't have spaces you can use this.
    Also you can mix and match fixed length with delimiters
    cheers
    James

  • When synchronizing my iphone4 on the computer it errors out when optimizing the photos and shuts down iTunes.  Any idea what to do to get the synch working?

    When synchronizing my iphone4 on the computer it errors out when optimizing the photos and shuts down iTunes.  Any idea what to do to get the synch working?

    OKay, here is the deal. You cannot change the location of encrypted files nor can you share them with other machines. There is no file server for iTunes so even if you export the movie index from iTunes to an external volume, each time you reboot your computer itunes has to reindex the external drive every time you want to access the files. The second you run your mobile computer without the external drive or try to access the HD movies from another device or another user on the same network, the indexing gets out of synch. The entire process is self defeating regardless. The HD movies are encapsulized by apple to stream to your devices via iCloud and NOT via Cloud. Only your TV can play 1080p. That single file you download from iTunes has mutiple versions of the same video in the capsul, one version for each type of apple device. There are no 1080p apple devices except for the Apple TV. When you buy a movie you are buying a license and not the movie. It's going to get worse with all the new copywrite laws. Already you cant share any apple devices with other itunes accounts. Your airport express just stopped streaming music to all users on the local home sharing Cloud. Only the one user for each device and soon only airplay speakers connected directly to the device. No more passthru via your TV and no more file sharing with other accounts on the same wi-fi. All the ISPs are doing the same thing. And soon everybody will be buying their phones and TV's and iPads from the cabble guy.
    Apple has done a poor job of educating the consumer as to the difference between the Cloud and iCloud. They are not the same at all.
    Message was edited by: ronfromwoodland hills

  • Error occurred when delimiting records

    Hi Experts,
    When I am delimiting IT0008 err is coming
    "Error occurred when delimiting records"
    How to solve.
    Regards,
    Tomesh
    Edited by: Tomesh Sahu on Jun 16, 2008 5:10 PM

    Hi,
    You cannot delimit IT0008 due to fact that Time constraint=1. 1 record should always exist in the system even if person is terminated.
    IT0008 shoudl not be delimited due to some retroactive calculations if any.
    Similar infotype that cannot be delimited are 0000, 0001 and 0002, They shoud always exist in the system even if person is terminated.
    Why you not think about action which will change status of employee to something that will not be processed via payroll and when Person is back just Rehire him/her or run another action which will update status to Active.
    Regards,
    Ani
    Edited by: Ani Arsova on Jun 16, 2008 11:52 PM

  • Safari warning before quitting when multiple tabs are open?

    I'm a rather clumsy typist who often uses Apple+Tab to toggle through my open programs. This works great 99% of the time, but that other 1% is rather frustrating considering that the Q key is right next to Tab.
    Apple guys, please implement a pop up/drop down warning when attempting to quit Safari when multiple tabs are open (or at least the option to enable or disable it). I use this browser for work and often have many tabs open, so accidentally quitting the browser only impedes on my workday. I know I should be more accurate, but isn't that what part of progress is? The empowerment of laziness? =)
    Thanks for your time, and hopefully we see this included in soon-to-come upgrades!
    Oh, and if this feature is already available, feel free to show me the way.
    G4   Mac OS X (10.4.7)  

    jefftovar,
    I created and modified the Safari Keyboard Shortcut
    Quit (⌘+Q) command to (⌘ControlQ) by using System
    Preferences...>Keyboard Shortcuts.
    ;~)
    Great suggestion! But, the default Quit (⌘+Q) command is still in effect. I've looked about in trying to deactivate it, but can't seem to find it. How did you get rid of yours?
    G5   Mac OS X (10.4)  

  • A lot of memory is used when multiple tabs are open

    Is there anything that can be done about the insane memory usage in Firefox when multiple tabs are open? I often have 20+ tabs open and the amount of RAM that Firefox uses when I have it open with this many tabs is just ridiculous. As an example of this, I just restarted Firefox after checking the Windows Task Manager. The Task manager said that Firefox was using 1.2 GB of RAM. I did have 32 tabs open, but this seems excessive even for this many tabs. Some of the tabs were image heavy, but none of them had any video in them. I'd think 10 MB per tab of RAM would be plenty to cover these kinds of pages, maybe 20 MB at most. The upper end of that range would be 640 MB of RAM. Instead, it appears to be using an average of 40 MB of RAM per page when this many tabs are open.
    Is there anything that can be done to reduce amount of memory being used when multiple tabs are open? It really shouldn't need this much RAM to serve this many pages.

    Start Firefox in <u>[[Safe Mode|Safe Mode]]</u> to check if one of the extensions (Firefox/Tools > Add-ons > Extensions) or if hardware acceleration is causing the problem.
    *Switch to the DEFAULT theme: Firefox/Tools > Add-ons > Appearance
    *Do NOT click the Reset button on the Safe Mode start window
    *https://support.mozilla.org/kb/Safe+Mode
    *https://support.mozilla.org/kb/Troubleshooting+extensions+and+themes

  • X pro crashes when multiple documents are opened

    x pro crashes when multiple documents are opened

    Hi travisc74509405,
    Could you please let me know what version of OS are you using.
    Also, let me know how much RAM and free hard disk space is available on your machine.
    What exact dot version of Acrobat X do you have? You might check for updates under the Help menu to use the latest patch i.e. 10.1.13
    Hope to hear from you.
    Regards,
    ~Anubha

  • After Installing Bitdefender 2011 Firefox is very slow and worse when multiple tabs are open

    Firefox performs very poorly after I installed Bitdefender 2011. There was no such problem with Bitdefender 2009. When multiple tabs are open, switching between them is not possible until tab contents are completed.

    As ninjafox says, the problem seems to be the BitDefender Anti-phishing Toolbar. Disabling this through Tools -> Add-ons and restarting Firefox seems to fix the problem for that session. However, the problem then reappears when the computer is restarted, presumably because BitDefender re-enables the toolbar.
    Another way of disabling all add-ons when starting Firefox is to hold down Shift while clicking on the icon (Windows only I think - at least doesn't work on Ubuntu for me).

  • IBots - How to send an alert when NO records are returned

    It seems straightforward enough to send an alert when a query produces results, but I want to do the opposite. For instance, I only want to get an email at 7am when an object has no data in it for the current day. I do not want to know every day that records are returned.
    how would i set up such an iBot such that it fires every day, and only emails me when no records are returned form the query?

    1) Create a small report called "No Records" and create an unscheduled iBot for this report.
    2) You have your iBot created for the original report, yes? Okay. If you don't want any notification when records are produced for this iBot, then in the Destinations tab, make sure all the boxes are unchecked for "Specific Devices."
    3) Now in the Advanced tab, click on the "Add Action" button under the "Execute these actions when no records are returned by the conditional request" section.
    4) Click on "iBot."
    5) Navigate to the "No Records" ibot created in step one.
    Now, when the original ibot fires and there are records, nothing will be sent because you unchecked all ways to get notification. But when there are no records, this event will fire the chained ibot you linked to in the Advanced tab. This iBot will have as an attachment, your report that says "No Records."

Maybe you are looking for