=mooW(“[VARIABLE_NAME]([DIMENSION1_NAME] '[DIMENSION_VALUE]')”, [VALUE], [OPTION])


Enables cell based write back of data to an Oracle OLAP variable within an Analytic Workspace.


Syntax

               =mooW("[VARIABLE_NAME]([DIMENSION1_NAME] '[DIMENSION_VALUE]')", [VALUE], [OPTION])


Return Value


               OBJECT

Arguments


The mooW function is called through three arguments:


       Qualified Data Reference

        

            The first component is a qualified data reference indicating a unique triangulated coordinate within an Oracle OLAP Analytic Workspace variable.


             =mooW("UNITS_CUBE_COST ( customer 'ACCOUNT_BAVARIAN IND' TIME 'MONTH_2006.02'  channel 'TOTAL_TOTAL' product 'TOTAL_TOTAL')", 10, 0)


         In the example above we are triangulating within the UNITS_CUBE_COST to a single cell, the intersection of the specified Customer, Channel, Time and Product dimensions.


       User Supplied value.


         This is the value you wish to upload to the specified intersecting co-ordinates within the OLAP variable.


       =mooW("UNITS_CUBE_COST ( customer 'ACCOUNT_BAVARIAN IND' TIME 'MONTH_2006.02'  channel 'TOTAL_TOTAL' product 'TOTAL_TOTAL')", 10, 0)


       This can be a cell reference to a value within another Excel cell, worksheet or workbook.


       Option


       =mooW("UNITS_CUBE_COST ( customer 'ACCOUNT_BAVARIAN IND' TIME 'MONTH_2006.02'  channel 'TOTAL_TOTAL' product 'TOTAL_TOTAL')", 10, 0)


          The third argument tells the mooW function what you want to do:


               Option   0                

        

                    Passing 0 does nothing on re-calculation of the Excel formula, other than display the value passed as the User Supplied value.

                    This can be useful when working disconnected from the Oracle OLAP data source.


               Option   1


                    Passing 1 writes the User Supplied value back to the Oracle Analytic workspace variable to the intersection supplied in the Qualified Data

                        Reference.


               Option   2                                


                    Passing 2 essentially converts the mooW function into the mooQ function and retrieves the data supplied by the Qualified Data Reference

                        from the intersecting co-ordinates within the Oracle OLAP Analytic Workspace variable.              


Data Types permissible with mooQ


       ALL (with the exception of RAW)


Example


               Option   0 Show the local user supplied value


               =mooW("UNITS_CUBE_COST ( customer 'ACCOUNT_BAVARIAN IND' TIME 'MONTH_2006.02'  channel 'TOTAL_TOTAL' product 'TOTAL_TOTAL')", 10, 0)


                    Option   1 write the user supplied value back to the database


               =mooW("UNITS_CUBE_COST ( customer 'ACCOUNT_BAVARIAN IND' TIME 'MONTH_2006.02'  channel 'TOTAL_TOTAL' product 'TOTAL_TOTAL')", 10, 1)


                    Option   2 shows the database value


               =mooW("UNITS_CUBE_COST ( customer 'ACCOUNT_BAVARIAN IND' TIME 'MONTH_2006.02'  channel 'TOTAL_TOTAL' product 'TOTAL_TOTAL')", 10, 2)


Example Output


               10

               10

               10



Notes


       mooW can be seen interacting with the OLAP engine through the Oracle OLAP RECAP DML statement.  


       myObjectiveOLAP supports retrieving and writing of data using mooW on Oracle OLAP cubes of all dimension numbers.


       No mechanism is supplied to permanently store the written data within the Analytic workspace. This could easily be accomplished by the end-user or

         developer by  using a VBA macro which makes a call through the

       run_nonQ function to attach the AW RW, followed by the data upload, an update; commit and a call to mooAWDetach.

       Alternative controlled and audited write back is available as part the mooServer or Escendo server side products.