Let me describe what I'm trying to do first then back my way into a feature request.
My company differentiates between Projects and Jobs. A project is an umbrella with basically two statuses, open and closed. Underneath that we have jobs with specific scopes, and typical statuses such as Bidding, Awarded, On Hold, Active etc.
Projects are assigned simple handles instead of inscrutable strings of numbers. Our project for the feature film Fair Game, for example is called ... fairgame. Jobs underneath are assgined job codes that are simple concatenations of the Project Handle and a 3-digit, leading-zero, auto-incrementing number: job fairgame001 is camera rentals and production services; fairgame002 is dailies and data management; fairgame003 is Digital Intermediate.
I'd like to maintain this system inside Shotgun without having to manually enter job codes or remember what the next digit should be.
I realize, too, that if I were being super-database man, I could simply store the project code as an integer (1,2,3...) and link the jobs table as a many-to-many with projects. Then I could simply let a form or other view page _display_ the job as "fairgame003" via a query. But I think that a small amount of redundancy can be worth it; I don't want have to create a query every time I display a job code on a page. (Unless the SG GUI ends up doing all of this transparently.)
I've coded this functionality into my current home-brew job tracking system, which I built 5 years ago and am dying to EOL. So I know what I am asking for is at least a minor pain in the ass.
Obviously, what I'm describing also needs to be abstracted a little higher. I'm curious how the SG guys might approach this abstraction.
For example, we could create a Field Type called "Query" or "Autogen" or the like, then use either a type of query builder or query syntax (yikes) to build "$projectname . &autoincrement(&jobcount->[$projectname,3])" -- which would result in fairgame004 as my next job code.
Of course I'd want this to be flexible enough to create the names of the child entity "batch" which would be called (fairgame_batch001), or any subsequent grandchild entities (fairgame_batch001_output001), etc.
I have a genuine need for a Field Type that users cannot edit but are simply assigned based on on ore more parameters (parent entity names, auto-incrementing numbers, etc.).
Thoughts on this are welcome.