Phil 3.5.14

8:00 – 4:00 SR

  • Backups
  • Resubmitted more paperwork for to keep my server access
  • Fixed some queries with Dong. Did you know that in SQL 10+0 != 10+NULL?
  • JavaScript
    • Finally fixed the ‘max pixels’ bug in the PhysicsShape. Vectors were being calculated for anchor objects, when they should have been zero.
    • Boo. You can’t animate colors on a shape.

Dong Shin 03.05.2014

  • put old Reqonciler back to resolve the datagrid issue
  • updated 2nd year query – success after some fiddling…
    • clean obligation/outlays in the first step using SET month = 0, not SET month=NULL.
    • changed the query to update Obligations, not Outlays
  • query to update Obligations/Outlays when it reaches 100%?
    • UPDATE obligations_outlays oo
      SET month_12 = GREATEST(IFNULL(month_1,0), IFNULL(month_2,0), IFNULL(month_3,0), IFNULL(month_4,0), IFNULL(month_5,0), IFNULL(month_6,0),
      IFNULL(month_7,0), IFNULL(month_8,0), IFNULL(month_9,0), IFNULL(month_10,0), IFNULL(month_11,0), IFNULL(month_12,0))
      WHERE oo.year_count = 1
      AND GREATEST(IFNULL(month_1,0), IFNULL(month_2,0), IFNULL(month_3,0), IFNULL(month_4,0), IFNULL(month_5,0), IFNULL(month_6,0),
      IFNULL(month_7,0), IFNULL(month_8,0), IFNULL(month_9,0), IFNULL(month_10,0), IFNULL(month_11,0), IFNULL(month_12,0)) >= (SELECT bc.total_budget FROM budget_centers bc WHERE bc.uid = oo.funding_id)
      AND (oo.type = ‘Outlay $ (Reported in FACTS)’ OR oo.type = ‘Reported FACTS Obligated $:’)
  • query to find second year that needs to be set to 100%
    • SELECT IFNULL(oo1.month_1,0), IFNULL(oo2.month_12,0)
      FROM obligations_outlays oo1, obligations_outlays oo2, budget_centers bc
      WHERE oo1.year_count = 2 AND oo2.year_count = 1
      AND oo1.project_id = oo2.project_id AND oo1.funding_id = oo2.funding_id AND oo1.type = oo2.type
      AND (
      oo1.type = ‘Outlay $ (Reported in FACTS)’
      OR oo1.type = ‘Reported FACTS Obligated $:’
      )
      AND oo2.month_12 >= bc.total_budget
      AND oo1.funding_id = bc.uid

Phil 3.4.14

8:00 – 4:00 SR

  • Heading in to work on the servers at 2:00, due to the snow. Javascript this morning.
  • Adding scrolling – done! Very nice. You can tell the scroller to go to a particular section. You can even name the section.
  • Turning slideshow into a module so that it can be faded up and down as a whole, and that I can put the Ken Burns effect in.
  • Reqonciler ignore selection doesn’t work – data grid problem?
  • Bring in second year updates query.

Dong Shin 03.04.2014

  • deployed database updates and new queries
    • Reqonciler has some datagrid problem – not updating hide_flags and weird mouse over highlighting, but no problems here back at the office…
    • second year processing missing, need to add this to post-processing – in reqonciler_processing.sql
      • UPDATE obligations_outlays o1,
        (SELECT month_12 FROM obligations_outlays oo2 WHERE type = ‘Outlay $ (Reported in FACTS)’ AND year_count = 1) AS o2
        SET o1.month_1 = o2.month_12 + o1.month_1,
        o1.month_2 = o2.month_12 + o1.month_2,
        o1.month_3 = o2.month_12 + o1.month_3,
        o1.month_4 = o2.month_12 + o1.month_4,
        o1.month_5 = o2.month_12 + o1.month_5,
        o1.month_6 = o2.month_12 + o1.month_6,
        o1.month_7 = o2.month_12 + o1.month_7,
        o1.month_8 = o2.month_12 + o1.month_8,
        o1.month_9 = o2.month_12 + o1.month_9,
        o1.month_10 = o2.month_12 + o1.month_10,
        o1.month_11 = o2.month_12 + o1.month_11,
        o1.month_12 = o2.month_12 + o1.month_12
        WHERE type = ‘Outlay $ (Reported in FACTS)’
        AND (year + year_count) <= (IF(MONTH(CURDATE()) > 9, YEAR(CURDATE()) + 2, YEAR(CURDATE()) + 1))
        AND year_count = 2
  • working on query for Chris/Lenny – show PM Actuals and Planned Outlay with differences in $ and % for current month
    • capability AS Capability, bcc.budget_center_name AS ‘Budget Center’, req_id AS ‘Req ID’, req_description AS ‘Req Title’,
      vrt.req_id_total AS ‘Req Funded Amount’,
      IF(MONTH(CURDATE())=10,SUM(IF(o.type=’Planned Outlay $:’,month_1,0)),IF(MONTH(CURDATE())=11,SUM(IF(o.type=’Planned Outlay $:’,month_2,0)),IF(MONTH(CURDATE())=12,SUM(IF(o.type=’Planned Outlay $:’,month_3,0)),IF(MONTH(CURDATE())=1,SUM(IF(o.type=’Planned Outlay $:’,month_4,0)),IF(MONTH(CURDATE())=2,SUM(IF(o.type=’Planned Outlay $:’,month_5,0)),IF(MONTH(CURDATE())=3,SUM(IF(o.type=’Planned Outlay $:’,month_6,0)),IF(MONTH(CURDATE())=4,SUM(IF(o.type=’Planned Outlay $:’,month_7,0)),IF(MONTH(CURDATE())=5,SUM(IF(o.type=’Planned Outlay $:’,month_8,0)),IF(MONTH(CURDATE())=6,SUM(IF(o.type=’Planned Outlay $:’,month_9,0)),IF(MONTH(CURDATE())=7,SUM(IF(o.type=’Planned Outlay $:’,month_10,0)),IF(MONTH(CURDATE())=8,SUM(IF(o.type=’Planned Outlay $:’,month_11,0)),IF(MONTH(CURDATE())=9,SUM(IF(o.type=’Planned Outlay $:’,month_12,0)),0)))))))))))) AS ‘Outlay’,
      IF(MONTH(CURDATE())=10,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_1,0)),IF(MONTH(CURDATE())=11,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_2,0)),IF(MONTH(CURDATE())=12,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_3,0)),IF(MONTH(CURDATE())=1,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_4,0)),IF(MONTH(CURDATE())=2,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_5,0)),IF(MONTH(CURDATE())=3,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_6,0)),IF(MONTH(CURDATE())=4,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_7,0)),IF(MONTH(CURDATE())=5,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_8,0)),IF(MONTH(CURDATE())=6,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_9,0)),IF(MONTH(CURDATE())=7,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_10,0)),IF(MONTH(CURDATE())=8,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_11,0)),IF(MONTH(CURDATE())=9,SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_12,0)),0)))))))))))) AS ‘PM Actuals’,
      IF(MONTH(CURDATE())=10,SUM(IF(o.type=’Planned Outlay $:’,month_1,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_1,0)),IF(MONTH(CURDATE())=11,SUM(IF(o.type=’Planned Outlay $:’,month_2,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_2,0)),IF(MONTH(CURDATE())=12,SUM(IF(o.type=’Planned Outlay $:’,month_3,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_3,0)),IF(MONTH(CURDATE())=1,SUM(IF(o.type=’Planned Outlay $:’,month_4,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_4,0)),IF(MONTH(CURDATE())=2,SUM(IF(o.type=’Planned Outlay $:’,month_5,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_5,0)),IF(MONTH(CURDATE())=3,SUM(IF(o.type=’Planned Outlay $:’,month_6,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_6,0)),IF(MONTH(CURDATE())=4,SUM(IF(o.type=’Planned Outlay $:’,month_7,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_7,0)),IF(MONTH(CURDATE())=5,SUM(IF(o.type=’Planned Outlay $:’,month_8,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_8,0)),IF(MONTH(CURDATE())=6,SUM(IF(o.type=’Planned Outlay $:’,month_9,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_9,0)),IF(MONTH(CURDATE())=7,SUM(IF(o.type=’Planned Outlay $:’,month_10,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_10,0)),IF(MONTH(CURDATE())=8,SUM(IF(o.type=’Planned Outlay $:’,month_11,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_11,0)),IF(MONTH(CURDATE())=9,SUM(IF(o.type=’Planned Outlay $:’,month_12,0))-SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_12,0)),0)))))))))))) AS ‘Diff $’,
      IF(MONTH(CURDATE())=10,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_1,0))-SUM(IF(o.type=’Planned Outlay $:’,month_1,0))*100,1),’%’),IF(MONTH(CURDATE())=11,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_2,0))/SUM(IF(o.type=’Planned Outlay $:’,month_2,0))*100,1),’%’),IF(MONTH(CURDATE())=12,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_3,0))/SUM(IF(o.type=’Planned Outlay $:’,month_3,0))*100,1),’%’),IF(MONTH(CURDATE())=1,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_4,0))/SUM(IF(o.type=’Planned Outlay $:’,month_4,0))*100,1),’%’),IF(MONTH(CURDATE())=2,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_5,0))/SUM(IF(o.type=’Planned Outlay $:’,month_5,0))*100,1),’%’),IF(MONTH(CURDATE())=3,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_6,0))/SUM(IF(o.type=’Planned Outlay $:’,month_6,0))*100,1),’%’),IF(MONTH(CURDATE())=4,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_7,0))/SUM(IF(o.type=’Planned Outlay $:’,month_7,0))*100,1),’%’),IF(MONTH(CURDATE())=5,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_8,0))/SUM(IF(o.type=’Planned Outlay $:’,month_8,0))*100,1),’%’),IF(MONTH(CURDATE())=6,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_9,0))/SUM(IF(o.type=’Planned Outlay $:’,month_9,0))*100,1),’%’),IF(MONTH(CURDATE())=7,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_10,0))/SUM(IF(o.type=’Planned Outlay $:’,month_10,0))*100,1),’%’),IF(MONTH(CURDATE())=8,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_11,0))/SUM(IF(o.type=’Planned Outlay $:’,month_11,0))*100,1),’%’),IF(MONTH(CURDATE())=8,CONCAT(ROUND(SUM(IF(o.type=’PM Actuals (Invoiced) Outlay $:’,month_12,0))/SUM(IF(o.type=’Planned Outlay $:’,month_12,0))*100,1),’%’),0)))))))))))) AS ‘Diff %’
      WHERE fiscal_year=2014
      GROUP BY capability, bc.sub_budget_center_number, req_id

Dong Shin 02.28.2014

  • deployed new FA and query updates, everything seemed well until…. found that the fiscal year in obligations/outlay gets messed up when the data spans over one year. will need to separate the obligations / outlays
  • created four new views…
    • __view_monthly_obligations_by_contract, __view_monthly_outlays_by_contract, __view_monthly_obligations_by_req_id, __view_monthly_outlays_by_req_id
  • updating post-processing queries – done
  • found some lingering (ghost) summary data in budget_center_contracts table in my database, need to check it on-site to make sure it doesn’t get confused with others.

Phil 2.28.14

8:00 – 4:00 SR

  • And, with a temp of 14 degrees, we say goodbye to February. Good riddance, I say.
  • Backups
  • Deploying new FA and DB fix. Success!
  • Meeting with Chris, Lenny and Dong
  • Wrote status report for Tangie.
  • JavaScript
    • Poked around with the slide show API and nver got it to work. After looking at how it’s handled in CSS, I realized that there just wasn’t that much code needed – just a timer and a way to fade in/out nodes in a list. YUI has that quite nicely and it only wound up being about 30 lines of code. It makes me want to do a Ken Burns effect slide show using the transition library, but that can wait until I get the basics up and running. Next scrolling text. I think this might be fun to use: http://yuilibrary.com/yui/docs/scrollview/scrollview-scroll.html. It’s also touch compatible, which is nice.

Dong Shin 02.27.2014

  • deployed new FA/Reqonciler with new query for Planned Outlays… everything is well
  • Lenny reported that some Obligations are not imported
    • found fiscal year is set to NULL in views – __view_monthly_obligations_outlays_by_contract
    • view definition looks at the date from expensed date, need to look at obligation date as well
    • modified the view to examine both expensed and obligation dates for fiscal year – this would resolve the second year problem as well?
      • IF(ISNULL(if((month(MAX(`cc`.`expensed_date`)) > 9),(year(MAX(`cc`.`expensed_date`)) + 1),year(MAX(`cc`.`expensed_date`)))),
        if((month(MAX(`cc`.`obligation_date`)) > 9),(year(MAX(`cc`.`obligation_date`)) + 1),year(MAX(`cc`.`obligation_date`))),
        if((month(MAX(`cc`.`expensed_date`)) > 9),(year(MAX(`cc`.`expensed_date`)) + 1),year(MAX(`cc`.`expensed_date`)))) AS fiscal_year,
  • Funding Description in FA is disabled – fixed
  • new Query for Lenny/Chris – will try to implement it on-site tomorrow morning
    • Capability, Budget Center, Req ID, Req Title, Req Funded Amount, Current Month Outlay Plan, Current Month PM Actuals, Difference (in $) between Outlay Plan and PM Actuals, Difference (in %) between Outlay Plan and PM Actuals

Phil 2.26.14

8:30 – 4:30 SR

  • Lovely traffic today. Took twice as long to get to work. I think I averaged a hair over 20 mph.
  • Backups
  • Looks like I missed registering a site. Fixed.
  • FF 21 and IE 8 are displaying the JavaScript test improperly. Pretty sure I tested this last night on my home machines and all was OK. Yep, just checked on IF, FF, and Chrome at work and they all behave.
  • It’s possible that this is a result of the stylesheet not working correctly. The buttons don’t look right.
  • And it’s ridiculously slow in IE.  looking for some drawing/animation libraries. These all work in IE 8 with reasonable performance

Bad Stylesheet?

  • So the question is, can this be fixed? I’m going to try to bring up a new instance of YUI3 and point at it explicitly. Regardless, let’s see if I can get the rest of all these pieces working together.
  • Working on improving performance. Got the Math.sqrt out of all the force calculations. Now I need to see if that helped. I fear that mostly it’s drawing speed.
  • Something to test

Dong Shin 02.26.2014

  • snow! again! working at home
  • added where config to queryBuilderConfig.xml and modified to QueryBuilder code to read the config….
  • added currency fields in queryBuilderConfig.xml
  • set query name when saving existing query in QueryBuilder
  • changed Spark DataGrid to Advanced DataGrid in pre-processing to support multi-columns sorting
  • changed Col Pref window to ResizableWindow
  • added multiple selection support in Claimed/Unclaimed contracts

Phil 2.25.14

8:00 – 5:00 SR

  • Backups
  • Deployed some new SQL. Lenny found a couple of bugs, but not too bad. Dong has notes, but he went home because it’s his birthday. Some people. Jeez.
  • More inevitable server paperwork.
  • JavaScript
    • You would think that drawing and clearing lines would be easy. Nope. For some reason, YUI Path.clear() does not clear in all conditions. If I draw the line on each frame, everything’s fine. If I draw a line occasionally, it stays. I wound up just calling moveTo() if there was no line, which works.
    • Added the ability to anchor a shape. Physics don’t work on it. Also got drag and drop to work with that.
    • Test this

Dong Shin 02.25.2014

  • deployed to new query, query config… missing some details in where clause
  • some notes
    • add saved name when updating a query
    • 2nd year Obligation/Outlays not updating properly
    • bigger col prefs
    • multiple contracts selection in unclaimed/claimed
    • separate pre-processing for FY13/FY14
    • enable multi-column sort in Reqonciler
    • add Expensed Date in Duplicate Expensed Amount > 0 pre-processing query

Phil 2.24.14

8:00 – 4:00 SR

  • Backups
  • Copied all the webapps and data from the production machine to the test machine.
  • More server paperwork.
  • Javascript
    • Make the controls a pop-up panel. Got stuck on getting a button to work in the graphics container. It looks like all mouse events are being trapped. Was able to add the button to a new wrapper around the control container. Using that I’m able to fade the controls in and out.
    • Build a multi-part network for more testing will all connections.
    • Progress for today

Dong Shin 02.21.2014

  • working on the query for Lenny/Chris
    • capability AS Capability, bcc.budget_center_name AS ‘Budget Center’, req_id AS ‘Req ID’, req_description AS ‘Req Title’, vrt.req_id_total AS ‘Req Funded Amount’,
      SUM(IF(o.type=’Planned Outlay $:’,month_1,0)) AS ‘Oct 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_2,0)) AS ‘Nov 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_3,0)) AS ‘Dec 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_4,0)) AS ‘Jan 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_5,0)) AS ‘Feb 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_6,0)) AS ‘Mar 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_7,0)) AS ‘Apr 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_8,0)) AS ‘May 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_9,0)) AS ‘Jun 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_10,0)) AS ‘Jul 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_11,0)) AS ‘Aug 14′,
      SUM(IF(o.type=’Planned Outlay $:’,month_12,0)) AS ‘Sep 14’
      WHERE fiscal_year = 2014
      GROUP BY capability, req_id
    • getting the second year will be tricky….