Community & Support

A Logic question: Using casetracker more deeply: Project > Case > (many)Roles > (many)Candidates> (single)List output

The problem I have is more like a logic problem than a strict Drupal question.

My site is a people database:

(Projects are Called clients in my casetracker)

Now one client has a case where they need people.
So we have:

Client > Case

Now in this case they selected several candidates by number:
So I need to do this:
Client > Case > Candidates

But they have several roles to fill so I need separate candidates by role:

Client > Case> - Candidates Role 1
               |-Candidates Role 2
               |-Candidates Role X

Now at the end I need to keep track of which candidates were contacted and which are coming for interview, who was cancelled, etc. So it should ideally be in 1 list like so:

Client > Case > - Candidates Role 1 -\
                |-Candidates Role 2 ----> contact list for all candidates
                |-Candidates Role X -/

Now the contact and candidate list needs to be live and attached to the database. (I have a cck data type for the people with all info inside)
So that way if any information about the person changes it is updated in the final output. No static info allowed here!

So logically, I am a bit confused.

Comments

The inheritance module might

The inheritance module might be a solution:
http://drupal.org/project/inherit

To plug in fields from my cck data type for people into the candidates list.

Dynamic field

I think a Dynamic Field might do the trick.
http://drupal.org/project/dynamicfield

Not the Computed Field module due to it only computing on node save.

Then I can create a "candidate" node with the fields:

>Role name
>Node reference
>>Phone number from referenced node (Dynamic)
>>Email from referenced node (Dynamic)
>>Name from referenced node (Dynamic)
>Status
>Notes

Now the question is do I make a node for each of these candidates and stuff them all into a "case" or make a complex data type that makes a single node that stores many of these inside itself.

The single node solution is preferred, or even if I can stick all this data into the "case" node woudl be the best option.

I don't like to create superfluous nodes when not really necessary

Hey, thanks a lot me! You are

Hey, thanks a lot me! You are very helpful!

There seems to be an echo in here.

There seems to be an echo in here.

Hey, that did it, I just grab

Hey, that did it, I just grab the info from the referenced field as such:

$noderefnode = node_load($node->field_YourCckNodereferenceField[0]['nid']);//$nid);
return $noderefnode->field_FieldToGrabFromReferencedNode[0]['value'];

Works like a charm with minimal overhead

Combine this with

Combine this with flexifield
http://drupal.org/project/flexifield

And you've got yourself a right solution!

yes and top it all off with a

yes and top it all off with a view that outputs into a table the information of those candidates from that case and you're all set!