My attitude towards new MEDITECH projects over the years, has ranged from grandiosity (nothing will go wrong) to a chicken little approach (you want what by when?, and 10 reasons that's not going to be possible). If only I'd heard of and followed Brad's advice instead.
Here's a scenario from a database administrator's (DBA's) world we can glean lessons from and apply in our role as MEDITECH report writers:
You have just found out that management wants to upgrade all 350 SQL Servers instances from SQL Server 2005 to SQL Server 2008, by the end of the quarter. Rather than immediately raise objections, the Exceptional DBA will scope out the project, create a plan, and put it into effect as soon as possible. If the DBA determines, after scoping, that it is impossible to complete the job in time given current resources, then he will determine what additional resources are needed and present his findings to his manager.
Instead of quietly proceeding with impossible deadlines or iterating all the reasons something isn't possible, you and I have a 3rd option: scope out the new project with necessary resources to achieve the proposed deadline and present our findings back to the requester. If the necessary resources are in place, proceed with next steps. If more resources are needed, simply presenting that back to the requester is a flawless response on our part. The situation may require you to begin with out the necessary time and resources, yet by scoping and presenting the facts we can rest assured knowing our actions have been perfect in spite of the circumstances.
Scenario Reference: How To Become An Exceptional DBA by Brad McGehee

MEDITECH fields, at times, can elude even experienced NPR Report Writers. Let's review a quick way to find them using an unlikely technology for this task: SQL Server.
To produce unique lists of DPMS, SEGMENTS, & FIELDS from your MEDITECH Data Definitions, load them into a SQL Server database and then run ad hoc SQL queries against them. Today, I want to show you how to use SQL Server to: De-duplicate a list, Find fields by DPM, & Learn about fields that compile to the same object code.
Let's get started.
[De-Duplicate a List]
Want a list of DPMS from your MEDITECH Data Defs? Try a query like this in SQL Server.

One problem, you'll notice is that the list of 140K+ rows is not unique. To de-duplicate the list, you could add a GROUP BY clause.

Or if you prefer a standardized method of de-duplicating the list, try the SQL Keyword DISTINCT.

The record count of 1894 rows is the same for our data set here, for either approach you use.
[Find Fields]
Looking for a field containing the letters 'drg'? Want only fields from BAR? Add a WHERE clause for DPM and FIELD.

[Fields Compiling to Same Local Variable]
How many fields share the local variable for ADM.PAT.urn? In CS 5.5 about: 243, depending on which MEDITECH modules you have installed.

Which MEDITECH applications contain a reference to 'aa' the local variable for ADM.PAT.urn? Depending on the MEDITECH modules you have installed, about: 21.

Now when you're having trouble finding a field, this approach might help you find it.
Have you been on a conference call and had to count pipes, in order to figure out which field everyone else was talking about?

Iatric Systems has made their HL7 Editor available, FREE, to the MEDITECH Community, get it: here.

Say good bye to counting, and hello to HL7 message bliss!
The
Iatric Data Access Driver (iDAD) allows you to write NPR reports using real time data from both the Client/Server (C/S) database and the Advanced Database (6.0).
Learn more here at the Iatric Systems website.
Displaying an update to the screen every time your report finds a record can be detrimental to MEDITECH report performance.

If you use W.display, and your report runs a bit slower than you'd like, you might try displaying an update every 500 records.

If a status update every 500 records isn't often enough, maybe 100 will work for your report. Either way, sending data back to the screen on a less frequent basis, can improve report performance.
How do you add a comma in the thousands place?eg. 1000.00 = 1,000.00 or 1000000.00 = 1,000,000.00
Read the MEDITECH Answer here.
How do you use a predefined list in an NPR LI Select?
I have tried both LI and CL with my criteria ("ED", "PNP") and I am crashing my report.
Read the MEDITECH Answer here.
Where can I find the MEDITECH Programmer's User Manual?
Read the MEDITECH Answer here.
Come to the MEDITECH KE and ask a question of your own.
BUF NONE, it's not just for pretty translation screens & readable object code.

This overlooked NPR FOOTNOTE can improve the performance of your MEDITECH reports. Joe's tip in the Iatric Systems, December 2009 Newsletter explains why you might want to use this FOOTNOTE in most of your Client Server NPR reports.

Quoting the MEDITECH NPR Manual: "To turn off buffering, enter BUF NONE in the report's footnote section. If a report has a VAL statement that attempts to replace elements with buffered results increasing a line's length longer than 255 characters, a translation error message appears."
Most programming languages have a lot of different functions for manipulating text, example: converting text to lower OR upper case.

Come kick off a new section in The MEDITECH KE, a MEDITECH Community Wiki, titled String Manipulation. The first entry is titled 1 way to Convert MEDITECH Text to Lower or Upper Case.
The MEDITECH Data Repository Model has been posted for the 5.65 Release.
Which answered the question I'd been asking, would AOM / RXM be part of this release? The answer is yes!
When: Friday, November 13th at 3:00 p.m. Eastern.
Where: Sign up for the MEDITECH Reports Blog newsletter. Invitations to this webinar will be sent out Wednesday, November 11th.