Versioning and workflows - a "draft" system?

Requests for new functionality or improvements in existing functionality. Please provide clear descriptions of your request, an example or if possible a real life scenario.
Post Reply
maathieu
Posts: 15
Joined: Tue Dec 24, 2019 10:17 am

Versioning and workflows - a "draft" system?

Post by maathieu »

Hi folks,

What would be really cool is to have the possibility of not showing to everyone the newly uploaded version of a given document as long as it doesn't reach 100% of its attributed workflow. While it is below 100% it could be stored as a draft with a "View draft" ACL available for users who are allowed to see the work in progress.

Many tia,

User avatar
rssfed23
Moderator
Moderator
Posts: 213
Joined: Mon Oct 14, 2019 1:18 pm
Location: United Kingdom
Contact:

Re: Versioning and workflows - a "draft" system?

Post by rssfed23 »

Thanks for the suggestion. I've logged it as https://gitlab.com/mayan-edms/mayan-edms/issues/733
Please bear with us during the current global situation. The team all have families and local communities to look after as well as the community here. Responses may be delayed during this time, but rest assured we will get to your query eventually.

User avatar
rssfed23
Moderator
Moderator
Posts: 213
Joined: Mon Oct 14, 2019 1:18 pm
Location: United Kingdom
Contact:

Re: Versioning and workflows - a "draft" system?

Post by rssfed23 »

Hi Maathieu.

There's been a response on the issue from our lead developer:

"The Draft/Complete flag is in essence a state of the document, and the current state of the document changes the access level of the document.
Document states is for what the workflow engine was added. Access level can be handled with the ACL system. The workflow engine as it stands right now should be able to handle this as it is internally a finite state machine.

A draft/complete setup can be implemented with a workflow that has two states and two transitions. State 1 Draft, State 2 Complete, Transitions 1 Set to Complete, Transition 2 Set to Draft. The Draft state is set as the initial state of the workflow. Add to the first state a "Revoke document access" and remove the view or any other permission from roles that will need to wait for the document to completed. Add to the second state a "Grant document access". The two transitions allow for toggling the draft status of the document."
Image

Are you able to have a play and see if that meets your needs? - If it doesn't if you could add some detail to the Gitlab issue on your specific requirement so it can be discussed there it would be much appreciated :)

I should also mention for anyone else that comes across this, there are a couple of examples that go into a bit more detail on the Workflow system than in the documentation in the Exploring Mayan EDMS Book
Please bear with us during the current global situation. The team all have families and local communities to look after as well as the community here. Responses may be delayed during this time, but rest assured we will get to your query eventually.

maathieu
Posts: 15
Joined: Tue Dec 24, 2019 10:17 am

Re: Versioning and workflows - a "draft" system?

Post by maathieu »

Hi,

I see, very clever! However, as far as I understand Mayan, a workflow affects all the revisions of the document at the same time. So for example if I have a public document in v1 and I am working on the draft of v2, with the above solution, as soon as I upload my v2 draft, the whole document becomes inaccessible to the public until the new version is validated.

What would be great is to still allow access to v1, as it is still the reference version of the document, while v2 is being validated. v2 then replaces v1 once validation is complete.

But I guess that solution can be a workaround.

Cheers,

mathieu

j_arquimbau
Posts: 6
Joined: Wed Feb 19, 2020 2:42 pm

Re: Versioning and workflows - a "draft" system?

Post by j_arquimbau »

I support this request. In the workflows I’ve been working in, a document is in force until a new version is approved. As per the actual workflow system, an original version can have a creation-review-approve workflow preventing anyone to see the doc until the doc is approved, by means of ACL. However, when a new version is uploaded for review and approval, you have to choose between preventing anyone to see all the versions or allowing anyone to see the not-already-approved version (and the former ones). According to the actual system, review and approval needs to be performed immediately after the submission of a new version, otherwise people needing to check a SOP wouldn’t be able to see it (if viewing permission was revoked) or would be seeing a non-approved version.

As discussed with another user (viewtopic.php?f=7&t=1720) this could be solved by basing workflows and tags in versions instead of documents.

aaribaud
Posts: 21
Joined: Mon Sep 23, 2019 9:30 am

Re: Versioning and workflows - a "draft" system?

Post by aaribaud »

Hi, I am "another user". :)

I'm interested in this feature, essentially because reviews where I work are used to bump a document's "official" version, so we need to upload a "candidate" unofficial version for reviewers to review, but the rest of the users need to still see the "official" one (and in fact, so need the reviewers, who may want to compare the official and candidate versions).

I''ve read rosario's comment on Gitlab that such a feature (a visibility flag) would clash with future features like document page composition; but I'm not sure I understand why it would. Could anyone who does develop on the problem?

Post Reply