Deltek Cobra allows you to assign codes on codes, a powerful feature that gives you incredible flexibility for reporting. These kinds of fields are especially important when implementing the tool in an enterprise environment because you can give individual projects flexibility in how they want to define their codes, but still reserve enterprise-wide standards that can be mapped to the projects structures.
For example, your project might have a Work Breakdown Structure dictated by the contract, but your organization may also have a WBS that they want used across projects so they can do portfolio-level reporting. The Code on Code capability in Deltek Cobra allows you to create this mapping at the WBS code level so you only have to do it once. Then the project can use it’s contractually dictated WBS to structure the work, but the organization can still pull the data according to their standard corporate WBS…a win-win.
When rolling this kind of capability out in an enterprise implementation, it is important to designate the position of the enterprise wide WBS. This is so it is consistent across programs and doesn’t get overwritten by some other coding defined at the project level. By doing this you can more easily build processes, reports and integrations since you know the Enterprise WBS will always be found in Code 9 of the WBS, which is always the first Control Account Identifier for example.
When I set up a system, I like to keep those enterprise-level designations at the end of the spectrum of possible positions so they are kind of out of the way for the project. There is just something overbearing about rolling a solution out and off the bat telling the folks that fields 1 thru whatever have already been reserved and can’t be used. That way, if the project wants to use one of the fields for their own code-on-code designation the most intuitive positions are still available. I say intuitive, because from the project’s perspective, if they want to add a code they tend to think of it as the “first” code and therefore it should be in the first code position. You could put the codes in any position, but I have found through the years that this approach helps with acceptance/adoption and can be used across any of the tools involved in the implementation.
So when I was recently setting up this kind of arrangement with Deltek Cobra I discovered a quirk in the tool that takes a little more effort to achieve the same results. When I added my code on an existing code file, the column was mislabeled if there were any blank positions in front of it. Cobra seemed to get confused if codes (or text fields) were added out of order!
The screen shot below is from a test I did with the Demo Adv WBS. I added the Prompt “Test Add” to position number 9 and left all of the positions before it blank (I set the type to Text, but in other testing it didn’t matter what type I used). Notice the column heading for the field after I had applied and “OK’d” the change…it says “Code 1” instead of “Test Add”.
The same thing happened if I added something to position number 2 and left number 1 blank. It can’t figure out what the column heading should be. The quirky thing about it is if I added items to positions that preceded the one that I wanted to use, Cobra used the correct column heading.
Now that Cobra has its orientation down, you can get rid of the assignments to the positions before the one you want to use and it will maintain the right mapping of position prompt with column heading.
I tested different combinations of Field Types and positions, having something in position number 1 and then a blank position before the next assignment, you name it. Bottom line seemed to be if there is a blank position before a column, Cobra was confused about what column heading to use until there were no blank positions before an entry. Once it got its bearings, it seemed to be OK.
Oh, one more quirk to the scenario above….If you assign the code field while you are creating a new code file, Cobra does not have any problems. You can add codes with as many blank positions before it and it knows exactly what column heading to use.
For sure this is not a huge showstopper, I could not identify any fatal errors caused by the confusion and could run reports etc., but it is curious. I would guess this is not a huge problem in the installed user base because I get the impression that not too many people use codes on codes from the folks I talk to, which is too bad because it is a powerful capability within Deltek Cobra. Anyway, I hope this helps if you are in the throes of implementing code-on-code and run across this problem too.