none
Wait for field change in current item' does not fire

    Question

  • I have a SharePoint 2013 list with a 'dropdown' list with 2 '<g class="gr_ gr_21 gr-alert gr_gramm gr_inline_cards gr_run_anim Style multiReplace" data-gr-id="21" id="21">choices :</g>' Approved', 'Rejected' and nothing. Nothing is the choice by default. when someone <g class="gr_ gr_22 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" data-gr-id="22" id="22">createan</g> Item in this list, the workflow attached and then wait till someone <g class="gr_ gr_32 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" data-gr-id="32" id="32">changethe</g> selected item in the drop-down list. To do that I tried two ways. For both, I created a calculated field based on the drop-down field with a formula to detect the change in the dropdown list field.

    1-in my first attempt, the calculated field return a boolean (yes/no) based on the status of the selected field. By default, it returns "no". if someone <g class="gr_ gr_50 gr-alert gr_gramm gr_inline_cards gr_run_anim Grammar multiReplace" data-gr-id="50" id="50">change</g> the <g class="gr_ gr_54 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" data-gr-id="54" id="54">dropdownlist</g>, the calculated field will return (Yes). I used the formula ISBLANK(dropdown field). In the workflow, I  tried 'wait till the current element' calculated equal "Yes". But it didn't work, the <g class="gr_ gr_66 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" data-gr-id="66" id="66">worflow</g> manager seems to not be able to handle the changes to boolean.

    2-So I tried to return "0" or "1" from my calculated field, and I'm still stuck cause, the workflow manager doesn't <g class="gr_ gr_69 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" data-gr-id="69" id="69">hanlde</g> the change to 1.

    I can <g class="gr_ gr_80 gr-alert gr_gramm gr_inline_cards gr_run_anim Style multiReplace" data-gr-id="80" id="80"><g class="gr_ gr_72 gr-alert gr_spell gr_inline_cards gr_disable_anim_appear ContextualSpelling ins-del multiReplace" data-gr-id="72" id="72">se</g>  that</g> my calculated field has its value changed, but it doesn't trigger the workflow to continue.

    Any Idea please?
    • Edited by shadowfid Wednesday, April 19, 2017 4:37 AM
    Wednesday, April 19, 2017 4:33 AM

All replies

  • Hi

    You shouldn't use a calculated column because it will update only if there has some item be changed. 


    顺其自然地勇往直前!—Justin Liu

    Wednesday, April 19, 2017 5:08 AM
  • Hi shadowfid,

    In SharePoint, calculated columns are updated when an item is edited.

    Have you made the workflow start automatically when the item is created/modified?

    If you create an item using the System Account, the workflow will not function properly or will not start automatically. Try to sign in as a different user account instead of using the System Account.

    Best regards,

    Linda Zhang


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com

    Thursday, April 20, 2017 12:41 PM
    Moderator
  • Hi Justin, Linda,

    Thanks for the answer. I only use a domain user account's to create the list item manually. And I've configured multiple domain accounts services for all the sharepoint's accounts needed by the product.

    I made the workflow to start automatically when the item is created only. When the item is created, the calculated field returns "NO" cause anything has changed on the dropdown list, the value of the dropdown list is set to "Empty". if I make a choice on the dropdown list and select "Approved" or "Denied" (it's an approval process), the calculated field return "yes" as something has changed on the dropdownlist. When the workflow is processing, it has a condition to wait till he calculated field return "YES". I've inserted the calculated field in my list so I can check it's value, and it effectively returns "YES" when the dropdownlist value has changed.

    I'm trying to avoid using an EventListener.



    Regards
    Sunday, April 23, 2017 10:43 AM
  • As we said above, the calculated field only update when an add/update action fires, which is also the way workflow's condition rule.

    So You can use an option field instead of calculated field.


    顺其自然地勇往直前!—Justin Liu

    Monday, April 24, 2017 6:25 AM
  • Hi shadowfid,

    Please create the workflow with SharePoint 2013 Workflow platform type, instead of using SharePoint 2010 workflow platform type.

    Per my testing results, if using SharePoint 2013 workflow and start it automatically when an item is created, the workflow will continue to run when the calculated field equals to a specific value as changing the dropdown list value. But the 2010 workflow does not work. Both workflows have action to wait for the calculated field to equal a specific value.

    Best regards,

    Linda Zhang


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com

    Tuesday, April 25, 2017 5:55 AM
    Moderator
  • <g class="gr_ gr_180 gr-alert gr_gramm gr_inline_cards gr_run_anim Punctuation only-ins replaceWithoutSep" data-gr-id="180" id="180">Thanks</g> Linda,

    So be it, I'll do that <g class="gr_ gr_457 gr-alert gr_spell gr_inline_cards gr_run_anim ContextualSpelling ins-del multiReplace" data-gr-id="457" id="457">rightway</g>. Actually, I really wanted to avoid installing the windows workflow manager server 1. Have you ever tried to <g class="gr_ gr_638 gr-alert gr_gramm gr_inline_cards gr_run_anim Grammar multiReplace" data-gr-id="638" id="638">collocated</g> the workflow manager 1.0 and Office Web Apps?

    Best Regards,

    Fidèle TATEFO

    Wednesday, April 26, 2017 6:28 AM