SlideShare ist ein Scribd-Unternehmen logo
1 von 198
Downloaden Sie, um offline zu lesen
Hyperion
                          Financial Management 9.3.1
                          Create Rules
                                                       m y
                                               de
                          Student Guide




                                            ca
                                          A
                                  le
                             r ac
                            O ly
                         l & On
                       na se
D52786GC10




                     er U
Edition 1.0
January 2008
D53155

                I nt
         c le   ®




O ra
Author                   Copyright © 2008, Oracle. All rights reserved.

 Mark Mitsock             Disclaimer

                          This document contains proprietary information and is protected by copyright and
 Technical Contributors   other intellectual property laws. You may copy and print this document solely for your
 and Reviewers            own use in an Oracle training course. The document may not be modified or altered in
                          any way. Except where your use constitutes "fair use" under copyright law, you may
 Keith Glide              not use, share, download, upload, copy, print, display, perform, reproduce, publish,
                          license, post, transmit, or distribute this document in whole or in part without the
 Jennifer Hough           express authorization of Oracle.
 Daniel Tijerina
                          The information contained in this document is subject to change without notice. If you
                          find any problems in the document, please report them in writing to: Oracle University,
 Editor                   500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not
                          warranted to be error-free.
 Susan Moxley
                          Restricted Rights Notice
 Graphic Designer         If this documentation is delivered to the United States Government or anyone using
                          the documentation on behalf of the United States Government, the following notice is
 Carisa Cannan            applicable:

                          U.S. GOVERNMENT RIGHTS
 Publisher                The U.S. Government’s rights to use, modify, reproduce, release, perform, display, or
 Judy Gaitan              disclose these training materials are restricted by the terms of the applicable Oracle
                          license agreement and/or the applicable U.S. Government contract.

                          Trademark Notice

                          Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other
                          names may be trademarks of their respective owners.




                                                                                                                m y
                                                                                              a de
                                                                                  A c
                                     le
                                r ac
                               O ly
                            l & On
                          na se
                     nt er U
                   I
        c le
O ra
Table of Contents                                                                                                                  0




 Preface
 Course Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
 Course Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
 Course Materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
    Student Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
    Activity Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
 Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix


 Module 1: Financial Management Rules Basics

 Lesson 1: Reviewing Rules Syntax
 About Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
 Describing Objects and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
 Creating Rules Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
                                                                                                                            m y
                                                                                                               de
     HS.Exp Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
     Account Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10

                                                                                                    c        a
     Destination Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-11

                                                                                                  A
     Source Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-11
 Adding Operators and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12

                                            le
     Period and Year Keywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13


                                       r ac
     Placing Other Functions Within Exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
 Identifying Rule Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14

                                      O ly
 Identifying Sub Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16


                                   l & On
 Adding Comments to Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
 Inserting Line Continuations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19


                                 na se
 Creating Conditional Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21


                               er U
     Applying If...Then...Else Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22


                            nt
     Making Decisions with Select Case Statements . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
 Comparing Strings in Financial Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25
                          I
     UCase Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26


            c le
     LCase Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
     Left Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26


O ra Right Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27
Table of Contents


 Lesson 2: Reducing Maintenance with Variables
 About VB Script Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
 Creating Variables and Assigning Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
 Variables and Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5
 Variables and Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
 Creating Header Sections for Variables and Constants. . . . . . . . . . . . . . . . . . . . . . . . 2-9
     Point of View Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
     Top and None Members for Custom and ICP Dimensions . . . . . . . . . . . . . . . . . 2-10
     Global Accounts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-11
     Conditional Statement Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-11

 Lesson 3: Managing the Scope of Rules
 Subcubes and Data Retrieval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
    Financial Management Subcubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
    Subcube Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
 Subcubes and Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
    Subcubes and Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7
    The Left Side of HS.Exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7
    Page Dimensions and HS.Exp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9
                                                                                                                     m y
                                                                                                        de
 Managing the Scope of Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-11


                                                                                              c       a
    Omitting Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12
    Specifying the Destination Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13

                                                                                            A
    Specifying Source Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14


                                           le
    Mismatched Custom Dimensions (Example 1) . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15


                                        ac
    Mismatched Custom Dimensions (Example 2) . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17
 Executing Rules with the Value Dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19
                                      r
    Sub Calculate and the Value Dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21
                                     O ly
    Working with Total Members . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23


                                  l & On
 Lesson 4: Creating Rules for Dynamic Accounts

                                na se
                              er U
 Dynamic Account Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    4-2
 Sub Dynamic Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     4-3


                         I nt
 Creating Rules for Dynamic Accounts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
    Functions Valid with HS.Dynamic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
                                                                                                                        4-4
                                                                                                                        4-6


           c le
O ra
 iv                                               Hyperion Financial Management 9.3.1: Create Rules
Table of Contents



 Module 2: Creating Procedures, Loops, and Arrays

 Lesson 5: Creating Custom Procedures
 Creating Custom Sub Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
 Calling Custom Sub Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
 Creating Custom Function Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6
 Calling Custom Function Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
 Troubleshooting with Logging Procedures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
     Writing to Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
     Calling Write to File Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14
 Managing Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16
     DeleteFile Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17
     FileExists Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17
     GetFile Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17
     MoveFile Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
     Size Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18

 Lesson 6: Creating Arrays and Loops
                                                                                                                             m y
                                                                                                                de
 Arrays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2
      Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3

                                                                                                     c        a
      Arrays and Loops in Rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4

                                                                                                   A
 Creating Array Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6
 Filling Arrays Using Member Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7

                                            le
 Creating Loops. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8


                                       r ac
      For...Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8
      For Each...Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9

                                      O ly
      Do...Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10


                                   l & On
 Assigning Values with Arrays and Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-12
 Attributes in Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14


                                 na se
 Loops and Data Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-15


                               er U
      Opening Data Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16


                            nt
      Creating Loops With Data Units. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18

                          I
              le
 Module 3: Working with Data and Hierarchies

            c
 Lesson 7: Managing Financial Management Data


O ra
 Retrieving and Writing Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2



 Hyperion Financial Management 9.3.1: Create Rules                                                                                  v
Table of Contents



 Testing for No Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4
 Setting Accounts to No Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-6
 Setting Parent Entities to Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-8
 Rounding and Scaling Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
 Rounding and Scaling with HS.Round. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-12

 Lesson 8: Working with Dimension Hierarchies
 Working with the Calendar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
    Preventing Prior and Next from Crossing into Invalid Years . . . . . . . . . . . . . . . . . 8-3
    Populating Days in Period Accounts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5
    Managing Calculation Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6
 Managing Movement Accounts and Data Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8
 Avoiding Circular Calculations in Hierarchies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10
 Creating Allocations Using Sub Allocate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12
    Running the Sub Allocate Procedure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-13
    Using the Alloc Function to Create Allocation Rules . . . . . . . . . . . . . . . . . . . . . . 8-15


 Module 4: Creating Custom Translations and Consolidations
                                                                                                                      m y
 Lesson 9: Creating Currency Translation Rules
                                                                                                       a de
                                                                                             A c
 About Translating Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
    Currency and Exchange Rate Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3

                                           le
    Translation Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5


                                        ac
    Default Translation Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7
 Creating Custom Translation Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9
                                      r
    Translation Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-11
                                     O ly
    Calculating Exchange Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-13


                                  l & On
    Working with Currency Overrides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15


                                na se
 Lesson 10: Creating Consolidation and Elimination Rules



                           nt er U
 Default Consolidation Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
 Creating Consolidation Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4
                         I
    Consolidation Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5


           c le
    Consolidation Procedure Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-9
    Testing for Eliminations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-11


O ra
 vi                                                Hyperion Financial Management 9.3.1: Create Rules
Preface                                                                0




           Welcome to Hyperion Financial Management 9.3.1: Create Rules!
           Before you begin, please take a moment to review this section. The
           preface presents an overview of:
            • The course objectives
            • The course structure
            • The course materials
            • Writing conventions used in this manual
            • Additional resources to enhance your learning

                                                                           m y
                                                                    de
            • Relevant follow-up courses you might want to attend in the future


           Course Objectives
                                                             c    a
                                                           A
           After completing this course, you should be able to:

                             le
            • Reduce database size and calculation time by proper use of the


                        r ac
              custom and value dimensions in rules
            • Calculate percentages and ratios using rules for dynamic accounts
                       O ly
            • Create custom procedures, functions, loops, and arrays in rules

                    l & On
            • Create rules with proper data handling techniques


                  na se
            • Create allocation rules

                er U
            • Create custom currency translation rules

             nt
           I• Create custom consolidation and elimination rules



    c le
O ra
Preface



 Course Structure
 Hyperion Financial Management 9.3.1: Create Rules is a 3-day, instructor-led training
 course consisting of lectures, demonstrations, and hands-on exercises. In this course,
 the instructor presents a topic conceptually by explaining its purpose, demonstrating how
 it works, and then guiding the students through the exercises. Demonstrations and
 hands-on exercises reinforce the concepts and skills introduced during lectures.


 Course Materials
 You use two books in class—the student guide and the student workbook. The instructor
 may also give you handouts.


 Student Guide
 The student guide is designed to be used by students and the instructor during lecture
 time. It has four modules:
   • Module 1 describes the basics of Financial Managment rules.
   • Module 2 describes how to create custom Sub and Function procedures. You learn to
     create rules using arrays and loops.
                                                                                       m y
   • Module 4 describes how to customize the default currency translation and
                                                                             a de
   • Module 3 describes how to work with Financial Management data and hierarchies.


     consolidation calculations.
                                                                     A c
                                     le
 Each module contains lessons. Each lesson begins with a list of objectives followed by
 the presentation of slides and accompanying text. The lesson ends with a summary of
 the topics covered in the lesson.

                                r ac
 A glossary provides definitions of terms used during the course.
                               O ly
 Activity Guide
                            l & On
                          na se
 The activity guide has two sections—exercises and exercise solutions.

 Exercises

                     nt er U
 A critical part of the learning process is the challenge of completing real tasks associated
                   I
 with each lesson. Each exercise is an opportunity to apply your new knowledge.


        c le
 Exercise Solutions


O ra
 The exercise solutions present the detailed steps to successfully complete the exercises.



 viii                                 Hyperion Financial Management 9.3.1: Create Rules
Preface



 Conventions
 The following text conventions are used in this course book:
  • Text to be typed, options to be selected, names of files and modules, and menu
    selections are displayed in bold type. Examples:
    - Select Clear Profile.
    - To clear the profile, click Yes.
  • Keyboard shortcuts are displayed as follows:
    Ctrl+Enter
    For the example, you would press the Ctrl key and the Enter key at the same time.
 Tips and Notes are used to direct your attention to different types of information.
        NOTE
        A note provides related information, common mistakes, and cautions about the
        current topic.



                                                                                         m y
                                                                            a de
                                                                    A c
                                    le
                               r ac
                              O ly
                           l & On
                         na se
                    nt er U
                  I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                          ix
Preface




                                                                m y
                                                       a de
                                                A c
                                le
                           r ac
                          O ly
                       l & On
                     na se
                nt er U
              I
       c le
O ra
 x                   Hyperion Financial Management 9.3.1: Create Rules
M O D U L E    1

       Financial Management Rules Basics                                       0




       Overview
       In this module you learn the basics for creating Financial Management
       rules.
       Lessons in this module include:
        • Reviewing Rules Syntax
        • Reducing Maintenance with Variables
        • Managing the Scope of Rules
        • Creating Rules for Dynamic Accounts
                                                                          m y
                                                                a de
                                                         A c
                             le
                        r ac
                       O ly
                    l & On
                  na se
             nt er U
           I
    c le
O ra
m y
                                     a de
                                  A c
                             le
                        r ac
                       O ly
                    l & On
                  na se
             nt er U
           I
    c le
O ra
L E S S O N    1

       Reviewing Rules Syntax                                           1




       Objectives
       At the end of this lesson, you should be able to:
        • Explain the purpose of rules in Financial Management
        • Describe objects and functions in expressions
        • Create rules expressions
        • Identify Financial Management rule types
        • Distinguish between Sub procedures
        • Add comments and line breaks
                                                                     m y
        • Create conditional statements and compare strings

                                                                 a de
                                                           A c
                             le
                        r ac
                       O ly
                    l & On
                  na se
             nt er U
           I
    c le
O ra
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    About Rules

       Hyperion Financial Management rules provide powerful, customized
       calculations that you can use to perform the following tasks:
       Calculate data that cannot be calculated through a hierarchical
       aggregation, such as ratios or variance analyses
       Perform complex currency conversions and calculate exchange rate
       differences or other calculations necessary for consolidation
       Prevent data entry for a specific cell
       Perform allocations from a parent entity to a list of base entities
       Enable data entry to a parent entity
       Perform custom consolidations for statutory reporting requirements


                                                                                      m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
 About Rules                        le
                               r ac
 You use rules to perform calculations that you cannot define through parent-child
 relationships in the dimension hierarchy. For example, you can create a rule to calculate
                              O ly
 the value of the Salaries member by multiplying the Headcount member by the


                           l & On
 SalaryRate member.



                         na se
                    nt er U
                  I
         c le
O ra
 1-2                                    Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                                 Lesson 1 Reviewing Rules Syntax




    Describing Objects and Functions

      Objects represent elements of a Financial Management application,
      such as dimensions.
      Functions represent actions that a rule can perform, such as retrieving a
      value.
      You write rules statement by applying functions to objects.
      Not all functions are valid for all objects.

          Object       Function

        HS.Entity.DefCurrency                 This statement uses the DefCurrency function to
                                              retrieve the default currency of an entity.

        HS.Scenario.DefCurrency               The DefCurrency function is invalid here
                                              because scenarios do not have currencies.
                                                                                                m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
 Describing Objects and Functions    le
                                r ac
 A programming language consists of its own vocabulary and grammar. Objects are
 equivalent to nouns in programming languages. For example, in Financial Management,
                               O ly
 the Entity object represents the Entity dimension, the Account object represents the


                            l & On
 Account dimension, and so on. Functions are the verbs that express the actions of a
 programming language.

                          na se
 To create rules, you should be familiar with these basic principles about objects:



                     nt er U
  • Objects contain their own sets of functions.
    For example, you can use certain functions only with the Period object.
                   I
  • Objects can be children of other objects.


        c le
    For example, the top-level object in Financial Management is named HS. The HS
    object contains some functions and several other objects.


O ra
  • When you write rules, you use dot notation (dot) to separate objects from other
    objects and functions.


 Hyperion Financial Management 9.3.1: Create Rules                                              1-3
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax

 The following table lists the functions by object for Financial Management rules:

  Object              Function
  HS                  ABSExp
                      Alloc
                      CalcStatus
                      Clear
                      Con
                      Exp
                      Dynamic
                      GetCell
                      GetCellNoData
                      GetCellRealData
                      GetCellType
                      GetRate
                      ImpactStatus
                      Input
                      NoInput
                      NoRound
                      OpenDataUnit
                      ReviewStatus
                      Round
                                                                                     m y
                                                                            de
                      SetData
                      SetDataWithPOV
                      Trans
                      TransPeriodic
                                                                     c    a
  Account             AccountType
                                                                   A
                      C1...4 Top
                                    le
                                 ac
                      IsBase
                      IsChild

                               r
                      IsConsolidated

                              O ly
                      IsDescendant
                      IsICP


                           l & On
                      List
                      NumBase


                         na se
                      NumChild


                       er U
                      NumDescendant
                      PlugAccount


                    nt
                      SecurityClass

                  I   UD1...3
                      ValidationAccount


        c le          XBRLTags




O ra
 1-4                                 Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                 Lesson 1 Reviewing Rules Syntax


  Object             Function
  AppSettings        Currency
                     ICPWeight
                     PVAForBalance
                     PVAForFlow
                     RateForBalance
                     RateForFlow
  Currency           Scale
  Custom1,           IsBase
  Custom2,           IsDescendant
  Custom3, and       List
  Custom4
                     NumBase
                     NumChild
                     NumDescendant
                     SecurityClass
                     SwitchSign
                     SwitchType
                     UD1...3
  DataUnit           GetItem
                     GetItemIds2
                                                                           m y
                                                                    de
                     GetNumItems
  Entity             AllowAdjs
                     AllowAdjsFromChildren
                     DefCurrency                              c   a
                     Holding
                                                            A
                     IsBase
                                    le
                                 ac
                     IsChild
                     IsDescendant
                     IsICP
                     List
                               r
                              O ly
                           l & On
                     Member
                     NumBase


                         na se
                     NumChild
                     NumDescendant



                    nt er U
                     SecurityAsPartner
                     SecurityClass

                  I  UD1...3


             le
  ICP                List

           c
O ra
 Hyperion Financial Management 9.3.1: Create Rules                           1-5
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax


  Object           Function
  Node             Consol1...3
                   DOwn
                   IsBase
                   IsChild
                   IsDescendant
                   List
                   Method
                   NumBase
                   NumChild
                   NumDescendant
                   PCon
                   POwn
  Parent           DefCurrency
                   Holding
                   IsBase
                   IsChild
                   IsDescendant
                   IsICP
                   List
                   Member
                                                                           m y
                   NumBase
                   NumChild
                                                                  a de
                   NumDescendant
                   UD1...3
                                                           A c
                                    le
  Period           IsFirst
                   IsLast
                   List
                   Member
                               r ac
                   NumBase
                   Number     O ly
  Scenario
                           l & On
                   ConsolidateYTD


                         na se
                   DefaultFreq
                   DefaultView
                   List


                    nt er U
                   Member

                  INumPeriods
                   SecurityClass


           c le    UD1...3




O ra
 1-6                            Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                 Lesson 1 Reviewing Rules Syntax


  Object             Function
  Value              Currency
                     IsTransCur
                     IsTransCurAdj
                     Member
  Year               IsFirst
                     IsLast
                     Member




                                                                           m y
                                                                  a de
                                                            A c
                                   le
                              r ac
                             O ly
                          l & On
                        na se
                   nt er U
                 I
          c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                           1-7
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Creating Rules Expressions

       You can create rules expressions to assign values to accounts:
        You use the HS.Exp function with an account expression to assign
        values to accounts.
        HS.Exp expects a destination value on the left side and a source value
        on the right side of the equal sign.

       HS.Exp "Destination=Source"


        You can use account expressions within Exp to specify the source and
        destination values.




                                                                                     m y
                                                                                 a de
                             Copyright © 2008, Oracle. All rights reserved.



                                                                              A c
 Creating Rules Expressions         le
 perform these types of tasks: r ac
 You create rules expressions by using Financial Management objects and functions to


  • Calculating data          O ly
  • Consolidating data
                           l & On
                         na se
  • Setting accounts to read-only


 HS.Exp Function
                    nt er U
                  I
 The most frequent use of a rule expression is assigning values to accounts. Use the

           le
 HS.Exp function to assign values to accounts.
         c
O ra
 1-8                                   Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                   Lesson 1 Reviewing Rules Syntax

 Use this syntax:
 HS.Exp “DestinationValue = SourceValue”
 The following example sets the Cash account to 50,000:
 HS.Exp "A#Cash = 50000”




                                                                             m y
                                                                    a de
                                                              A c
                                   le
                              r ac
                             O ly
                          l & On
                        na se
                   nt er U
                 I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                             1-9
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Account Expressions

        An account expression uses a dimension keyword to specify a value or
        a set of values.
        A dimension keyword is separated from its values by a pound sign (#).
        A#NetIncome

        Dimensions are separated by periods.
        A#Cash.P#January.E#USA.C1#OpeningBalance




                                                                                      m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
 Account Expressions
                                    le
                               r ac
 Account expressions identify cells in the database by specifying one or more dimension
 members. The Exp function requires an account expression on the left (destination) side

                              O ly
 of the equal sign. The right (source) side of the equal sign can be an account expression,


                           l & On
 a constant value, or any function that returns a numeric value.

 Dimension Keywords
                         na se
                       er U
 An account expression uses a dimension keyword to specify a value or a set of values. A


                    nt
 dimension keyword is separated from its values by a pound or hash sign (#), and
 dimensions are separated by dots. For example:
                  I
           le
 A#Cash.P#January.E#USA.C1#OpeningBalance

         c
O ra
 1-10                                   Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                       Lesson 1 Reviewing Rules Syntax

 The table lists the dimension keywords that you can use to specify dimension members:

  Keyword       Description
  S#            Scenario
  Y#            Year
  P#            Period
  V#            Value
  E#            Entity
  W#            View
  A#            Account
  I#            Intercompany Partner
  C1#           Custom1
  C2#           Custom2
  C3#           Custom3
  C4#           Custom4

                                                                                      m y
 Destination Expressions
                                                                            a de
 The destination for the Exp function is specified by the Account, Custom, and ICP

                                                                    A c
 members specified on the left side of the equal sign. The destination Entity, Period, Year,
 Value, members are determined by the current point of view (POV) members or by the

                                    le
 cells selected on the data grid or form. The members for the currently selected cells on


                                 ac
 the grid override the current POV members. The destination View member is the current

                               r
 scenario default view, regardless of the currently select POV members.

                              O ly
 Source Expressions

                           l & On
 When you use an account expression on the right side of the equal sign with Exp, you


                         na se
 can specify any dimension member. If you do not specify a Entity, Period, Year, or Value


                       er U
 dimension member, the current POV member or the current cells selected on the grid or
 data form are used. If you do not specify a View member, the source is the current

                    nt
 scenario default view, regardless of the currently select POV member.
                  I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                      1-11
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Adding Operators and Functions

        You can use standard math operators on the right side of the equal sign.

        HS.Exp "A#Sales = A#Units * A#Price"


        You can use Period and Year keywords for dynamic time calculations.

        HS.Exp "A#MiscPast = A#Misc.Y#Cur-2"


        You can embed other HS functions within Exp.

        HS.Exp "A#AvgSales = A#Sales/HS.Entity.NumBase(USA)"




                                                                                       m y
                                                                                   a de
                               Copyright © 2008, Oracle. All rights reserved.



                                                                                A c
 Adding Operators and Functions     le
                               r ac
 You can add, subtract, multiply, and divide on the right side of the equal sign. You must
 use the following standard VBScript characters: + - * /
                              O ly
 If you multiply or divide with an account that has a NoData status, the data in the account

                           l & On
 on the left side of the equal sign is not changed. Zero is considered data. An account that


                         na se
 contains 0.00 as data does not have a NoData status.


                       er U
 The following example sets the amount in the StateTax account. This example calculates


                    nt
 the StateTax amount by multiplying the amount in the Sales account for 2005 by the rate
 in the StateRate account for 2005:
                  I
           le
 HS.Exp "A#StateTax = A#Sales.Y#2005 * A#StateRate.Y#2005"

         c
O ra
 1-12                                    Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                            Lesson 1 Reviewing Rules Syntax

 Period and Year Keywords
 To create dynamic rules, you can use the following keywords, instead of member names,
 to represent members of the destination Year or Period dimension:

  Keyword        Description
  Cur            Current period or year
  First          First period or year that is valid for the application
  Last           Last period or year that is valid for the application
  Next           Period or year that follows the current period or year
  Prior          Period or year that precedes the current period or year


 You can use plus (+) and minus (-) with the Period and Year keywords. The following
 example sets the MiscPast account to the amount in the Misc account two periods before
 the current period:
 HS.Exp "A#MiscPast = A#Misc.P#Cur-2"


 Placing Other Functions Within Exp
                                                                                      m y
                                                                               de
 If an HS function returns a single numeric value, you can nest the function in the Exp
 function. However, if you nest a function that contains a string argument, you cannot

                                                                            ca
 enclose the string in quotation marks. In the following example, the NumBase function is

                                                                          A
 nested in the Exp function to retrieve the number of base entities for the Regional
 member:

                                    le
                                 ac
 HS.Exp "A#SalesAlloc = A#Sales/HS.Entity.NumBase(Regional)"

                               r
 Notice that the Regional string is not enclosed in quotation marks.

                              O ly
                           l & On
                         na se
                    nt er U
                  I
          c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                     1-13
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Identifying Rule Types

        There are eight types of rules in Financial Management:
            —   Calculate
            —   Dynamic                       Sub Calculate()
            —   Translate                     HS.Exp "A#TargAcct=A#SourceAcct“
            —   Allocation                    End Sub
            —   Input
                                              Sub NoInput()
            —   No Input                      HS.NoInput"A#Sales.S#Budget“
            —   Consolidate                   End Sub
            —   Transactions
        You place the rules for each type in a separate sub procedure in the
        rules file.




                                                                                        m y
                                                                                    a de
                                Copyright © 2008, Oracle. All rights reserved.



                                                                                 A c
 Identifying Rule Types                  le
 Rules fall into eight types:
                                    r ac
                                   O ly
  • Calculate rules are executed when you perform calculations and consolidations. You
    use calculate rules for these tasks:
        -
                                l & On
            Set and clear values from accounts
        -
                              na se
            Perform ad hoc calculations
        -

                         nt er U
            Conform to statutory requirements

                       I
  • Dynamic rules enable you to create ratios that accurately calculate parent values for


              le
    the Period, VIew, and custom dimensions. Parent values for percentages for these
    dimensions are not accurately calculated by the aggregation of base member values.
            c
O ra
  • Translate rules execute when you perform translations. These rules can override
    default translation calculations.



 1-14                                     Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                       Lesson 1 Reviewing Rules Syntax

  • Allocation rules execute when you allocate data from a single source to multiple
    destinations.
  • Input rules enable input at the parent entity level.
  • No input rules prevent input at the base entity, account, and custom level.
  • Consolidate rules perform nonstandard consolidations. These rules are most
    commonly found in statutory applications.
  • Transactions rules enable posting to accounts and scenarios from the Intercompany
    Transactions module.




                                                                                   m y
                                                                          a de
                                                                  A c
                                    le
                               r ac
                              O ly
                           l & On
                         na se
                    nt er U
                  I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                     1-15
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Identifying Sub Procedures

    A Sub procedure is a series of VBScript statements (enclosed by Sub and
    End Sub statements) that performs actions but does not return a value.


                          Sub Calculate()
                          HS.Exp "A#TargAcct=A#SourceAcct“
                          End Sub

                          Sub NoInput()
                          HS.NoInput "A#Sales.S#Budget“
                          End Sub




                                                                                      m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
 Identifying Sub Procedures          le
                                r ac
 A Sub procedure can take arguments (constants, variables, or expressions passed by a
 calling procedure). If a Sub procedure has no arguments, its Sub statement must include
                               O ly
 an empty set of parentheses ().


                            l & On
 Rules of each type are grouped into Sub procedures in the rules file. Rules statements


                          na se
 are grouped into the following procedures:

  Routine


                     nt er U
  Calculate() and Dynamic()
                                Executed
                                When you calculate or consolidate data
  Translate()      I            When you translate data
  Allocate()
            c le                When you use the Allocate option in a data grid


  ra
  Input()                       When the application is opened.


O
 1-16                                   Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                        Lesson 1 Reviewing Rules Syntax


  Routine                       Executed
  NoInput()                     When the application is opened. Automatically
                                prevent you from entering data in specific cells
  Transactions()                When the application is opened.
  Consolidate()                 When you run a consolidation.

 The routines are created in any order. Use the following syntax to define each routine:
 Sub Calculate()
 <All calculate rules are displayed here.>
 End Sub
 Sub Dynamic()
 <All dynamic rules are displayed here.>
 End Sub
 Sub Translate()
 <All translate rules are displayed here.>
 End Sub
 Sub Allocate()
 <All allocation rules are displayed here.>
 End Sub
 Sub NoInput()
                                                                                    m y
 <All no input rules are displayed here.>
 End Sub
                                                                               a de
 Sub Consolidate()
 <All consolidate rules are displayed here.>
 End Sub                                                               A c
 Sub Input
                                     le
                                  ac
 <All input rules are displayed here.>
 End Sub
 Sub Transactions()             r
                               O ly
 <All transactions rules are displayed here.>


                            l & On
 End Sub



                          na se
                     nt er U
                   I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                    1-17
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Adding Comments to Rules

    You can insert comments in rules files to:
        Document the purpose and results of procedures
        Provide detail information for other administrators who may inherit rules
        files you created
        Act as a reminder of what you may need to modify in future releases of
        Financial Management

                          ‘Routine is executed when user
         Comment          ‘calculates or consolidates data.
                          Sub Calculate()
                          HS.Exp "A#TargAcct=A#SourceAcct“
                          End Sub

                          Sub NoInput()
                          HS.NoInput"A#Sales.S#Budget“
                                                                                      m y
                                                                                    de
                          End Sub


                              Copyright © 2008, Oracle. All rights reserved.

                                                                                 ca
                                                                               A
 Adding Comments to Rules
                                     le
                                r ac
 Documentation in Financial Management rules files is considered almost as important as
 the code itself. Without documentation, administrators have a difficult time interpreting

                               O ly
 and troubleshooting another administrator’s procedures. Even if you are the only one
 maintaining the rules files, without proper documentation you can easily forget the intent
 of the procedure.
                            l & On
                          na se
 Text preceded with an single quote(‘) is interpreted as a comment. Although you can


                        er U
 start comments anywhere within a line, it is recommended that you place a comment on


                     nt
 its own line. This ensures that the line is properly validated.

                   I
 This is an example of inserting comments in your rules files:


         c le
 ' * Copy Actual Q1 rates to Q_Forecast
 If HS.Scenario.Member = "Q_Forecast" and HS.Period.IsFirst Then


O raHS.Clear "A#ALL"
    HS.Exp "A#ALL = S#Actual"
    End If 'HS.Scenario.Member = "Q_Forecast" and HS.Period.IsFirst


 1-18                                   Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                                 Lesson 1 Reviewing Rules Syntax




    Inserting Line Continuations

    Line Continuation:
      Uses an ampersand (&) for concatenation
      Uses an underscore (_) for line continuation

    Note: You must have a space between the ampersand and the
    underscore.
                                                                                Concatenation




                                                                                 Line
                                                                                 Continuation
                                                                                 Syntax
                                                                                                m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
 Inserting Line Continuations
                                    le
                               r ac
 You can use line continuation so that the entire string can be viewed without having to
 scroll to the right of the code window.

                              O ly
 If you must break a line into multiple strings, place the line continuation character


                           l & On
 between the strings, and then concatenate them using the ampersand (&). It is critical to
 preserve all spaces in the string when it is concatenated.

                         na se
                       er U
       NOTE
       You cannot use the line continuation character in comments, you must repeat the

                    nt
       comment character apostrophe (‘) at the beginning of each comment string line.
                  I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                              1-19
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax

 Line Continuation Tips
  • Break complex formulas at a point where a line performs an action.
  • If you include long dimension names in the code line, break the line to show one
    account per line.
  • Insert the mathematical operators at the beginning of the line so that you can identify
    what type of action is being applied to the account in the formula. When the line
    break is applied, the operators and account are split in a logical manner.




                                                                                     m y
                                                                           a de
                                                                   A c
                                    le
                               r ac
                              O ly
                           l & On
                         na se
                    nt er U
                  I
        c le
O ra
 1-20                                Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                                 Lesson 1 Reviewing Rules Syntax




    Creating Conditional Statements

    The following condition statements are used in rules files:
      If…Then…Else
      Select Case…Else




                                                                                           m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
 Creating Conditional Statements    le
                               r ac
 You can control the flow of your script with conditional statements. You can write
 VBScript that makes decisions and repeats actions.
                              O ly
                           l & On
                         na se
                    nt er U
                  I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                          1-21
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Applying the If…Then…Else Statement

    The most common form of the If...Then...Else statement is the block form
    which allows for several lines of code to be executed or several
    comparisons to be made, within the one statement.


        If HS.Scenario.Member = "Budget" Then                                   Is executed only if
         HS.EXP "A#Sales = A#UnitsSold * A#Price"                               the current member
        End If                                                                  is Budget


        If HS.Scenario.Member = "Budget" Then                                   Uses ElseIf to test
         HS.EXP "A#Sales = A#UnitsSold * A#Price"                               for more than one
        ElseIf HS.Scenario.Member = "Actual" Then                               condition
         HS.EXP "A#Price = A#Sales / A#UnitsSold"
        Else
         HS.EXP "A#Sales = A#Sales.P#Prior * 1.1"
        End If
                                                                                                      m y
                                                                                         a de
                               Copyright © 2008, Oracle. All rights reserved.



                                                                                 A c
                                    le
 Applying If...Then...Else Statements

                               r ac
 The If...Then...Else statement allows several lines of code to be executed or several
 comparisons to be made within the one statement.

                              O ly
 You use the If...Then...Else statement to evaluate whether a condition is true or false and,

                           l & On
 depending on the result, to specify one or more statements to run. The condition is


                         na se
 typically an expression that uses a comparison operator to compare one value or variable
 with another. You can nest If...Then...Else statements to as many levels as needed.

                       er U
  • Use and ElseIf...Then statement to add conditions.

                    nt
                  I
  • For If...Then...Else statements that have multiple conditions, the first statement that
    evaluates to true is executed. Any conditions that follow are not evaluated or
            le
    executed.
          c
O ra
  • If you include an Else statement, the lines of script after the Else statement execute if
    none of the condition are met.



 1-22                                    Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                      Lesson 1 Reviewing Rules Syntax

 The examples shown on the slide illustrate If...Then...Else statements:
  • The first example verifies whether the scenario member is equal to Budget. If equal
    (true), a calculation multiplies Units Sold by Price, and the result is applied to the
    Sales account. If the condition evaluates to false, no calculation is performed.
  • The second example applies the ElseIf statement if the scenario member is equal to
    Actual instead of Budget. If equal (true), a calculation divides Sales by UnitsSold and
    applies the result to Price. If the scenario is any member other than actual or budget,
    the calculation following the Else statement is performed.




                                                                                     m y
                                                                           a de
                                                                   A c
                                    le
                               r ac
                              O ly
                           l & On
                         na se
                    nt er U
                  I
        c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                    1-23
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




    Making Decisions with Select Case Statements

    A Select Case structure works with a single test expression that is
    evaluated once, at the top of the structure.
    The result of the expression is then compared with the values for each
    Case in the structure.
    If there is a match, the block of statements associated with that Case is
    executed, as in the following example.




                                                                                      m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
                                    le
 Making Decisions with Select Case Statements

                               r ac
 The Select Case structure provides an alternative to If...Then...ElseIf for selectively
 executing one block of statements from among multiple blocks of statements. A Select

                              O ly
 Case statement provides capability similar to the If...Then...Else statement, but makes


                           l & On
 code more efficient and readable when there are a large number of conditions to
 evaluate. The first Case statement that evaluates to true is executed. Any Case


                         na se
 statements that follow are not evaluated or executed.




                    nt er U
                  I
        c le
O ra
 1-24                                   Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                                Lesson 1 Reviewing Rules Syntax




    Comparing Strings in Financial Management

    The following are four frequently used string functions:
      UCase
      If UCase(HS.Entity.Member)="NONE" Then…

      LCase
      If LCase(HS.Scenario.Member)= "budget" Then...

      Left Function
      Dim Product1, RtnString
          Product1 = "Financial Management"    ' Define string.
          RtnString = Left(Product1, 9)    ' Returns "Financial"
      Right Function
      Dim Product1, RtnString
          Product1 = "Financial Management"    ' Define string.
                                                                                          m y
                                                                                   de
          RtnString = Right(Product1, 10) ' Returns “Management"


                             Copyright © 2008, Oracle. All rights reserved.

                                                                                ca
                                                                              A
                                   le
 Comparing Strings in Financial Management
                                ac
 String comparisons are important in Financial Management for these reasons:
                              r
                             O ly
 1. To avoid simple errors in uppercase or lowercase strings when conditional
    statements are used.

                          l & On
    For example, the string 'Budget' is used as the dimension member, but you enter


                        na se
    'budget' for the comparison (one uses an upper case ‘B’ and the second one uses a
    lower case ‘b’). With string comparison, if you always type lowercase and then



                   nt er U
    convert variables and function results to lowercase you will not have mismatches.
 2. You can use string comparisons to check for one or more characters that use a prefix
                 I
    or suffix in member names. This is useful for chart of accounts or entity structures


        c le
    that use coding in labels.
    For example, You use a product dimension and all hardware product member labels



O rastart with H100. You can create a string comparison to check the first 4 characters of
    the member label and if it equals H100 then do the calculation.



 Hyperion Financial Management 9.3.1: Create Rules                                         1-25
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax

 UCase Function
 Returns a string that was converted to uppercase.
 Syntax
 UCase(String)

 Arguments
 String: A text string or a function that returns a text string.
 Example
 If UCase(HS.Scenario.Member)=”ACTUAL” Then

 Only lowercase letters are converted to uppercase; all uppercase letters and nonletter
 characters remain unchanged.


 LCase Function
 Returns a string that was converted to lowercase.
 Syntax

                                                                                       m y
                                                                               de
 LCase(String)

 Example
 If LCase(HS.Scenario.Member)=”actual” Then
                                                                       c     a
                                                                     A
                                     le
 Only uppercase letters are converted to lowercase; all lowercase letters and nonletter
 characters remain unchanged.


 Left Function                  r ac
                               O ly
 Returns a string containing a specified number of characters from the left side of a string.

                            l & On
 A left function contains two required parts:


                          na se
  • Use String to return the requested values.

                        er U
  • Use Length (numeric value) to determine the number of characters to return.

                     nt
 Syntax
                   I
            le
 Left(String,Length)

          c
O ra
 1-26                                 Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                      Lesson 1 Reviewing Rules Syntax

 Example
 Dim Product1, RtnString
    Product1 = "Financial Management"     ' Define string
    RtnString = Left(Product1, 1)     ' Returns "F"
    RtnString = Left(Product1, 9)     ' Returns "Financial"
    RtnString = Left(Product1, 20)     ' Returns "Financial Management"


 Right Function
 Returns a string containing a specified number of characters from the right side of a
 string.
 A Right function contains two required parts:
  • Use String to return the requested values.
  • Use Length (numeric value) to determine the number of characters to return.
 Syntax
 Right(String,Length)

 Example
                                                                                     m y
 Dim Product1, RtnString
    Product1 = "Financial Management"    ' Define string.
                                                                          a de
    RtnString = Right(Product1, 1)
    RtnString = Right(Product1, 10)
 RtnString = Right(Product1, 20)
                                      ' Returns "t".
                                       ' Returns "Management".
                                                                   A
                                    ' Returns "Financial Management".
                                                                     c
                                    le
                               r ac
                              O ly
                           l & On
                         na se
                    nt er U
                  I
          c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                       1-27
Module 1 Financial Management Rules Basics
 Lesson 1 Reviewing Rules Syntax




            Summary
            In this lesson, you should have learned to:

            • Explain the purpose of rules in Financial Management
            • Describe objects and functions in expressions
            • Create rules expressions
            • Identify Financial Management rule types
            • Distinguish between Sub procedures
            • Add comments and line breaks
            • Create conditional statements and compare strings



                                                                             m y
                                                                     a de
                                                              A c
                                 le
                            r ac
                           O ly
                        l & On
                      na se
                 nt er U
               I
        c le
O ra
 1-28                             Hyperion Financial Management 9.3.1: Create Rules
L E S S O N    2

       Reducing Maintenance with Variables                                       2




       Objectives
       At the end of this lesson, you should be able to:
        • Create variables and constants
        • Set up variables header sections for the Point of View
        • Set up variables header sections for custom dimensions, intercompany
          partner (ICP) dimensions, and global accounts
        • Set up a variables header section for conditional triggers


                                                                         m y
                                                                   a de
                                                           A c
                             le
                        r ac
                       O ly
                    l & On
                  na se
             nt er U
           I
    c le
O ra
Module 1 Financial Management Rules Basics
 Lesson 2 Reducing Maintenance with Variables




    About VB Script Variables

       Variables temporarily store values when your script is running.
       Variables simplify rules scripts.
       Variables improve rules performance.

       Dim vCurPeriod, vCurYear

       vCurPeriod=HS.Period.Number
       vCurYear=HS.Year.Member




                                                                                       m y
                                                                                   a de
                               Copyright © 2008, Oracle. All rights reserved.



                                                                                A c
 About VB Script Variables          le
                               r ac
 Variables are placeholders that temporarily store values when the rules script is being
 executed. You can change the value of variables as many times as needed during
 execution.
                              O ly
                           l & On
 Variables simplify your script by letting you give short, descriptive names to data used in


                         na se
 your rules. For example, pov_entity instead of HS.Entity.Member


                       er U
 Variables improve performance because you can retrieve application data once and then


                    nt
 reuse the data throughout a procedure. For example, you could retrieve the year total for
 the Sales account from your Financial Management application and store it in a variable.
                  I
 You can then use the variable in a series of calculations in your procedure, instead of

          le
 retrieving the value from the application each time.

        c
O ra
 2-2                                     Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                             Lesson 2 Reducing Maintenance with Variables




    Creating Variables and Assigning Values

      Declare variables explicitly using Dim statements
      Create variables on the fly
      Enclose values in quotation marks to enter a literal text string

      vAcc1=”A#NetSales”
      vSalaryRate=300
      pov_entity=HS.Entity.Member



      You can concatenate variables with literal text strings

      HS.EXP "A#RetainedIncome=A#Profit" &vCustomTops& ".I#[ICP None]"
      HS.EXP "A#SalaryExpense=A#Headcount *" &vSalaryRate

                                                                                      m y
                                                                                  a de
                              Copyright © 2008, Oracle. All rights reserved.



                                                                               A c
                                    le
 Creating Variables and Assigning Values

                               r ac
 You can create variables explicitly using one or more Dim statements at the start of a
 subroutine. This method, called declaring the variables, enables you to look in a single
                              O ly
 place in a procedure when you want to reuse variables and need to remember their


                           l & On
 names.



                         na se
 You can also create variables on the fly. However, they are scattered throughout the
 procedure. This method makes it difficult to check variable names when you want to
 reuse them.


                    nt
 Dim Statement Syntax: er U
                  I
          le
 Dim VariableName

        c
 For example,


O ra
 Dim vAcc1



 Hyperion Financial Management 9.3.1: Create Rules                                       2-3
Module 1 Financial Management Rules Basics
 Lesson 2 Reducing Maintenance with Variables

 Variable name guidelines:
  • Must begin with an alphabetic character
  • Cannot contain an embedded period
  • Must not exceed 255 characters
  • Must be unique in the scope in which it is declared
 You can create multiple variables with a single Dim statement by separating the variable
 names with commas.
 Example
 Dim vAcc1, vAcc2, vAcc3

 You assign values to variables using an equal sign (=), with the variable name on the left
 and the value you want to assign the variable on the right. You can assign literal text
 strings, numeric values, return values of functions, or return values of expressions. If the
 variable does not exist, it is created on the fly. To assign a literal string value, you enclose
 the string in quotation marks. You do not need quotation marks to assign numeric values,
 function results, or expression results.

                                                                                           m y
                                                                                  de
 vCustomTops=”.C1#TopC1.C2#TopC3.C3#TopC3.C4#TopC4”
 vSalaryRate=300
 pov_entity=HS.Entity.Member

                                                                          c     a
 You can concatenate variables with literal text strings:
                                                                        A
                                     le
 HS.EXP “A#RetainedIncome=A#Profit"&vCustomTops&“.I#[ICP None]”


                                  ac
 HS.EXP “A#SalaryExpense=A#Headcount *"&vSalaryRate
                                r
                               O ly
 Notice that when the variable is at the end of the HS.Exp statement, it does not require a
 closing quotation mark.

                            l & On
                          na se
                     nt er U
                   I
         c le
O ra
 2-4                                   Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                                 Lesson 2 Reducing Maintenance with Variables




    Variables and Data Types

     VBScript assigns data types automatically.
     You can use conversion functions to force a data type.
        —   Cbool
        —   CDate
        —   CDbl
        —   CInt
        —   CLng
        —   CSng
        —   CStr




                                                                                            m y
                                                                                      a de
                                  Copyright © 2008, Oracle. All rights reserved.



                                                                                   A c
Variables and Data Types              le
                                 r ac
In VBScript, you cannot specify in advance that a variable holds only a particular data
type. Instead, you must use a variable known as a variant to store any data type.
                                O ly
When you assign a value to the variable, VBScript automatically assigns the data type.

                             l & On
Sometimes you may need to override the default data type. For example, you may need


                           na se
to store all values as integers.


                         er U
You can use conversion functions to explicitly set the data type:

 Function
 CBool              I nt
                    Description
                    Converts nonzero values to TRUE and zero values to FALSE.
 CDate
         c le       Converts an expression to a Date value.




O ra
 CDbl               Converts an expression to a Double value (a 64-bit floating point number).




Hyperion Financial Management 9.3.1: Create Rules                                                2-5
Module 1 Financial Management Rules Basics
 Lesson 2 Reducing Maintenance with Variables


  Function        Description
  CInt            Converts an expression to an Integer value. If the fractional part of the
                  expression is .5, CInt rounds the value to the nearest even number. For
                  example, 3.5 is rounded to 4, and 6.5 to 6. The value of integer data can
                  range from -32,768 to 32,767.
  CLng            Converts an expression to a Long value (an integer that can store a value
                  from -2,147,483,648 to 2,147,483,647).
  CSng            Converts an expression to a Single value (a 32-bit floating point number).
  CStr            Converts an expression to a String value.

 This example converts the result of the calculation to an integer and stores it in the
 variable vGM_Pct:
 vGM_Pct=CInt(vMargin/vNetSales*100)




                                                                                          m y
                                                                               a de
                                                                       A c
                                    le
                               r ac
                              O ly
                           l & On
                         na se
                    nt er U
                  I
         c le
O ra
 2-6                                  Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                              Lesson 2 Reducing Maintenance with Variables




    Variables and Constants

      You declare constants at the beginning of rules files.
      They are available to all procedures at all times.
      After you assign a value to a constant, you cannot change it.
      You can use constants anywhere in your code in place of actual values,
      just as you use variables.

       const ALL_NONE = ".I#[ICP None].C1#[None].C2#[None].C3#[None]"
       const ALL_TOPS = ".I#[ICP Top].C1#TopC1.C2#TopC2.C3#TopC3"




                                                                                        m y
                                                                                   a de
                               Copyright © 2008, Oracle. All rights reserved.



                                                                                A c
 Variables and Constants             le
                                r ac
 Variables can be used only in the Sub procedure in which they are created. Constants
 are similar to variables, but with these differences:
                               O ly
  • You can use constants in all Sub procedures within the script.

                            l & On
  • After you define a constant (that is, after it has been assigned a value), you cannot
    change it.
                          na se
                     nt er U
 You can declare constants anywhere in the script file. If constants are declared at the
 beginning of the file, outside of any procedure, they are available to all procedures at all

                   I
 times. If constants are declared within a procedure, they are available only for that

          le
 procedure.

        c
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                        2-7
Module 1 Financial Management Rules Basics
 Lesson 2 Reducing Maintenance with Variables

 You can use constants to store application information that you use frequently but that
 does not change. For example, you can create constants to store member names that
 are used frequently within account expressions. By using a short constant name in place
 of a long string of member names, you reduce the likelihood of errors. In Financial
 Management rules, you typically use constants to store information that does not vary
 with the Point of View settings for which the rules are run.
 Unlike variables, you must explicitly declare constants. They cannot be created on the
 fly.
 Syntax
 const Name=Value

 where Name is the name of the constant and Value is the value of the constant. The
 rules for naming constants are the same as for variables. This example creates a
 constant named AVE and assigns it a string as a value:
 Example
 const AVE=”.A#AverageRate”

 A naming convention for constants is to use uppercase for names and underscores as
                                                                                    m y
                                                                           de
 separators, as in this example:
 const PRIOR_YEAR_RATE=75

                                                                    c    a
 You cannot use functions to assign values to constants. This statement returns an error:
                                                                  A
                                    le
 const CURRENT_ENTITY=HS.Entity.Member



                               r ac
                              O ly
                           l & On
                         na se
                    nt er U
                  I
          c le
O ra
 2-8                                Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                              Lesson 2 Reducing Maintenance with Variables



    Creating Header Sections
    for Variables and Constants

    These are some typical types of information stored in header section
    variables:
      The current POV members for the POV dimensions
       pov_entity = HS.Entity.Member
       pov_scenario = HS.Scenario.Member
       pov_value = HS.Value.Member

      Top and [None] members for custom and ICP dimensions; global
      accounts
       ALL_NONE = ".I#[ICP None].C1#[None].C2#[None].C3#[None].C4#[None]"
       ALL_TOPS = ".I#[ICP Top].C1#TopC1.C2#TopC2.C3#TopC3.C4#TopC4"

      Triggers for conditional statements
       vIs_Trans = HS.Value.IsTransCur                      'This yields a True or False
                                                                                        m y
                                                                                     de
       vIs_base = HS.Entity.IsBase("","")                    'This yields a True or False


                               Copyright © 2008, Oracle. All rights reserved.

                                                                                  ca
                                                                                A
                                    le
 Creating Header Sections for Variables and Constants

                               r ac
 It is a useful practice to create a standard header section in your Sub procedures with
 variables for frequently used information for your application. For application information
                              O ly
 that does not changed based on the Point of View, you can create a constants header


                           l & On
 section at the beginning of the rules file.



                         na se
 These are some common types of information to include in a header section:


                       er U
  • Current Point of View members for page dimensions


                    nt
  • Top and None members for custom and ICP dimensions

                  I
  • Global account members


        c le
  • Conditional statement triggers



O ra
 Hyperion Financial Management 9.3.1: Create Rules                                          2-9
Module 1 Financial Management Rules Basics
 Lesson 2 Reducing Maintenance with Variables

 Point of View Variables
 Information about the current Point of View members for the Entity, Scenario, Year, and
 Value dimensions is typically used throughout a Sub procedure. Instead of repeatedly
 retrieving this information from the application, you can retrieve it once at the beginning
 of the procedure and store it in a variable. You can then use the value stored in the
 variable when a rule requires Point of View information.
 You retrieve the Point of View using the Member function. For example,
 HS.Entity.Member retrieves the current Entity POV member. Because the values change
 based on the current Point of View, you should use variables rather than constants.

        TIP
        For the variable for the current period, you can use HS.Period.Number instead of
        HS.Period.Member. Because the fiscal year can start on different months in
        different applications, if you use period numbers rather than member names, it is
        easier to reuse your rules in more than one application.



 Top and None Members for Custom and ICP Dimensions
 Custom and ICP dimensions in account expressions often need to be set to the top
                                                                                       m y
                                                                              de
 member or the [None] member. This can result in a long expression that is difficult both
 to type and to read.
 Example
                                                                       c    a
 HS.EXP “A#RetainedIncome=A#Profit".I#[ICP Top].C1#TopC1.C2#TopC2&” _A
        “.C3#TopC3.C4#TopC4"
                                    le
                               r ac
 To simplify your code, you can store the text string for custom and ICP members in a
 variable or constant, as in this example:
                              O ly
 const All_TOPS=”.I#[ICP Top].C1#TopC1.C2#TopC2.C3#TopC3.C4#TopC4"

                           l & On
 You can then use the constant or variable in the account expression in place of the
 string:
                         na se
                       er U
 HS.EXP “A#RetainedIncome=A#Profit" &All_TOPS

                    nt
                  I
 Because the custom and top member names do not change when the Point of View
 changes, you can use constants instead of variables.


        c le
O ra
 2-10                                 Hyperion Financial Management 9.3.1: Create Rules
Module 1 Financial Management Rules Basics
                                           Lesson 2 Reducing Maintenance with Variables

 Global Accounts
 You frequently need to refer to global accounts in your rules, such as the accounts used
 to store exchange rates or head count. You can create variables or constants for these
 accounts and then use them throughout your file. For example:
 vHead=”.A#HeadCount”
 vEfx=”.A#EndingRate”

 Because the global member names do not change when the Point of View changes, you
 can use constants instead of variables.


 Conditional Statement Triggers
 Financial Management provides a number of functions that return a value of true or false.
 You can use these functions as tests in conditional statements. For example, before
 executing a rule, you might test whether it is true or false that the current year is the first
 year in the application or that the current entity is a base entity.
 To make your rules file more efficient, you can perform the test once and store the result
 in a variable in your header section. For example:
 vIsBase = HS.Entity.IsBase("","")
                                                                                          m y
 Boolean values, a value of True is assumed as the test.
                                                                               a de
 You can then use the variable as needed in conditional statements. Because they are


 If vIsBase Then
                                                                       A c
                                     le
    HS.EXP “A#Sales=A#UnitsSold * A#Price”


                                  ac
 End If


                                r
 You can use the Not keyword to test for a false condition. This statement executes only if

                               O ly
 the entity is not a base member:



                            l & On
 If Not vIsBase Then
    HS.EXP “A#Sales=A#UnitsSold * A#Price”


                          na se
 End If


                        er U
 For clarity in your code, you can specify True or False as the condition:
 If vIsBase=True Then
                   I nt
    HS.EXP “A#Sales=A#UnitsSold * A#Price”
 End If

         c le
O ra
 Hyperion Financial Management 9.3.1: Create Rules                                         2-11
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide
D53155 hfm 9.3.1_rules_student_guide

Weitere ähnliche Inhalte

Was ist angesagt?

HFM Zero view settings
HFM Zero view settings HFM Zero view settings
HFM Zero view settings faizan uddin
 
Oracle fccs creating new application
Oracle fccs creating new applicationOracle fccs creating new application
Oracle fccs creating new applicationRati Sharma
 
Finit solutions getting the most out of hfm - intercompany matching and eli...
Finit solutions   getting the most out of hfm - intercompany matching and eli...Finit solutions   getting the most out of hfm - intercompany matching and eli...
Finit solutions getting the most out of hfm - intercompany matching and eli...finitsolutions
 
Finit - Creative Solutions for FX Analysis in HFM
Finit - Creative Solutions for FX Analysis in HFM Finit - Creative Solutions for FX Analysis in HFM
Finit - Creative Solutions for FX Analysis in HFM finitsolutions
 
KScope14 What Would Happen in HFM - Part 3
KScope14 What Would Happen in HFM - Part 3KScope14 What Would Happen in HFM - Part 3
KScope14 What Would Happen in HFM - Part 3Alithya
 
Beginning Calculation Manager for Essbase and Hyperion Planning
Beginning Calculation Manager for Essbase and Hyperion Planning Beginning Calculation Manager for Essbase and Hyperion Planning
Beginning Calculation Manager for Essbase and Hyperion Planning Alithya
 
Understanding HFM System Tables
Understanding HFM System TablesUnderstanding HFM System Tables
Understanding HFM System Tablesaa026593
 
KSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope Format
KSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope FormatKSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope Format
KSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope FormatAlexandre SERAN
 
Oracle FCCS Getting Started Guide II
Oracle FCCS Getting Started Guide IIOracle FCCS Getting Started Guide II
Oracle FCCS Getting Started Guide IIRati Sharma
 
FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1Van Huy
 
Finit solutions getting the most out of hfm - web data forms tips and tricks
Finit solutions   getting the most out of hfm - web data forms tips and tricksFinit solutions   getting the most out of hfm - web data forms tips and tricks
Finit solutions getting the most out of hfm - web data forms tips and tricksfinitsolutions
 
Hfm demo (1)
Hfm demo (1)Hfm demo (1)
Hfm demo (1)rsreenu
 
ODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data Management
ODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data ManagementODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data Management
ODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data ManagementFrancisco Amores
 
Dimensionality & Dimensions of Hyperion Planning
Dimensionality & Dimensions of Hyperion PlanningDimensionality & Dimensions of Hyperion Planning
Dimensionality & Dimensions of Hyperion Planningepmvirtual.com
 
Finit solutions getting the most out of hfm process management and phased sub...
Finit solutions getting the most out of hfm process management and phased sub...Finit solutions getting the most out of hfm process management and phased sub...
Finit solutions getting the most out of hfm process management and phased sub...finitsolutions
 
03. data forms in hyperion planning
03. data forms in hyperion planning03. data forms in hyperion planning
03. data forms in hyperion planningepmvirtual.com
 
Oracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best PracticesOracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best PracticesIssam Hejazin
 

Was ist angesagt? (20)

HFM Zero view settings
HFM Zero view settings HFM Zero view settings
HFM Zero view settings
 
Oracle hyperion financial management
Oracle hyperion financial managementOracle hyperion financial management
Oracle hyperion financial management
 
Hfm intro
Hfm introHfm intro
Hfm intro
 
Oracle fccs creating new application
Oracle fccs creating new applicationOracle fccs creating new application
Oracle fccs creating new application
 
Finit solutions getting the most out of hfm - intercompany matching and eli...
Finit solutions   getting the most out of hfm - intercompany matching and eli...Finit solutions   getting the most out of hfm - intercompany matching and eli...
Finit solutions getting the most out of hfm - intercompany matching and eli...
 
Finit - Creative Solutions for FX Analysis in HFM
Finit - Creative Solutions for FX Analysis in HFM Finit - Creative Solutions for FX Analysis in HFM
Finit - Creative Solutions for FX Analysis in HFM
 
KScope14 What Would Happen in HFM - Part 3
KScope14 What Would Happen in HFM - Part 3KScope14 What Would Happen in HFM - Part 3
KScope14 What Would Happen in HFM - Part 3
 
Beginning Calculation Manager for Essbase and Hyperion Planning
Beginning Calculation Manager for Essbase and Hyperion Planning Beginning Calculation Manager for Essbase and Hyperion Planning
Beginning Calculation Manager for Essbase and Hyperion Planning
 
Understanding HFM System Tables
Understanding HFM System TablesUnderstanding HFM System Tables
Understanding HFM System Tables
 
KSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope Format
KSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope FormatKSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope Format
KSCope 2013 - Balance Sheet Reporting - Design Consideration - KSCope Format
 
Oracle FCCS Getting Started Guide II
Oracle FCCS Getting Started Guide IIOracle FCCS Getting Started Guide II
Oracle FCCS Getting Started Guide II
 
FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1
 
Finit solutions getting the most out of hfm - web data forms tips and tricks
Finit solutions   getting the most out of hfm - web data forms tips and tricksFinit solutions   getting the most out of hfm - web data forms tips and tricks
Finit solutions getting the most out of hfm - web data forms tips and tricks
 
Oracle FCCS: A Deep Dive
Oracle FCCS: A Deep DiveOracle FCCS: A Deep Dive
Oracle FCCS: A Deep Dive
 
Hfm demo (1)
Hfm demo (1)Hfm demo (1)
Hfm demo (1)
 
ODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data Management
ODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data ManagementODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data Management
ODTUG KSCOPE 2018 - REST APIs for FDMEE and Cloud Data Management
 
Dimensionality & Dimensions of Hyperion Planning
Dimensionality & Dimensions of Hyperion PlanningDimensionality & Dimensions of Hyperion Planning
Dimensionality & Dimensions of Hyperion Planning
 
Finit solutions getting the most out of hfm process management and phased sub...
Finit solutions getting the most out of hfm process management and phased sub...Finit solutions getting the most out of hfm process management and phased sub...
Finit solutions getting the most out of hfm process management and phased sub...
 
03. data forms in hyperion planning
03. data forms in hyperion planning03. data forms in hyperion planning
03. data forms in hyperion planning
 
Oracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best PracticesOracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best Practices
 

Andere mochten auch

What Would Happen if I Did... in HFM?
What Would Happen if I Did... in HFM? What Would Happen if I Did... in HFM?
What Would Happen if I Did... in HFM? Alithya
 
Oracle hfm beginner's guide part i
Oracle hfm beginner's guide  part iOracle hfm beginner's guide  part i
Oracle hfm beginner's guide part iAmit Sharma
 
Advanced Topics in Calc Manager for HFM
Advanced Topics in Calc Manager for HFMAdvanced Topics in Calc Manager for HFM
Advanced Topics in Calc Manager for HFMAlithya
 
A decade of hits: The evolution of hyperion financial management
A decade of hits: The evolution of hyperion financial managementA decade of hits: The evolution of hyperion financial management
A decade of hits: The evolution of hyperion financial managementAlithya
 
Product Spotlight: Oracle Financial Close Management (FCM)
Product Spotlight: Oracle Financial Close Management (FCM)Product Spotlight: Oracle Financial Close Management (FCM)
Product Spotlight: Oracle Financial Close Management (FCM)InnovusPartners
 
Getting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFMGetting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFMAlithya
 
Hyperion LCM Utility
Hyperion LCM UtilityHyperion LCM Utility
Hyperion LCM UtilityAmit Sharma
 
Hyperion Financial Management Application Design for Performance
Hyperion Financial Management Application Design for PerformanceHyperion Financial Management Application Design for Performance
Hyperion Financial Management Application Design for PerformanceAlithya
 
Refrigrationairconditioning 140423035013-phpapp01 (1)
Refrigrationairconditioning 140423035013-phpapp01 (1)Refrigrationairconditioning 140423035013-phpapp01 (1)
Refrigrationairconditioning 140423035013-phpapp01 (1)Parth Bhingaradiya
 
Budgeting using hyperion planning vs essbase
Budgeting using hyperion planning vs essbaseBudgeting using hyperion planning vs essbase
Budgeting using hyperion planning vs essbaseSyntelli Solutions
 
Finit Hyperion Planning & PBCS Simplified User Interface
Finit  Hyperion Planning & PBCS Simplified User InterfaceFinit  Hyperion Planning & PBCS Simplified User Interface
Finit Hyperion Planning & PBCS Simplified User Interfacefinitsolutions
 
Key Success Criteria for Hyperion Planning and HFM Integration
Key Success Criteria for Hyperion Planning and HFM IntegrationKey Success Criteria for Hyperion Planning and HFM Integration
Key Success Criteria for Hyperion Planning and HFM IntegrationAlithya
 
Key Considerations for a Successful Hyperion Planning Implementation
Key Considerations for a Successful Hyperion Planning ImplementationKey Considerations for a Successful Hyperion Planning Implementation
Key Considerations for a Successful Hyperion Planning ImplementationAlithya
 

Andere mochten auch (14)

What Would Happen if I Did... in HFM?
What Would Happen if I Did... in HFM? What Would Happen if I Did... in HFM?
What Would Happen if I Did... in HFM?
 
Oracle hfm beginner's guide part i
Oracle hfm beginner's guide  part iOracle hfm beginner's guide  part i
Oracle hfm beginner's guide part i
 
Advanced Topics in Calc Manager for HFM
Advanced Topics in Calc Manager for HFMAdvanced Topics in Calc Manager for HFM
Advanced Topics in Calc Manager for HFM
 
A decade of hits: The evolution of hyperion financial management
A decade of hits: The evolution of hyperion financial managementA decade of hits: The evolution of hyperion financial management
A decade of hits: The evolution of hyperion financial management
 
Hfm lcm
Hfm lcmHfm lcm
Hfm lcm
 
Product Spotlight: Oracle Financial Close Management (FCM)
Product Spotlight: Oracle Financial Close Management (FCM)Product Spotlight: Oracle Financial Close Management (FCM)
Product Spotlight: Oracle Financial Close Management (FCM)
 
Getting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFMGetting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFM
 
Hyperion LCM Utility
Hyperion LCM UtilityHyperion LCM Utility
Hyperion LCM Utility
 
Hyperion Financial Management Application Design for Performance
Hyperion Financial Management Application Design for PerformanceHyperion Financial Management Application Design for Performance
Hyperion Financial Management Application Design for Performance
 
Refrigrationairconditioning 140423035013-phpapp01 (1)
Refrigrationairconditioning 140423035013-phpapp01 (1)Refrigrationairconditioning 140423035013-phpapp01 (1)
Refrigrationairconditioning 140423035013-phpapp01 (1)
 
Budgeting using hyperion planning vs essbase
Budgeting using hyperion planning vs essbaseBudgeting using hyperion planning vs essbase
Budgeting using hyperion planning vs essbase
 
Finit Hyperion Planning & PBCS Simplified User Interface
Finit  Hyperion Planning & PBCS Simplified User InterfaceFinit  Hyperion Planning & PBCS Simplified User Interface
Finit Hyperion Planning & PBCS Simplified User Interface
 
Key Success Criteria for Hyperion Planning and HFM Integration
Key Success Criteria for Hyperion Planning and HFM IntegrationKey Success Criteria for Hyperion Planning and HFM Integration
Key Success Criteria for Hyperion Planning and HFM Integration
 
Key Considerations for a Successful Hyperion Planning Implementation
Key Considerations for a Successful Hyperion Planning ImplementationKey Considerations for a Successful Hyperion Planning Implementation
Key Considerations for a Successful Hyperion Planning Implementation
 

Ähnlich wie D53155 hfm 9.3.1_rules_student_guide

Determination of individual competencies by statistical methods yuksek lisans...
Determination of individual competencies by statistical methods yuksek lisans...Determination of individual competencies by statistical methods yuksek lisans...
Determination of individual competencies by statistical methods yuksek lisans...Tulay Bozkurt
 
Sales and operations planning a research synthesis
Sales and operations planning  a research synthesisSales and operations planning  a research synthesis
Sales and operations planning a research synthesisWallace Almeida
 
Bim deployment plan_final
Bim deployment plan_finalBim deployment plan_final
Bim deployment plan_finalHuytraining
 
Ibm enterprise it and asset management 7.1 java for customization training
Ibm enterprise it and asset management 7.1 java for customization trainingIbm enterprise it and asset management 7.1 java for customization training
Ibm enterprise it and asset management 7.1 java for customization trainingHal Izi
 
Business Plan Group 4 E-Vita copy
Business Plan Group 4 E-Vita copyBusiness Plan Group 4 E-Vita copy
Business Plan Group 4 E-Vita copyAbhishek Patel
 
1ux2y54tcwomq2gtx7pd
1ux2y54tcwomq2gtx7pd1ux2y54tcwomq2gtx7pd
1ux2y54tcwomq2gtx7pdJuanfe1978
 
Develop a portfolio to demonstrate school leadership and management competenc...
Develop a portfolio to demonstrate school leadership and management competenc...Develop a portfolio to demonstrate school leadership and management competenc...
Develop a portfolio to demonstrate school leadership and management competenc...Saide OER Africa
 
Optimizing the Benefits of EDM and SOA Strategies Through Coordination
Optimizing the Benefits of EDM and SOA Strategies Through CoordinationOptimizing the Benefits of EDM and SOA Strategies Through Coordination
Optimizing the Benefits of EDM and SOA Strategies Through CoordinationKeith Worfolk
 
Pmp exam prepboothp
Pmp exam prepboothpPmp exam prepboothp
Pmp exam prepboothplookwah
 
Iia nl combining functions 2014
Iia nl combining functions 2014Iia nl combining functions 2014
Iia nl combining functions 2014Halimy Abdul Hamid
 
IIA NL IAF.combining functions
IIA NL IAF.combining functionsIIA NL IAF.combining functions
IIA NL IAF.combining functionsMichel Kee
 
Power shell desired state configuration for Devops and ALM practitioners
Power shell desired state configuration for Devops and ALM practitionersPower shell desired state configuration for Devops and ALM practitioners
Power shell desired state configuration for Devops and ALM practitionersWilly Marroquin (WillyDevNET)
 
Data replication (software)
Data replication (software) Data replication (software)
Data replication (software) Masoud Gholami
 

Ähnlich wie D53155 hfm 9.3.1_rules_student_guide (20)

Determination of individual competencies by statistical methods yuksek lisans...
Determination of individual competencies by statistical methods yuksek lisans...Determination of individual competencies by statistical methods yuksek lisans...
Determination of individual competencies by statistical methods yuksek lisans...
 
Sales and operations planning a research synthesis
Sales and operations planning  a research synthesisSales and operations planning  a research synthesis
Sales and operations planning a research synthesis
 
Bim deployment plan_final
Bim deployment plan_finalBim deployment plan_final
Bim deployment plan_final
 
Ibm enterprise it and asset management 7.1 java for customization training
Ibm enterprise it and asset management 7.1 java for customization trainingIbm enterprise it and asset management 7.1 java for customization training
Ibm enterprise it and asset management 7.1 java for customization training
 
Business Plan Group 4 E-Vita copy
Business Plan Group 4 E-Vita copyBusiness Plan Group 4 E-Vita copy
Business Plan Group 4 E-Vita copy
 
1ux2y54tcwomq2gtx7pd
1ux2y54tcwomq2gtx7pd1ux2y54tcwomq2gtx7pd
1ux2y54tcwomq2gtx7pd
 
Develop a portfolio to demonstrate school leadership and management competenc...
Develop a portfolio to demonstrate school leadership and management competenc...Develop a portfolio to demonstrate school leadership and management competenc...
Develop a portfolio to demonstrate school leadership and management competenc...
 
121cash mgmt
121cash mgmt121cash mgmt
121cash mgmt
 
Create
CreateCreate
Create
 
Optimizing the Benefits of EDM and SOA Strategies Through Coordination
Optimizing the Benefits of EDM and SOA Strategies Through CoordinationOptimizing the Benefits of EDM and SOA Strategies Through Coordination
Optimizing the Benefits of EDM and SOA Strategies Through Coordination
 
Pmp exam prepboothp
Pmp exam prepboothpPmp exam prepboothp
Pmp exam prepboothp
 
Inventory_user_guide.pdf
Inventory_user_guide.pdfInventory_user_guide.pdf
Inventory_user_guide.pdf
 
Rand rr2364
Rand rr2364Rand rr2364
Rand rr2364
 
Iia nl combining functions 2014
Iia nl combining functions 2014Iia nl combining functions 2014
Iia nl combining functions 2014
 
IIA NL IAF.combining functions
IIA NL IAF.combining functionsIIA NL IAF.combining functions
IIA NL IAF.combining functions
 
Evaluating Your Program
Evaluating Your ProgramEvaluating Your Program
Evaluating Your Program
 
Oxford Brookes ACCA RAP Thesis Topic-8, Writing and Mentoring Services
Oxford Brookes ACCA RAP Thesis Topic-8, Writing and Mentoring ServicesOxford Brookes ACCA RAP Thesis Topic-8, Writing and Mentoring Services
Oxford Brookes ACCA RAP Thesis Topic-8, Writing and Mentoring Services
 
Power shell desired state configuration for Devops and ALM practitioners
Power shell desired state configuration for Devops and ALM practitionersPower shell desired state configuration for Devops and ALM practitioners
Power shell desired state configuration for Devops and ALM practitioners
 
U M Lvs I D E F
U M Lvs I D E FU M Lvs I D E F
U M Lvs I D E F
 
Data replication (software)
Data replication (software) Data replication (software)
Data replication (software)
 

Kürzlich hochgeladen

URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfUmakantAnnand
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersChitralekhaTherkar
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 

Kürzlich hochgeladen (20)

URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.Compdf
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of Powders
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 

D53155 hfm 9.3.1_rules_student_guide

  • 1. Hyperion Financial Management 9.3.1 Create Rules m y de Student Guide ca A le r ac O ly l & On na se D52786GC10 er U Edition 1.0 January 2008 D53155 I nt c le ® O ra
  • 2. Author Copyright © 2008, Oracle. All rights reserved. Mark Mitsock Disclaimer This document contains proprietary information and is protected by copyright and Technical Contributors other intellectual property laws. You may copy and print this document solely for your and Reviewers own use in an Oracle training course. The document may not be modified or altered in any way. Except where your use constitutes "fair use" under copyright law, you may Keith Glide not use, share, download, upload, copy, print, display, perform, reproduce, publish, license, post, transmit, or distribute this document in whole or in part without the Jennifer Hough express authorization of Oracle. Daniel Tijerina The information contained in this document is subject to change without notice. If you find any problems in the document, please report them in writing to: Oracle University, Editor 500 Oracle Parkway, Redwood Shores, California 94065 USA. This document is not warranted to be error-free. Susan Moxley Restricted Rights Notice Graphic Designer If this documentation is delivered to the United States Government or anyone using the documentation on behalf of the United States Government, the following notice is Carisa Cannan applicable: U.S. GOVERNMENT RIGHTS Publisher The U.S. Government’s rights to use, modify, reproduce, release, perform, display, or Judy Gaitan disclose these training materials are restricted by the terms of the applicable Oracle license agreement and/or the applicable U.S. Government contract. Trademark Notice Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. m y a de A c le r ac O ly l & On na se nt er U I c le O ra
  • 3. Table of Contents 0 Preface Course Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii Course Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Course Materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Student Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Activity Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Module 1: Financial Management Rules Basics Lesson 1: Reviewing Rules Syntax About Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2 Describing Objects and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 Creating Rules Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 m y de HS.Exp Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8 Account Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10 c a Destination Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-11 A Source Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-11 Adding Operators and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12 le Period and Year Keywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13 r ac Placing Other Functions Within Exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13 Identifying Rule Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14 O ly Identifying Sub Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16 l & On Adding Comments to Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18 Inserting Line Continuations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19 na se Creating Conditional Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21 er U Applying If...Then...Else Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22 nt Making Decisions with Select Case Statements . . . . . . . . . . . . . . . . . . . . . . . . . 1-24 Comparing Strings in Financial Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25 I UCase Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26 c le LCase Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26 Left Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26 O ra Right Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27
  • 4. Table of Contents Lesson 2: Reducing Maintenance with Variables About VB Script Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 Creating Variables and Assigning Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 Variables and Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5 Variables and Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 Creating Header Sections for Variables and Constants. . . . . . . . . . . . . . . . . . . . . . . . 2-9 Point of View Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 Top and None Members for Custom and ICP Dimensions . . . . . . . . . . . . . . . . . 2-10 Global Accounts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-11 Conditional Statement Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-11 Lesson 3: Managing the Scope of Rules Subcubes and Data Retrieval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 Financial Management Subcubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 Subcube Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 Subcubes and Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5 Subcubes and Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7 The Left Side of HS.Exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7 Page Dimensions and HS.Exp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 m y de Managing the Scope of Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-11 c a Omitting Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12 Specifying the Destination Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 A Specifying Source Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 le Mismatched Custom Dimensions (Example 1) . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 ac Mismatched Custom Dimensions (Example 2) . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17 Executing Rules with the Value Dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19 r Sub Calculate and the Value Dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21 O ly Working with Total Members . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23 l & On Lesson 4: Creating Rules for Dynamic Accounts na se er U Dynamic Account Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 Sub Dynamic Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3 I nt Creating Rules for Dynamic Accounts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Functions Valid with HS.Dynamic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4 4-6 c le O ra iv Hyperion Financial Management 9.3.1: Create Rules
  • 5. Table of Contents Module 2: Creating Procedures, Loops, and Arrays Lesson 5: Creating Custom Procedures Creating Custom Sub Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 Calling Custom Sub Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4 Creating Custom Function Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 Calling Custom Function Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8 Troubleshooting with Logging Procedures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9 Writing to Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10 Calling Write to File Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14 Managing Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16 DeleteFile Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17 FileExists Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17 GetFile Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17 MoveFile Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18 Size Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18 Lesson 6: Creating Arrays and Loops m y de Arrays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2 Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3 c a Arrays and Loops in Rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 A Creating Array Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 Filling Arrays Using Member Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7 le Creating Loops. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8 r ac For...Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8 For Each...Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 O ly Do...Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 l & On Assigning Values with Arrays and Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-12 Attributes in Loops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 na se Loops and Data Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-15 er U Opening Data Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16 nt Creating Loops With Data Units. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18 I le Module 3: Working with Data and Hierarchies c Lesson 7: Managing Financial Management Data O ra Retrieving and Writing Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2 Hyperion Financial Management 9.3.1: Create Rules v
  • 6. Table of Contents Testing for No Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4 Setting Accounts to No Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-6 Setting Parent Entities to Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-8 Rounding and Scaling Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10 Rounding and Scaling with HS.Round. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-12 Lesson 8: Working with Dimension Hierarchies Working with the Calendar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2 Preventing Prior and Next from Crossing into Invalid Years . . . . . . . . . . . . . . . . . 8-3 Populating Days in Period Accounts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5 Managing Calculation Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6 Managing Movement Accounts and Data Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8 Avoiding Circular Calculations in Hierarchies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10 Creating Allocations Using Sub Allocate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12 Running the Sub Allocate Procedure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-13 Using the Alloc Function to Create Allocation Rules . . . . . . . . . . . . . . . . . . . . . . 8-15 Module 4: Creating Custom Translations and Consolidations m y Lesson 9: Creating Currency Translation Rules a de A c About Translating Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2 Currency and Exchange Rate Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 le Translation Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5 ac Default Translation Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7 Creating Custom Translation Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9 r Translation Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-11 O ly Calculating Exchange Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-13 l & On Working with Currency Overrides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15 na se Lesson 10: Creating Consolidation and Elimination Rules nt er U Default Consolidation Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2 Creating Consolidation Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4 I Consolidation Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 c le Consolidation Procedure Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-9 Testing for Eliminations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-11 O ra vi Hyperion Financial Management 9.3.1: Create Rules
  • 7. Preface 0 Welcome to Hyperion Financial Management 9.3.1: Create Rules! Before you begin, please take a moment to review this section. The preface presents an overview of: • The course objectives • The course structure • The course materials • Writing conventions used in this manual • Additional resources to enhance your learning m y de • Relevant follow-up courses you might want to attend in the future Course Objectives c a A After completing this course, you should be able to: le • Reduce database size and calculation time by proper use of the r ac custom and value dimensions in rules • Calculate percentages and ratios using rules for dynamic accounts O ly • Create custom procedures, functions, loops, and arrays in rules l & On • Create rules with proper data handling techniques na se • Create allocation rules er U • Create custom currency translation rules nt I• Create custom consolidation and elimination rules c le O ra
  • 8. Preface Course Structure Hyperion Financial Management 9.3.1: Create Rules is a 3-day, instructor-led training course consisting of lectures, demonstrations, and hands-on exercises. In this course, the instructor presents a topic conceptually by explaining its purpose, demonstrating how it works, and then guiding the students through the exercises. Demonstrations and hands-on exercises reinforce the concepts and skills introduced during lectures. Course Materials You use two books in class—the student guide and the student workbook. The instructor may also give you handouts. Student Guide The student guide is designed to be used by students and the instructor during lecture time. It has four modules: • Module 1 describes the basics of Financial Managment rules. • Module 2 describes how to create custom Sub and Function procedures. You learn to create rules using arrays and loops. m y • Module 4 describes how to customize the default currency translation and a de • Module 3 describes how to work with Financial Management data and hierarchies. consolidation calculations. A c le Each module contains lessons. Each lesson begins with a list of objectives followed by the presentation of slides and accompanying text. The lesson ends with a summary of the topics covered in the lesson. r ac A glossary provides definitions of terms used during the course. O ly Activity Guide l & On na se The activity guide has two sections—exercises and exercise solutions. Exercises nt er U A critical part of the learning process is the challenge of completing real tasks associated I with each lesson. Each exercise is an opportunity to apply your new knowledge. c le Exercise Solutions O ra The exercise solutions present the detailed steps to successfully complete the exercises. viii Hyperion Financial Management 9.3.1: Create Rules
  • 9. Preface Conventions The following text conventions are used in this course book: • Text to be typed, options to be selected, names of files and modules, and menu selections are displayed in bold type. Examples: - Select Clear Profile. - To clear the profile, click Yes. • Keyboard shortcuts are displayed as follows: Ctrl+Enter For the example, you would press the Ctrl key and the Enter key at the same time. Tips and Notes are used to direct your attention to different types of information. NOTE A note provides related information, common mistakes, and cautions about the current topic. m y a de A c le r ac O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules ix
  • 10. Preface m y a de A c le r ac O ly l & On na se nt er U I c le O ra x Hyperion Financial Management 9.3.1: Create Rules
  • 11. M O D U L E 1 Financial Management Rules Basics 0 Overview In this module you learn the basics for creating Financial Management rules. Lessons in this module include: • Reviewing Rules Syntax • Reducing Maintenance with Variables • Managing the Scope of Rules • Creating Rules for Dynamic Accounts m y a de A c le r ac O ly l & On na se nt er U I c le O ra
  • 12. m y a de A c le r ac O ly l & On na se nt er U I c le O ra
  • 13. L E S S O N 1 Reviewing Rules Syntax 1 Objectives At the end of this lesson, you should be able to: • Explain the purpose of rules in Financial Management • Describe objects and functions in expressions • Create rules expressions • Identify Financial Management rule types • Distinguish between Sub procedures • Add comments and line breaks m y • Create conditional statements and compare strings a de A c le r ac O ly l & On na se nt er U I c le O ra
  • 14. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax About Rules Hyperion Financial Management rules provide powerful, customized calculations that you can use to perform the following tasks: Calculate data that cannot be calculated through a hierarchical aggregation, such as ratios or variance analyses Perform complex currency conversions and calculate exchange rate differences or other calculations necessary for consolidation Prevent data entry for a specific cell Perform allocations from a parent entity to a list of base entities Enable data entry to a parent entity Perform custom consolidations for statutory reporting requirements m y a de Copyright © 2008, Oracle. All rights reserved. A c About Rules le r ac You use rules to perform calculations that you cannot define through parent-child relationships in the dimension hierarchy. For example, you can create a rule to calculate O ly the value of the Salaries member by multiplying the Headcount member by the l & On SalaryRate member. na se nt er U I c le O ra 1-2 Hyperion Financial Management 9.3.1: Create Rules
  • 15. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Describing Objects and Functions Objects represent elements of a Financial Management application, such as dimensions. Functions represent actions that a rule can perform, such as retrieving a value. You write rules statement by applying functions to objects. Not all functions are valid for all objects. Object Function HS.Entity.DefCurrency This statement uses the DefCurrency function to retrieve the default currency of an entity. HS.Scenario.DefCurrency The DefCurrency function is invalid here because scenarios do not have currencies. m y a de Copyright © 2008, Oracle. All rights reserved. A c Describing Objects and Functions le r ac A programming language consists of its own vocabulary and grammar. Objects are equivalent to nouns in programming languages. For example, in Financial Management, O ly the Entity object represents the Entity dimension, the Account object represents the l & On Account dimension, and so on. Functions are the verbs that express the actions of a programming language. na se To create rules, you should be familiar with these basic principles about objects: nt er U • Objects contain their own sets of functions. For example, you can use certain functions only with the Period object. I • Objects can be children of other objects. c le For example, the top-level object in Financial Management is named HS. The HS object contains some functions and several other objects. O ra • When you write rules, you use dot notation (dot) to separate objects from other objects and functions. Hyperion Financial Management 9.3.1: Create Rules 1-3
  • 16. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax The following table lists the functions by object for Financial Management rules: Object Function HS ABSExp Alloc CalcStatus Clear Con Exp Dynamic GetCell GetCellNoData GetCellRealData GetCellType GetRate ImpactStatus Input NoInput NoRound OpenDataUnit ReviewStatus Round m y de SetData SetDataWithPOV Trans TransPeriodic c a Account AccountType A C1...4 Top le ac IsBase IsChild r IsConsolidated O ly IsDescendant IsICP l & On List NumBase na se NumChild er U NumDescendant PlugAccount nt SecurityClass I UD1...3 ValidationAccount c le XBRLTags O ra 1-4 Hyperion Financial Management 9.3.1: Create Rules
  • 17. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Object Function AppSettings Currency ICPWeight PVAForBalance PVAForFlow RateForBalance RateForFlow Currency Scale Custom1, IsBase Custom2, IsDescendant Custom3, and List Custom4 NumBase NumChild NumDescendant SecurityClass SwitchSign SwitchType UD1...3 DataUnit GetItem GetItemIds2 m y de GetNumItems Entity AllowAdjs AllowAdjsFromChildren DefCurrency c a Holding A IsBase le ac IsChild IsDescendant IsICP List r O ly l & On Member NumBase na se NumChild NumDescendant nt er U SecurityAsPartner SecurityClass I UD1...3 le ICP List c O ra Hyperion Financial Management 9.3.1: Create Rules 1-5
  • 18. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Object Function Node Consol1...3 DOwn IsBase IsChild IsDescendant List Method NumBase NumChild NumDescendant PCon POwn Parent DefCurrency Holding IsBase IsChild IsDescendant IsICP List Member m y NumBase NumChild a de NumDescendant UD1...3 A c le Period IsFirst IsLast List Member r ac NumBase Number O ly Scenario l & On ConsolidateYTD na se DefaultFreq DefaultView List nt er U Member INumPeriods SecurityClass c le UD1...3 O ra 1-6 Hyperion Financial Management 9.3.1: Create Rules
  • 19. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Object Function Value Currency IsTransCur IsTransCurAdj Member Year IsFirst IsLast Member m y a de A c le r ac O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-7
  • 20. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Creating Rules Expressions You can create rules expressions to assign values to accounts: You use the HS.Exp function with an account expression to assign values to accounts. HS.Exp expects a destination value on the left side and a source value on the right side of the equal sign. HS.Exp "Destination=Source" You can use account expressions within Exp to specify the source and destination values. m y a de Copyright © 2008, Oracle. All rights reserved. A c Creating Rules Expressions le perform these types of tasks: r ac You create rules expressions by using Financial Management objects and functions to • Calculating data O ly • Consolidating data l & On na se • Setting accounts to read-only HS.Exp Function nt er U I The most frequent use of a rule expression is assigning values to accounts. Use the le HS.Exp function to assign values to accounts. c O ra 1-8 Hyperion Financial Management 9.3.1: Create Rules
  • 21. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Use this syntax: HS.Exp “DestinationValue = SourceValue” The following example sets the Cash account to 50,000: HS.Exp "A#Cash = 50000” m y a de A c le r ac O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-9
  • 22. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Account Expressions An account expression uses a dimension keyword to specify a value or a set of values. A dimension keyword is separated from its values by a pound sign (#). A#NetIncome Dimensions are separated by periods. A#Cash.P#January.E#USA.C1#OpeningBalance m y a de Copyright © 2008, Oracle. All rights reserved. A c Account Expressions le r ac Account expressions identify cells in the database by specifying one or more dimension members. The Exp function requires an account expression on the left (destination) side O ly of the equal sign. The right (source) side of the equal sign can be an account expression, l & On a constant value, or any function that returns a numeric value. Dimension Keywords na se er U An account expression uses a dimension keyword to specify a value or a set of values. A nt dimension keyword is separated from its values by a pound or hash sign (#), and dimensions are separated by dots. For example: I le A#Cash.P#January.E#USA.C1#OpeningBalance c O ra 1-10 Hyperion Financial Management 9.3.1: Create Rules
  • 23. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax The table lists the dimension keywords that you can use to specify dimension members: Keyword Description S# Scenario Y# Year P# Period V# Value E# Entity W# View A# Account I# Intercompany Partner C1# Custom1 C2# Custom2 C3# Custom3 C4# Custom4 m y Destination Expressions a de The destination for the Exp function is specified by the Account, Custom, and ICP A c members specified on the left side of the equal sign. The destination Entity, Period, Year, Value, members are determined by the current point of view (POV) members or by the le cells selected on the data grid or form. The members for the currently selected cells on ac the grid override the current POV members. The destination View member is the current r scenario default view, regardless of the currently select POV members. O ly Source Expressions l & On When you use an account expression on the right side of the equal sign with Exp, you na se can specify any dimension member. If you do not specify a Entity, Period, Year, or Value er U dimension member, the current POV member or the current cells selected on the grid or data form are used. If you do not specify a View member, the source is the current nt scenario default view, regardless of the currently select POV member. I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-11
  • 24. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Adding Operators and Functions You can use standard math operators on the right side of the equal sign. HS.Exp "A#Sales = A#Units * A#Price" You can use Period and Year keywords for dynamic time calculations. HS.Exp "A#MiscPast = A#Misc.Y#Cur-2" You can embed other HS functions within Exp. HS.Exp "A#AvgSales = A#Sales/HS.Entity.NumBase(USA)" m y a de Copyright © 2008, Oracle. All rights reserved. A c Adding Operators and Functions le r ac You can add, subtract, multiply, and divide on the right side of the equal sign. You must use the following standard VBScript characters: + - * / O ly If you multiply or divide with an account that has a NoData status, the data in the account l & On on the left side of the equal sign is not changed. Zero is considered data. An account that na se contains 0.00 as data does not have a NoData status. er U The following example sets the amount in the StateTax account. This example calculates nt the StateTax amount by multiplying the amount in the Sales account for 2005 by the rate in the StateRate account for 2005: I le HS.Exp "A#StateTax = A#Sales.Y#2005 * A#StateRate.Y#2005" c O ra 1-12 Hyperion Financial Management 9.3.1: Create Rules
  • 25. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Period and Year Keywords To create dynamic rules, you can use the following keywords, instead of member names, to represent members of the destination Year or Period dimension: Keyword Description Cur Current period or year First First period or year that is valid for the application Last Last period or year that is valid for the application Next Period or year that follows the current period or year Prior Period or year that precedes the current period or year You can use plus (+) and minus (-) with the Period and Year keywords. The following example sets the MiscPast account to the amount in the Misc account two periods before the current period: HS.Exp "A#MiscPast = A#Misc.P#Cur-2" Placing Other Functions Within Exp m y de If an HS function returns a single numeric value, you can nest the function in the Exp function. However, if you nest a function that contains a string argument, you cannot ca enclose the string in quotation marks. In the following example, the NumBase function is A nested in the Exp function to retrieve the number of base entities for the Regional member: le ac HS.Exp "A#SalesAlloc = A#Sales/HS.Entity.NumBase(Regional)" r Notice that the Regional string is not enclosed in quotation marks. O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-13
  • 26. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Identifying Rule Types There are eight types of rules in Financial Management: — Calculate — Dynamic Sub Calculate() — Translate HS.Exp "A#TargAcct=A#SourceAcct“ — Allocation End Sub — Input Sub NoInput() — No Input HS.NoInput"A#Sales.S#Budget“ — Consolidate End Sub — Transactions You place the rules for each type in a separate sub procedure in the rules file. m y a de Copyright © 2008, Oracle. All rights reserved. A c Identifying Rule Types le Rules fall into eight types: r ac O ly • Calculate rules are executed when you perform calculations and consolidations. You use calculate rules for these tasks: - l & On Set and clear values from accounts - na se Perform ad hoc calculations - nt er U Conform to statutory requirements I • Dynamic rules enable you to create ratios that accurately calculate parent values for le the Period, VIew, and custom dimensions. Parent values for percentages for these dimensions are not accurately calculated by the aggregation of base member values. c O ra • Translate rules execute when you perform translations. These rules can override default translation calculations. 1-14 Hyperion Financial Management 9.3.1: Create Rules
  • 27. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax • Allocation rules execute when you allocate data from a single source to multiple destinations. • Input rules enable input at the parent entity level. • No input rules prevent input at the base entity, account, and custom level. • Consolidate rules perform nonstandard consolidations. These rules are most commonly found in statutory applications. • Transactions rules enable posting to accounts and scenarios from the Intercompany Transactions module. m y a de A c le r ac O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-15
  • 28. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Identifying Sub Procedures A Sub procedure is a series of VBScript statements (enclosed by Sub and End Sub statements) that performs actions but does not return a value. Sub Calculate() HS.Exp "A#TargAcct=A#SourceAcct“ End Sub Sub NoInput() HS.NoInput "A#Sales.S#Budget“ End Sub m y a de Copyright © 2008, Oracle. All rights reserved. A c Identifying Sub Procedures le r ac A Sub procedure can take arguments (constants, variables, or expressions passed by a calling procedure). If a Sub procedure has no arguments, its Sub statement must include O ly an empty set of parentheses (). l & On Rules of each type are grouped into Sub procedures in the rules file. Rules statements na se are grouped into the following procedures: Routine nt er U Calculate() and Dynamic() Executed When you calculate or consolidate data Translate() I When you translate data Allocate() c le When you use the Allocate option in a data grid ra Input() When the application is opened. O 1-16 Hyperion Financial Management 9.3.1: Create Rules
  • 29. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Routine Executed NoInput() When the application is opened. Automatically prevent you from entering data in specific cells Transactions() When the application is opened. Consolidate() When you run a consolidation. The routines are created in any order. Use the following syntax to define each routine: Sub Calculate() <All calculate rules are displayed here.> End Sub Sub Dynamic() <All dynamic rules are displayed here.> End Sub Sub Translate() <All translate rules are displayed here.> End Sub Sub Allocate() <All allocation rules are displayed here.> End Sub Sub NoInput() m y <All no input rules are displayed here.> End Sub a de Sub Consolidate() <All consolidate rules are displayed here.> End Sub A c Sub Input le ac <All input rules are displayed here.> End Sub Sub Transactions() r O ly <All transactions rules are displayed here.> l & On End Sub na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-17
  • 30. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Adding Comments to Rules You can insert comments in rules files to: Document the purpose and results of procedures Provide detail information for other administrators who may inherit rules files you created Act as a reminder of what you may need to modify in future releases of Financial Management ‘Routine is executed when user Comment ‘calculates or consolidates data. Sub Calculate() HS.Exp "A#TargAcct=A#SourceAcct“ End Sub Sub NoInput() HS.NoInput"A#Sales.S#Budget“ m y de End Sub Copyright © 2008, Oracle. All rights reserved. ca A Adding Comments to Rules le r ac Documentation in Financial Management rules files is considered almost as important as the code itself. Without documentation, administrators have a difficult time interpreting O ly and troubleshooting another administrator’s procedures. Even if you are the only one maintaining the rules files, without proper documentation you can easily forget the intent of the procedure. l & On na se Text preceded with an single quote(‘) is interpreted as a comment. Although you can er U start comments anywhere within a line, it is recommended that you place a comment on nt its own line. This ensures that the line is properly validated. I This is an example of inserting comments in your rules files: c le ' * Copy Actual Q1 rates to Q_Forecast If HS.Scenario.Member = "Q_Forecast" and HS.Period.IsFirst Then O raHS.Clear "A#ALL" HS.Exp "A#ALL = S#Actual" End If 'HS.Scenario.Member = "Q_Forecast" and HS.Period.IsFirst 1-18 Hyperion Financial Management 9.3.1: Create Rules
  • 31. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Inserting Line Continuations Line Continuation: Uses an ampersand (&) for concatenation Uses an underscore (_) for line continuation Note: You must have a space between the ampersand and the underscore. Concatenation Line Continuation Syntax m y a de Copyright © 2008, Oracle. All rights reserved. A c Inserting Line Continuations le r ac You can use line continuation so that the entire string can be viewed without having to scroll to the right of the code window. O ly If you must break a line into multiple strings, place the line continuation character l & On between the strings, and then concatenate them using the ampersand (&). It is critical to preserve all spaces in the string when it is concatenated. na se er U NOTE You cannot use the line continuation character in comments, you must repeat the nt comment character apostrophe (‘) at the beginning of each comment string line. I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-19
  • 32. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Line Continuation Tips • Break complex formulas at a point where a line performs an action. • If you include long dimension names in the code line, break the line to show one account per line. • Insert the mathematical operators at the beginning of the line so that you can identify what type of action is being applied to the account in the formula. When the line break is applied, the operators and account are split in a logical manner. m y a de A c le r ac O ly l & On na se nt er U I c le O ra 1-20 Hyperion Financial Management 9.3.1: Create Rules
  • 33. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Creating Conditional Statements The following condition statements are used in rules files: If…Then…Else Select Case…Else m y a de Copyright © 2008, Oracle. All rights reserved. A c Creating Conditional Statements le r ac You can control the flow of your script with conditional statements. You can write VBScript that makes decisions and repeats actions. O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-21
  • 34. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Applying the If…Then…Else Statement The most common form of the If...Then...Else statement is the block form which allows for several lines of code to be executed or several comparisons to be made, within the one statement. If HS.Scenario.Member = "Budget" Then Is executed only if HS.EXP "A#Sales = A#UnitsSold * A#Price" the current member End If is Budget If HS.Scenario.Member = "Budget" Then Uses ElseIf to test HS.EXP "A#Sales = A#UnitsSold * A#Price" for more than one ElseIf HS.Scenario.Member = "Actual" Then condition HS.EXP "A#Price = A#Sales / A#UnitsSold" Else HS.EXP "A#Sales = A#Sales.P#Prior * 1.1" End If m y a de Copyright © 2008, Oracle. All rights reserved. A c le Applying If...Then...Else Statements r ac The If...Then...Else statement allows several lines of code to be executed or several comparisons to be made within the one statement. O ly You use the If...Then...Else statement to evaluate whether a condition is true or false and, l & On depending on the result, to specify one or more statements to run. The condition is na se typically an expression that uses a comparison operator to compare one value or variable with another. You can nest If...Then...Else statements to as many levels as needed. er U • Use and ElseIf...Then statement to add conditions. nt I • For If...Then...Else statements that have multiple conditions, the first statement that evaluates to true is executed. Any conditions that follow are not evaluated or le executed. c O ra • If you include an Else statement, the lines of script after the Else statement execute if none of the condition are met. 1-22 Hyperion Financial Management 9.3.1: Create Rules
  • 35. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax The examples shown on the slide illustrate If...Then...Else statements: • The first example verifies whether the scenario member is equal to Budget. If equal (true), a calculation multiplies Units Sold by Price, and the result is applied to the Sales account. If the condition evaluates to false, no calculation is performed. • The second example applies the ElseIf statement if the scenario member is equal to Actual instead of Budget. If equal (true), a calculation divides Sales by UnitsSold and applies the result to Price. If the scenario is any member other than actual or budget, the calculation following the Else statement is performed. m y a de A c le r ac O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-23
  • 36. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Making Decisions with Select Case Statements A Select Case structure works with a single test expression that is evaluated once, at the top of the structure. The result of the expression is then compared with the values for each Case in the structure. If there is a match, the block of statements associated with that Case is executed, as in the following example. m y a de Copyright © 2008, Oracle. All rights reserved. A c le Making Decisions with Select Case Statements r ac The Select Case structure provides an alternative to If...Then...ElseIf for selectively executing one block of statements from among multiple blocks of statements. A Select O ly Case statement provides capability similar to the If...Then...Else statement, but makes l & On code more efficient and readable when there are a large number of conditions to evaluate. The first Case statement that evaluates to true is executed. Any Case na se statements that follow are not evaluated or executed. nt er U I c le O ra 1-24 Hyperion Financial Management 9.3.1: Create Rules
  • 37. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Comparing Strings in Financial Management The following are four frequently used string functions: UCase If UCase(HS.Entity.Member)="NONE" Then… LCase If LCase(HS.Scenario.Member)= "budget" Then... Left Function Dim Product1, RtnString Product1 = "Financial Management" ' Define string. RtnString = Left(Product1, 9) ' Returns "Financial" Right Function Dim Product1, RtnString Product1 = "Financial Management" ' Define string. m y de RtnString = Right(Product1, 10) ' Returns “Management" Copyright © 2008, Oracle. All rights reserved. ca A le Comparing Strings in Financial Management ac String comparisons are important in Financial Management for these reasons: r O ly 1. To avoid simple errors in uppercase or lowercase strings when conditional statements are used. l & On For example, the string 'Budget' is used as the dimension member, but you enter na se 'budget' for the comparison (one uses an upper case ‘B’ and the second one uses a lower case ‘b’). With string comparison, if you always type lowercase and then nt er U convert variables and function results to lowercase you will not have mismatches. 2. You can use string comparisons to check for one or more characters that use a prefix I or suffix in member names. This is useful for chart of accounts or entity structures c le that use coding in labels. For example, You use a product dimension and all hardware product member labels O rastart with H100. You can create a string comparison to check the first 4 characters of the member label and if it equals H100 then do the calculation. Hyperion Financial Management 9.3.1: Create Rules 1-25
  • 38. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax UCase Function Returns a string that was converted to uppercase. Syntax UCase(String) Arguments String: A text string or a function that returns a text string. Example If UCase(HS.Scenario.Member)=”ACTUAL” Then Only lowercase letters are converted to uppercase; all uppercase letters and nonletter characters remain unchanged. LCase Function Returns a string that was converted to lowercase. Syntax m y de LCase(String) Example If LCase(HS.Scenario.Member)=”actual” Then c a A le Only uppercase letters are converted to lowercase; all lowercase letters and nonletter characters remain unchanged. Left Function r ac O ly Returns a string containing a specified number of characters from the left side of a string. l & On A left function contains two required parts: na se • Use String to return the requested values. er U • Use Length (numeric value) to determine the number of characters to return. nt Syntax I le Left(String,Length) c O ra 1-26 Hyperion Financial Management 9.3.1: Create Rules
  • 39. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Example Dim Product1, RtnString Product1 = "Financial Management" ' Define string RtnString = Left(Product1, 1) ' Returns "F" RtnString = Left(Product1, 9) ' Returns "Financial" RtnString = Left(Product1, 20) ' Returns "Financial Management" Right Function Returns a string containing a specified number of characters from the right side of a string. A Right function contains two required parts: • Use String to return the requested values. • Use Length (numeric value) to determine the number of characters to return. Syntax Right(String,Length) Example m y Dim Product1, RtnString Product1 = "Financial Management" ' Define string. a de RtnString = Right(Product1, 1) RtnString = Right(Product1, 10) RtnString = Right(Product1, 20) ' Returns "t". ' Returns "Management". A ' Returns "Financial Management". c le r ac O ly l & On na se nt er U I c le O ra Hyperion Financial Management 9.3.1: Create Rules 1-27
  • 40. Module 1 Financial Management Rules Basics Lesson 1 Reviewing Rules Syntax Summary In this lesson, you should have learned to: • Explain the purpose of rules in Financial Management • Describe objects and functions in expressions • Create rules expressions • Identify Financial Management rule types • Distinguish between Sub procedures • Add comments and line breaks • Create conditional statements and compare strings m y a de A c le r ac O ly l & On na se nt er U I c le O ra 1-28 Hyperion Financial Management 9.3.1: Create Rules
  • 41. L E S S O N 2 Reducing Maintenance with Variables 2 Objectives At the end of this lesson, you should be able to: • Create variables and constants • Set up variables header sections for the Point of View • Set up variables header sections for custom dimensions, intercompany partner (ICP) dimensions, and global accounts • Set up a variables header section for conditional triggers m y a de A c le r ac O ly l & On na se nt er U I c le O ra
  • 42. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables About VB Script Variables Variables temporarily store values when your script is running. Variables simplify rules scripts. Variables improve rules performance. Dim vCurPeriod, vCurYear vCurPeriod=HS.Period.Number vCurYear=HS.Year.Member m y a de Copyright © 2008, Oracle. All rights reserved. A c About VB Script Variables le r ac Variables are placeholders that temporarily store values when the rules script is being executed. You can change the value of variables as many times as needed during execution. O ly l & On Variables simplify your script by letting you give short, descriptive names to data used in na se your rules. For example, pov_entity instead of HS.Entity.Member er U Variables improve performance because you can retrieve application data once and then nt reuse the data throughout a procedure. For example, you could retrieve the year total for the Sales account from your Financial Management application and store it in a variable. I You can then use the variable in a series of calculations in your procedure, instead of le retrieving the value from the application each time. c O ra 2-2 Hyperion Financial Management 9.3.1: Create Rules
  • 43. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Creating Variables and Assigning Values Declare variables explicitly using Dim statements Create variables on the fly Enclose values in quotation marks to enter a literal text string vAcc1=”A#NetSales” vSalaryRate=300 pov_entity=HS.Entity.Member You can concatenate variables with literal text strings HS.EXP "A#RetainedIncome=A#Profit" &vCustomTops& ".I#[ICP None]" HS.EXP "A#SalaryExpense=A#Headcount *" &vSalaryRate m y a de Copyright © 2008, Oracle. All rights reserved. A c le Creating Variables and Assigning Values r ac You can create variables explicitly using one or more Dim statements at the start of a subroutine. This method, called declaring the variables, enables you to look in a single O ly place in a procedure when you want to reuse variables and need to remember their l & On names. na se You can also create variables on the fly. However, they are scattered throughout the procedure. This method makes it difficult to check variable names when you want to reuse them. nt Dim Statement Syntax: er U I le Dim VariableName c For example, O ra Dim vAcc1 Hyperion Financial Management 9.3.1: Create Rules 2-3
  • 44. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Variable name guidelines: • Must begin with an alphabetic character • Cannot contain an embedded period • Must not exceed 255 characters • Must be unique in the scope in which it is declared You can create multiple variables with a single Dim statement by separating the variable names with commas. Example Dim vAcc1, vAcc2, vAcc3 You assign values to variables using an equal sign (=), with the variable name on the left and the value you want to assign the variable on the right. You can assign literal text strings, numeric values, return values of functions, or return values of expressions. If the variable does not exist, it is created on the fly. To assign a literal string value, you enclose the string in quotation marks. You do not need quotation marks to assign numeric values, function results, or expression results. m y de vCustomTops=”.C1#TopC1.C2#TopC3.C3#TopC3.C4#TopC4” vSalaryRate=300 pov_entity=HS.Entity.Member c a You can concatenate variables with literal text strings: A le HS.EXP “A#RetainedIncome=A#Profit"&vCustomTops&“.I#[ICP None]” ac HS.EXP “A#SalaryExpense=A#Headcount *"&vSalaryRate r O ly Notice that when the variable is at the end of the HS.Exp statement, it does not require a closing quotation mark. l & On na se nt er U I c le O ra 2-4 Hyperion Financial Management 9.3.1: Create Rules
  • 45. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Variables and Data Types VBScript assigns data types automatically. You can use conversion functions to force a data type. — Cbool — CDate — CDbl — CInt — CLng — CSng — CStr m y a de Copyright © 2008, Oracle. All rights reserved. A c Variables and Data Types le r ac In VBScript, you cannot specify in advance that a variable holds only a particular data type. Instead, you must use a variable known as a variant to store any data type. O ly When you assign a value to the variable, VBScript automatically assigns the data type. l & On Sometimes you may need to override the default data type. For example, you may need na se to store all values as integers. er U You can use conversion functions to explicitly set the data type: Function CBool I nt Description Converts nonzero values to TRUE and zero values to FALSE. CDate c le Converts an expression to a Date value. O ra CDbl Converts an expression to a Double value (a 64-bit floating point number). Hyperion Financial Management 9.3.1: Create Rules 2-5
  • 46. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Function Description CInt Converts an expression to an Integer value. If the fractional part of the expression is .5, CInt rounds the value to the nearest even number. For example, 3.5 is rounded to 4, and 6.5 to 6. The value of integer data can range from -32,768 to 32,767. CLng Converts an expression to a Long value (an integer that can store a value from -2,147,483,648 to 2,147,483,647). CSng Converts an expression to a Single value (a 32-bit floating point number). CStr Converts an expression to a String value. This example converts the result of the calculation to an integer and stores it in the variable vGM_Pct: vGM_Pct=CInt(vMargin/vNetSales*100) m y a de A c le r ac O ly l & On na se nt er U I c le O ra 2-6 Hyperion Financial Management 9.3.1: Create Rules
  • 47. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Variables and Constants You declare constants at the beginning of rules files. They are available to all procedures at all times. After you assign a value to a constant, you cannot change it. You can use constants anywhere in your code in place of actual values, just as you use variables. const ALL_NONE = ".I#[ICP None].C1#[None].C2#[None].C3#[None]" const ALL_TOPS = ".I#[ICP Top].C1#TopC1.C2#TopC2.C3#TopC3" m y a de Copyright © 2008, Oracle. All rights reserved. A c Variables and Constants le r ac Variables can be used only in the Sub procedure in which they are created. Constants are similar to variables, but with these differences: O ly • You can use constants in all Sub procedures within the script. l & On • After you define a constant (that is, after it has been assigned a value), you cannot change it. na se nt er U You can declare constants anywhere in the script file. If constants are declared at the beginning of the file, outside of any procedure, they are available to all procedures at all I times. If constants are declared within a procedure, they are available only for that le procedure. c O ra Hyperion Financial Management 9.3.1: Create Rules 2-7
  • 48. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables You can use constants to store application information that you use frequently but that does not change. For example, you can create constants to store member names that are used frequently within account expressions. By using a short constant name in place of a long string of member names, you reduce the likelihood of errors. In Financial Management rules, you typically use constants to store information that does not vary with the Point of View settings for which the rules are run. Unlike variables, you must explicitly declare constants. They cannot be created on the fly. Syntax const Name=Value where Name is the name of the constant and Value is the value of the constant. The rules for naming constants are the same as for variables. This example creates a constant named AVE and assigns it a string as a value: Example const AVE=”.A#AverageRate” A naming convention for constants is to use uppercase for names and underscores as m y de separators, as in this example: const PRIOR_YEAR_RATE=75 c a You cannot use functions to assign values to constants. This statement returns an error: A le const CURRENT_ENTITY=HS.Entity.Member r ac O ly l & On na se nt er U I c le O ra 2-8 Hyperion Financial Management 9.3.1: Create Rules
  • 49. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Creating Header Sections for Variables and Constants These are some typical types of information stored in header section variables: The current POV members for the POV dimensions pov_entity = HS.Entity.Member pov_scenario = HS.Scenario.Member pov_value = HS.Value.Member Top and [None] members for custom and ICP dimensions; global accounts ALL_NONE = ".I#[ICP None].C1#[None].C2#[None].C3#[None].C4#[None]" ALL_TOPS = ".I#[ICP Top].C1#TopC1.C2#TopC2.C3#TopC3.C4#TopC4" Triggers for conditional statements vIs_Trans = HS.Value.IsTransCur 'This yields a True or False m y de vIs_base = HS.Entity.IsBase("","") 'This yields a True or False Copyright © 2008, Oracle. All rights reserved. ca A le Creating Header Sections for Variables and Constants r ac It is a useful practice to create a standard header section in your Sub procedures with variables for frequently used information for your application. For application information O ly that does not changed based on the Point of View, you can create a constants header l & On section at the beginning of the rules file. na se These are some common types of information to include in a header section: er U • Current Point of View members for page dimensions nt • Top and None members for custom and ICP dimensions I • Global account members c le • Conditional statement triggers O ra Hyperion Financial Management 9.3.1: Create Rules 2-9
  • 50. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Point of View Variables Information about the current Point of View members for the Entity, Scenario, Year, and Value dimensions is typically used throughout a Sub procedure. Instead of repeatedly retrieving this information from the application, you can retrieve it once at the beginning of the procedure and store it in a variable. You can then use the value stored in the variable when a rule requires Point of View information. You retrieve the Point of View using the Member function. For example, HS.Entity.Member retrieves the current Entity POV member. Because the values change based on the current Point of View, you should use variables rather than constants. TIP For the variable for the current period, you can use HS.Period.Number instead of HS.Period.Member. Because the fiscal year can start on different months in different applications, if you use period numbers rather than member names, it is easier to reuse your rules in more than one application. Top and None Members for Custom and ICP Dimensions Custom and ICP dimensions in account expressions often need to be set to the top m y de member or the [None] member. This can result in a long expression that is difficult both to type and to read. Example c a HS.EXP “A#RetainedIncome=A#Profit".I#[ICP Top].C1#TopC1.C2#TopC2&” _A “.C3#TopC3.C4#TopC4" le r ac To simplify your code, you can store the text string for custom and ICP members in a variable or constant, as in this example: O ly const All_TOPS=”.I#[ICP Top].C1#TopC1.C2#TopC2.C3#TopC3.C4#TopC4" l & On You can then use the constant or variable in the account expression in place of the string: na se er U HS.EXP “A#RetainedIncome=A#Profit" &All_TOPS nt I Because the custom and top member names do not change when the Point of View changes, you can use constants instead of variables. c le O ra 2-10 Hyperion Financial Management 9.3.1: Create Rules
  • 51. Module 1 Financial Management Rules Basics Lesson 2 Reducing Maintenance with Variables Global Accounts You frequently need to refer to global accounts in your rules, such as the accounts used to store exchange rates or head count. You can create variables or constants for these accounts and then use them throughout your file. For example: vHead=”.A#HeadCount” vEfx=”.A#EndingRate” Because the global member names do not change when the Point of View changes, you can use constants instead of variables. Conditional Statement Triggers Financial Management provides a number of functions that return a value of true or false. You can use these functions as tests in conditional statements. For example, before executing a rule, you might test whether it is true or false that the current year is the first year in the application or that the current entity is a base entity. To make your rules file more efficient, you can perform the test once and store the result in a variable in your header section. For example: vIsBase = HS.Entity.IsBase("","") m y Boolean values, a value of True is assumed as the test. a de You can then use the variable as needed in conditional statements. Because they are If vIsBase Then A c le HS.EXP “A#Sales=A#UnitsSold * A#Price” ac End If r You can use the Not keyword to test for a false condition. This statement executes only if O ly the entity is not a base member: l & On If Not vIsBase Then HS.EXP “A#Sales=A#UnitsSold * A#Price” na se End If er U For clarity in your code, you can specify True or False as the condition: If vIsBase=True Then I nt HS.EXP “A#Sales=A#UnitsSold * A#Price” End If c le O ra Hyperion Financial Management 9.3.1: Create Rules 2-11