Thursday, August 19, 2010

Week 9 Thoughts and Experiences

Work


Monday:

  • Joe returned from vacation and helped Austin and me realize that we were changing the javaScript alert boxes into mootools alerts the hard way. Originally we had written a complex script to go through and physically change all of the function calls. Joe explained that it would be a much easier/cleaner fix to re-define the alert() function to be the Sentry alert function and not even touch all of the references. Essentially, we made one global change instead of hundreds of individual changes.
  • Joe also reviewed the changes that I had made to the VPN Setup Tool. Previously I had added a feature to the tool that showed "Not a Customer" as an option in the client-selector on the VPN page. I had done this by adding a "Not a Customer" row to the table from which the client names were being pulled. The alternate method was to add it as an option to the selector without actually adding it to the database. This proved a little more complex than it sounds, as there was no ID to submit with the form, but all-in-all, it wasn't a difficult fix.

Tuesday-Friday:

  • Began working on a ticket which involved adding a "Why Non-340B Purchase" column to the PO/Invoices PO reporter. Each line item on a PO would have a short reason listed and then a tooltip so that when the "short reason" is moused over, its corresponding "long reason" pops up.
    • Found a massive 250+ line function responsible for assigning a "Why Non-340B reason" to each line item in a PO and storing it in the DB.
    • Decided it best to add to the existing PO Dao's existing query, rather than writing a completely new one.
    • Needed to join three new tables to the query in order to get to the corresponding non-340B reasons in the DB. This proved difficult, as I did not realize that it should be done by joining on columns that are nullable.
    • Once the tables were properly joined, I struggled with returning these additional columns without throwing off some of the SUMs done in the original query. This proved more difficult than anyone realized upon first glance and actually required the expertise of Danny Berger.
    • Of course, once everything was working fine in FF, I tried it in IE6 and found some UI issues due to some unnecessary, pre-existing CSS properties.
    • Talked on a conference call with Neel/Joe/Alan about why some line items had no existing "why non-340b reason" in the database. I then talked with JJ who identified 3 possible cases in which this could happen (Troy and Joe helped me with how to handle each of these cases) :
      1. Old orders prior to the po_debug tables existence.
      2. Rogue orders.
      3. Possible edge cases we might be missing.
    • Edited the existing unit tests to test the new features.


Of Note:

This past Wednesday, I was notified by John, Joe, and Cyrus that, due to a lack of production, I will be switching from Dev work to TA work. Though there are only two weeks left, I plan on learning as much as I can about the TA world. I am quite a bit saddened to be leaving the Dev role, as I really enjoyed my work there, but I will be striving to make the most of my last two weeks.

No comments:

Post a Comment