Interface GlobalFormula

All Superinterfaces:
CMetadata, Feature, MdObjectBase, MdObjectBaseUtil, MdObjectBaseXML, PrimaryType, Remote, Root
All Known Subinterfaces:
CalculatedMember, NamedSet

public interface GlobalFormula extends Feature
PROC OLAP and OLAP CUBE Studio enable users to define formulas for the dimensions of a cube that result in the creation of calculated members and named sets. In SAS 9.2, the GlobalFormula metadata type was used to store the formula that created the calculated member or named set. In SAS 9.3, it was decided that this modeling was not sufficient to enable the object to refer back to the dimension, hierarchy, or level to which the calculated member or named set belongs. Therefore, the GlobalFormula metadata type was changed to an abstract type, and the CalculatedMember and NamedSet metadata types were introduced. The new metadata types are used in cubes that have a UsageVersion of 5.0 or higher. The CONVERT option of PROC OLAP can be used to change a 4.0 cube to a 5.0 cube. A 4.0 cube is also converted to a 5.0 cube by OLAP CUBE Studio when a shared dimension is added to the 4.0 cube. For more information, see CalculatedMember and NamedSet.

Attributes of GlobalFormula are:

Associations of GlobalFormula are:

Usage

To create an instance of this GlobalFormula, use the factory create methods.
Example: create a GlobalFormula with name "GlobalFormula_Object", in repository "AAAAAAAA".
 // create a store to contain your objects for this change. If you do not have an existing object
 // or store to use.  You may obtain the store from another object by using Object.getObjectStore().
 MdFactory factory; //where "factory" is a valid MdFactory instance
 MdObjectStore objectStore = factory.createObjectStore();
 GlobalFormula myObject = (GlobalFormula) factory.createComplexMetadataObject(objectStore, "GlobalFormula_Object", MetadataObjects.GLOBALFORMULA, "AAAAAAAA");
 myObject.updateMetadataAll();  // Write object to server
 objectStore.dispose();  // dispose of the object store if it is no longer needed
 

Behavior

  • Attributes and associations for this object can be retrieved by using the methods in MdOMIUtil.
  • When changes are made to the object, either by setting an attribute or adding objects to a particular association, they can be persisted to the metadata server with the updateMetadataAll method.
  • If an object needs to be deleted, the delete method can be used. This will flag the object as being deleted on the client, and will require an update call to persist the change to the server.

Dependencies

This class depends on objects being contained in an MdObjectStore. Object stores should be disposed of when they are no longer needed as this will help clean up memory. Disposing an object store will dispose of all objects contained within that store.

Since:
9.0
  • Field Details

    • ATTRIBUTE_UNIQUENAME_NAME

      static final String ATTRIBUTE_UNIQUENAME_NAME
      Constant used for the name of the UniqueName attribute.

      UniqueName: The fully qualified unique name for the global formula.

      See Also:
    • ATTRIBUTE_EXPRESSION_NAME

      static final String ATTRIBUTE_EXPRESSION_NAME
      Constant used for the name of the Expression attribute.

      Expression: The formula.

      See Also:
    • ATTRIBUTE_GLOBALFORMULAROLE_NAME

      static final String ATTRIBUTE_GLOBALFORMULAROLE_NAME
      Constant used for the name of the GlobalFormulaRole attribute.

      GlobalFormulaRole: Valid values are CalculatedMember or NamedSet.

      See Also:
    • ASSOCIATION_ASSOCIATEDCUBE_NAME

      static final String ASSOCIATION_ASSOCIATEDCUBE_NAME
      Constant used for the name of the AssociatedCube association.

      AssociatedCube: The list of cubes that contains this global formula.  

      See Also:
  • Method Details

    • initializeRequiredObjects

      void initializeRequiredObjects() throws RemoteException
      (S) This initializes the Required Objects(Roles) which are:
      Specified by:
      initializeRequiredObjects in interface Feature
      Specified by:
      initializeRequiredObjects in interface MdObjectBaseUtil
      Specified by:
      initializeRequiredObjects in interface PrimaryType
      Specified by:
      initializeRequiredObjects in interface Root
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • initializePredObjects

      void initializePredObjects() throws RemoteException
      (S) Adds the Associated objects to the predObjects which are:
      AssociatedCube
      Specified by:
      initializePredObjects in interface Feature
      Specified by:
      initializePredObjects in interface MdObjectBase
      Specified by:
      initializePredObjects in interface PrimaryType
      Specified by:
      initializePredObjects in interface Root
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getUniqueName

      String getUniqueName() throws RemoteException
      Gets the String value of UniqueName
      Returns:
      The UniqueName
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getUniqueNameState

      int getUniqueNameState() throws RemoteException
      Gets the Metadata State of UniqueName
      Returns:
      The State.
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getUniqueNameMaxLength

      int getUniqueNameMaxLength() throws RemoteException
      Gets the maximum length of UniqueName
      Returns:
      The max size
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getExpression

      String getExpression() throws RemoteException
      Gets the String value of Expression
      Returns:
      The Expression
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getExpressionState

      int getExpressionState() throws RemoteException
      Gets the Metadata State of Expression
      Returns:
      The State.
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getExpressionMaxLength

      int getExpressionMaxLength() throws RemoteException
      Gets the maximum length of Expression
      Returns:
      The max size
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getGlobalFormulaRole

      String getGlobalFormulaRole() throws RemoteException
      Gets the String value of GlobalFormulaRole
      Returns:
      The GlobalFormulaRole
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getGlobalFormulaRoleState

      int getGlobalFormulaRoleState() throws RemoteException
      Gets the Metadata State of GlobalFormulaRole
      Returns:
      The State.
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getGlobalFormulaRoleMaxLength

      int getGlobalFormulaRoleMaxLength() throws RemoteException
      Gets the maximum length of GlobalFormulaRole
      Returns:
      The max size
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
    • getAssociatedCubes

      AssociationList getAssociatedCubes() throws RemoteException, MdException
      Gets the AssociationList of AssociatedCubes
      Returns:
      Returns the AssociationList of AssociatedCubes which can be of type:
      Cube
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException
    • getAssociatedCube

      Cube getAssociatedCube() throws RemoteException, MdException
      Gets the Cube for AssociatedCube
      Returns:
      The Cube ( null if not set) of AssociatedCubewhich can be of type:
      Cube
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • getAssociatedCubes

      AssociationList getAssociatedCubes(boolean fGoToServer) throws RemoteException, MdException
      Gets the Associationlist of AssociatedCubes
      Parameters:
      fGoToServer - boolean Get the value from the server.
      Returns:
      Returns the AssociationList of AssociatedCubes which can be of type:
      Cube
      Throws:
      RemoteException - If error connecting/communicating to/with remote object.
      MdException - If error getting/setting part of the object.
    • setUniqueName

      void setUniqueName(String inUniqueName) throws RemoteException
      Sets the UniqueName value and sets the state to MetadataState.LOCAL.
      Parameters:
      inUniqueName - String
      Throws:
      RemoteException - If error communicating with remote object.
    • setUniqueName

      void setUniqueName(String inUniqueName, int state) throws RemoteException
      Sets the UniqueName Metadata State.
      Parameters:
      inUniqueName - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setUniqueNameState

      void setUniqueNameState(int state) throws RemoteException
      Sets the Metadata State of UniqueName.
      Parameters:
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setExpression

      void setExpression(String inExpression) throws RemoteException
      Sets the Expression value and sets the state to MetadataState.LOCAL.
      Parameters:
      inExpression - String
      Throws:
      RemoteException - If error communicating with remote object.
    • setExpression

      void setExpression(String inExpression, int state) throws RemoteException
      Sets the Expression Metadata State.
      Parameters:
      inExpression - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setExpressionState

      void setExpressionState(int state) throws RemoteException
      Sets the Metadata State of Expression.
      Parameters:
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setGlobalFormulaRole

      void setGlobalFormulaRole(String inGlobalFormulaRole) throws RemoteException
      Sets the GlobalFormulaRole value and sets the state to MetadataState.LOCAL.
      Parameters:
      inGlobalFormulaRole - String
      Throws:
      RemoteException - If error communicating with remote object.
    • setGlobalFormulaRole

      void setGlobalFormulaRole(String inGlobalFormulaRole, int state) throws RemoteException
      Sets the GlobalFormulaRole Metadata State.
      Parameters:
      inGlobalFormulaRole - String
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setGlobalFormulaRoleState

      void setGlobalFormulaRoleState(int state) throws RemoteException
      Sets the Metadata State of GlobalFormulaRole.
      Parameters:
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setAssociatedCubes

      void setAssociatedCubes(AssociationList list) throws RemoteException
      Sets the AssociatedCubes list to be list. Object of which can be of type:
      Cube
      Parameters:
      list - AssociationList
      Throws:
      RemoteException - If error communicating with remote object.
    • setAssociatedCubes

      void setAssociatedCubes(AssociationList list, int state) throws RemoteException
      Sets the AssociatedCubes list to be list. Object of which can be of type:
      Cube
      Parameters:
      list - AssociationList
      state - int
      Throws:
      RemoteException - If error communicating with remote object.
    • setAssociatedCube

      void setAssociatedCube(Cube inObject) throws RemoteException
      Sets the AssociatedCubes list 0th element to be inObject.
      Parameters:
      inObject - Cube
      Throws:
      RemoteException - If error communicating with remote object.