There are two reasons of assigment story "out of date" status (shown to ID user):
1. InDesign editor made modifications, SAVE's and UNDO's ==> and save contents updates this
2. InCopy editor made modifications ==> and update assigment updates this.
First case is rewriting a file with contents from InDesign but second is rewriting contents in InDesign from a file.
Looking for defense against FIRST you can destroy SECOND.
So better way is to explain to InDesign editor how important is he and what UNDO does mean
Do you agree...?
I agree that "out of date" status is very needed and shows to client if the change is made to TextFrame... but take a look again in that little icon over the frame (my screenshot)...
The icon says - "In use and out of date"... this is situation from InDesign which you can reproduce without another user doing check out/check in in InCopy. So - only you and nobody else. The icon means that you are editing the content of the frame and in the same time - your content needs an update?!
Just to mention that this situation I couldn't reproduce in InCopy. Here you will find very simple explanation about this icon and some comments.
And because you can not be absolutely sure that client will not hit Save and Undo, I would like to implement in my editorial system workflow, a peace of code which will check the assignments and when spot that status -> do something... alert, message, save content, save doc or else...
I would appreciate if someone could provide me even with little help on how to catch this status in InDesign.
Now, the question is... is there a solution to do "Save Content" by scripting... no metter what is selected at that point. Something like:
For (Browse through all Assignments)...
You can edit one story at time but you are going to process all assignments.
Thats why i wrote my warning.
To save contents of edited story with mentioned status you can call export() to file matched in story.itemLink
in that case - that looks promising . Sorry for misunderstanding... and thank you for your quick reply. I'll give it a try an let you know.
At the end...
Export did the trick but had to do unlink first... something like this:
'CheckedOut and OutOfDate
If myStoryStatus = idLockStateValues.idCheckedOutStory And myStoryLink.Status = idLinkStatus.idLinkOutOfDate And myStoryLink.Edited = True Then
Dim ExportFilePath As String = myStoryLink.FilePath
myStory.Export("InCopy Document", ExportFilePath, False, , , True)