Comment faire pour modifier le statut de la tâche de flux de travail sharepoint?
Je suis novice dans la programmation sharepoint. J'ai un code suivant:
SPWorkflowTask task = some_getter();
task["Status"] = "Canceled";
task.Update();
et j'en suis SPException:
Microsoft.SharePoint.SPException: "This task is currently locked by a running workflow and cannot be edited."
at Microsoft.SharePoint.SPListItem.PrepareItemForUpdate(Guid newGuidOnAdd, Boolean bMigration, Boolean& bAdd, Boolean& bPublish, Object& objAttachmentNames, Object& objAttachmentContents, Int32& parentFolderId)
at Microsoft.SharePoint.SPListItem.UpdateInternal(Boolean bSystem, Boolean bPreserveItemVersion, Guid newGuidOnAdd, Boolean bMigration, Boolean bPublish, Boolean bNoVersion, Boolean bCheckOut, Boolean bCheckin, Boolean suppressAfterEvents)
at Microsoft.SharePoint.SPListItem.Update()
at mycode
Je crois que je suis en train de faire quelque chose de fondamentalement mauvais. Quelqu'un peut-il m'aider?
OriginalL'auteur Jakub Šturc | 2008-12-16
Vous devez vous connecter pour publier un commentaire.
ici est un expert de commentaire sur ce problème : http://geek.hubkey.com/2007/09/locked-workflow.html
Et, si vous avez modifié les colonnes de la liste des tâches, ce lien peut aider : http://social.msdn.microsoft.com/Forums/en-US/sharepointworkflow/thread/8ec834b6-5408-4079-bdfb-b88d341b36bf/
espère que cette aide
OriginalL'auteur Onur Bıyık
En fait, vous pouvez modifier la tâche des propriétés étendues à l'aide de SPWorkflowTask.AlterTask(SPListItem tâche, Hashtable htData, bool fSynchronus) de la méthode. Table de hachage contient les propriétés Étendues.
OriginalL'auteur
Dans votre SPWeb Objet, AllowUnsafeUpdates = true. L'erreur de s'en aller. N'oubliez pas de régler AllowUnsafeUpdates à false lorsque vous avez terminé.
OriginalL'auteur
Vous devez définir la SPBuiltInFieldId.WorkflowVersion propriété de l'élément de tâche à 1
J'avais blogué ici: http://blogs.technet.com/b/meamcs/archive/2011/03/26/workflow-error-this-task-is-currently-locked-by-a-running-workflow-and-cannot-be-edited.aspx
OriginalL'auteur Nagy
Vous ne pouvez pas modifier une Tâche de Flux de travail à partir de l'extérieur du flux de travail malheureusement. Vous avez en quelque sorte à dire le flux de travail pour modifier la tâche. Je ne suis pas 100% sûr de ce que la meilleure approche serait, et je suis très intéressée par la réponse 🙂
OriginalL'auteur Michael Stum