5

I have created an application using Tridion Core Service. I updated a Component using Core Service. The problem which I faced is that item is going in to workflow on edit. As application is running using the admin user, it is not required for the item to go in workflow.

  1. I want the Component not to go in workflow. Is there any way to disable workflow just before editing and re-enable after edit?

  2. If there is another right approach, please suggest.

5

Workflow is a CORE requirement, you cannot "turn it off" based on the client used. The only way to achieve what you want to automatically finish workflow instead of bypassing workflow. (basically, if workflow is enabled for the current content type, then it must go through workflow).

This is probably a good place to start: http://elenaserghie.blogspot.nl/2013/03/sdl-tridion-2011-sp1-bypass-first.html

Remember though - if there is workflow enabled, there's probably a good reason why that is the case, and bypassing it is not necessarily what you should do.

2

As Nuno rightly states in his answer, there is a reason that your workflow is in operation. Think very carefully before you circumvent that process. Perhaps you can change your workflow design to suit this new requirement?

Seeing as you're already using Core Service to update this component, an alternative to an event system solution could be to let your component enter workflow, then get the workflow process instance that is created and forcefully finish that process using Core Service's ForceFinishProcess(processInstanceId, approvalStatusId, readOptions) method.

2

As stated here before, you cannot disable workflow through code, however what you can do is to execute your "code" (Your application using the core service) under a given User, and then implement your worklfow in such a way that checks the Identity performing the action and if that identity is the one associated with your Application, then bypass whatever activity you are in.

You might also need to not only implement your automatic activities to check for such identity but also some Event System to deal with "manual activities" (which are not really manual), like performing a "Save" from Core Services, for a complete solution.

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.