Can workflow state change be a trigger?

I am doing a database publish, and am having real trouble with date fields. The issue at hand is this: I need a reliable date as to when the content was first published into the database, so I can do application specific actions (outside the CMS). I have tried using the last_modified date, but my content is so interconnected that I have hundreds of content items that show updated any time I change one of them. (possibly caused by using the wrong relationship type?)

My next attempt was to create a proprietary date field (sys_CalendarSimple) in the content type, and add a Pre-Processing transform using the sys_AddCurrentDateTime() extension. This was working perfectly except in one use case: if a user edits content but allows it to sit in the draft or quick edit states for a few days… then without making further modifications workflows to public, the date is now several days old, and my cron job doesn’t pick up the change.

So what I really need is when the item is workflowed to public, the timestamp needs to be updated. I don’t see any transforms for the content type or for the field where I can trigger based on workflow state.

Anybody know of an available field that already has this maybe?

Thanks,

-Jason

Digging around the Rhythmyx database, I have discovered in the contentstatus table, there is a column named stateentereddate, which contains the info I would like to use… is there any way to access this data in my DB publishing template?

Thanks,

Bump… I really need some ideas on this one. My only alternative at this point requires a ton of database and code implementation that will be prone to breakage. Nobody knows how to get the date that an item moved into the public state?

Thanks,

-J

You could write your own workflow extension that updates a hidden date field on your content type…

Are there any resources available to guide me through creating a workflow extension? I’ve searched the forums and if the answer was there, it wasn’t immediately obvious to me. Also, is that a concession that the “stateentereddate” field from the “contentstatus” table is definitely NOT available during publish? It seems like that should be native functionality.

Thanks,

-Jason

There are a couple of examples in the PSO Toolkit on GitHub.

This one is a pretty simple Workflow Action:

There is some higher level doc on extension writing in the Technical Reference Manual