using trackers to manage process
I've created some trackers on our TikiWiki which document certain information that needs to be captured during a business process - for instance, the development of a new product, or a change to a product. However, there are some things that I'm struggling to figure out.
I want to manage the state of a set of related forms. For instance, suppose there are five forms associated with a new product, called A, B, C, D, and E, of which in a given case might have 1 instance of A, 5 of B, 2 of C, 4 of D, and 0 of E. I want to know when all the forms are filled out. To do this, forms C, D, and E each have a checkbox which is checked when something is done, and have a linked item to form A associating it with the project. (Note that this is a simplified version, in the full version there are multiple states, each of which corresponds to an incremental set of checkboxes that need to be checked off.)
I could manually do this by finding each form and then doing the logic manually, but this is very labor intensive. A couple of approaches I am thinking could work for automation are (1) create some kind of query, or (2) create a mathematical calculation. I have no clue on how the latter would work; I don't know enough about the TikiWiki internals, but for the latter, it seems like I would need to be able to refer to fields in other items. How I would account for the fact that there could be an arbitrary number of items seems problematic.
The other issue is how to control who fills out various parts of a form. Each form has all the fields that logically fit together, but is divided into sections, each of which must be filled out by a different person. I can create a separate template for each section, but this seems like an unnecessarily large amount of work, creating lots of templates which each show all the fields filled in to that point, and then provide input fields for the next section. It seems like it would be a lot cleaner to (for example) write some javascript for each form which does some checks on who the current user is, what has been filled out so far, etc. and then presents the user with the relevant information. However, it seems like (1) Javascript is discouraged in favor of plug-ins, and (2) the API for doing all this is not very easy to learn.
Any suggestions?