Thank you for giving me the opportunity to help you develop a logical
naming standard for your business documents!
As you mentioned, key coding will require you to have keys, and to
refer to them unless and until you know them by heart. However, the
upside of using keys is that it will enable you to keep your document
names fairly short and sweet, and easy to skim through when you're
looking for a certain document.
First, you will need to decide which of your four data items (client,
subject, date, and author) is most important. If you need to find a
certain document, which one of these will you most likely have? I'm
guessing that "client" (or perhaps "date") is your most likely
candidate. However, since it is possible that you will have many
documents for different clients on a single date, I suspect that
choosing "client" as your primary key will make it easier to narrow
your search down quickly.
You will need to develop a unique code for each of your clients.
Starting with 0001 or 00001, you could just assign sequential numbers
to your client list, and any subsequent new clients would be assigned
the next available number. However, unless you have already assigned
client numbers, I would recommend a 4- or 5-letter key, based on the
client name, instead.
Since there are 26 letters in the alphabet, a 4-letter code would
allow 456,976 different key combinations (26 x 26 x 26 x 26). However,
you are going to want to try to make your code as close to your
client's name as possible (XZKY would probably not be a very helpful
code for a client's name), so using 5 letters for the client code
might be a better choice.
Go through your client list and assign each one a code. You can store
the code/client name cross-reference list in a spreadsheet (Excel,
etc.) document for simplicity, or in a database (Access, etc.) if you
have that functionality.
Assign your client codes like this:
this or this:
ADAMJ ADAJJ Adams, John J.
ADAMQ ADAJQ Adams, John Quincy
ADAMT ADATL Adamson, Theresa L.
and so on.
It doesn't matter so much what style you pick, as long as you try to
be as consistent as possible, in order to help you find things
quickly; and as long as you don't assign the same code more than once.
This is where the spreadsheet or database can really come in handy: a
spreadsheet will allow you to sort by code and search for duplicates,
and a database, if properly set up, will not allow you to add a
Later, if you get "Adams, Janice Jay" for a client, you could assign
her something like "ADAMA" or "ADAJY", since "ADAMJ" or "ADAJJ" would
already be taken.
The next most important key will probably be the date. So that the
documents will sort chronologically within each client, you will want
to put the date in CCYYMMDD format where CC is the century, YY the
year, MM the month, and DD the day.
Now, if you have a limited number of set "subject"s, you can set up
For instance, an attorney's office might have a fairly limited number
of subject types:
EXPN Expense Report
POAT Power of Attorney
If your business could have an unlimited number of "subject" types,
you may want to use 5 (or more) letters rather than 4.
Finally, the "author" code list will probably be very small, depending
on the number of people in your office. 3 initials (Last/Middle/First)
or (First/Middle/Last) should do the trick, whichever works better for
In the event that the combination of the above 4 elements gets
repeated, a unique key can still be created by adding a, b, c, etc. at
So, your documents would be named something like this:
Power of Attorney for John Q. Adams created on 2/17/2002 by Sandra
Contract for John Q. Adams created on 5/3/2002 by Phil R. Davis
Expense Report for John Q. Adams created on 5/3/2002 by Phil R.
Memo for John Q. Adams created on 5/3/2002 by Phil R. Davis
Memo for John Q. Adams created on 5/3/2002 by Sandra K. Stevens
Second Memo for John Q. Adams created on 5/3/2002 by Sandra K.
The resulting coding system is not short, but at least it's better
Do you think that this sort of solution would meet your needs? If you
would like, please take a little time to think about it before
Before Rating my Answer, if you have questions, would like to discuss
this further, or can think of specific tricky situations you might
need to handle, please post a Request for Clarification, and I will be
glad to help you get what you need.
I hope this will provide you with the good, logical system that you