-------------------------------- | Data-Basics, Inc. | | DBAnalytics (IIS) | | Release Notes | -------------------------------- 1.3.001.016 (2020-09-09) • Made a change to the logic of the Restore Analytic function so it always restores to the active tab. • Changed the Billing Invoice PMW function to allow the Next Invoice Amount to be directly editable. • Changed how pivot drilldowns work so that they use the table state from the parent before it was pivoted. Made the filtered data persist through a refresh. 1.3.001.015 (2020-08-20) • Fixed a bug in the executive payroll logic that impacted query security (SAMPro). 1.3.001.014 (2020-08-13) • Fixed a bug where numeric columns in a pivot table would cause on error on export. • Fixed a bug where notes that were created in DBAnalytics but edited in SAMPro could no longer be edited in DBAnalytics. • Removed misleading text from the SOV Import dialog. 1.3.001.013 (2020-07-28) • Added an optional filter property for Executive Payroll (FilterExecutivePayroll = true) to apply to filter out executive payroll payroll periods or employees. • Improved performance of subfilters for standard analytics and advanced analytics. • Corrected COR Report filenames to prevent situations where they were needed to rename to open • Set Web Viewable Flag for documents uploaded through DBAnalytics, FMAnywhere, CRM, and Dispatch Board to true (will need SAMPro 054 to function) • Fixed an issue with "Select/Deselect All" Buttons appearing in incorrect locations • Fixed an issue where updating some records was not writing to the record change log • Corrected an issue where FMAnywhere custom images by web profile would not display 1.3.001.012 (2020-04-27) • Updated SAMProNetFramework to version 52. • Fixed a bug where clicking the logout button or refreshing the page would not log users out. • Updated the DBAnalytics Help to include Project Managers Workbench. • Fixed a bug where using the range "_" token in a filter could malfunction due to a parameter mismatch. • Added the ability to override the default column name from SAMPro in the subfilter.json file. • Fixed a bug where users couldn't log in if they had access to more list analytics than chart and table analytics. • Added two news statuses (Over budget, manager review) to the Manager's Dispatch board. • Made a change to allow users to Add a Sum/Avg/Min/Max/Count to their tables using the Column Edit Dialog (Right click on column header; previously used to rename columns.) • Fixed a bug where the display of token value replacement for variables and settings would not update if the analytic data did not change. • Added new subfilters/fixed typos 1.3.001.011 (2020-03-31) • Fixed a bug where copy SOV items from another Job was not working. • Fixed a bug where deleting all the SOV items was not working correctly. • Made a change to improve the visibility of the Show/Hide Columns selector in Tables by breaking it into multiple columns. • Fixed a bug where negative dispatch board IDs were appearing in the Dispatch Board List. • Updated the DBAnalytics Help. 1.3.001.010 (2020-01-31) • Added new subfilters/fixed typos • Updated SAMProNetFramework to 051. • Fixed issue with the Job Forecasting Labor Cost burden where the burden was being applied twice when applicable. 1.3.001.009 • Changed the billing invoices feature of PMW to include the retainage percent and stored materials • Fixed a bug in FMAnywhere where an error was thrown when CRLF (new lines) were used. • Changed FMAnywhere New Site Service Request to fix Service Category and Work Code being swapped; and added the Web User Id to the email. • Added a configurable auto-scroll mode to cycle through all tab groups and tabs on a timer. • Added a new registry called ConnectionTimeoutPolicy [number of hours] that allows overriding the default account timeout (12 hours of inactivity now, up from 8 hours of inactivity). This may need to be adjusted with the autoscroll to make a session last over a long weekend. • Fixed a bug where table column filters would not be reapplied in certain cases for drilldowns. • Fixed a bug where the MENU context button was editable. • Fixed a bug where the Importing of Tab Templates would only work if the DBAnalytics IIS folder was on the C drive. • Fixed a bug with the mobile Pivot tables where data would be hidden and horizontal scrolling was disabled. • Added mobile-web-app-capable meta tag to allow DBAnalyticsMobile and FMAnywhereMobile to be saved to the home screen and start in fullscreen app mode. • Added new subfilters/fixed typos 1.3.001.008 (skipped) 1.3.001.007 • Fixed the view all documents and pivot drilldowns that was broken by the Compression Change • Fixed FMAnywhere mobile that was not working due to missing file/bad link in require js • Add a Global filter override registry that sets the overall usename setting for every filter. (globalfilterusename=true) • Fixed the subfilter defaults replacement not accepting blank values. • Made a change to the underlying Token Replacement function that is used extensively. Large improvements in speed across the board, with the biggest obseverved changes being when a GenericTable has a lot of columns, and when a KPI has a lot of subfilters in the settings page. • Fixed an error where KPIs that use the same Filter columnname would not execute when resolving parameters • Add a link to the release notes in the version number for the help and about pages 1.3.001.006 • Change the LZString compression algorithm to be more effective (faster, better compression) • Remove the config setting that was making request run through the ASP Session pipeline, effectively making DBAnalytics synchronous. • Changed how the Ajax Request queue works so that requests cannot be sent again until they complete, instead of being able to be queued again while in progress. • Extended the DBAnalytics registry (sys-dbanalytics) to support the full range of branch, security, user, and group overrides that SAMPro supports. • Changed how the WBS configurator Reimport from JCH works, so that lines that are separate in jchstry are no longer combined if they match on all factors. • Changed the WBS Configurator to mark all lines that match cost code and cost category combinations as 'Changed' when a line is deleted or changed. Combined with an upcoming fix to SAMPro, this will fix an issue where budget lines were being erroneously deleted. • Fixed the Iframe popup windows that would not always refresh the underlying analytic on widow close. • Removed the empty column A from the xlsx/csv export for GenericTables. • Fixed subfilters. 1.3.001.005 • Changed how the column rename feature works. Previously, spaces from SQL or SAMPro column definitions would be removed. Now, spaces will be retained. • Added the menucalculation feature to @Insert@ and @ViewAllDocuments@ properties to allow conditionally hiding the buttons. • Fixed bug where custom page titles would not be set in FMAnywhere. • Added a confirm prompt to the ‘Apply SOV’ button in the WBS Configurator • Added new subfilters 1.3.001.004 • Fixed the disable widget data caching config setting. • Added a config setting that allows disabling the data compression. • Changed how maintenance functions run, to be on a timer every few minutes instead of checking after each login whether cleanup should happen (was delaying responses). • Fixed DBA Calendar and Pivot drilldowns not working with compression changes. 1.3.001.003 • Added the ability to unshare shared dispatch boards. • Fixed pivot drilldowns. • Added the ability for users to change their email address and have them fill in an email before emailing converted DBRs. • Fixed a bug with the modern theme where the second row of tabs would not display • Added new subfilters/fixed typos 1.3.001.002 • Fixed Web Help reference path • Added new subfilters/fixed typos • Fixed Dispatcher comments in Managers dispatch board being undefined • Added override property for filters that allow using the specific name in a filter instead of the name resolved from the columnname; (usename=true) • Fixed bug where unavailable tech time in the Managers Dispatch Board would not show. • Fixed bug where the View All Documents feature was not working with the Data Compression method. 1.3.001.001 • Replaced SQL Server data cache with IIS noSQL data cache for performance improvements and reduced sql server data throughput. • Created new External API (getKPIData/postKPIData) (REST/SOAP) that works by assigning new API tokens to users and allowing access to KPI queries on a per-user basis. • Removed decimal points from display for charts. • Added the Forecast Under Actual feature as the new standard for the Job Forecasting allowing forecasts under actual cost. • Fixed bug where the WBS Import tool was case sensitive for Discipline, skill, etc. • Implemented a data compression technique for KPI data transfer, reducing the size of messages. • Fixed a bug where renamed column headers were being calculated twice, slowing down table creation. • Fixed a bug where restored widgets would be matched up with their cached data instead of refreshed. • Added a way to specify subfilter default values on a per-KPI basis. • Fixed a bug where GenericCharts would not allow the opening of the settings page if data has not returned. • Created a way to disable pinning of a drilldown. • Fixed a bug where the reorder plugin was performing a full redraw instead of a partial page redraw, slowing down table creation. • Fixed a bug where local column filtering on a large dataset was very delayed by adding a slight delay to see if more letters are being typed before calculating. • Fixed a bug where the ViewEntityGroup filter did not properly support entityGroup Like filter. • Fixed a bug where a blank GL Entity Id would cause an error. • Changed the default note access level from private to public. • Fixed a bug where ASP Controls was not always calling clear session on close, resulting in some data being preserved instead of overwritten. • Changed the WBS Configurator to always load from JCH, because having a blank page was confusing users as to what ADD/Replace in the import budget did. • Added new subfilters/fixed typos 1.2.007.005 • Fixed a bug where adding a blank sys-security-override value would result in an error • Fixed a bug where integers were not being treated as number in tables (sorting, etc) and would not have commas added in lists. • Fixed the mobile version. (was not loading) • Created a new feature to notify the user when their password is about to expire, and prompt them to change the password when it has expired. • Fixed a bug where the content width was not set in firefox, preventing analytics from rendering. 1.2.007.004 • Fixed a bug where adding a shared list would not render the child list lines. • Changed the datatype of passed string parameters in IIS SQLClient from NVARChar to Varchar. This allows indexes and some sql queries to run much faster. • Fixed a bug where users that were importing tabs would not have the analytics that they do not have access to be removed. (Would get blank boxes, or an error) • Fix a bug where the FirstDayOftheWeek registry was not being used to change the SET DATEFIRST parameter. (Default 1, Monday) 1.2.007.003 • Added a null check to GenericList lines so that it will still display if the result set returns a null value. • Added a new configurable option to turn off the analytic data caching (was causing tempdb issues in a few cases due to a SAMPro bug). • Fixed the Manager's Dispatch Board to still display even when the selected board has no valid techs. • Fixed a bug where the GenericList lines refresh would be triggered multiple times for each refresh. • Fixed a bug where the sys-fmanywhere registry was not correctly being referenced in FMAnywhere. 1.2.007.002 • Fixed bug where Stored Procedures for FMAnywhere (Quote Approval) would not execute properly. • Added sort label to pivot table sorter. • Added new statuses to the Manager's dispatch board. • Fixed bug where users would not be able to unshare their shared analytics. 1.2.007.001 • Added a new Profile menu option that allows the user to change their password in DBAnalytics. • Fixed a bug where selecting a row/column in a GenericTable then clicking the drilldown button would change the results. • Fixed a bug where dates that are converted automatically from the yyyy-mm-ddThh:mm:ss format to the mm/dd/yyyy format would not be properly filtered in a drilldown from a pivot table. • Created a new Include Current option in the datepicker that includes the current time period. • Fixed a bug where the CheckAllTokens feature that is called on every request could create resource conflicts. • Fixed a bug where the querylog output is writing to both the querylog and the regular log. • Created a new SubSelect feature that allows used to specify additional columns to return with the result set. • Fixed a bug where the column name replacement function would not filter out blank values. • Added support for the sys-security-overrides registry that works with intercompany processing. • Fixed a bug where filter tooltips would persist and block drilldowns. • Removed subfilters from FMAnywhere. (could present too much information that should be restricted to FMAnywhere users) • Removed the import/export tabs from FMAnywhere temporarily (will be restored in a later version). • Fixed filter lookups that used the tablejoin property. 1.2.006.002 • Fixed bug where the COR budget lines would not have 'n/a' defaulted in as the Bill Type Id • Added delete/rename for Tab Templates when DBAnalyticsAdmin is enabled. • Fixed bug where subfilter values would not save in tab/ tab group settings • Fixed bug where subfilter lookups in tab/tab group settings would not work. 1.2.006.001 • Created a new type of analytic filter called subfilters. Subfilters are automatically appended to the Filter section of the analytic settings based on the inclusion of the _id field of a table (jb.jb_id for jb, etc.). They are a static set of predefined optional filters that allow a user to filter to a small subset of records in a table using details that are included in the table or sibling or parent tables. The filtered rows are automatically applied to the KPI definition query. The initial set of subfilters include 168 subfilters across 15 tables (clnt, clntordr, clntste, emplye, glaccnt, glentty, glhstry, invcemster, jb, pyrllprd, pytype, tchncn, vndr, vndrinvce, wrkordr) • Created a new ViewEntityGroups user registry that can be used to restrict KPIs that use the @GLEntityGroupId@ special variable to a preselected number of GL Entity Groups. This registry can be written in a way consistent with DBAnalytics/SAMPro filters. • Created a disabled= JavaScript-based conditional that disables an input if the JavaScript snippet evaluates to true. (Can also use static true/false) • Created a new Include Today option for the DateOption picker to allow lastX/nextX date option to go to/from today as an option and resolve an inconsistency between Last1Month and LastMonth. • Created a New Fiscal Year option for the DateOption picker that will offset any year selections to the start of a fiscal year. • Fixed a bug where pivot tables would have multiple groupings for duplicate values with different cases. (ALL vs All) • Fixed a bug where the UploadedFiles directory would not be created before a document is uploaded. • Fixed a bug where the SOVConfigurator would truncate decimal places on document import. • Fixed a bug where Generic Lists would not load if a queryName is not specified. • Fixed a bug where the Analytic header titles would not be updated correctly after the KPI runs. • Fixed a bug where the NextX/LastX Date Options were retrieving the wrong number of periods. • Fixed a bug in the GL Entity Group Id special variable that would not properly translate a blank value to all entities. • Fix for GenericTables with FixedColumns rendering in the wrong place occasionally when switching tabs. • Fix for GenericTables headers breaking when certain html characters (/,\,<,>) are included in a column title. 1.2.005.004 • Fix for Pivot tables not being properly generated when the pivot table had values that spanned multiple rows or columns. • Disabled buttons in the PMW controls after save/post and removed the save confirm after save/post. • Fixed the posting logic for JobForecasting to greatly reduce posting times. • Fixed the value change logic for JobForecasting to greatly reduce the time it takes to change a value. • Changed the default start of the week to Monday. • Fixed the document order for ViewAllDocuments. • Fixed the drilldown level for pinned Drilldowns so that subsequent drilldowns based on the @SelectedCategoryStatic@ and @SelectedSeriesStatic@ function properly. • Fixed the iframe update drilldowns that would not open properly in mobile. • Fix for a missing useSSL AppSetting. 1.2.005.003 • Compressed viewstate for PMW tools to get better load and response times. • Fixed bug where GenericTable aggregates would not work in IE/EDGE. • Fixed concurrency issues with reconnect feature and other shared variables. 1.2.005.002 • Fixed bug where an unattached GenericList line could cause a load error. • Fixed bug where GenericList child lines would be removed on load. • Fixed bug where lists with share subscriptions on would still allow new lines to be added and contents to be filtered. 1.2.005.001 • Added a new feature that allows users to pin a drilldown to their page as a permanent addition. Settings are inherited from the parent and will not be updated from the parent. • Fixed Collection Notes Create to properly use the Collection Note Type. • Fixed the PMW User Controls to retain focus on a data postback (Job Forecasting, Job Budget, Job Change Order Request). Also fixes button clicks that wouldn't register properly. • Fixed an issue where too much data was being sent back and forth during a Job Forecasting postback. Reduced data up to 85% in some cases. This should result in better performance, especially on slower connections. • Fixed a bug where switching tabs too quickly during the initial load could result in blank analytics. • Fixed a bug where the tab/tab group loading progress bar would remain after all analytics had finished loading. • Fixed a memory leak with drilldown dialogs. • Fixed the FMAnywhere profiles to include the loadinglogo.png, and retain a cookie that will change the initial login page even if a profile is not supplied in the URL (cookie is set after initial login). 1.2.004.005 • Fixed Insert buttons in mobile. • Fixed FMAnywhere pivot display bug. • Fixed bug where the mobile content pages for analytics would be too small after returning from a drilldown. • Fixed bug where the Update Iframe drilldowns would not open. • Fixed iOS iframe scrolling bug (would not scroll) • Fixed Mobile datepicker field overlap issues. • Fixed jQuery mobile / jQuery ui load order issue that would lead to inconsistent styling. • Fixed DateOption Custom selection date empty date field issue. • Fixed enable/disable fields in the mobile DateOption. 1.2.004.004 • Fixed Document link being removed when document preview is not available • Fixed table redraw for the ColVis dialog when the columns change visibility. • Fixed the rendering progress bar to no longer stay visible if a large dataset is being retrieved from the server. • Fixed bug where duplicate drilldowns would be created. • Fixed Job COR error messages when job is closed. • Fixed View All Documents returning all documents instead of filtered documents • Fixed bug where the PDF Joiner would not handle iref pdf streams. • Fixed bug where the Company ID filter was not excluding the 0 scrty rn. • Added a query Logging feature that logs long-running queries. (default 30s, change with sqlQueryLogThreshold web.config, logged to DBAnalyticsQueryLog.log) • Added a query Comment to the top of a query so it can be identified in query tracing. • Added ARITHABORT = ON to queries to match execution plans with SSMS. • Fixed bug where queries would not re-run when the company id is changed. • Added a sort to the View All Documents so that the documents are ordered based on the order of the parent. • Fixed the WBS Configurator so having no entries in the WBS Contingency table still allows entry. • Fixed the SOV Configurator so that having no billing items does not break the display 1.2.004.003 • Fixed bug where list parents and list lines would not be assigned a tabId/tabNumber upon being created. • Fixed bug where build-in queries for running DBAnalytics could be lost due to Shared memory being reset and putting DBAnalytics into an unrecoverable state. • Fixed bug where ColFixed and ColHide would not work well together. Replaced checkboxes with a number counter that shows the number of columns to fix. • Added new Equal and Not Equal operators for the table search. This requires numbers in the column and numbers in the search. [=0], [!=0] • Fixed bug where pivot drilldowns would not filter the original result set based on the items clicked in the pivot row/slice. • Fixed bug where table aggregates in fixed columns would not be displayed or updated. • Fixed bug where the WBSConfigurator and BillingInput would not function properly if an email was not supplied. • Fixed bug with the CostCodeStatus rows where the background color would make the text unreadable. • Added support for Change Orders for the SOVConfigurator. A Change Order checkbox is displayed that can be changed when a billing item is first created. Change Order amounts and other fields can be updated using the import process. New Change Orders can be created with the Import process. • Added a new reconnect feature to transparently log users back in if the stored SAMProDB sessions are lost for any reason. • Fixed bug in JobForecasting where having more than 1000 lines could cause a SQL error. • Fixed bug in JobForecasting where the Forecast Under Actual amount would be reset upon reload after a save. (USE only) • Added print button for the BillingInput Control. • Fixed bug where sharing a dispatch board would not share all of the settings or share old settings. • Fixed bug where incomplete registry entries in could cause the SOVConfigurator to not load. • Fixed bug where a blank value in the Table Aggregate functions could cause a table not to load. • Fixed Document viewer to give the correct file name when getting an error, to handle streaming read-only files properly, to show images in the browser, to resize properly when the number of items changes. • Added lookup=disabled for filters. 1.2.004.002 • Fixed a bug where mobile iframe drilldowns bring up a desktop dialog. • Fixed a bug where using tab column filtering did not recalculate child table aggregates. • Fixed a bug where drilldown-linked numbers are not treated as numbers in the table search. • Fixed a bug where the Manager's Dispatch Board login page did not work. 1.2.004.001 • Added the ability to export and import tab/tab group templates that contain all the widgets and tabs. • Added the ability to share analytics to a specified user. This section will show up in the "***Shared to Me ***" section at the top of the shared part of the add analytics dialog. Users not shared to will not see the analytic. • Fixed an issue with Pivot tables and large datasets where many hidden checkboxes for filters were being created. This resulted in a very large performance increase for pivoted tables. (75-90% memory reduction and 600-1000% increased rendering speed observed) • Added a delayed rendering mechanism to DBAnalytics. Tabs will not render until clicked. This allows large tables and pivoted tables to be in the background but not be rendered until needed. Refreshing of data will be delayed until a tab is clicked. • Fixed bug where Column Rename and Column Fixed would not be preserved through save. • Fixed bug where turning on application tracing in IIS could prevent error messages for the WBS Configurator Upload from showing. • Changed the upload feature in the SOV Configurator so uploaded with existing IDs update the existing items instead of creating duplicates. • Fixed Column Reordering so that the scrollbar moves to the right or left when dragging columns on tables with many columns. • Added @TableCalc@ feature to complement @TableSum@, @TableAvg@, @TableMin@, @TableMax@, @TableCount@. Javascript calculations can be performed using the other aggregate functions. Exs: calculation=tableSum('Col1')/tableSum('Col2'); calculation=(tableSum('Col1')+tableAvg('Col2'))/(tableMin('Col3') * tableCount()) • Added automatic rendering feature that changes SQL Date Types to 'MM/DD/YYYY' format. • Added the ability to share dispatch boards. • Changed the Manage Dispatch Boards dialog to be more usable. Each item now has an Open, Edit, Delete, Share button and editing will edit all fields at once. Pressing the Save button will save. • Added Select All/Select None buttons to the View Documents dialog for selecting/deselecting all the filtered items for the multi document zip/pdf functions. • Added optional sqlTimeout parameter to the web.config that allows extending the sqlTimeout for queries from the default 300 seconds. • Fixed bug where duplicate file names in a zip file for the multi document zip feature would cause nothing to be returned. Duplicate file is renamed. • Fixed bug where the transaction isolation level for queries would not always be set to READ UNCOMMITTED. This could cause database locking and slowdowns. • Added exception handling for the update table row function. Error messages now provided to users. • Added code to clear uploaded files from the server directory after a week. • Fixed bug where duplicate filter column names would cause an error. • Fixed bug where the automatic column renaming feature would return a blank value. • Added a Column Width attribute that is available after right clicking a column header. Accepts em, ex, %, px, cm, mm, in, pt, pc length units (Numbers without units are converted to pixels). This will adjust the column to be the specified size (table minimums and maximums can override the specified values) • Added Include Past and Include Future checkboxes to the date options. These take the date option and override either the start date or the end date or both. • Rewrote PDFJoiner.Net to use PdfSharp. • Added error notifications for view documents. • Added highlight on open when share subscription is on and the settings page is opened. • Added highlight for drilldown dialog open. • Fixed bug where shared analytics would not change when the search bar was used. • Fixed bug where @ViewAllDocuments@ feature would incorrectly leave out documents attached to changed journal transactions. • Fixed bug where filters, settings, and variable token names would be case sensitive when being replaced with defaults during a drilldown. • Added backend code that restricts filter lookups based on security Id. • Fixed bug where the security id string would contain duplicate data. • Job Progress performance fixes (query reduction). • Fixed bug where drilldown hyperlinks in cells would not work when a table was reordered. • Fixed bug where clicking on a row in a table that filters to that item on click could use the wrong column when filtering (resulting in no data being displayed). • Fixed bug where analytics could be resized above the top of the tab pane. • Fixed bug where the Column Fixed property changes would be overwritten by the value in the KPI Definition on load. • Fixed bug where range filtering for filters ( _ ) was not working. • Updated the dispatch board to 04.002.0015. Added sort by Tech ID and fixed a display bug with time slots smaller than 15 minutes. 1.2.003.010 • Fix bug where fixed columns could not be removed in drilldowns. • Added @DrilldownName@ and @DrilldownId@ tokens that correspond to the name and id of the clicked drilldown. These tokens are set to an empty string in a top-level KPI. • Fixed bug where filter lookups would not return values on mobile. • Fixed bug where already selected filter values would not be highlighted in the filter lookups. • Implemented pagination for Job Forecasting. • Added @SelectedCategoryStatic@ and @SelectedSeriesStatic@ that correspond to the value of each in the first drilldown from a chart. These tokens are set to an empty string in a top-level KPI. • Fix Company Id selectors when Security Ids are also present. • Added new charttitle and chartsubtitle properties available for @Drilldown@. Allow overriding the subsequent drilldowns chart title and chart subtitle. • Fixed bug where commas in the data values for a pivoted or inverted data table caused an execution error. • Added new tokenreplacement property for @Drilldown@. Allows an override value to be set for tokens upon drilldown. [tokenreplacement=@InvertData@=false;] • Added collectionnotes type for @Drilldown@ that allows adding new collection notes (from invcemstr) or viewing existing notes (from clnt). • Added new 'modern' dashboard theme. • Added check to prevent read-only users from creating notes, documents, or editing or inserting data rows from DBAnalytics. • Changed how Job Forecasting works to allow multiple users to edit simultaneously. Any conflicts will be identified and the user will have to resolve. The reviewed flag is now preserved through saves. • Fixed table state so that drilldown states are preserved on a per-rn basis. • Add new 'Advanced Analytic' picker for Fact/Summary based KPIs. • Fix Reset Defaults for table state so that descendant table state is also cleared. • Fix custom favicons for login page. • Fix document download for FMAnywhere. • Change Zip file download for documents to use original file name. • Fix stored Procedure execution (for FMAnywhere quotes). • Fix updatetablerow function for insert/update statements. 1.2.003.009 • Fix hide legend series for category • Fix single click through drilldowns for charts that use a menucalculation • Change WBS Configurator delete function to show deleted rows • Add ability to have multiple @insert@ statements • Add category to upload documents • Add service compute check for Billing Input • Fix edit mode for JobChangeOrderRequest editor • Fix columnname replacement for search fields • Fix widgets to take the database widget id on load. • Change mail drilldown to allow blank address • Fix datepicker dialog for mobile • Fix company select bug on kpi reset • Fix instances where connections to the database could be left open on error • Changed @PivotData@ function to allow multiple series, categories, and data points. • Modified COR Editor to allow free editing of amount and cost when no budget lines are added. • Created new Job Cost Code Status Editor to allow the editing of date completed and estimated start and end dates. • Added email notification to the Billing Progress Input Editor using biEmailTo config setting. Modified WBS Configurator to use wbsEmailTo config setting. • Fixed visual line bug with SOV Configurator line color. • Fixed bug with opening SAMPro Viewer from DBAnalytics on an HTTPS connection. • Modified drilldowns to allow multiple of the same value= property. • Fixed Editing notes. • Removed preview for tables. • Fixed a bug where pivoted tables would not be properly shown on initial load. • Fixed a bug where numbers would not be sorted correctly when pivot table columns are clicked. • Fixed a bug where the FMAnywhere download viewers would not work correctly. • Fixed a bug where inline document downloads would sometimes fail. • Added a CSV download option to pivot tables. • Changed the CRMAnywhere analytics from refreshing all CRM analytics when a dialog closes to refreshing only the originating analytic. 1.2.003.008 • Fixed bug where only 1 analytic could be shared. • Fixed bug where filter lookup where clause wasn’t always applied. • Fixed bug where the default database column names would not always be replaced in the GenericTable column headers. • Fixed bug where GenericTable formatting could be removed on reload. • Fixed bug where single list lookup for filters was allowing more than one selection. • Created new ‘validateGreaterThanEqual’ property for inputs that allows greater than (or equal) validation in update/insert forms. • Fixed bug where dispatch boards would not open automatically. • Renamed Billable Cost to Revenue in Job Editors. • Removed Change Orders from the SOV Configurator editor. • Fixed bug where Job Progress would not be able to post. 1.2.003.007 • Fix for truncating above the thousands place in fixed decimal place formatting • Fix @SecurityID@ token • Added @aspform@ token value for aspdrilldown types • Fixed dispatch boards edits not updating in DBAnalytics • Fix for column visibility and col reorder state being overwritten on a sql column change • Added @sortable@ token that can be set to true or false to remove the ability to sort columns in tables • Fixed the placeholder text in search boxes being incorrect when columns are renamed • Fixed incorrect formatting (drilldown links missing, commas missing, button image missing) when a column is reordered • Fixed SOVConfigurator so that new Bis that are just created can be deleted after save without closing the viewer • Fixed BillingInput so that the status in the job is set to ‘PM review’ after any changes are made but before submit. • Fixed Analytics sharing so that more than once per type per user is supported. • Made using the aspdrilldown dummy KPIs optional. Not having those KPIs and User Functions will allow all users access. 1.2.003.006 • Change Order Requests are now excluded from the SOV Configurator and Billing Invoices. • Fixed Billing Invoices to get the correct contract amount. Fixing the error with it only being able to be set to 99.9% complete. • The Editors linked in the Job Editors menu now have KPIs that create User Groups and Functions that must be assigned, giving the ability to restrict who has access to each editor. By default, they are only assigned to user group ‘All’. The names of the KPI/function and what it displays as in the List are below: o Job Forecasting – JobProgress o Billing Invoices – BillingInput o SOV Configurator – SOV Configuration o WBS Configurator – WBS Configuration o Job Budget – Job Budget o Create Change Order Request / Update Change Order Request – JobChangeOrderRequest 1.2.003.005 (skipped) 1.2.003.004 • GenericList refresh bug • GenericList text position bug (now left justified) • Download links broken • User filters (PMID, sales rep id, etc.) broken • Analytics created in mobile render in wrong location 1.2.003.003 • Job Forecasting has Cash Position without Retention and Actual Cash Position added. • Job List has Cash Position without Retention and Actual Cash Position added. 1.2.003.002 • Fixed bug with BillingInput where the forecasted contract amount would be improperly calculated. • Fixed Inventory Lookup for JobBudget/JobChangeOrderRequest to reduce slowdowns. Added additional inventory data. • Added JobProgress previous forecasts lookup. Changed number formatting in JobProgress. • Added OKtoBill, FixedFee,GMP?,Taxable?, and Allow Extras flags to the SOVCOnfigurator. • Added the ability to upload billing items to the SOVConfigurator. • Added ability to set the billing item in the WBSConfigurator upload. • Modernized DBAnalytics appearance. Added new theme (web). • Added @HideLegendSeries@ property that allows for the hiding of the chart legend in the settings screen. • Added @colrename@ feature to allow users to rename columns dynamically. Can right click on header to rename. • Added @colfixed@ feature to allow users to freeze columns when scrolling. Can right click on header of the leftmost column to check the fixed box. • FMAnywhere mobile version. • Added check for widget data expiration every 30 minutes. 1.2.003.001 • Excludes COR values that have been attached to COs from the Forecasting tool calculations. • Fixed Cash Position calculation in the Forecasting tool. • Html5 export options for tables to fix chrome removing flash export options. 1.2.002.002 • Fixed bug with importing xlsx files in the SOVConfigurator and the WBSConfigurator. 1.2.002.001 • Fixed bug with the BillingInput where null values in Job Cost History could cause billing items not to show up. • Fixed bug with the SOVConfigurator where new billing items created would not have the contract amount total filled in. 1.2.001.003 • Better logging features. Logs will go to two locations. Errors and warnings will go to a text log file located in the inetpub/wwwroot folder on the server. Errors will be published to the Event Log for Databasics. • Changed drilldowns so that tokens can be used in drilldown names. One example is adding the Job Id to the Invoice Approval drilldown in the Job List. • Updated drilldown menu and other menus to a more modern look. 1.2.001.002 (skipped) 1.2.001.001 • Added menucalculation feature for drilldowns that allows drilldown visibility to be determined based on a snippet of JavaScript code. • Added feature that allows DBAnalytics to replace column names based on the DBDefinition table and custom fields table. (jb_id becomes JobId, jbcstcdelvl1_id becomes Building) • Fixed bug with refreshonload that prevented the refreshonload logic from properly being set to false. • Fixed bug where the yAxis2Title feature was not properly set. • Added CSV support to the WBSConfigurator. • Fixed error catching for WBSConfigurator. • Added Custom label support for the WBSConfigurator. • Added default blank @SelectedSeries@ and @SelectedCategory@. • Added share date to add shared analytic screen. • Added cleartablestate variable/filter option that will destroy the table state when the value is changed. • Fixed GenericList drilldowns. • Added @UserId@ to url string output tokens. 1.1.001p16.4 Java ~= 1.1.001p16.13 IIS