Followers

Friday, January 13, 2023

OneStream - Application Back up automation

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Imports System

Imports System.Data

Imports System.Data.Common

Imports System.IO

Imports System.Collections.Generic

Imports System.Globalization

Imports System.Linq

Imports Microsoft.VisualBasic

Imports System.Windows.Forms

Imports OneStream.Shared.Common

Imports OneStream.Shared.Wcf

Imports OneStream.Shared.Engine

Imports OneStream.Shared.Database

Imports OneStream.Stage.Engine

Imports OneStream.Stage.Database

Imports OneStream.Finance.Engine

Imports OneStream.Finance.Database


Namespace OneStream.BusinessRule.Extender.XFR_ExportAppMetadata

Public Class MainClass

'------------------------------------------------------------------------------------------------------------

'Reference Code: XFR_ExportAppMetadata

'

'Description: Extender business rule that all application metadata to a zip file for the current application.

' The files are written to the application Data Mgmt Export folder in the file share directory.

'

'Usage: Can be executed from Business Rule editor or run as part of a Data Management sequence.

'

'Created By: <Your name>

'Date Created: <xx-xx-xxxx>

'------------------------------------------------------------------------------------------------------------

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, ExtenderFunctionType.ExecuteDataMgmtBusinessRuleStep

'Prepare the Stage Data Extract File path

Dim configSettings as AppServerConfigSettings = AppServerConfig.GetSettings(si)

Dim folderPath as String = FileShareFolderHelper.GetDataManagementExportUsernameFolderForApp(si, True, configSettings.FileShareRootFolder, si.AppToken.AppName) & "\" & DateTime.UtcNow.ToString("yyyyMMdd") & "\MetadataExtracts"

if Not Directory.Exists(folderPath) then Directory.CreateDirectory(folderPath)

Dim filePath as String = folderPath & "\" & DateTime.UtcNow.ToString("yyyyMMdd") & " " & si.AppToken.AppName & ".zip"

If File.Exists(filePath) Then File.Delete(filePath)


'Set the extract options

Dim xmlOptions as New XmlExtractOptions

xmlOptions.ExtractAllItems = True


'Execute the Metadata Extract

Using dbConnFW as DBConnInfo = BRAPi.Database.CreateFrameworkDbConnInfo(si)

Using dbConnApp as DBConnInfo = BRAPi.Database.CreateApplicationDbConnInfo(si)

Dim zipBytes as Byte() = ApplicationZipFileHelper.Extract(dbConnFW, dbConnApp, Nothing, xmlOptions)

'Append the contents of this workflow profile to the extract file

Using FS As New FileStream(filePath, FileMode.Append, FileAccess.Write)

'Create a binary writer, and write all bytes to the FileStream at once

Using BW As New BinaryWriter(FS)

BW.Write(zipBytes)

End Using

End Using

End Using

End Using

End Select

Return Nothing

Catch ex As Exception

Throw ErrorHandler.LogWrite(si, New XFException(si, ex))

End Try

End Function

End Class

End Namespace

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Reference link: 

https://community.onestreamsoftware.com/t5/Rules/Automating-Application-Back-up/td-p/7980


Thanks,

Madhusudhan

Thursday, January 12, 2023

PBCS - Migration - with dimension name change

To change dimension name while doing Migration from One Environment to Another.

1. Download the snapshot zip file from existing pod on your local machine

2. Unzip the snapshot file on your machine location

3. Download a utility named fart.exe (find and replace text)

4. Run the command in the following way 

a. C:\>fart.exe -r -c -- C:\Backup_Snapshot\* "Dimension A" "Dimension B" 

5. The above will replace all occurrences of Dimension A with Dimension B

6. There will be one dimension file in the folders named Dimension A.csv, rename it to Dimension B.csv

7. Zip the entire folder again, the structure should resemble that of original snapshot zip file

8. Import that structure in new environment and perform migration. 

9. It will succeed with some access related failures, that you can ignore

10. Open the application, validate the forms etc, check rules and Data Integration execution


Validation:

 - Data Forms, Dashboards, Navigation Flows - Migration will be successful

 - Dimensions - Members not same - Mainly in Account dimension some members missing.

 - Rules - In some rules may not change dimension name in Agg function mainly I observed.

 - In Calculation Manager, check Database properties - Member blocks, block size, no.of clocks etc

 - Data Management - Data Load Rules not showing up, Please validate all settings: Source system, Target Application, Import Format, Location, Data Load Rule, Data Load Mapping etc.


Thanks,

Madhusudhan

Sunday, January 8, 2023

EPM Planning Cloud - Application Migration and Export artifacts

 Migration from one environment to another. Take Snapshot to take entire application backup, or If you want to separate artifacts also you can export and take backup with this option - SnapShot.

  1. Download Snapshot from Existing Pod
  2. Upload Snapshot to New Pod
  3. Once upload is completed, right side go to Actions >> Import 
  4. Once Import is completed, then validate application below points

  • Check Refresh Database
  • In Rules, Click on Database Properties. Check Enterprise View and check General, Statistics, Dimension members for all cubes.

We can Export dimension members using below steps:

Navigate >> Application >> Overview >> Dimensions >> Export/Import -- using this option we can export or import dimension members.


Thanks,

Madhusudhan

Tuesday, November 22, 2022

PBCS - Smart Push Option

 To load data form one cube to another cube, we were using calc scripts to copy data from one cube to another, either to BSO to BSO or mainly BSO to ASO.

Now we have one smart feature with new versions and with cloud applications like EPM Cloud Planning.

That is Smart Push.

We can push data from one cube to another cube i.e either BSO to BSO or BSO to ASO, we can select Smart Push option in the data forms itself.

We can select this option in Simple Data form or Composite Data form also.

https://docs.oracle.com/cd/E57185_01/AGOHP/ch10s03s09s02.html


Thanks,

Madhusudhan

Sunday, November 13, 2022

OneStream Admin Screen

 OneStream System Administration will be handled by below, which Admin only can access.


All Security, Application Creation, Database Creation, Logging activities, Logs, Environment details, We can check and monitor server is Server Status, then we can create users, create security groups, assign security groups, Load Application artifacts, Extract Artifacts etc.

Thanks,
Madhusudhan

Tuesday, November 8, 2022

OneStream Basics1

 Some basics you can find here, which we will update regularly.

In OneStream, We can access URL in 3 types.

  • Desktop Version with help of Client
  • Web URL - Heard that Web URL going to discontinue in few days, as silver light support needed for the same
  • Excel like SmartView in Hyperion
In OneStream, We can download client software from MARKETPLACE. Once you login, you can OneStream Reference guide (Like Admin guide in Hyperion)

In OneStream, Totally 18 Dimensions will be there, including Custom Dimensions.
  • System Defined Dimensions    - Parent, Consolidation, Time, View, Origin, IC
  • User Defined Dimensions        - Entity, Scenario, Account, Flow, All User Defined Dimensions 8
In OneStream, System Defined Dimensions will create default whenever we create User Defined Dimensions. For Example:
  • Parent Dimension will create by creating Entity. 
  • Consolidation dimension will create by creating Currency. 
  • Once we define Start and End Year in Application Properties, Time dimension will get create by the system Years along with Months
  • View Dimension will create by system along with Periodic members QTD, YTD etc. This dimension will expect anything like above dimensions, view dimension completely create by system.
  • Origin Dimension also as View Dimension, System will create automatically. We need to tell the system about from when data is coming from, like import or Forms etc.
  • IC - Inter Company - Which we need to tell system about the Entity as it is Inter Company or not.
In OneStream, like Hyperion we doesn't have Year and Time Dimension. Here only Time will dimension will get create Years along with Months like 2021M3 - Mar 2021


Wednesday, November 2, 2022

How to load metadata into EPM Planning Cloud

 To load metadata into EPM Cloud Planning applications

For example: Account dimension:

Go to Navigate (3 lines in left top corner), Go to Application then select Overview. 

Next select Dimension tab, Select Cube (depends on dimension and cube preferences)

Then select Import option in the right side.

Then Select Create Option in the below page

Once you click on Create, you can see below page.


Select File location is Local or Inbox, Choose Local if you have your file in your local machine.
Then browse the file and click on Validate. If validation is successful then click on Import.

You will get pop-up as Import Metadata is successful.

Thanks,
Madhu