0

I am trying to create a application for requesting travel so i am starting a workflow through JavaScript here but users in domain group are not able to start the Workflow other users who have Full control permission directly through the SharePoint site are able to submit request and start the workflow. It is SharePoint online and the Group name is 'Everyone Except External Users' and it has 'Full Control' on the list level these users are able to submit the request but the workflow is not triggering.I should be able to start the workflow with any of the users please let me know if there is any mistake in this code or what else i can do to achieve this requirement ?

<script type="text/javascript" src="../SiteAssets/TravelRequest/jquery-1.12.4.js"></script>
<script type="text/javascript">
function LoadScripts(){
    SP.SOD.executeFunc("sp.js", "SP.ClientContext" , function(){
    SP.SOD.registerSod('sp.workflowservices.js', SP.Utilities.Utility.getLayoutsPageUrl('sp.workflowservices.js'));
    SP.SOD.executeFunc('sp.workflowservices.js', "SP.WorkflowServices.WorkflowServicesManager", StartSiteWorkflow);
}) }   function StartSiteWorkflow(definitionId, ListItemId){
      var definitionId = '{885C2564-BAC3-4E0C-A62C-573A656D4BB3}';//Workflow Subsciption ID
      var ListItemId = oListItem.get_id();//List Item ID on which Workflow need to be triggered

var context = SP.ClientContext.get_current();
var web = context.get_web();    
var servicesManager = SP.WorkflowServices.WorkflowServicesManager.newObject(context, web);  
var subs = servicesManager.getWorkflowSubscriptionService().getSubscription(definitionId);
context.load(subs);
var initiationParams = {};
servicesManager.getWorkflowInstanceService().startWorkflowOnListItem(subs, ListItemId, initiationParams);
context.executeQueryAsync(function (sender, args) {
    console.log('Workflow started.');
}, errFunc);
function errFunc(sender, args)
{
    alert("Error occured! " + args.get_message() + '\r\nStack trace: ' + args.get_stackTrace());
}
} jQuery(document).ready(function () {
LoadScripts();
});
</script>
0

no need to be full control on list just edit permission is fine for the user to run workflow , what error you are getting in workflow for the external users, when external user submit a request, in backend list item would get created for every list item there would workflow status right, check what error it is throwing when external person submit the request (check the error by clicking the workflow status or on list item check workflows and it shows the internal error of workflow )
enter image description here

  • workflow is not getting started at all if workflow is started i can see something but its not. – rrr Sep 25 '17 at 15:53
  • republish the workflow and try again or else check when the user from Everyone Except External Users submits the request is that submission is creating list item or not ..?or else check the user profile of users whether they may not have the job code . – karthik Sep 25 '17 at 17:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.