Announcement
ABCFeatured Content
Recent Activity
Issue Loading multiple CSV files into custom table using LoadCustomTableUsingDelimitedFile
Hello Fellow OneStream team - I have multiple csv file in a file share folder, using BRApi.Utilities.LoadCustomTableUsingDelimitedFile to do the job, but it's loading only single csv file into the custom table. Below is extender BR , not sure what am I missing in the For loop, guidance is appreciated. Namespace OneStream.BusinessRule.Extender.Load_Table_Data Public Class MainClass Public Function Main(ByVal si As SessionInfo, ByVal globals As BRGlobals, ByVal api As Object, ByVal args As ExtenderArgs) As Object Try Select Case args.FunctionType Case Is = ExtenderFunctionType.Unknown 'Select Load options Dim loadMethod As String = "Replace" '<-- Select file load method (Replace, Merge) Dim dbLocation As String = "App" '<-- Specify db type Dim tableName As String = "XFC_OStoSF_BudgetData" '<-- Specify table name to load Dim blnSkipHeader As Boolean = True '<-- Specify if the first row should be skipped (True/False) Dim configSettings As AppServerConfigSettings = AppServerConfig.GetSettings(si) 'Note: file path must be accessible from all application servers Dim xfolderPath As String = FileShareFolderHelper.GetDataManagementExportUsernameFolderForApp(si,True, configsettings.fileShareRootFolder,si.AppToken.AppName) & "\20251014" ' Dim filesToLoad As String = "*_CubeData.csv" Dim fileList = System.IO.Directory.GetFiles(xfolderPath, filesToLoad) ' 'Get list of files to copy For Each file As String In fileList 'Get the file name Dim fileName As String = file.Substring(xfolderPath.Length + 1) BRApi.ErrorLog.LogMessage(si, "FileName:" & fileName) ' Dim fileList = System.IO.Directory.GetFiles() For Each fName As String In fileName 'Define columns that are in the table (this must match the fields in the deminted file) 'Update the fields with the column names/types to match the table being loaded Dim fieldTokens As New List(Of String) fieldTokens.Add("xfText#:[Cube]") fieldTokens.Add("xfText#:[Entity]::NewGuid") fieldTokens.Add("xfText#:[Parent]") fieldTokens.Add("xfText#:[Cons]") fieldTokens.Add("xfText#:[Scenario]") fieldTokens.Add("xfText#:[Time]") fieldTokens.Add("xfText#:[View]") fieldTokens.Add("xfText#:[Account]") fieldTokens.Add("xfText#:[Flow]") fieldTokens.Add("xfText#:[Origin]") fieldTokens.Add("xfText#:[IC]") fieldTokens.Add("xfText#:[UD1]") fieldTokens.Add("xfText#:[UD2]") fieldTokens.Add("xfText#:[UD3]") fieldTokens.Add("xfText#:[UD4]") fieldTokens.Add("xfText#:[UD5]") fieldTokens.Add("xfText#:[UD6]") fieldTokens.Add("xfText#:[UD7]") fieldTokens.Add("xfText#:[UD8]") fieldTokens.Add("xfDec#:[Amount]") fieldTokens.Add("xfText#:[HasData]") fieldTokens.Add("xfText#:[Annotation]") fieldTokens.Add("xfText#:[Assumptions]") fieldTokens.Add("xfText#:[AuditComment]") fieldTokens.Add("xfText#:[Footnote]") fieldTokens.Add("xfText#:[VarianceExplanation]") 'Execute file load ' BRApi.Utilities.LoadCustomTableUsingDelimitedFile(si, SourceDataOriginTypes.FromFileShare, filePath & fileName, Nothing, ",", dbLocation, tableName, loadMethod, fieldTokens, blnSkipHeader) BRApi.Utilities.LoadCustomTableUsingDelimitedFile(si, SourceDataOriginTypes.FromFileShare, xfolderPath & "\" & fileName , Nothing, ",", dbLocation, tableName, loadMethod, fieldTokens, blnSkipHeader) Next Next End Select Return Nothing Catch ex As Exception Throw ErrorHandler.LogWrite(si, New XFException(si, ex)) End Try End Function End Class End Namespacefellow_Ones6 hours agoNew Contributor III8Views0likes1CommentExtract Related components for Dashboard
Hi OneStream experts, Lets say a dashboard has 10 components in DEV and in PROD. Added 11th component in DEV and want to move it to PROD by Extract and Load. Is there any easy way to collect all related components of a dashboard? Manually collecting components is painful. What is the best secured way to collecting objects to move it to PROD? Thanks //Suresh8Views0likes1CommentConnector BR fails to execute successfully
Hello Team, I am currently writing a connector business rule that connects an EDM system to retrieve a file, apply mapping logic, and process the resulting DataTable into ACM. I have successfully implemented the same integration code for several other connectors, all of which are functioning as intended. However, when I attempt to apply the same logic for the Account connector, I encounter the following error: "Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')" I have rewritten the rule twice but have not been able to resolve the issue. Do you have any insights into why this might be occurring?Solvedddgonzalez9 hours agoOneStream Employee35Views0likes3CommentsCentering Dashboard Within a Dashboard
Here's the scenario I'm trying to figure out: My main dashboard has 3 columns which contain 3 different dashboards. The left and right dashboards are just for navigation and have a set width. I want the middle dashboard to be center aligned with the available space left over after the left and right dashboards are populated. Basically I'm trying to design the dashboard so that it's readable from a laptop screen but on a normal monitor I want the main section of the dashboard (the middle) to fill in all of the empty space and center align horizontally. I hope that makes sense? Thanks, Brandonbmcwilliams11 hours agoNew Contributor8Views0likes0CommentsHow to populate a Dashboard List Box referencing WFText4 but the UD dim may vary across Workflows?
As the title suggests, I am trying to populate a dashboard list box that references the Workflow text property regardless of the dimension being used. I'm able to populate the list box using a single dimension, meaning a UD3 member is populated on the workflow's WFText4 property and a member list parameter uses |WFText4| to pull it in. How would I get this to work if the Workflow text value is not always UD3? For Example (both workflows will be using WFText4): Canada Workflow A needs a UD3 Member.Base to populate in the list box when they run the dashboard in their workflow but Canada Workflow B needs a UD6 Member.Base to populate the list box when they run the dashboard in their workflow. Please let me know if I can provide more context.MichaelHahn12 hours agoOneStream Employee25Views0likes3CommentsXFGetCell() + XFGetCell() gives incorrect result
statement 1: gives zero which is correct =VALUE(XFGetCell(TRUE, "CONSO", B19, "", "Local", "ACTUAL", "2025M2", "YTD", D19, "F99", "BeforeAdj", "Top", "U1TOP", "U2TOP", "U3TOP", "U4NONE", "U5TOP", "U6NONE", "U7NONE", "U8NONE")) statement 2 : gives value which is correct =VALUE(XFGetCell(TRUE, "CONSO", B19, "", "Local", "ACTUAL", "2025M2", "YTD", D19, "FNONE", "BeforeAdj", "Top", "U1TOP", "U2TOP", "U3TOP", "U4NONE", "U5TOP", "U6NONE", "U7NONE", "U8NONE")) statement 3: gives incorrect value =VALUE(XFGetCell(TRUE, "CONSO", B19, "", "Local", "ACTUAL", "2025M2", "YTD", D19, "F99", "BeforeAdj", "Top", "U1TOP", "U2TOP", "U3TOP", "U4NONE", "U5TOP", "U6NONE", "U7NONE", "U8NONE"))+VALUE(XFGetCell(TRUE, "CONSO", B19, "", "Local", "ACTUAL", "2025M2", "YTD", D19, "FNONE", "BeforeAdj", "Top", "U1TOP", "U2TOP", "U3TOP", "U4NONE", "U5TOP", "U6NONE", "U7NONE", "U8NONE")) This works correctly in 8.4, but not after upgrading to 9.1suresh_klarna16 hours agoNew Contributor II8Views0likes0CommentsAlways start in first dashboard/Block
Hi I am trying to make a welcome homepage using Genesis. I would like that the user always arrives at the news block (Green with blue underline) when logging into the system. But if the last time the user was in Reporting then the dashboard starts up in reporting. See red box. As I understand it, it is not a possibility. I think an extra setting below in Property Editor: Startpage Yes/NoOle_S_P18 hours agoNew Contributor III30Views0likes1Comment
Getting Started
Learn more about the OneStream Community with the links below.