Management of Lab Resources

Although I hate to be a bit of a ninny about these things… there is one thing that takes: (1) quite a bit of time out of each week and (2) I hate. What could it be?  In very general terms:  “lab resource management”. Cases in point:  the inevitable (and often required) management of chemical inventories, SOPs, MSDSs, orders, receipts, equipment, etc.  

At the moment, I am working on putting together valid SOPs for the lab (this should have been done months ago).  Of course, I could throw these together in LaTeX, MS Word, or Pages and keep them as files on my computer, printing out “hard-copies” whenever they are needed. Adjustment of a single documents requires that I open the relevant file, make the changes, and save the resulting copy.  Wholesale adjustments to all files are time-consuming, and accessing the content of each document for various purposes at a later time, while not impossible, is less than fun. 

I would really like all of this type of data be in a more flexible format than that imposed by any of the options above.  In short, I want to store my data (for each task) in a database (RDBMS), such that I can interact with it, produce the output that I require at any given time in whatever format I desire… be that PDF, HTML, text, etc.


Well, basically, the RDBMS path provides a lot of different options for the maintenance of the data and the production of each output format. For instance, I can setup the RDBMS such that updates to a particular record (say, the description of a single SOP) trigger a procedure to increment the revision number for that document, while also recording the date the SOP was updated, and recording the username of the individual making the changes.  

While this is not terribly helpful if you only have 1-2 documents to keep updated, it becomes terrifically powerful on a larger scale (100s to 1000s of documents).  Furthermore, it helps me maintain the integrity of the data present in each record.  In other words, if many of the fields are updated automatically, it removes problems associated with forgetting to make (or improperly making) manual changes to those fields of that record.

Well, what’s the problem, then?

The largest barrier to current progress is the fact that on-the-fly PDF creation is not terribly fun or easy.  In some circumstances, PDFs are neither necessary or desirable.  But, for the purpose of creating SOPs to be posted in the lab or for completing our departmental purchase requests, they are required.

I would prefer to use something that interacts with a open-source RDBMS (MySQL or PostgreSQL) and Python.  Basically, this appears to mean that I will be  working with ReportLab – which is certainly powerful enough to do what I both want and need.  That said, with power comes complexity, and I don’t find the thought of wading through the ReportLab documentation enjoyable.  Furthermore, although I have found some 3rd party documentation, there is really not too much information out there.

Perhaps the ideal solution would be to locate a software package that would allow me to interact with pre-existing PDF documents/forms.  That way, I can be lazy and use a relatively benign tool like Illustrator or LaTeX or MS Excel to create the layout for the forms that I want to use, adding the content to these forms using a combination of Python and RDBMS.

Does such a thing exist?


2 Responses to “Management of Lab Resources”

  1. 1 Chablat Friront
    January 11, 2009 at 16:52

    To update my own post, it is worth looking at this example from ReportLab’s website (source for the form is available; roll-over to select).

  2. 2 Chablat Friront
    January 12, 2009 at 09:46

    As an additional followup:

    1.) I decided to wade through bits of the documentation for ReportLab and make an attempt to create a template sufficient for what I wanted to do. I will document this effort in additional installments. All-in-all, it actually was not too bad after messing around here and there.

    2.) Here is another useful source of third party documentation, particularly relative to the inclusion of footers and page numbers in concert with ReportLab’s Platypus: http://eccentric.cx/misc/pygtk/wiki/doku.php?id=reportlab

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s


%d bloggers like this: