CustomerName used by server for logging MS Azure Insights messages does not support names with e.g. ÆØÅ etc.
The message log will become inefficient over time. Please ensure that every solution has a "Log Maintenance" data flow scheduled to remove/backup historic data from the message log.
PS 6.4 server builds before 1. Oct. 2018: Servers Application Insights logging of heartbeat will not run due to wrong configuration settings. Change from ServerInsightKey to ApplicationInsightKey in Profitbase.Server.exe.config.
Parent/Child Sub Dimension should not be reduced in module. Do not check for reduce in Module Group|Dimension Settings. Instead use the Module DWH command 'Full Reduce scan on Module Fact'.
Scheduled jobs are not copied from one solution to another. When you upgrade a PS5x to PS6 solution, or restore a solution database to new name, check and add job schedules in the "Schedule Management" part of the application.
If you keep Profitbase Studio client open over longer periods, connection failures can occur (MS EF model provider errors i.e. "The ObjectContext instance has been disposed and can no longer be used..."). Workarounds: Try switch of content from navigator, reopen the solution or restart Studio. This has been fixed in PS6.4, but still can occur.
Concurrency is not fully supported. We are working with this for version PS6.3. Take care when working on same content and re-open solution before doing configuration changes and data updates. Upgrade to PS6.4 is recommended.
Scheduled server jobs do not automatically update status in GUI of clients. Re-open solution to get updated status from database. Upgrade to PS6.4 is recommended.
Complex and large XML and/or JSON Files can have some issues being read directly. In these cases, the user must specify a custom PowerShell source script.
If Profitbase Studio Server 6 log errors in the Event log, fails to start etc., try changing the user that the service runs under. It must be a domain user with 'full' access to the MS SQL Server (dbo access to server, solution and DW databases).
Upgrade issues exist for reserved Data Types and Name Definitions. Check for reserved names here, and take actions before/after upgrade to ensure correct types. From PS6.2 (January release), upgrade is fixed but one should still check.
Also upgrade turns Member Scan on in modules (except for ReportID and TimeFunctionID). Member Scan inserts *NULL and should be removed if e.g. measure group binding is a calculated dimension column.
If you in one solution has opened a module definition, and then switch to another module definition in a other solution, you get the error message 'An error occurred while checking dim links vs. usage'. Click ok and ignore this message.
If Profitbase Studio Server reports the following error 'Error loading Command Shell; Could not load file or assembly file...', try to add the following to the Profitbase.Server.exe.config file in install directory (c:\Program Files..):
On activation of Profitbase Studio Server, the active license is not written to the configuration file in the install directory. On restart of the server i will report that it is not activated. Workaround is to manually set the ActiveLicense section in then servers configuration file.
If user/password is used in the SSAS callback connection to the data warehouse, random errors of type 'Error committing changes'/SSAS:'The operation has been cancelled' occurs when running Create/Update commands. We have no solution in Studio and suspect an issue in SSAS and available machine resources. Workaround is to add the SSAS service user to SQL server and use integrated login.
Regular Fiscal calendar does not support any week related attributes and hierarchies. The hierarchies could be enabled in earlier versions of Studio, but these are now removed. Use Fiscal Trade with 445,454,544 syntax to get values in Fiscal week attributes and hierarchies.
'Run as' in Data Flow Steps defines which account the solution database is opened with, but the Solution's data warehouse connection settings are used to run the actual command.
Import of Level Definitions in Dim Tree may result in missing UnaryOperator and MemberFormula columns. Workaround: Use Parent/Child Dim Table definition in Excel Data Source instead.
A database upgrade may fail if the Database Engine Tuning Advisor has been run. If you get the error message 'Error upgrading object: ... with details containing 'SQLException (0x80131904): The statistics '_dta_stat_nnnn_n_n_n' is dependent on column.', delete statistics before you continue the upgrade.
For Profitbase WebPlan using solutions created with Profitbase Studio 6.0, WebPlan expects the obsolete column ModuleTemplateID. A workaround is to add this column. E.g run this SQL statement in Studio's solution database: ALTER TABLE [dbo].[pbModuleDefinition] ADD [ModuleTemplateID] [nvarchar] (100) NULL;
SQL Expression task in data flow context may in rear cases cut valid SQL statements. For example if SQL command contains unstarted end parathesis (")") or the literal string "SolutionID(" exists as part of the SQL command. This is also an issue in 5.x versions of Profitbase Studio.
Example:
insert into [dbo].[_tbl] ([TaskCmdText]) Values ( 'Cmd(PBA50) Type(ExecuteBatch) BatchID(datafornnn24023) SolutionDB *ServerDB,srvdb,pbSol_In_nnn ,*) SolutionID(nnn50)')
resulted in following cut SQL:
insert into [dbo].[_tbl] ([TaskCmdText]) Values ( 'Cmd(PBA50) Type(ExecuteBatch) BatchID(datafornnn24023) SolutionDB *ServerDB,srvdb,pbSol_In_nnn ,*)
Workaround was to replace unstarted ")" with char(41) and " SolutionID" with " S" + "olutionID" like so:
insert into [dbo].[_tbl] ([TaskCmdText]) Values ( 'Cmd(PBA50) Type(ExecuteBatch) BatchID(datafornnn24023) SolutionDB *ServerDB,srvdb,pbSol_In_nnn ,*' + char(41) + ' S' + 'olutionID(nnn50)')
Fixed issues with available updates
For a list of releases and fixed issues, click here. For download page, click here.
Upgrade Data Warehouse dialog introduced default "New naming model" in PS 6.3 Release 8. Up until PS 6.4 Release 2 this is not suggested used because it does not update internal and data warehouse source table SQL's.
Tabular SSAS models have been changed in the RC period. Builds after 24 September 2015 (build 5573), will have a new model and earlier versions may lose content. Also, UI and processing functions were extended / changed in releases of PS6.0 after 11th November 2015.
Calculated Fact Measure BI for module definitions/measure group displays an Aggr.Function dropdown. This fails if the data type of the Name Definition and expression column differs. E.g. if you add Customers = Distinct Count (CustomerID) where Customers is set as integer and CustomerID as nvarchar type, a cast from nvarchar to integer will fail leaving the SQL view un-browsable. This is not supported correctly in either PS5x or PS6.
Module definitions/measure group UI has an issue when a column exists in the source and exists as a Calculated Measure Business Logic column. Either remove column from source or as Business Logic definition in PS 6.0.
"Current partition" functionality does not work correctly in the first release of PS6. The date filters were not set correctly, and cleanup of other partitions had errors.
Removing a data source table column that is part of a multiple column index result in a "DROP COLUMN" error if there is an existing data warehouse table. Workaround is to remove the index definition first and then remove the column afterwards. Fixed in PS 6.1.
Data source tables have access to the Incremental, Transdate and Custom reload options. These reload options does not update NULL values to '*NULL', -1 or '01/01/1900' and empty strings to '*Empty' for dimension ID's. A workaround is to add these value conversions to the column mapping expression for the dimension ID's in question. (Example expression: CASE WHEN CustomerID='' THEN '*Empty' ELSE ISNULL(CustomerID,'*NULL') END).
Note! This is only an issue for tables. If the data source table is generated as a view this will not be an issue. Also, for Dimension ID's defined as a distinct key or a surrogate key this will not be an issue either. If the Dimension ID is not used in either Reduce or member scan this value conversion is by design not applied.
The Process Data Source Table dialog had two issues prior to PS6.0 build 5849;
1. Reload All is used instead of Custom Reload if a data source table has both Incremental and Custom Reload enabled and not "Reload All (Full Reload)" disabled.
2. Reload All is used instead of Reload Days if a data source table has both Custom and Transdate Reload enabled and not "Reload All (Full Reload)" disabled.
Paste or use of Templates loses BI definitions for Module Definitions (Measure groups).
Processing of SSAS Measure Groups (or Cubes) containing Fact Dimensions (Degenerate Dimension), may not give the latest data. In 'Advanced SSAS Commands' you now can select the Fact dimension for processing before processing Measure group/Cube. Alternatively, do not used Fact Dimension due to bad performance etc. Fact Dimensions will be added to the processing list.
Server connection and activation has some issues in both PS52x and PS6. If a server is added, you must click the 'Settings' tab and press 'Ok' to store and activate connection settings. This is not necessary in latest release build.
Fixed Time Dimension issues include AttributeHierarchyEnabled for related attributes and hierarchies, and language texts for Fiscal Day attribute. Also Create/Update in SSAS fixed.
Fixed error in SSAS trace when running Script Extension on Delete and Rebuild SSAS Database.
Fixed Unknown handling settings for Wide Dimensions.
Internal source tables are wrongly interpreted as external source tables when doing initial creation and fill of distinct tables for views. This usually results in error when data source is DB2 or Oracle. Workaround is to select the source tables before running for example "Rebuild Module in data warehouse". The select operation will initialize the internal flag correctly.
Adding modifications from member scan for wide dimensions with different attributes using the same column is fixed.
Fixed saving and added validation of key attribute and attribute relations.
Formatting of Wide Dimension name column was fixed to include correct value if null.
"Rebuild Module in data warehouse" failed if Script Extensions were added below a data source table. Error messages: "Error loading distinct table for [FactTableName]" and "Error processing Module Dimension '[DimensionName]'". Fixed 15th April 2016 (PS6.0 build 5960).
The SSAS Process command in mode 'Process Add' does not work as intended. Incremental processing settings are missing in PS6.0. Fixed in PS6.1 and above.
Auto update of Module Definitions with a single source fails. Should create a single result view but creates only the source view. This is fixed in PS6.2.
Script extensions had a hard coded timeout of 600 seconds (10 minutes). If your script took longer time to execute you could execute the script using the SQL Expression task in the data flow context until an upgrade to version 6.2 was available.
The Delete Filter in a Custom Reload did not support tags. If used anyway; error message might say: "An error occurred while transferring data for 'table'. Index was outside the bounds of the array". Workaround would be to refer to TagValueID field in the tag table (i.e. Delete filter: DatasetID IN (SELECT TagValueID FROM Tag_DATASETS)). From Profitbase Studio version 6.1 there is support for tags in the Delete filter.
Data Source Distinct tables generated in Profitbase Studio 6.0 needs to be regenerated in Profitbase Studio 6.1. If this is not done "Missing column 'Created'" is likely to appear. Regenerating can be done via the Full Reload (Reload All Data) transfer option. Version 6.2 fixed this issue in the upgrade; handling this for the Transdate, Incremental and Custom reload options as well.
The following script can be used if a Full Reload is not a valid option: (execute the script in the data warehouse database, replace "pbSol_60SolutionDatabaseNameGoesHere" with solution database name)
BEGIN
DECLARE @tablename varchar(255), @sqlCommand varchar(1000), @Count int, @LoopCount int
SELECT Identity(int,1,1) ID, valuetable.[ObjectName], valuetable.LastDataChange into #Temp FROM (SELECT [ObjectName], LastDataChange FROM [pbSol_60SolutionDatabaseNameGoesHere].[dbo].[pbSolutionDwTableList] WHERE TableType = 'tableType_DataSource_Distinct') valuetable
SET @Count = (SELECT Count(*) as counter FROM #Temp)
SET @LoopCount = 1
WHILE @LoopCount
BEGIN
SET @tablename = (SELECT TOP 1 [ObjectName] FROM #Temp WHERE ID = @LoopCount)
If Not Exists (SELECT 1 as col1 from sys.columns c inner join sys.tables t on c.object_id = t.object_id WHERE t.name = @tablename and c.name = 'Created')
BEGIN
SET @sqlCommand = 'ALTER TABLE ' + @tablename + ' ADD Created datetime NULL;'
EXEC (@sqlCommand)
SET @sqlCommand = 'UPDATE ' + @tablename + ' SET Created = CAST(''' + (SELECT CONVERT(VARCHAR(24), LastDataChange, 113) from #Temp WHERE ID = @LoopCount) + ''' as datetime)'
EXEC (@sqlCommand)
END
SET @LoopCount = @LoopCount + 1
END
DROP TABLE #Temp
END
Using Copy/Paste on script extensions leaves the newly pasted script in an un-editable state. Workaround is to re-open solution to edit the script or just use New Script and copy/paste the individual settings you want to copy afterwards. Fixed 27th October 2016 (PS6.2 build 2335)
Profitbase Studio version 6.2 introduced an issue concerning the Incremental and Custom reload options in the "Reload Source Data" data flow step/activity GUI. These two reload options are enabled when they should be disabled and enabled when they should be disabled.
Workaround pending the next build of 6.2 containing a fix for this can be to temporarily disable Incremental reload, then go to data flow step and choose the now enabled Incremental reload option, then go back to the data source table to enable Incremental again. Fixed 23rd November 2016 (PS6.2 build 2369)
Copy/Paste can result in duplicate dw object names if two data sources have identically named data source tables. Error message when processing will be: "Error. Name conflict. Table not transferred because object 'nn' already exist. Please go to "Properties" and enter a unique DW Object name."
Workaround pending the next build of 6.2 containing a fix for this can be to process/transfer the identically named data source tables before copying them. Another workaround is doing as the error message suggests: Go to "Properties" and enter a unique DW Object "base table/view name. A third alternative if there are many duplicate names is to re-open the solution and check the "Check for name conflicts in dw database" check box. This option will (after some background processing) bring up a form that allows for viewing and changing all the conflicting names. Fixed 23rd November 2016 (PS6.2 build 2369)
Translations added for Level Texts in Time Dimensions is not used due to an mapping error. Translations is taken from the Name Definitions. The category is 'Time Dimension Attribute Hierarchy'. This is not open for editing. You can open this for editinng by running following sql command in the solution database: update pbNameDefinitionCategory set AllowCustUpd=1 where CategoryID=63. Fixed 27th October 2016 (PS6.2 build 2369)
When adding a new Fact table to a model definition, the name of the generated source view may become to long for the data model. Following error are the given: 'Error saving: An error occurred while updating the entries...' and details like 'System.Exception: Error occurred saving meta objects: pbModuleFactTables....String or binary data would be truncated..'.
Upgrade to latest release (from 6.2) and upgrade solution database. An alternative is to run the following sql command on the solution database: ALTER TABLE [dbo].[pbModuleFactTables] ALTER COLUMN[CubeTableName] [nvarchar](250) NULL;
Sub dimensions with *NULL or *EMPTY from fact may give errors processing SSAS databases. Build PS6.2 build 2415 includes fix for this. As an alternative, you can check these items in the sub dimension mapping.
Process Parent/Child dimension may fail with error message "Error making Dimension objects" with error detail message: "Ex=Incorrect syntax near the keyword 'AS'., Last sql/operation was: insert". The problem is that the LevelNum field for an unknown reason is not filled with a value. Workaround: Enter a comment in the Level definiton, hit Save and hit Process. This was fixed in PS 6.2 build 2304. (Fix 2283 Upgrade/Dimension: Added checks for null and duplicates. PK added. Sub dimension user selection tables fixed.)
Parent/Child tables for Excel and File Data Sources did not support Table Filter when processing in data flow and server context. This was fixed in the most recent update of Profitbase Studio 6.2 (available for public download in mid-December 2016). Workaround pending update was to perform the processing from the data source table GUI.
Using 'Split into many' functionality in Solution Partitions GUI may result in suggested values that is not the wanted values. Workaround: The data grid in the 'Partition Operation' dialog allows for editing, so the user can adjust the values manually. Build PS6.2 build 2473 includes fix for this.
The Data Source connector "XML Files via PowerShell" have issues when xml file is referred directly in "File name" field. It is recommended that the user specify a custom PowerShell source script instead.
Build PS6.2 build 2473 includes improvements and bug fixes to the "XML Files via PowerShell" data source connector.
Two examples:
1. XMLReader will be used instead of XMLDocument.Load() (no longer loading the entire XML file into memory; thereby avoiding potentially huge memory consumption).
2. The last row of XML data is not omitted as it usually is in the 6.2 version.
These are the two main issues of the 6.2 XML dsc-implementation.
Scheduled dataflows may fail with message containing 'noncritical error' etc. PS uses SQL Agent for scheduling, and this calls the stored procedure CmdSrvTask_ExecDF in the PBMSSrvDBV6. This SP checks the task queue that the PB server works on. It also checks that the PS server is alive, and this check may fail due to load. From latest PS6.2 the alive flag is updated each 30 seconds (was 1 min), and the check in sp was 2 min. If you create a new server database this is changed to 5 min. For existing you can alter the sp and change the line
IF DATEDIFF(second,@lastIsAliveDate,GETDATE()) >= 120 -- to --> IF DATEDIFF(second,@lastIsAliveDate,GETDATE()) >= 300
Auto Process of Measure Groups was introduced in PS6.2. It will fail for builds before March 2017.