Document Versioning?

Greetings Everyone,
We were looking to find how we can take advantage of the ‘versioning’ functionality with documents that are brought in through a workflow. We would like to see if the doc already exists (by Title/filename) & if so, submit the new version which would bump the existing published version to ‘archive’ & publish the new version.

This is how it works when you do an Add to DocStar via a print & routing rule - if you print it a 2nd time, the original captured pdf (v 1.0) goes to ‘archive’ status & the new print job goes as 2.0 & published status.

How can we take advantage of this versioning when bringing in docs via a workflow? I’ve researched this but found nothing so far. Has anyone made this happen? There don’t seem to be any ‘Tasks’ for ‘add version’ or anything like that, so just wondering how we can accomplish this. Support was unhelpful, they’re only response was ‘talk to professional services’, when all we want to do is implement a feature we know exists.

Thanks in advance for any assistance on this topic!

I’ve been looking at this for an hour and I agree with you - APR will version automatically via the API but workflows will not. You cannot even duplicate the check out check in processes inside the workflow.

I’ve got an inside person and I’ll ask them the next time we speak. If I get anything I’ll post here.


@jfarley The first site is what I found to help me with ECM and tasks. it is very rudimentary, but I have opened up every task there since the label sometimes has nothing to do with the function. It seems versioning is related to a security class and then a user gets assigned versioning permissions.

In Epicor learning I searched for security and came up with a few listings. I did not watch the video, but the course below had a pdf that could help.

I see in my AP workflow a version section and they are all 1.0, but that security class does not have version documents or version publishing checked. I noticed a few of my APR documents also have versions and I never did anything to cause it, so it must be automajic.



Epicor Learning Epicor Learning Center

This is under the guided learning in the ECM upper right dropdown.

1 Like

@gpayne That is part of it, it’s also a licensed feature. But it looks like they have that already since they can version using APR.

I found some stuff on a few document meta variables that you can use to prove that the approved version of a document is the published version, but nothing yet on how to do this via the Workflow.

Versioning and Workflow - DocStar - Epicor ERP Knowledge On Demand

1 Like

Thanks much @gpayne & @MikeGross - this is all very helpful info! That video is great, but the only thing they leave out is how to actually publish a new version of the doc lol. I had thought it was related to ‘checking in’ & out, but I’m not seeing any tasks that allow for ‘publishing’ or checking in or out, etc - I gave the tasks another thorough review too.

I did this in the UI though, checked out a doc, then checked it back in & it does just what we’d want. The old 1.0 version got bumped to ‘archived’ & the new version becomes 2.0 & ‘published’.

I’ve now posted this question on the DocStar help center, on the discussion tab of the ‘versioning’ topic. That will be a nice way to access support, if they’re responsive to this - fingers crossed!
I’ll post here if I come up with any new info.
Thanks again!


Jon, do you have any link to a help article on versioning something using the Epicor UI or is the UI you mention in the quote above the docstar/ecm UI?

in ECM, versioning is a privilege controlled by security, but if you have that privilege, it’s on the Action Menu.

IN Kinetic, it’s a sysconfig file option to determine how it behaves - noversion, version, or prompt are the choices if I recall.

in kinetic and only kinetic? Or is versioning avaiable in 10.2.500…? Asking for a friend.

Honestly - don’t know, and I don’t have a 10.x installation to check. I’m at 11.1 right now. I’ll see what I can dig up but check your sysconfig file - I did not have to add the value/option, it was already there.

Hi Taylor, I remember piecemealing that info from a number of places to figure out what was going on. I was referring to only DocStart (print capture) when you’re using a print routing rule to store/capture the print job from ERP into DocStar - this process automatically uses the DocStar ‘versioning’. It’s likely they are building this behavior with multiple API calls. But if you were to replicate it in the DocStar UI, you would be first ‘checking out’ the doc, updating, then checking back in - this process would make a new version automatically once checked back in.

I don’t know anything about versioning in Epicor itself, though I’m curious about that - @MikeGross what versioning functionality are you referring to that is enabled in the sysconfig?

Cheers guys!

Over the last year, there have been a few conversation on this, and we specfically addressed this with ECM folks at Insights.

APR will verion automatically - without control (OR consent) by the user, with no settings available. It simply does it. So if you continue to print the same quote via APR, it will simply version each one of them upon the original.

In Kinetic, when you attach a file to a transaction (like a quote), it will use the Sysconfig file’s setting to determine what action it takes (auto-version, no version, prompt the user).

In ECM, you can check out/in and version using the Action menu, but you cannot access these commands in a workflow. This just chaps my butt…

I and a few others here have been “petitioning” Epicor for the last year to get the versioning capabilities equally available in all four places, because it’s evident that a couple of API Calls, or one API call with the right flag will enable the versioning of a document.

1 Like

Thank you Mike for your humor, it’s a welcome start to the work week; even if it is sad humor.

1 Like

Thank you Mike! Is this sysconfig setup in any documentation anywhere?

Yes - but I’d really have to search for it. I did a quick search and can’t locate it - maybe I’m just thinking it’s documented :-). Regardless, here is the chunk from the sysconfig file

    <!-- Specifies the behavior when a duplicate attachment ID exists, prompt for new id or auto append DateStamp -->
    <DuplicateAttachmentMode value="Prompt" options="Prompt|AutoDateStamp" />
    <!-- Specifies the behavior when a duplicate DocStar attachment ID exists for current record, prompt or auto add version for existsing document-->
    <DocStarDuplicateAttachmentMode value="Prompt" options="Prompt|AutoAddVersion" />

The Second line is for ECM, the first is for regular file attachments.


Thank you Mike!

Thanks @MikeGross, great info! That’s good to know you can version the attachments like that.

I had heard there was as discussion about it at Insights - I’m sorry I missed that one! :slight_smile: I have ran into the need to do versioning in workflows a number of times now, which is why I initially posted the question.

1 Like

And is why @gpayne and I have been up Epicor’s backside so fervently!

This is something I would like to achieve also. I have been looking at Datlink integrations using the EPICOR REST API. I understand that there is an ECM REST API also (I am making enquiries) so in theory it might be possible this way

1 Like

very true!

Hi all,

Bit of an update…I looked into the ECM REST API and EPICOR wanted to charge 100% of licence cost for annual maintenance which goes completely against every other licence model. because of this I was unable to pursue this further.

I have recently come into a requirement to somehow be able to create document version in a workflow and have come up with a bit of a work around, this is not ideal but it does work.

Note that this is only in my test environment and I am not 100% committed to using this as yet until properly tested, it is a bit of a hack.

I use the DocAttach data link to add my document to EPICOR ERP. The problem we have here is that the FileName used by DocAttach is a Guid thisis XfileName as opposed to XfileDesc and this is why it will never create a new version as the Guid is unique every time.

What I do is download the file and re-upload using API Calls in ERP to check for and create versions. There are issues with this, in particular that the newly uploaded version will not be linked to the original workflow so the history will not be there.

I have created a function in ERP which is triggered when a new row is added in the XFileRef table.

I examine the document type and file description to help me identify what I want to do with it.

I pass the XFileRefNum into my function and it does the following:

uses the DocStarDownloadFile method to download the document to a temporary location.

Then uses the DocStarFileExistsForTableRow method to see if a version already exists.

Then if version exists I use DocStarUploadFileAsVersion method

If the version does not exist then I use DocStarUploadFile and then the appropriate method to create the ERP Attachment.

This does kind of work. In theory, it could be donw by not even downloading the file as the Download method returned a byte array I think I could pass this byte array directly back into Upload methods, but I have not yet tried this.

Anyway, not sure if this helps anyone, I am not totally sure it helps me as yet :rofl: but I just though I would share.