Phil 7.31.14

8:00 – 5:00

  • Deployed new FA, RA
  • DB Backups.
  • Changed the query in the truancy report because SUM(0, null) != 0 + null in MySQL
  • Got the query built to construct a single response from the master/date/number/text tables :
    • select fpt.gid, fpt.panel_name, fpt.field_name, ftt.value from fr_panel_table fpt right
      join fr_text_table ftt on fpt.uid = ftt.uid where login = ‘projportfolio’ and panel_name =
      select fpt.gid, fpt.panel_name, fpt.field_name, ftt.value from fr_panel_table fpt right
      join fr_number_table ftt on fpt.uid = ftt.uid where login = ‘projportfolio’ and panel_name
      = ‘fundingRequestsPanel’
      select fpt.gid, fpt.panel_name, fpt.field_name, ftt.value from fr_panel_table fpt right
      join fr_date_table ftt on fpt.uid = ftt.uid where login = ‘projportfolio’ and panel_name =
  • Getting the fundingRequestTable back with the login info
  • For tomorrow
    • Populate funding request panel
    • Populate other panels on load
    • Submit changes status and just saves, I think
    • Change the YUI library to point at a local copy
    • Zip and deploy???



Phil 7.30.14

8:00 – 5:00 SR

  • DB backups
  • New FA. There does seem to be a problem with the calculation for cell colors
  • Continuing with writing to the DB from the JS client
  • Chased down a bunch of bugs having to do with the way that fields were being loaded, particularly on the Funding Panel, where items are represented by sourceDivs
  • Set up the table structure so that guids are produced for each row on the client then used to match between the master table and the String/data/number tables.
  • Added the code to the servlet that inserts data, but haven’t connected it to the DB yet. Tomorrow.

Phil 7.29.14

8:00 – 5:00 SR

  • DB Backups
  • Wound up having to write a class that allows for the traversal of a JSON object, which I was not expecting and added a day to the effort. It’s based on the code up at Finished with the basics, and can recursively navigate and return key/value pairs or an array of Objects that match a given key. Tomorrow we’ll need to add capability (either to the JsonNav class or to the servlet that will write rows into the db.

Dong Shin 07.25.2014

  • working on Query Builder
    • disable obligated, outlays, pm actuals when query is using GROUP BY
    • adding queries by Req by Project
      • FY 13 Financial Status – done
      • FY14 Financial Status – done
      • FY14 Outlay Plan – done
      • FY14 Current Month Planned vs. PM Actuals – done, need to discuss what columns to show and how the calculations are done
  • working on new FMP editor
    • reworked the layout of the questions and added projectedDate field – sets label based on meeting Obligation/Outlay goals
    • added validators (question 1, 2, 3, projected date)
    • separated FinancialMitigationPlanContent from FinancialMitigationPlanWindow

Phil 7.25.14

8:00 – 5:00 SR

  • DB Backups
  • Added a event handler to get the comments.
  • Add clear() method. Nope, just used location.reload(true) to force a reload of the page from the server. Better!
  • Drat. I need it anyway, to prep for loading JSON. Done.
  • Save and Load should use the name in the FR name field. If the name is not in the list when save is pressed, it’s added to the list.
  • Work on save first, then load.
  • How to do a compound insert from Dong:
    • LAST_INSERT_ID() gives you the key/index of the last record inserted…..

      1. insert the first record

      INSERT INTO data_table (uid, data) VALUES (null, ‘data’)
      2. insert into master record
      INSERT INTO master_table (uid, some_data, key_to_data_table) VALUES (null, ‘some_data’, LAST_INSERT_ID());

Phil 7.23.14

8:00 – 5:00 SR

  • DB Backups
  • I need to check to see what should be generated for:
    • 11. (U) Contract Details
      12. (U) How does your organization process funding requests?
      13. (U) Do you require 100% of funds in order to obligate this funding to contract?
    • Fixed. I was pointing the output of the panels to the wrong div
  • Bold ‘Cum Amt ($K)‘ Done
  • Move the BLUF module above the POC module and include it in the center section as #5. Done
  • Correctly exporting the javautils jar
  • Accessing the DB
  • Need to write a toJsonString() method for DbTable. Done. Since everything is stored as strings in the webapp, the strings are validated at the client and converted to sql-friendly strings.
  • There is no good way to send full objects, so I spent some time seeing what a good strategy for stringifying is. So far I’m at this:
    • user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestType = ‘MIPR’
      user:pgfeldm.type:number.panel:fundingRequestsPanel.val:fundingRequestAmount = ‘32919’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestAppropriation = ‘RDTE’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestStatus = ‘Incomplete’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestTaskName = ‘Task_9’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestNumber = ‘ABC-123-9’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestName = ‘fundingRequest_9’
    • Which is pretty easy to parse. Not thrilled about the extra chars…

Phil 7.22.14

8:00 – 4:30 SR

  • DB backups
  • Changed the truancy report to run automatically from a view
  • generated email list of all FY2014 users for Lenny
  • Got my Eclipse running Tomcat again. As near as I can tell, the pattern that works is to delete the old server, create a new one using the wizard, point at the web project (in this case YuiServletServer), make sure that the new server is pointing at the Tomcat instance, and then try, delete repeat until that works.
  • Started integrating servlet access into PanelModuleTest. I’m also automatically deploying to the Tomcat server (running in Eclipse) from Webstorm. Sheesh.
  • Got the call to the JsonSinWaveServlet running inside PanelModuleTest
  • Created a new FundingRequestServlet and updated the web.xml.