You are on page 1of 432

TM1 Developers Guide

Table of Contents

Index

Product Information ThisdocumentappliestoCognosTM19.1SP3andmayalsoapplytosubsequentreleases.Tocheckfornewer versionsofthisdocument,visittheCognosGlobalCustomerServicesWebsite(http://support.cognos.com). Copyright Copyright2007CognosIncorporated. PortionsofCognossoftwareproductsareprotectedbyoneormoreofthefollowingU.S.Patents: 6,609,123B1;6,611,838B1;6,662,188B1;6,728,697B2;6,741,982B2;6,763,520B1;6,768,995B2;6,782,378B2; 6,847,973B2;6,907,428B2;6,853,375B2;6,986,135B2;6,995,768B2;7,062,479B2;7,072,822B2;7,111,007B2; 7,130,822B1;7,155,398B2;7,171,425B2;7,185,016B1;7,213,199B2. CognosandtheCognoslogoaretrademarksofCognosIncorporatedintheUnitedStatesand/orother countries.Allothernamesaretrademarksorregisteredtrademarksoftheirrespectivecompanies. Whileeveryattempthasbeenmadetoensurethattheinformationinthisdocumentisaccurateand complete,sometypographicalerrorsortechnicalinaccuraciesmayexist.Cognosdoesnotaccept responsibilityforanykindoflossresultingfromtheuseofinformationcontainedinthisdocument. Thisdocumentshowsthepublicationdate.Theinformationcontainedinthisdocumentissubjectto changewithoutnotice.Anyimprovementsorchangestoeithertheproductorthedocumentwillbe documentedinsubsequenteditions. U.S.GovernmentRestrictedRights.Thesoftwareandaccompanyingmaterialsareprovidedwith RestrictedRights.Use,duplication,ordisclosurebytheGovernmentissubjecttotherestrictionsin subparagraph(C)(1)(ii)oftheRightsinTechnicalDataandComputerSoftwareclauseatDFARS252.227 7013,orsubparagraphs(C)(1)and(2)oftheCommercialComputerSoftwareRestrictedRightsat 48CFR52.22719,asapplicable.TheContractorisCognosCorporation,15WaysideRoad,Burlington,MA 01803. Thissoftware/documentationcontainsproprietaryinformationofCognosIncorporated.Allrightsare reserved.Reverseengineeringofthissoftwareisprohibited.Nopartofthissoftware/documentationmay becopied,photocopied,reproduced,storedinaretrievalsystem,transmittedinanyformorbyany means,ortranslatedintoanotherlanguagewithoutthepriorwrittenconsentofCognosIncorporated. PublicationDate:December2007

Index

Table of Contents
Preface Chapter 1 Introduction to TM1 Development
UnderstandingMultidimensionality..........................12 DurablesCube..........................................12 YourRoleasDeveloper .....................................15 UnderstandingTM1ObjectNamingConventions ..............15

Chapter 2

Creating Cubes and Dimensions


DesigningCubes...........................................22 SelectingtheNumberofDimensions ......................23 ConsolidatingDetailUsingDimensionHierarchies ..........26 TypesofElements......................................210 ElementAttributes.....................................211 DesigningCubesSummary............................217 CreatingDimensions ......................................218 CreatingDimensionsUsingtheDimensionEditorWindow..219 ModifyingaDimension .................................226 ManagingtheDisplayofElementsintheDimensionEditor..242

ii

Index

CreatingDimensionsUsingDimensionWorksheets ........245 CreatingCubes ...........................................254 OrderingDimensionsinaCube ..........................254 CreatingaCube........................................255 OptimizingtheOrderofDimensionsinaCube ............258 EditingCubeProperties.................................261 ReplicatingCubesbetweenServers..........................263 CubeRelationships .....................................264 ServerRelationships ....................................264

Chapter 3

Advanced Calculations for Business Data


OverviewofCubeRules....................................32 GuidelinesforWritingTM1RulesStatements .................33 SyntaxforDescribingtheArea ............................34 SyntaxforFormulas .....................................36 UsingCubeReferences .................................310 ArrangingRulesStatements.............................313 SpecifyingDifferentRulesattheN:andC:Levels..........315 BypassingRules .......................................316 QualifyingElementNames ..............................316 RulesEditorandRulesWorksheets .........................317 CreatingRulesWorksheets ..............................317 SavingRulesWorksheets................................319

iii

TM1 Developers Guide

Index

RulesandDimensionConsolidations ........................320 OrderofCalculation....................................320 OverridingC:LevelElementswithRules..................320 StackingRules .........................................323 SampleApplications ......................................324 CalculatingRatios ......................................324 SharingDatabetweenCubes ............................332 RestrictingRulestoSimpleValues .......................337 CalculatinganAveragePrice............................339 LinkingTwoAsymmetricalCubes .......................341 CreatingDrillThroughProcessesandRules ..................346 CreatingaDrillProcess.................................346 EditingDrillProcesses ..................................351 DeletingDrillProcesses .................................353 CreatingaDrillAssignmentRule ........................354 DrillThroughExample.................................357 DebuggingRules .........................................365 TracingCalculations....................................366 TracingFeeders ........................................374

Chapter 4

Organizing Objects in TM1 Applications


TM1ApplicationOverview .................................41 TypesofReferences .....................................42

iv

Index

BehaviorofReferences...................................43 DisplayOrderforReferencesinApplications...............44 UsingApplicationsandReferencesinTM1Web ............45 SecurityConsiderationsforCreatingandViewingApplications..45 CreatingandManagingApplications .........................47 CreatingaTopLevelApplication .........................47 RenamingApplications ..................................49 DeletingApplications....................................49 CreatingaSecondaryLevelApplicationwithinanExisting Application ...........................................411 AddingTM1ObjectReferencestoanApplication.............412 SimultaneouslyCreatingaNewObjectandAddingaReferenceto anApplication .........................................416 AddingFileReferencestoanApplication....................417 UnderstandingPublicandPrivateFileReferences ..........422 BehaviorofFilesUploadedtotheTM1Server .............422 UpdatingExcelFilesontheTM1Server ...................423 UpdatingNonExcelFilesontheTM1Server ..............426 AddingURLReferencestoanApplication ...................427 WorkingwithObject,File,andURLReferencesinTM1Applications 428 ViewingTM1ApplicationProperties .....................431 DeletingObject,File,andURLReferencesfromTM1Applications 434

TM1 Developers Guide

Index

RenamingObject,File,andURLReferencesinTM1Applications . 435 DeletingSourceObjectsthatareReferencedbyTM1Applications 436 AdministeringSecurityforTM1Applications ................438 AssigningSecurityPrivilegesforTM1Applicationsand ReferencestoUserGroups ..............................438 PublishingTM1ApplicationsandReferences ..............441 PrivatizingTM1ApplicationsandReferences ..............442 ViewingLogicalGroupingsinTM1Applications .............443 PublishingTM1ApplicationstoTM1Web ...................445 SettingTM1WebsheetProperties ........................448 PublishingExcelFilestoTM1WebwithoutUsingExcelonthe TM1WebServer.......................................449 CreatingHyperlinkstoUploadedFiles....................457 ViewingWebsheetsthatContainthe0x1AHexadecimalCharacter 461

Chapter 5

Importing Data with Processing Worksheets


ProcessingWorksheetsOverview ............................52 ImportingDataUsingProcessingWorksheets .................53 ReadingintheFirstInputRow............................54 ComparingInputRecordswithaCubesStructures..........58 ConvertingUsingIFFormulas ...........................510

vi

Index

ConvertingUsingaLookupCube ........................511 CreatingDatabaseSend(DBS)Formulas..................520 ProcessingaDataSourceintoaCube.....................524

Chapter 6

Controlling Access to TM1 Objects


AssigningSecurityRightstoGroups .........................62 InteractionofDifferentObjectSecurityRights .................69 Scenario 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 Scenario 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 Scenario 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 SecuringCubes ...........................................611 AssigningSecurityRightsforCubes ......................611 ReservingandReleasingCubes..........................613 LockingandUnlockingaCube ..........................613 SecuringElements ........................................614 AssigningSecurityRightsforElements ...................614 ReservingandReleasingElements .......................616 LockingandUnlockinganElement.......................617 SecuringDimensions ......................................618 AssigningSecurityRightsforDimensions .................619 ReservingandReleasingDimensions.....................620 LockingandUnlockingaDimension .....................621 SecuringProcesses ........................................621

vii

TM1 Developers Guide

Index

AssigningSecurityRightsforProcesses...................622 SecuringChores..........................................623 AssigningSecurityRightsforChores.....................623 SecuringApplicationsandReferences.......................624 SecuringCells............................................626 CreatingaCellSecurityControlCube ....................627 UsingRulestoDefineCellLevelSecurity .................630

Chapter 7

Using the TM1 Action Button to Build Worksheet Applications


Overview .................................................72 AddinganActionButtontoaWorksheet .....................74 Procedure1InsertinganActionButtonintoaWorksheet ...74 Procedure2ConfiguringanActionButton ................76 Procedure3SettingtheAppearancePropertiesfortheAction Button .................................................77 Procedure4FinishingtheActionButtonandReturningtoYour Worksheet .............................................77 ConfiguringanActionButtontoRunaProcess................78 Procedure1InsertinganActionButtonintoaWorksheet ...78 Procedure2SelectingtheActiontoPerform...............78 Procedure3SelectingtheProcesstoRun..................79 Procedure4ConfiguringOptionsfortheActionButton....716 Procedure5SettingtheAppearancePropertiesfortheAction Button ................................................718

viii

Index

Procedure6FinishingtheButtonandReturningtoYour Worksheet ............................................718 ConfiguringanActionButtontoNavigatetoAnotherWorksheet.7 19 Procedure1InsertinganActionButtonintoaWorksheet ..719 Procedure2SelectingtheActiontoPerform..............719 Procedure3SelectingaTargetWorksheet................720 Procedure4SettingtheMatchTitleElementsOption ......727 Procedure5SettingtheReplaceCurrentWorkbookOption 732 Procedure6ConfiguringAdvancedMappingOptions.....732 Procedure7SettingtheAppearancePropertiesfortheAction Button ................................................732 Procedure8FinishingtheButtonandReturningtoYour Worksheet ............................................733 ConfiguringanActionButtontoRunaProcessandNavigatetoa Worksheet...............................................734 Procedure1InsertinganActionButtonintoaWorksheet ..734 Procedure2ConfiguringtheActionButtontoRunaProcess.7 34 Procedure3ConfiguringtheActionButtontoNavigatetoa Worksheet ............................................734 Procedure4SettingtheAppearancePropertiesfortheAction Button ................................................735 Procedure5FinishingtheButtonandReturningtoYour Worksheet ............................................735

ix

TM1 Developers Guide

Index

SettingtheAppearancePropertiesofanActionButton.........736 UsingAdvancedNavigationandMappingOptions...........738 ConfiguringSourcetoTargetMapping ...................739 ExampleofMappingaSourceValuetoaTargetCell........744 ExampleofMappingaSourceSUBNMtoaTargetCell .....745 ExampleofMappingtheSelectedDBRWtotheTargetWorksheet 746 ModifyinganExistingActionButton ........................747 EditingtheCaption,BackgroundImage,andPropertiesofan ExistingActionButton ..................................747 MovingandResizinganExistingActionButton............748

Chapter 8

Developing Custom Web Applications with the URL API


URLAPIOverview ........................................82 BasicURLAPISyntax......................................83 BaseURL ..............................................83 Parameters .............................................84 ObjectIdParameter ......................................84 UsingURLEscapeCharacters ............................85 BasicURLAPIConcepts ....................................86 SettingAdminHostNameandTM1WebServerNameParameters 86 ManagingUserLoginandLogout .........................87 UsingtheActionParameter ..............................89

Index

UsingtheOpenObjectParametertoOpenanTM1WebObject.8 11 OperatingonanExistingTM1WebObjectwiththeObjectId Parameter .............................................812 AccessingtheWebsheetObject .............................814 OpeningaWebsheetObject .............................815 SelectingTitleElementsforaWebsheetObject .............818 ApplyingActionstoaWebsheetObject...................818 SettingDisplayPropertiesfortheWebsheetObject.........819 AccessingtheCubeviewerObject...........................820 OpeningaCubeviewerObject ...........................820 SettingDisplayPropertiesfortheCubeviewerObject.......823 SelectingTitleElementsfortheCubeviewerObject.........824 ApplyingActionstoaCubeviewerObject .................824 DisplayingChartswiththeCubeviewerObject.............824 SettingEventCallbackFunctionsforCubeviewerandWebsheet Objects..................................................829 EnablingaCallbackFunctionforWebsheetandCubeviewer Objects ...............................................829 SettingaGlobalCallbackFunctionforAllTitleDimensions .832 AccessingtheNavigationTreeObject........................833 OpeningtheNavigationTreeObject ......................835 UsingtheNavigationTreeObjectinHTMLMode ..........836 UsingtheNavigationTreeObjectinXMLMode ...........839

xi

TM1 Developers Guide

Index

SupportedFunctions.......................................A2 DateandTimeFunctions.................................A2 FinancialFunctions......................................A4 InformationFunctions...................................A6 LogicalFunctions .......................................A6 LookupandReferenceFunctions ..........................A7 MathandTrigonometricFunctions ........................A9 StatisticalFunctions ....................................A13 TextandDataFunctions ................................A18 DatabaseandListManagementFunctions..................... B2 DateandTimeFunctions ................................... B3 FinancialFunctions ........................................ B5 InformationFunctions ..................................... B10 LookupandReferenceFunctions ........................... B12 MathandTrigonometricFunctions.......................... B12 StatisticalFunctions ....................................... B15 TextandDataFunctions................................... B18

Index

xii

Index

xiii

TM1 Developers Guide

Table of Contents

Index

Preface
Business Performance Management with Cognos TM1
BusinessPerformanceManagementisthecontinuousmanagementand monitoringofFinancial,Operational,Customer,andOrganizational performanceacrosstheenterprise.BusinessPerformanceManagement solutionsfacilitatetheproactivesteeringofbusinessdirectioninthefollowing ways: Widedeployment Collaborativedecisionmaking Continuousandrealtimereviewandrefinement MonitoringofKeyPerformanceIndicators CognosTM1integratesbusinessplanning,performancemeasurement,and operationaldatatoenablecompaniestooptimizebusinesseffectivenessand customerinteractionregardlessofgeographyorstructure. CognosTM1provides: Immediatevisibilityintodata Accountabilitywithinacollaborativeprocess Consistentviewofinformation WithTM1,managerscanquicklystabilizeoperationalfluctuationsandtake advantageofnewopportunities.
Preface xiv

Table of Contents

Index

Book Description
TheguidedescribestwoaspectsofTM1security. AuthenticationCreatingusersandgroupsandcontrollingwhologsinto yourTM1server. AccessControlFinetuningyourTM1serverdatatocontrolwhatobjects yourTM1clientscanaccess.

Audience for this Manual


TheTM1DevelopersGuideiswrittenfordevelopersorsystemadministrators whowanttogainabasicunderstandingofTM1authenticationand componentsecurity.

xv

TM1 Developers Guide

Table of Contents

Index

Conventions Used in This Manual


Thismanualusesthefollowingconventions: Font Arial Convention Arialtextindicatesthatthisoptionorobjectispartoftheuserinterface. FilenamesanddirectoriesarealsoindicatedbyHelveticatext. Arial Bold Bold Arialtextindicatesanoptiontochooseortexttotype.Itusually appearsinnumberedsteps. Wordsareitalicizedforemphasisortodrawyourattentiontoanew term.Forexample,DonotpresstheRETURNkey. Wheneveryouseeareferencetoamenuoption,theoptionisidentified usingthefollowingnotation: Menu Name Command Name Forexample,Click File Options.

Italics Menu Name Option Name

The Cognos TM1 Documentation Set


TheCognosTM1documentationsetisdeliveredaspartoftheTM1 installation.ToviewanyTM1manualinPDFformat,clickStart All ProgramsCognosTM1Documentationandselectthemanualyouwant toview. YoucanalsoviewafulllibraryofTM1documentationinHTMLformatby choosingHelp Contents and IndexfromtheServerExplorer.
Preface xvi

Table of Contents

Index

xvii

TM1 Developers Guide

Table of Contents

Index

1 Introduction to TM1 Development


Thischapterprovidesanintroductiontotheconceptofmultidimensionality anddescribessomecommonresponsibilitiesofTM1developers. Majortopicsinthischapterinclude: UnderstandingMultidimensionality YourRoleasDeveloper UnderstandingTM1ObjectNamingConventions

Introduction to TM1 Development

1-1

Understanding Multidimensionality

Table of Contents

Index

Understanding Multidimensionality
WithTM1,youcancreatemultidimensionaldatabasesthatprovidebusiness andfinancemanagersinstantmeaningfromcomplex,dynamicbusiness models. Tounderstandmultidimensionality,considertheexampleoftheVice PresidentofSalesforaretailcompanywhowantstoanalyzeproductsales acrossaretailchainthatoperatesintheUnitedStatesandCanada.Eachretail storerecordstheunitsales,dollarsales,anddiscountsforthedurable consumerproducts. Thesalesareanalyzedbyproduct,scenario(actualversusbudget),region, measures(units,dollarsales,anddiscounts),andweek.Whatwehave identifiedisafivedimensionalmodel.Thedimensionsidentifyhowthedata isorganizedorhowthetypesofdataaretracked. InTM1,thesalesanalysiscanresideinoneormoremultidimensional structurescalledcubes.Acollectionofcubesformsadatabase.Eachdatapoint inacubeisidentifiedbyoneelementineachdimensionofthecube;for example,actualdollarsalesofdryersduringthesecondweekofJanuaryinthe Bostonstore.TM1cubesmustcontainnolessthantwoandnomorethan256 dimensions.

Durables Cube
Inthefollowingdiagram,eachdimensionintheDurablescubeisrepresented byaverticallinesegment.Theelementswithinthedimensionarerepresented byunitintervals.

1-2

TM1 Developers Guide

Understanding Multidimensionality

Table of Contents

Index

Product
Dryer Model

Scenario

Region
Boston

Measures

Time
Week-1 Week-2

Actual Hartford

Units Week-3 Week-4 Week-5 Nashua

Television Model Budget VCR Model

Dollar Sales New York

Week-6 Week-7 Week-8 Week-9

Montreal Washing Machine Model Variance Toronto Discounts

Week-10 Week-11 Week-12

SupposeyouaretheVicePresidentofSales,andyouneedtoquicklycompare theperformanceofproductsandstorestoidentifythewinningstrategiesand troublespots.UsingTM1multidimensionalviews,youcancreatean unlimitednumberofadhocqueries. Inthefollowingexample,youcanquicklycompareactualversusbudgeted dollarsalesacrossweeks.TheregionisBostonandtheproductisadryer model.

Introduction to TM1 Development

1-3

Understanding Multidimensionality

Table of Contents

Index

Byrearrangingtheview,youcancomparedollarsalesforthedryermodel acrossallregions.

1-4

TM1 Developers Guide

Your Role as Developer

Table of Contents

Index

LaterchaptersofthisbookdescribehowyoucanuseTM1toreconfigure viewsanddrilldownintoyourmultidimensionaldatatosatisfyyouranalysis requirements.

Your Role as Developer


AsaTM1developer,yourresponsibilitiesfallintofourmajortasks: Designandcreatethecubesthatholdbusinessanalyses. Decidewheretostorethecubessotheycanbesharedacrossthe organization. Importdataintothecubesfromtransactionalsystemsandotherdata sources. Createformulasthatperformcalculations,suchasaverageprices,currency conversions,andprice/earningratios. YoumusthaveaccessrightstotheTM1datainordertoperformthesetasks. Typically,yourTM1serveradministratorisresponsibleforsettingaccess rights.Thefollowingsectiondescribesthedistinctionbetweenalocalanda remoteserver,andliststheaccessrightsyouneedtoperformtasksonaremote server.

Understanding TM1 Object Naming Conventions


Asadeveloper,youareresponsibleforcreatingandnamingmanyobjectsina TM1system.Youshouldobservethefollowingconventionswhennaming TM1objects.

Introduction to TM1 Development

1-5

Understanding TM1 Object Naming Conventions

Table of Contents

Index

Thefollowingcharactersarereserved.Youcannotusethesereserved characterswhenyounameTM1applications,cubes,views,dimensions, subsets,processes,andchores: / \ : ? " < > | * slash backslash colon questionmark doublequote lessthan greaterthan pipe asterisk

NOTE: Therightcurlybrace(})cannotbethefirstcharacterinanyTM1object name. Thereisnorestrictiononthecharactersthatyoucanuseinelement,client, group,oraliasnames,withthefollowingexceptions: Anelementnamecannotcontainacircumflex(^)becausethischaracter isusedtodenoterelationshipsinMDX.TM1usesMDXtofilterviews andgeneratedynamicsubsets.Therefore,anelementnamethat

1-6

TM1 Developers Guide

Understanding TM1 Object Naming Conventions

Table of Contents

Index

containsacircumflexcauseserrorswhenyouapplyfiltersorcreate dynamicsubsets. Anelementnamecancontainarightsquarebracket(])butwhenan elementnamecontainingthischaracterisreferencedinanMDX expression,thecharacterneedstobeescapedbydoublingit.For example,anelementnamedArray[N] Elements,canbereferredtoinan MDXexpressionas[Array[N]] Elements].

The@charactercanbeusedinanyTM1objectname.However,the@ characterisastringcomparisonoperatorinTM1rules.Ifyoureferenceany objectcontainingthe@characterinTM1rules,theobjectnamemustbe enclosedinsinglequotationmarks.Forexample,adimensionnamed products@locationmustbereferencedasproducts@locationinTM1rules. TheentirestringrepresentedbythecombinationoftheTM1serverdata directorynameandtheTM1objectnameislimitedto256bytes.For example,ifyourdatadirectoryisC:\Financial data\TM1\ (22bytes),object namesarelimitedto234bytes,inclusiveofafileextensionsuchas.cubor .rux. SomeTM1objects,suchasviews,subsets,andapplications,arestoredin subdirectoriesoftheTM1serverdatadirectory.Inthiscase,the256byte limitisappliedtothecombinationoftheTM1serverdatadirectory,the subdirectory,andtheobjectname. Objectnamesarenotcasesensitive.Forexample,thedimensionname actvsbudisequivalenttoActVsBud. Spacesareallowedinallobjectnames,butspacesareignoredbytheTM1 server.TheTM1serverconsidersthedimensionnameAct Vs Budtobe equivalenttoActVsBud (or actvsbud).

Introduction to TM1 Development

1-7

Understanding TM1 Object Naming Conventions

Table of Contents

Index

1-8

TM1 Developers Guide

Table of Contents

Index

2 Creating Cubes and Dimensions


TM1storesbusinessdataincubes.Thischapterdescribeshowtocreatecubes andtheirbuildingblocks,dimensions. Themajortopicsinclude: DesigningCubes CreatingDimensions CreatingCubes ReplicatingCubesbetweenServers NOTE: AlltasksdescribedinthischapterrequireTM1PerspectivesorTM1 Architect.Youcannotcreatecubes,create/editdimensions,orestablish replicationswithTM1Client.

Creating Cubes and Dimensions

2-1

Designing Cubes

Table of Contents

Index

Designing Cubes
TM1storesyourbusinessanalysesincubes.Eachcellinacubecontainsa measurethatyouaretrackinginananalysis.Acubecanstoredataagainstone ormoremeasures. Youformacubewithdimensions,whichidentifyhowtoorganizethedataor themeasuresyouwanttotrack.Oneelementineachdimensionidentifiesthe locationofacellinacube. Thefollowingexamplecubecontainsthreedimensions:Product,Measures, andMonth.Eachmeasure,suchasSales,isorganizedordimensionedbya productandamonth.Forexample,thecellvalue30000representsthesalesof Sedan-1inthemonthofJanuary(Jan). TM1treatsalldimensionsthesameway,whethertheycontainelementsthat identifymeasuresordescribehowyouorganizethemeasures.

2-2

TM1 Developers Guide

Designing Cubes

Table of Contents

Index

Selecting the Number of Dimensions


Everycubehasatleasttwodimensionsandamaximumof256dimensions.For example,atwodimensionalcubeisbestsuitedasalookuptablewhenyou wanttocalculatevaluesinothercubesthathavemoredimensions.Forexample, youcanconvertthelocalcurrencyamountstoareportingcurrencybyusinga twodimensionalcubethatstorestheexchangerates.Youretrievetherateusing aTM1rule. Thenumberofdimensionsinacubedependsmostlyonthedimensionalityof yourdata.ConsidertheaccountsinaProfitandLossStatement. Profit and Loss Statement (in thousands) Year Ending 31 Dec, 2002 Netsales Directcosts Directlabor GrossProfit Salaries Payroll Electricity Rent Depreciation 200,000 35,000 50,000 115,000 30,000 3,500 5,000 10,000 6,000

Ifyouwanttoexaminehowtherevenueandexpensesvarybytheirfactors, youwouldneedtodividetheaccountsintotwogroups.

Creating Cubes and Dimensions

2-3

Designing Cubes

Table of Contents

Index

AccountsabovetheGrossProfitline,suchasNetsalesandDirectcosts, whichyoucandimensionbyproduct,region,scenario(Actualversus Budget),andmonths. AccountsbelowtheGrossProfitline,suchasPayroll,Electricity,andRent, whichyoucandimensionbyregion,scenario(ActualversusBudget),and months,butnotproduct.Youcannotdirectlyattributetheoverheadsto products,soyoucannotanalyzethematthesamelevelofdetail. Thisdifferenceindimensionalitysuggeststwocubes: FivedimensionalcubefortheaccountsabovetheGrossProfitline FourdimensionalcubefortheaccountsbelowtheGrossProfitline Five-dimensional Cube Thefollowingdiagramrepresentsthedimensionsandelementsinthefive dimensionalcube.Eachdimensionisrepresentedbyaverticallinesegment. Theelementswithinthedimensionarerepresentedbyunitintervals.

2-4

TM1 Developers Guide

Designing Cubes

Table of Contents

Index

Four-dimensional Cube Thefollowingdiagramrepresentsthedimensionsandelementsinthefour dimensionalcube.Eachdimensionisrepresentedbyaverticallinesegment. Theelementswithinthedimensionarerepresentedbyunitintervals.

Creating Cubes and Dimensions

2-5

Designing Cubes

Table of Contents

Index

Consolidating Detail Using Dimension Hierarchies


Thedatayouimportintoacubeprovidesasnapshotofyourbusinessata specificlevelofdetail.Forexample,youmightimporttheweeklyormonthly salesdataforproductsbycity.Thedimensionelementsthatidentifythesedata pointsaresimpleorleaflevelelementsineachdimension:salesforoneweek, oneproduct,onecity. Byusingdimensionhierarchies,youcaneasilyaggregatenumericdatainto categoriesthataremeaningfulinyouranalyses.Eachcategorycorrespondsto anaggregationofdetailfortwoormoreelementsinadimension.Forexample, youcancreatequarterlyelementsthatsummonthlysalesamounts.InTM1, elementsthatrepresentaggregationsarecalledconsolidatedelementsor consolidations.
2-6 TM1 Developers Guide

Designing Cubes

Table of Contents

Index

Thefollowingdiagramshowsthreelevelsofconsolidationforelementsofa Regiondimension.Thecitiesprovidethelowestlevelofdetail(Level0).The citiesrollupintostateconsolidations(Level1),whichrollupintoregional consolidations,whichfinallyrollupintotheEastern USAconsolidation(Level 3).

Navigating through a Dimension Hierarchy Adimensionhierarchyprovidesanavigationpathforanalyzingdataat differentlevelsofdetail.Drillingdownmeansnavigatingtogreaterlevelsof detailalongonedimension.Forexample,asyoudrilldownfromNew EnglandintheaboveRegiondimension,youaccesstheunderlyingdatafor twostatesandthenfourcities.Drillingupmeansnavigatingtosummary levelsindimensions.
Creating Cubes and Dimensions 2-7

Designing Cubes

Table of Contents

Index

Using Weights to Express Consolidations Weightfactorsdeterminethecontributionofanelementtoaconsolidation.To expressthattheConnecticutsalestotalisasumofHartfordand New Haven, youassignadefaultweightfactorof1.0tobothHartfordandNew Haven. Youcanalsoconsolidateelementsbysubtractingthevaluesassociatedwith theelements.Forexample,youcanexpressNet ProfitasMarket Value Acquisition Value.Youwouldassignaweightfactorof1.0toMarket Valueand 1.0toAcquisition Value.Thefollowingtablepresentsfourweighting examplesofconsolidation. Dimension Account Month Consolidated Element Net Profit 1Quarter Consolidation Method Subtraction Addition Subordinate Elements Market Value Acquisition Value January February March January February March Hartford New Haven Weight Factors 1.0 1.0 1.0 1.0 1.0 .07692 .07692 .09615 1.0 1.0

Period

Yearly Budget

4-4-5 Distribution

Region

Connecticut

Addition

2-8

TM1 Developers Guide

Designing Cubes

Table of Contents

Index

Creating Multiple Roll-ups in a Dimension Youcanrolluplowlevelnumericdata,suchassalesandunits,inseveralways bycreatingmultiplehierarchiesinadimension.Bycreatingmultiplerollups inadimension,youcanreducethenumberofdimensions,andthenumberof emptycellsinacube. Inthefollowingexample,Hartford,asimpleelementintheRegiondimension, rollsupalongtwopaths:geographicandmanagement. Geographic Roll-up

Management Roll-up

Creating Complex Calculations TM1aggregatestheconsolidationsyoucreatewithindimensionsbythe weightfactorsyouassign.Tocreateratiosbetweentheelementsormultiply


Creating Cubes and Dimensions 2-9

Designing Cubes

Table of Contents

Index

thevaluesassociatedwiththeelements,youmustcreateacomplex calculation,calledaTM1rule.HerearetwocalculationsthatrequireTM1 rules: Gross Margin = (Gross Profit Net Sales) x 100 Sales = (Price x Units)

Youcanalsouserulestotallytheelements.However,rulestakelongerto processthanconsolidations,especiallyinlargeorsparsecubes.Sparsecubes haveahighpercentageofemptycells. Foracomprehensiveexplanationofrules,seetheTM1RulesGuide.

Types of Elements
Sofar,youvelearnedaboutsimpleorbaselevelelementsthatyoucanrollup toconsolidations.TM1supportsthreetypesofelements: Numeric Identifythelowestleveldetailinadimension.Inacubethat containsonlynumbers,TM1definesallthelowestlevel elementsasnumeric. Aggregationsoflowerleveldetail.Forexample,youcoulduse the1Quarterelementinatimedimensiontosumthesales amountsforthefirstthreemonthsoftheyear.

Consolidated

2-10

TM1 Developers Guide

Designing Cubes

Table of Contents

Index

String

Storestextstringsincells.Toincludeastringinacellinacube, theelementfromthelastdimensiondefiningthecellmustbea stringelement.TM1treatsstringelementsthatoccurinany dimensionotherthanthelastoneasnumericelements. Thetypicaluseforstringelementsisinatwodimensionalcube thatconvertscodesinaninputfiletoformalelementnames. Forexample,ifyouwanttoconvertaccountcodestoaccount names.

Element Attributes
Theelementsidentifydatainacube,andtheelementattributesdescribethe elementsthemselves. Youcanuseattributesto: Listfeaturesofelements.Forexample,thesquarefootageofastoreandthe enginesizeofacarmodel. Providealternativenames,oraliases.Forexample,descriptivenamesof generalledgeraccountsandthelocallanguageversionsofproductnames. Controlthedisplayformatforthenumericdata.Typically,youselecta displayformatforthemeasuresyoutrackinacube. YoucanselectelementsbyattributevalueintheSubsetEditor.Youcanalso displayelementnamesinTM1windowsusingtheiraliases. Tocreateattributesandassignattributevalues,usetheAttributesEditor.

Creating Cubes and Dimensions

2-11

Designing Cubes

Table of Contents

Index

Descriptive Attributes Thefollowingtableshowssampleattributesthatdescribecarmodels. Attributes Elements Sedan 1 Sedan 2 Sedan 3 Sedan 4 Sedan 5 Alias Attributes ThefollowingtableshowsGerman,Spanish,andFrenchversionsofEnglish furniturenames. Alias Attributes Elements Chair Desk Lamp Deutsche Stuhl Schreibtisch Lampe Espaol Silla Escritorio Lmpara Franais Chaise Bureau Lampe Horsepower (Numeric) 190 140 120 180 140 Engine (Text) V-8 Inline 4 Inline 4 V-8 Inline 4 Audio (Text) Compact Disc Cassette / Radio Cassette / Radio Compact Disc Cassette / Radio

2-12

TM1 Developers Guide

Designing Cubes

Table of Contents

Index

Display Format Attributes TheCubeViewerwindowdisplaysnumericdataintheformatsshowninthe followingtable. Format Name Currency Description Numbers appear with a currency symbol and the specified number of decimal places (Precision). TM1 uses the currency symbol defined in the Windows Regional Settings dialog box. Numbers appear with a specified number of decimal places (Precision). Numbers appear as percentages, with a specified number of decimal places (Precision). Numbers appear in exponential form, with a specified number of decimal places (Precision). Numbers appear as a date string. 1=January 1, 1900. There are a number of date formats available. Numbers appear as a time string. There are a number of time formats available. Places commas in the appropriate places in large numbers. A user-defined format. Example $90.00

General Percentage Scientific Date

-90 90.00% 9.0e+001 March 31, 2002

Time Comma Custom

19:53:30 A 1,000,000 Custom

Creating Cubes and Dimensions

2-13

Designing Cubes

Table of Contents

Index

UsingtheAttributes Editorwindow,youcanselectadisplayformatforevery elementineachdimensioninacube.However,itisrecommendedthatyou selectdisplayformatsonlyforonedimension,themeasuresyoutrackina cube.YoucanalsoselectaformatintheCubeViewerwindowthatappliesto cellswhoseelementsdonothaveadisplayformatdefined. TM1determineswhichdisplayformattouseintheCubeViewerwindow,as follows: 1. TM1firstcheckstheelementsinthecolumndimensionfordisplayformats. Ifdimensionsarestacked,TM1checksfromthebottomupward. 2. Ifnoformatisfound,TM1checkstheelementsintherowdimensionfor displayformats.Ifdimensionsarestacked,TM1checksfromrighttoleft. 3. Ifnoformatisfound,TM1checksthetitleelementsfordisplayformats.The elementsareinspectedfromrighttoleft. 4. Ifnoformatisfound,TM1appliestheformatforthecurrentview. ToensurethatTM1appliestheformatforthecubemeasures,positionthe dimensioncontainingthemeasuresasthebottommostcolumndimension. Setting Display Formats for Rows or Columns Youmightwanttoformatthenumbersinasinglecolumnorrow.Todothis, usetheAttribute Editor.Forexample,thefollowingfigureshowstheFormat viewoftheSalesPriorCubecube.ThenumbersintheUnitsrowcontaintwo decimalplaces,andwouldbebetterrepresentedaswholenumberswithno decimalpoints.

2-14

TM1 Developers Guide

Designing Cubes

Table of Contents

Index

TheMonthdimensiondisplaysinthecolumnoftheview.Anydisplayformat youassigntoacolumndimensionoverridesthedisplayformatyouselectfor therowdimension. Forthefirsttask,letsmakesurethatnoformattingisappliedtotheYear elementoftheMonthdimension.Followthesesteps. 1. OpentheFormatviewofSalesPriorCube. 2. IntheServerExplorer,expandtheSalesPriorCubecubesothatyoucansee itsdimensions.

Creating Cubes and Dimensions

2-15

Designing Cubes

Table of Contents

Index

3. RightclicktheMonthdimension,andselectEdit Element Attributes. TheAttribute Editoropens. NotethattherearenoFormatattributevaluesfortheMonthdimension. Youcannowbesurethatanyformatsyousetfortherowdimensionwill takeprecedenceintheCubeViewer(orIn-Spreadsheet Browser). 4. ClicktheCanceltoclosetheAttribute Editor. Forthistask,followthestepstoformatthenumbersintheUnitsrowaswhole numberswithzero(0)decimalplaces. 1. IntheServerExplorer,rightclicktheAccount1dimension,andselectEdit Element Attributes. TheAttribute Editoropens. 2. ClickthecellattheintersectionoftheUnitselementrowandtheFormat column. 3. ClicktheFormatbutton. TheNumber Formatdialogboxopens. 4. SelecttheCommacategory,enter0inthePrecisionbox,andclickOK. 5. ClickOKintheAttributes Editordialogbox. 6. ClickRecalculate torecalculatetheFormatview. TheUnitsvaluesnowdisplayaswholenumberswithoutdecimalpoints.

2-16

TM1 Developers Guide

Designing Cubes

Table of Contents

Index

Attributes versus Elements Whenyouwanttolistmultipleattributesvaluesforasingleelement,consider creatingadditionalelementsoradditionaldimensions.Forexample,the exteriorcolorisanattributeofcarmodels.Theredmodelsoftenoutsellthe othercolormodels.Ifyoucreateoneelementpercarandanotherdimension withelementsforeachcolor,youcanuseTM1totrackcarsalesbycolor.Ifyou combinesalesintoasinglemodel,youmightlosevaluabledetail. Consideranotherexample.Inthecarmodelstable,thereisanattribute categoryforengineconfiguration.Eachcarhasasingleengineconfiguration, suchasV8.Ifanysedansareavailableinmorethanoneengineconfiguration, considercreatingoneelementperengineconfiguration.

Designing Cubes Summary


Hereareguidelinestousewhenyoudesigncubes:
Creating Cubes and Dimensions 2-17

Creating Dimensions

Table of Contents

Index

1. Listthemeasuresyouwanttotrackinyourbusinessanalysis.Examplesof measuresincludesalesamounts,unitssold,expenses,acquisitionvalues, andcampaigncosts. 2. Determinehowyouwanttoorganizeordimensionthemeasures.Inmost analyses,youtrackmeasuresovertime. Whatisthebasetimeinterval:days,weeks,months? Isthereageographicdimension? Dothemeasuresvarybycustomerandproduct? Isthereascenariodimension(actualversusbudget)? 3. Determinehowyouwanttoconsolidatethedimensionelements. 4. Createalistofattributesyouwanttoassociatewiththeelementsofthe cube.Examplesofattributesincludestoresquarefootage,customerIDs, andlocallanguageversionsofelementnames. 5. Definethedisplayformatsforthemeasuresinyourcubes.Forexample, defineGross MarginasapercentageandSalesasacurrencyamount.

Creating Dimensions
Whenyoucreateadimension,youidentifytheleaflevelelementsthat comprisethedimensionand,optionally,anyhierarchies(consolidations) withinthedimension. Therearefourwaystocreatedimensions:

2-18

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

DimensionEditorAddelementsaswellascreateandrearrange consolidationswhileyoudesigndimensions.Formoreinformation,see CreatingDimensionsUsingtheDimensionEditorWindow. TurboIntegratorImportelementnamesfromanASCII,ODBC,cube view,ordimensionsubsetsource.Simultaneouslycreatemultiple dimensionsandestablishconsolidationwithinthosedimensions.Formore information,seetheTM1TurboIntegratorGuide. ImportingDataintoaNewCubeUseTurboIntegratortomapinputrows fromadatasourcetoacube.Thenidentifytheinputcolumnsthatsupply thecellvaluesandtheelementsthatidentifythecelllocation.Formore informationaboutthisprocess,seetheTM1TurboIntegratorGuide. DimensionWorksheetsUsethesemodifiedMicrosoftExcelworksheets tolisttheelementsandhierarchicalrelationshipsforonedimension.For moreinformation,seeCreatingDimensionsUsingDimension Worksheets.

Creating Dimensions Using the Dimension Editor Window


ThissectionwalksyouthroughthestepsforcreatingasimpleAreadimension usingtheDimensionEditorwindow.ThehierarchyfortheAreadimension

Creating Cubes and Dimensions

2-19

Creating Dimensions

Table of Contents

Index

includestheconsolidatedNew Englandelementandthreesimpleelements, Connecticut, Massachusetts,andVermontasshownhere.

TocreatetheAreadimension: 1. IntheTreepaneoftheServerExplorer,selectDimensionsbeneaththe serverthatyouwanttocontainthedimension. 2. ClickDimensions Create New Dimension. TheDimensionEditoropens.

2-20

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

Youcannowaddelementstothedimension.

Creating Cubes and Dimensions

2-21

Creating Dimensions

Table of Contents

Index

3. ClickEditInsert Element orclickInsert Element TheDimension Element Insert dialogboxopens.

4. Toaddaconsolidatedelement,dothefollowing: TypeNew EnglandintheInsert Element Namefield. SelectConsolidatedfromtheElement Typelist. ClickAdd. ClickOK.

2-22

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

New England nowappearsasthefirstelementofthedimension,whichisa consolidatedelement.NowletsaddthreechildelementstotheNew Englandelement.Asaresult,New Englandbecomestheparentelementof thethreechildelements.

1. SelecttheNew Englandelement. 2. ClickEdit Insert Child orclickInsert Child .

TheDimension Element Insert dialogboxopens.TM1displaysaParent nameofNew England,indicatingthatanyelementsyoucreatewillbethe childrenofNew England. 3. IntheInsert Element Namefield,typeConnecticutandclickAdd. 4. IntheInsert Element Namefield,typeMassachusettsandclickAdd.
Creating Cubes and Dimensions 2-23

Creating Dimensions

Table of Contents

Index

5. IntheInsert Element Namefield,typeVermontandclickAdd. ThedialogboxnowcontainsthreechildrenofNew England,eachwitha defaultweightof1.

2-24

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

6. ClickOK. TheDimensionEditorshowsthenewelementsaschildrenofNew England.

7. ClickDimension SaveorclickSave TheDimension Save As dialogboxopens.

Creating Cubes and Dimensions

2-25

Creating Dimensions

Table of Contents

Index

8. EnteradimensionnameandclickSave. Dimensionnamescanhaveamaximumof256characters.Alwaysuse descriptivedimensionnames. Thenewdimensiondisplaysinthelistofdimensionsontheserver.

Modifying a Dimension
Aftercreatingadimension,youcanmakethefollowingmodifications: Addsiblingstoexistingelements. Addchildrentoexistingelements. Rearrangethehierarchystructure,suchasrepositioningelementswithin consolidations. Deleteelementsfromthedimension. Deleteelementsfromconsolidations. Editelementproperties,suchaschangingtheweightofanelementwithina consolidation. Rearrangetheorderofelementsinthedimension.

2-26

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

Adding Siblings to Existing Elements ToaddsiblingstoanexistingelementintheDimensionEditor: 1. Selecttheelementtowhichyouwanttoaddsiblings. 2. ClickEdit Insert Sibling. TheDimension Element Insertdialogboxopens. 3. EnterthenameofthefirstsiblingintheInsert Element Name field. 4. Ifapplicable,enteranElement Weight. Thedefaultelementweightis1. 5. ClickAdd. 6. Repeatsteps3through5foreachsiblingyouwanttoadd. 7. ClickOK. TM1addsthenewelementsassiblingsoftheelementyouselectedinstep1. Adding Children to Existing Elements ToaddchildrentoexistingelementsintheDimensionEditor: 1. Selecttheelementtowhichyouwanttoaddchildren. Ifyouaddchildrentoasimple(leaflevel)element,theelement automaticallybecomesaconsolidatedelement. 2. ClickEdit Insert Child. TheDimension Element Insertdialogboxopens. 3. EnterthenameofthefirstchildintheInsert Element Name field.

Creating Cubes and Dimensions

2-27

Creating Dimensions

Table of Contents

Index

4. Ifapplicable,enteranElement Weight. Thedefaultelementweightis1. 5. ClickAdd. 6. Repeatsteps3through5foreachchildyouwanttoadd. 7. ClickOK. TM1addsthenewelementsaschildrenoftheelementyouselectedinstep1. Rearranging the Dimension Hierarchy Tochangethepositionofelementswithinthedimensionhierarchy: 1. IntheDimensionEditor,selecttheelementsyouwanttomove. Toselectasingleelement,clicktheelement. Toselectmultipleadjacentelement,clickthefirstelement,holddown SHIFT,andclickthelastelement.YoucanalsopressCTRL-A toselectall visibleelements. Toselectmultiplenonadjacentelements,holddownCTRL,andclick eachelement. 2. Draganddroptheelementstotheirnewlocationinthedimensionhierar chy. Asyoudragtheelements,thecursorchangestoindicatewhereTM1will droptheelements.Also,thestatusbardisplaysamessageindicatingwhere TM1willdroptheelements.

2-28

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

ThefollowingexampleshowsthattheselectedelementsMassachusetts and Maine(showninthePropertiespaneinthenextfigure)willbe droppedaboveVermont.

Creating Cubes and Dimensions

2-29

Creating Dimensions

Table of Contents

Index

2-30

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

ThisexampleshowsthattheselectedelementsMassachusetts and Maine (showninthePropertiespaneinthenextfigure) willbedroppedas childrenofVermont.

Creating Cubes and Dimensions

2-31

Creating Dimensions

Table of Contents

Index

Youcanalsocutandpasteelementstorearrangethedimensionhierarchy. Deleting Elements from a Dimension Todeleteelementsfromadimension: 1. Selecttheelementsyouwanttodelete. Toselectasingleelement,clicktheelement. Toselectmultipleadjacentelement,clickthefirstelement,holddown SHIFT,andclickthelastelement. Toselectmultiplenonadjacentelements,holddownCTRL,andclick eachelement.

2-32

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

Toselectelementsbyhierarchylevel,attributevalue,orspellingpattern, seetheTM1UsersGuide. 2. ClickEdit Delete Element. Deleting Elements from a Consolidation Todeleteelementsfromaconsolidation: 1. Selecttheelementsyouwanttodelete. Toselectasingleelement,clicktheelement. Toselectmultipleadjacentelement,clickthefirstelement,holddown SHIFT,andclickthelastelement. Toselectmultiplenonadjacentelements,holddownCTRL,andclick eachelement. 2. ClickEdit Delete Element from Consolidation orclickDelete TM1deletestheelementfromtheconsolidation,andkeepsanyother instancesoftheelementinthedimension. NOTE: Ifyoudefinetheelementonlywithintheconsolidation,TM1deletes theelementfromthedimensionaswell. Editing Element Properties Youcanedittheelementpropertiestoassignanewweighttoanelementofa consolidation,ortochangetheelementtypeofaleaflevelelement. NOTE: Youcannotchangetheelementtypeofconsolidatedelements,andyou cannotassignanelementweighttoanyinstanceofanelementthatisnota memberofaconsolidation.
Creating Cubes and Dimensions 2-33

Creating Dimensions

Table of Contents

Index

ToedittheelementpropertiesintheDimensionEditor: 1. Selecttheelement. 2. ClickEdit Element Properties. TheDimension Element Propertiesdialogboxopens. 3. Ifnecessary,selectanewelementtypefromtheElement Type list. 4. Ifnecessary,enteranewElement Weight. 5. ClickOK. Setting the Order of Elements in a Dimension TM1letsyousettheorderofelementsinadimensiontodeterminetheindex valueforeachelementinadimension.Thefirstelementinadimensionhasan indexvalueof1,thesecondelementhasanindexvalueof2,andsoon. Settheorderofelementsinadimensionisanimportantfeaturebecausemany TM1functions(worksheet,rules,andTurboIntegrator)referencetheelement indexvalues. Caution: Ifyouchangetheorderofelementsinadimension,anyfunctions thatreferenceelementindexvaluesreturnnewandpossiblyunexpected values. TosettheorderofelementsintheDimensionEditor: 1. Ordertheelementsasyouwantthemtoappearinthedimension. Youcanusethesortoptionsanddraganddropfunctionalityofthe DimensionEditortoaltertheorderofelements. 2. ClicktheSet Dimension Orderbutton.

2-34

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

3. ClickDimensionSave. WhenthesortingpropertyofthedimensionissettoAutomatic,TM1 promptsyoutochangethesortingpropertytoManual. WhenthesortingpropertyofthedimensionissettoManual,TM1 insertsanyelementsyouaddedtothedimensionwhereveryou manuallypositionedthemintheDimensionEditor. 4. ClickYestosavethenewdimensionorderandsetthedimensionsorting propertytoManual. YoucansettheorderofelementsevenwhentheDimensionEditordisplays onlyasubsetofalldimensionelements.Forexample,ifyouhavealarge dimension,youmightwanttoalterandsettheorderofjustafewelements.Be awarethatwhenyousettheorderofelementswithjustasubsetofelements displayedintheDimensionEditor,theentiredimensionisaffected. Thefollowingexampleshowshowsettingtheorderofelementswhen workingwithasubsetaffectstheentiredimension.

Creating Cubes and Dimensions

2-35

Creating Dimensions

Table of Contents

Index

Forsimplicity,thissampledimensioncontainstenelementswithsingleletter names,buttheconceptillustratedinthisexampleappliestolarger,more complexdimensions.

1. Nowifyouselecttheelementsc,d,andgthenclickEdit Keep,the DimensionEditorcontainsthefollowingsubsetofelements.

2-36

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

2. Now,youdecidethatyouwanttochangetheorderofthesethreeelements. Youwantdtobethefirstelement,andctobethelastelement.

Creating Cubes and Dimensions

2-37

Creating Dimensions

Table of Contents

Index

3. Nowthattheelementsappearintheorderyouwant,clickSet Dimension Order .

Theorderofelementsfortheentiredimensionisnowset.Ifyoulookatthe entiredimension,youseethatitopensasfollows.

2-38

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

Fortheexample,whenyousettheorderofelementsforasubset,thenew orderaffectstheentiredimensioninthefollowingway: Thesubsetofelementsthatwasactivewhentheelementorderwasset appearwithshadedicons. Thefirstsubsetelementmaintainsitspositioninthedimensionrelativetoits nearestpredecessor. Intheexample,elementdisthefirstelementinthesubsetwhentheorder ofelementswasset. Elementbisthenearestpredecessor,exclusiveofsubsetelements,todinthe dimension,sodnowfollowsbinthedimensionstructure. Theothersubsetelementsappearinthedimensionstructuremaintaining theirpositionrelativetothefirstelementinthesubset.

Creating Cubes and Dimensions

2-39

Creating Dimensions

Table of Contents

Index

Setting the Order of Dimension Elements from the Server Explorer YoucanalsosettheorderofdimensionelementsfromtheServerExplorer withoutopeningtheDimensionEditor.Youcanalsoselectasortingproperty forthedimensionfromthesethreeautomaticsortorders: Name Level Hierarchy Afteryousetthesortingproperty,TM1insertstheelementsyouaddedtothe dimensionaccordingtotheirpositionwithinthesortorder.Forexample,if yousetanautomaticsortorderofName,TM1insertsthenewelementsinto thedimensioninalphabeticalorder. TosettheorderofdimensionelementsfromtheServerExplorer: 1. RightclickthedimensionintheServerExplorer. 2. ClickSet Elements Order. TheDimension Element Orderingdialogboxopens.

2-40

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

3. Selectasorttype. Automatic Manual EnablestheAutomatic Sort Byoptions:Name,Level,and Hierarchy. Orderselementsastheycurrentlyexistinthedimension structureandsetsthedimensionsortingpropertyto Manual.

4. IfyouselecttheManualsorttype,skiptostep7. 5. SelectanAutomatic Sort Byoption. Name Level Hierarchy Sortselementsalphabetically Sortselementsbyhierarchylevel. Sortselementsaccordingtothedimensionhierarchy.

Creating Cubes and Dimensions

2-41

Creating Dimensions

Table of Contents

Index

6. Ifapplicable,selectaSort Direction. 7. ClickOK. Youhavenowsettheorderofthedimensionelements.Whenyouopenthe dimension,youwillseetheelementsinorderaccordingtotheSort By optionyouspecifiedinstep5.

Managing the Display of Elements in the Dimension Editor


TheDimensionEditorincludesseveralfeaturesthatletyoumanagetheway elementsdisplay.Forexample,whenyouworkwithlargedimensionsitmight behelpfultodisplayonlytheelementsofacertainhierarchylevel,oryou mightwanttoviewtheelementsinalphabeticalorder. WhenyoualterthedisplayofelementsintheDimensionEditor,youdonot changethedimensionstructure,yousimplychangethewayTM1presentsthe elementsinthewindow. Theupcomingsectionsdescribehowtomanagethedisplayofelementsinthe DimensionEditor. Keeping Elements TodisplayonlytheselectedelementsintheDimensionEditor: 1. Selecttheelementsyouwanttodisplay. Toselectasingleelement,clicktheelement. Toselectmultipleadjacentelement,clickthefirstelement,holddown SHIFT,andclickthelastelement. Toselectmultiplenonadjacentelements,holddownCTRL,andclick eachelement.
2-42 TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

2. ClickEditKeeporclickKeep

TheDimensionEditordisplaysonlytheelementsyouselected. Hiding Elements TohideselectedelementsintheDimensionEditor: 1. Selecttheelementsyouwanttohide. Toselectasingleelement,clicktheelement. Toselectmultipleadjacentelement,clickthefirstelement,holddown SHIFT,andclickthelastelement. Toselectmultiplenonadjacentelements,holddownCTRL,andclick eachelement. 2. ClickEditHideorclickHide .

TheDimensionEditorhidestheelementsyouselected.Allotherelements remainvisible. Sorting Elements Alphabetically YoucansorttheelementsintheDimensionEditorinascendingordescending alphabeticalorder. AscendingAlphabeticalClickEdit Sort By AscendingorclickSort Ascending .

DescendingAlphabeticalClickEdit Sort By Descendingorclick Sort Descending .

Creating Cubes and Dimensions

2-43

Creating Dimensions

Table of Contents

Index

Sorting Elements by Index Value YoucansorttheelementsintheDimensionEditorinascendingordescending orderaccordingtotheindexvalue. AscendingIndexValueClickEdit Sort By Index Ascendingorclick Sort By Index, Ascending .

Descending Index ValueClickEdit Sort By Index Descendingorclick Sort By Index, Descending Sorting Elements by Hierarchy Tosortelementsastheyappearinthedimensionhierarchy,clickEdit Sort By Hierarchy orclickHierarchy Sort Viewing Elements by Alias Ifyoudefinedanaliasattributeforadimension,youcanviewtheelementsby theiraliasesintheDimensionEditor. ThedimensionsintheTM1SampleDatadirectoryhavealiasesdefinedfor FrenchandGerman,soyoucanviewallelementnamesbytheirforeign languageequivalents. 1. OpentheMonthdimensionintheDimensionEditor. 2. ClickView Toolbars AliastodisplaytheAliastoolbar. TheAliastoolbarcontainstwoobjects:aUse Aliasestogglebuttontoturn thedisplayofaliasesonoroff,andaSelect Aliaslistfromwhichyoucan selectanalias. . .

2-44

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

3. SelectMonat(GermanforMonth)fromtheSelect Aliaslist. 4. ClicktheUse Aliasesbutton. Bydefault,TM1doesnotdisplaythealiases.TheDimensionEditor now displaysallelementsbytheirGermanaliases.

Creating Dimensions Using Dimension Worksheets


AdimensionworksheetisamodifiedExcelspreadsheetinwhichyoulist elementsandhierarchicalrelationshipsforonedimension.TM1savesthe worksheetdataintwofiles:dimensionworksheet(dimname.xdi)andcompiled file(dimname.dim). WhenyoucreateadimensionusingtheDimensionEditorwindowor TurboIntegrator,TM1writesonlytothedimname.dim(compiled)file.

Creating Cubes and Dimensions

2-45

Creating Dimensions

Table of Contents

Index

WhenyoumodifyadimensionusingtheDimensionEditor,TM1saves yourchangestothe.dimfile.Ifan.xdifileexistsforthedimension,TM1 promptsyoutosavechangestothedimensionworksheet.Ifyoudeclineto updatethedimensionworksheet,thedimensionstructureinthe.dimfile willdifferfromthatinthe.xdifile. ToensurethatTM1hasaccesstoallofyourdimensionchanges,createand maintaindimensionswithdimensionworksheetsortheDimensionEditor. Donotmixmethods.Thiscanleadtodataloss. Keeping Your Data Synchronized TM1savesthedimensionworksheetfilestothefirstdirectorylistedinthe Local Server Data DirectoryfieldintheOptionsdialogbox.Therefore,TM1 mightsaveyourdimensionworksheet(.xdi)toadifferentdirectorythanyour dimensionfile(.dim). NOTE: Beverycarefulwheneditingdimensionsusingworksheets.Thereare severalwaysinwhichdatacanbelostifyoudonottakeproperprecautions. Thefollowingexamplesshowtwowaysyoucanlosedimensiondata. OnMonday,youeditadimensionworksheetfortheAccount1dimension, andsavethedimension.OnTuesday,anotheradministratorusesthe DimensionEditortomakechangestothedimension.Thechangesshe makesarenotpropagatedtothedimensionworksheetfile.OnWednesday, youmakeanotherchangetothedimensionusingtheoutofdate dimensionworksheet.Yourchangesoverwritethechangesmadebythe otheradministrator. Twoadministratorsdecidetoupdateadimensiononthesameserverusing twodifferentdimensionworksheets.Thisisverydangerous.TM1can overwritethechangesveryeasily.Useonesetofdimensionworksheets.Tryto avoidhavingmorethanone.xdifileforanydimension.
2-46 TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

Toavoidconfusionandpossibledataloss,useprecautionswhenediting dimensionworksheets.Werecommendusingoneofthefollowingprocedures. Usetheremoteserverdatadirectorytostorethedimensionworksheets. Useaspecialdirectorytostoreyourdimensionworksheets. Using the Remote Server Data Directory Toeditthedimensionworksheetsintheserverdatadirectoryontheremote server,followthesesteps. 1. SettheLocal Server Data DirectoryintheOptionsdialogboxtothedata directoryusedbyyourremoteTM1server. 2. TurnofftheoptionConnect to Local Server on Startup. 3. Verifythatanylocalserversrunningonyourcomputerareshutdown. 4. LogintotheremoteTM1server. 5. Makeallofthemodificationstoyourdimensionsusingtheworksheetfiles intheremoteserverdatadirectory. 6. ClickTM1Dimension WorksheetsSaveinExcel. TM1writesboththe.dimfileandthe.xdifiletotheremoteserverdata directory. Using a Worksheet Directory Byusingaspecialworksheetdirectory,youcansharplyrestrictaccesstoyour dimensionworksheets.Thiscanbeveryusefulinsecurityconscious installations.Tosetupaworksheetdirectory,followthesesteps. 1. Createaworksheetdirectorysomewhereonyourfilesystem.

Creating Cubes and Dimensions

2-47

Creating Dimensions

Table of Contents

Index

2. Moveallofyourworksheetfiles(.xdifordimensions,and.xruforrules)to theworksheetdirectory. 3. SettheLocal Server Data DirectoryintheOptionsdialogboxtotheworksheet directory. 4. Connecttotheremoteserverthatcontainsthedimensionyouwantto update,andanyotherserversyouwant. 5. Makeallofthemodificationstoyourdimensionsusingtheworksheetfiles intheworksheetdirectory. 6. ClickTM1Dimension WorksheetsSaveinExcel. TheSelect Server Namedialogboxopens.

7. Selecttheserveronwhichyouwanttosavethecompileddimension. 8. ClickOK.
2-48 TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

Creating Dimension Worksheets Tocreateadimensionusingdimensionworksheets: 1. ClickTM1Dimension WorkSheetsNewinExcel. TheCreate a Dimension dialogboxopens.

2. Inthetopbox,enteranameforthedimensionasfollows: Tocreateadimensiononyourlocalserver,typethenameofthe dimension.Forexample:Product. Tocreateadimensiononaremoteserver,typetheservername,acolon, andthenthedimensionname.Forexample,sales:Productcreatesthe Productdimensiononthesalesserver. NOTE: YoumustbeaTM1administratortocreateadimensiononaremote server.


Creating Cubes and Dimensions 2-49

Creating Dimensions

Table of Contents

Index

3. ClickOK. AblankdimensionworksheetopensinExcel.

2-50

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

Filling Out Dimension Worksheets ThefollowingworksheetdefinesthestructureforaMonthdimension.

Thefollowingsectionsdescribehowtodefinesimpleandconsolidated elementsinadimensionworksheet.
Creating Cubes and Dimensions 2-51

Creating Dimensions

Table of Contents

Index

Defining Simple Elements Beginfillingoutthedimensionworksheetbydefiningthedimensionssimple (leaflevel)elements,startinginrow1. 1. IncolumnA,specifytheelementtype. Fornumericelements,typeN. Forstringelements,typeS. Intheexample,allelementsarenumeric. 2. IncolumnB,typethenameofanelement. Defining Consolidated Elements Afterdefiningthesimpleelementsinthedimension,youcandefinethe consolidatedelements. 1. Inanemptyrowbelowthelastsimpleelement,typeCincolumnA. 2. TypethenameoftheconsolidatedelementincolumnB. 3. Insubsequentrows,typethenamesoftheconsolidatedelementschildren incolumnB. Forexample,thefollowingexcerptfromadimensionworksheetshowsthe consolidatedelement1 Quarterdefinedastheconsolidationofthechildren Jan,Feb,andMar.

Weighting Elements in a Consolidation

2-52

TM1 Developers Guide

Creating Dimensions

Table of Contents

Index

UsecolumnCtoweighttheelementsinaconsolidation.TocalculatetheGross Margin,forexample,yousubtractVariableCostsfromSales.Toexpressthis calculation,assigntheweight1totheVariable Costselementinthe consolidation.ThefollowingworksheetshowstheweightingintheAccount1 dimension.

Saving Dimension Worksheets Tosavethedimensionworksheetandcompilethedimension,clickTM1 Dimension WorksheetsSave inExcel.TM1updatesthedimension worksheetfile(dimname.xdi)andcreatesthecompileddimensionfile (dimname.dim). NOTE: BesurenottouseFileSave inExcel.Thisactionsavesonlythe.xdi file;TM1doesnotcompilethedimensionandsavethe.dimfile.

Creating Cubes and Dimensions

2-53

Creating Cubes

Table of Contents

Index

Creating Cubes
Youcanalwayscreatecubesonyourlocalserver.YoumustbeaTM1 administratortocreatecubesonremoteservers. Therearetwowaystocreatecubes: EmptyCubeSelectfromalistofexistingdimensionsintheCreating Cubewindowtocreateanewcubewithnodata. ExternalDataSourcesUseTurboIntegratortoidentifyandmap dimensionsanddatafromanexternaldatasourcestoaneworexisting cube. ThissectiondocumentscreatingcubesintheCreating Cubewindow.For informationaboutcreatingcubesinTurboIntegrator,seetheTM1 TurboIntegratorGuide.

Ordering Dimensions in a Cube


Dimensionsinacubehaveanorderthatyouselectwhenyoucreateacube. Theorderyouselectcanaffectsystemperformance,soyoushouldgivesome considerationtotheorderofdimensionsbeforecreatingacube. Asafirststeptowardorderingdimensions,dividethedimensionsintotwo groups:sparseanddensedimensions.Adensedimensionhasahigh percentageofvaluesforitselements.Youcanestimatethedensityby answeringthisquestion:Ifoneelementinthedimensionhasavalue,keeping theelementsoftheotherdimensionsconstant,whatistheprobabilitythatthe otherelementsinthedimensionhavevalues? Forexample,ifyouhaveabudgetinJanuaryforagivenaccountandregion, youprobablyalsohaveavaluefortheremainingmonths.Therefore,the
2-54 TM1 Developers Guide

Creating Cubes

Table of Contents

Index

Monthdimensionisprobablydense.Similarly,ifyouhaveabudgetvaluefora givenmonth,account,andregion,youprobablyalsohaveanactualvalue, makingActVsBudadensedimension. However,inaworldwidesalescube,youprobablydonotselleveryproductin everyregion.Therefore,youwouldtreatProductandRegionassparse dimensions. Wegenerallyrecommendthatyouorderthedimensionsasfollows:smallest sparsetolargestsparse,followedbysmallestdensetolargestdense.However, someflexibilityisrequired.Forexample,itisprobablybettertoputavery small,densedimensionsuchasActVsBudthathasonlytwoorthreeelements beforeaverylargebutsparsedimension,suchasProduct,whichmighthave thousandsofelements.

Creating a Cube
Tocreateacube: 1. OpentheServerExplorer. 2. IntheTreepane,selectCubesbeneaththeserveronwhichyouwanttocre atethecube. 3. ClickCubesCreate New Cube. TheCreating Cube dialogboxopens.TheAvailable Dimensionsboxonthe leftliststhedimensionsstoredontheserver.

Creating Cubes and Dimensions

2-55

Creating Cubes

Table of Contents

Index

4. TypeacubenameintheCube Name field. NOTE: Ifyoudonottypeaname,TM1namesthenewcubeUnnamed. 5. IntheAvailable Dimensionsbox,doubleclickthenameofthedimension youwanttouseasthefirstdimensioninthenewcube. ThedimensionnamemovestotheDimensions in new cubebox. Youcanalsousethe buttontomoveselectednamesfromtheAvailable Dimensionsboxtothe Dimensions in new cubebox.Toselectmultiple

2-56

TM1 Developers Guide

Creating Cubes

Table of Contents

Index

adjacentnames,clickanddragacrossthenames.Toselectmultiplenon adjacentnames,holddownCRTL,andclickeachname. 6. Repeattheselectionprocessforallthedimensionsyouwanttoincludein thenewcube.Youmustselectatleasttwodimensions.Themaximumnum berofdimensionsis256. 7. Usingtheup anddown arrows,rearrangethedimensionsifnecessary. Toremoveadimensionfromthelist,doubleclickthedimensionname. 8. Ifyouwanttospecifythecubeproperties,clickProperties.Ifyoudonot wanttoassigncubeproperties,skiptostep13. TheCube Propertiesdialogboxopens. Fromhere,youcansetaMeasuresandTimedimensionforthecube,and specifyifthecubeisloadedautomaticallyorondemand. NOTE: OLEDBforOLAPclientsmayincludeprovisionsforreferencing MeasuresandTimedimensions.TM1doesnotreferenceMeasuresand Timedimensions,butdoesallowyoutosetthesepropertiesforother OLAPclientsthatmayaccessthecube.

9. TosetaMeasuresdimension,selectadimensionfromtheMeasures Dimensionlist.
Creating Cubes and Dimensions 2-57

Creating Cubes

Table of Contents

Index

10. TosetaTimedimension,selectadimensionfromtheTime Dimensionlist. 11. Specifyhowtoloadthecube: Toloadthecubeintoservermemoryonlywhenaclientrequestscube data,selectthe Load On Demandbox. Toautomaticallyloadthecubeintomemorywhentheserverstarts,clear the Load On Demandbox. 12. ClickOKtosavethepropertiesandreturntotheCreating Cubedialogbox. 13. ClickOKtocreatethecube. TheServerExplorerwindowopens.Thenewcubedisplaysinalphabetical orderintheCubeslistintheTreepane.

Optimizing the Order of Dimensions in a Cube


Ifyourenotextremelyfamiliarwithyourbusinessdata,itspossibletospecify anorderofdimensionsduringcubecreationthatresultsinlessthanoptimal performance.Similarly,itspossibleforthedistributionofdatainacubeto changeovertime,makingtheorderofdimensionsspecifiedduringcube creationlessthanideal.Toaddresstheseissues,TM1includesafeaturethat letsyouoptimizetheorderofdimensionsinacube,therebyconsumingless memoryandimprovingperformance. Whenyouoptimizetheorderofdimensionsinacube,TM1doesnotchange theactualorderofdimensionsinthecubestructure.TM1doeschangetheway dimensionsareorderedinternallyontheserver,butbecausethecubestructure isnotchanged,anyrules,functions,orapplicationsreferencingthecube remainvalid.

2-58

TM1 Developers Guide

Creating Cubes

Table of Contents

Index

Asyouchangetheorderofdimensions,youcaninstantlyviewareport detailingtheimpactyourchangeshaveoncubememoryconsumption. Forthefollowingreasons,youshouldoptimizetheorderofdimensionsina cubeonlyinadevelopmentenvironmentwhileyouaretryingtodetermine optimalcubeconfiguration: SignificantmemoryresourcesarerequiredfortheTM1serverto reconfiguretheorderofdimensionsinacube.Duringthereordering process,thetemporaryRAMontheTM1serverincreasesbyafactoroftwo forthecubethatyouarereordering.Forexample,a50MBcuberequires 100MBofRAMtoreconfigure. Reorderingputsareadlockontheserver,lockingalluserrequestswhile thereorderisperformed. NOTE: YoumustbeamemberoftheADMINgrouptooptimizetheorderof dimensionsincubes.Theoptimizationoptionisonlyavailableforcubeson remoteTM1servers;youcannotoptimizetheorderofdimensionsincubeson alocalserver.Also,whenyouoptimizetheorderofdimensionsinacube,you shouldnotmovethestringdimensionsfromthelastposition,normovethe stringdimensionstothelastposition. Tooptimizetheorderofdimensionsinacube: 1. IntheTreepaneoftheServerExplorer,selectthecubeyouwanttoopti mize. 2. ClickCubeRe-order Dimensions. TheCube Optimizerdialogboxopens.

Creating Cubes and Dimensions

2-59

Creating Cubes

Table of Contents

Index

3. SelectadimensionintheNew Order of Dimensionslistbox. 4. Clicktheup thecube. 5. ClickTest. NotethevaluenexttothePercent Changelabel.Ifthisvalueisnegative, theneworderofdimensionsconsumeslessmemoryandisthereforemore efficient. ordown arrowstochangetheorderofthedimensionin

2-60

TM1 Developers Guide

Creating Cubes

Table of Contents

Index

6. Repeatsteps3through5untilyouachievethemostefficientorderingof dimensions. 7. ClickOK.

Editing Cube Properties


TM1allowsyoutosetcubepropertiesthatspecifymeasuresandtime dimensionsusedbyOLEDBforOLAPapplications,andthatdetermine whetheracubeloadsautomaticallyorondemand.Usually,yousetthesecube propertieswhenyoucreateacube,butyoucaneditthepropertiesanytime.
Creating Cubes and Dimensions 2-61

Creating Cubes

Table of Contents

Index

Editing Measures and Time Dimension OLEDBforOLAPclientapplicationsincludeprovisionsformeasuresand timedimensions.EventhoughTM1clientsdonotincludesuchprovisions, youcanuseTM1tosetmeasuresandtimedimensionsforcubesthatyou accessbyOLEDBforOLAPclients. Toeditthemeasuresortimedimensionsforacube: 1. SelectthecubeintheTreepaneoftheServerExplorer. 2. ClickCube Properties. TheCube Propertiesdialogboxopens.

3. SelectameasuresdimensionintheMeasures Dimensionlist. 4. SelectatimedimensionintheTime Dimensionlist. 5. ClickOK. Editing the Load on Demand Property Bydefault,TMIloadsallcubesintomemorywhenaserverstarts.Whilethis allowsfastaccesstoTM1data,itcanconsumesignificantserverresources.If yourservercontainsinfrequentlyaccessedcubes,youcanconserveresources
2-62 TM1 Developers Guide

Replicating Cubes between Servers

Table of Contents

Index

bysettingthosecubestoloadonlywhenaclientattemptstoaccessthecube data. ToedittheLoad on Demandproperty: 1. SelectthecubeintheTreepaneofthe ServerExplorer. 2. ClickCubeProperties. TheCube Propertiesdialogboxopens. 3. Specifyhowtoloadthecubethecube: SelecttheLoad On Demandboxtoloadthecubeondemand. CleartheLoad On Demandboxtoautomaticallyloadthecubewhen theserverstarts. 4. ClickOK.

Replicating Cubes between Servers


UsingtheTM1Replicationfeature,youcancopycubesandotherassociated objectsfromaremoteservertoyourlocalserver,orbetweentworemote servers.Youcanalsosynchronizethedataupdatesamongthecopiedcubes eitheratspecifiedtimeintervalsorondemand. Replicationoffersthefollowingadvantages: Enhancesresponsetimebecauseyoucanupdateacubelocallywithout communicatingacrossanetwork. Letsyoucopythelatestshareddatatoalaptopforpresentationsoutsideof yourorganization.

Creating Cubes and Dimensions

2-63

Replicating Cubes between Servers

Table of Contents

Index

TM1providesbidirectionalsynchronizationforreplicateddata.Duringthe synchronizationprocess,TM1checkstheserversinvolvedinareplicationfor thelatestupdatestothedata,andthencopiesthelatestupdatestotheother servers. Replicationcreatesarelationshipbetweentwocubesandbetweentwoservers. TheserelationshipsaredescribedinCubeRelationships.

Cube Relationships
Replicationcreatesarelationshipbetweentwocubes: SourcecubeTheoriginalcubeinareplication MirrorcubeAcopyofthesourcecube Dependingonyouraccessprivileges,youcanreplicateasinglecubeonmany differentservers,andyoucanreplicateareplicatedcube.

Server Relationships
Beforereplicatingacube,youneedtologontoaremoteserverandcreatea replicationconnection.Replicationcreatesarelationshipbetweentwoservers: SourceserverTheremoteserveryouloginto TargetserverTheserveryouloggedinfrom TheServerExplorerwindowliststhecurrentreplicationconnectionsbeneath theReplicationsicon.Inthisexample,regions 1isthetargetserverandsalesis asourceserver.

2-64

TM1 Developers Guide

Replicating Cubes between Servers

Table of Contents

Index

Required Access Privileges Thefollowingaccessprivilegesarerequiredtoreplicateacube: YoursecuritygroupmusthaveReadaccessorhighertothecubeyouwant toreplicate. YoumustbeaTM1administratoronthetargetserver.Onyourlocalserver, youarealwaysaTM1administrator.

Creating Cubes and Dimensions

2-65

Replicating Cubes between Servers

Table of Contents

Index

2-66

TM1 Developers Guide

Table of Contents

Index

3 Advanced Calculations for Business Data


Thischapterdescribeshowtocreatedrillthroughprocessesandrules, whichenableyoutolinkthecellswithrelateddatatoprovidethedetailsor contextforcubevalues. Thischapterincludesthefollowingtopics: OverviewofCubeRules GuidelinesforWritingTM1RulesStatements RulesEditorandRulesWorksheets RulesandDimensionConsolidations SampleApplications CreatingDrillThroughProcessesandRules DebuggingRules Forathoroughexaminationofrulesinabusinessscenario,seetheTM1Rules Guide.Theguidecontainsatutorialthatstepsyouthroughdevelopingrulesin abusinessenvironment.

Advanced Calculations for Business Data

3-1

Overview of Cube Rules

Table of Contents

Index

Overview of Cube Rules


ThemostcommoncalculationsinOLAPapplicationsinvolvesaggregating dataalongadimension.InTM1,youcreatethesecalculationsbyusing consolidationhierarchies.Forexample,inaMonthdimension,youcandefinea quarterlytotalthatsumstheJanuary,FebruaryandMarchvalues. Inmanyapplications,youneedtoperformcalculationsthatdonotinvolve aggregating,suchascostallocationsandexchangetranslations.Withcube rules,youcancreateformulastoperformthesecalculations. Withcuberules,youcanperformthefollowingtasks: Multiplypricesbyunitstoyieldthesalesamounts. Overrideconsolidationswhennecessary.Forexample,youcanpreventa quarterlypricefromdisplayingatallyofindividualmonthlyprices. Usedatainonecubetoperformcalculationsinanothercube,orsharedata betweencubes.Forexample,youcanpullsalesdataintoacubethat containsProfitandLossinformation. Assignthesamevaluestomultiplecells. NOTE: YoumustbeamemberoftheADMINgrouptocreateoreditTM1rules. Youassociateacuberulewithanindividualcube.Whenyoucreatearule, TM1storestheruleinformationintwofiles: cube_name.ruxStoresthecompiledrules.Whenyouloadacubeforwhich youhavedefinedrulesintomemory,TM1searchesforthecubes.ruxfileinthe datadirectorycontainingthecube. cube_name.blbStorestheformatinformationfortheRulesEditor.

3-2

TM1 Developers Guide

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Caution:Ifyouwanttoedita.ruxfileinatexteditorotherthantheRules Editor,besuretodeletethecorresponding.blbfile.Ifyoudonotdeletethefile, therewillbeadiscrepancybetweenthecontentsofthe.ruxfileandthedisplay intheRulesEditor,asthe.blbfiledeterminesthedisplayintheRulesEditor.

Guidelines for Writing TM1 Rules Statements


Thegeneralformatofarulesstatementis: [Area]=Formula; Area Formula Specifiestheportionofacubeaffectedbytherule. DescribeshowTM1calculatesthecellsinthecubearea.

TorestrictaruletosimplevaluesintheArea: [Area]=N:Formula; TorestrictaruletoconsolidatedvaluesintheArea: [Area]=C:Formula; General Considerations Thesyntaxisnotcasesensitive.Youcanusebothuppercaseandlowercase letters. Youcanusespaceswithinrulestoimproveclarity. ArulesstatementcanoccupyoneormorelinesintheRulesEditor.A statementcanalsocontainoneormoreformulas. Youmustendeachstatementwithasemicolon(;).
Advanced Calculations for Business Data 3-3

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Toaddcommentsandtoexcludestatementsfromprocessing,inserta numbersign(#)atthebeginningofalineorstatement.Forexample: # The following rule is not active # ['Gross Margin']=['Sales']*0.53;

Syntax for Describing the Area


TheAreaidentifiesoneormorecellsinacube. ConsiderthefollowingguidelineswhenyoucreateanAreadefinition. Specifynodimensionelements,oroneormoredimensionelements. Eachelementmustbefromadifferentdimensionofthecube. Encloseeachelementinsinglequotes. Usecommastoseparateeachelement. EnclosetheentireAreadefinitioninbrackets. ThefollowingtableshowsfourAreaexamples.Eachsuccessiveexample narrowsthescope. Sample Area [] ['January'] Scope Allcellsinthecube. AllcellsidentifiedbyaJanuaryelement.

3-4

TM1 Developers Guide

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Sample Area ['Sales','January'] ['Germany','Sales','January']

Scope AllcellsidentifiedbytheSalesandJanuary elements. AllcellsidentifiedbytheGermany,Sales,and Januaryelements.

Using Subsets in an Area Definition YoucanuseasubsetinplaceofasingleelementinanAreadefinitionby enclosingallsubsetmembersincurlybraces. Forexample,thefollowingAreadefinitionappliesaruletoallcubecells identifiedbytheelementSalesandtheelementJanuary,February,orMarch: [Sales, {'January', 'February', 'March'}] = Using Special Characters and Non-unique Element Names in an Area Definition Youcanusethesyntax 'dimensionname':'elementname'inarulesArea definitiontospecifyelementsthatarenotuniquetoasingledimension,orfor dimensionnamesthatcontainspecialcharacters. Forexample, ['Units','Mar','}Groups':'ADMIN'] allowsyoutowritearuleforthe }Groupsdimension,whichcontainsthecurly brace (}) specialcharacter. Similarly, ['Units','Mar', 'Region':'North America']
Advanced Calculations for Business Data 3-5

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

letsyouwritearulewhentheelementNorth Americaisnotuniquetothe Regiondimension.

Syntax for Formulas


Arulesformulaisanexpressioncomposedof: Numericconstants Arithmeticoperatorsandparentheses NumericandstringfunctionsseetheTM1ReferenceGuideavailableas partoftheTM1DocumentationLibrary. Conditionallogic Cubereferences Numeric Constants Thesimplestcomponentsofrulesformulasarenumericconstants. Consistsofnumerals,anoptionalleadingminussign(),andanoptional decimalpoint.Forexample,5.0,6,-5.Someexamplesofinvalidnumeric constantsare:1-,1A,3..4. Containsamaximumlengthof20characters. Youcanusescientificnotationtoenteranumericconstant. Forexample,thefollowingrulesstatementassignsthevalue200toallcellsin thecube. [ ] = 200;

3-6

TM1 Developers Guide

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Arithmetic Operators Youcancombinenumericconstantswiththefollowingarithmeticoperators. Operator +(Plussign) (Minussign) *(Asterisk) /(Forwardslash) \(Backslash) ^(Caret) Meaning Addition Subtraction Multiplication DivisionreturnsanundefinedvalueanddisplaysN/ Aintheview ZeroDisplayDivisionsameasDivisionoperator, butreturnszerowhenyoudividebyzero. Exponentiation

TM1evaluatesarithmeticoperatorsinthefollowingorder: 1. Exponentiation 2. Multiplication 3. Division 4. Addition 5. Subtraction Useparenthesestoforceadifferentorderofevaluation.Forexample,the expression2*3+4producesthesameresultas(2*3)+4 becausemultiplication


Advanced Calculations for Business Data 3-7

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

takesprecedenceoveraddition.Theresultis10.However,ifyouwantto performtheadditionfirst,rewritetheformulaas2*(3+4).Theresultchanges from10to14.

Using Conditional Logic


UsetheIFfunctiontoincludeconditionallogicinrules.Thegeneralformatis: IF(test, value1, value2) TheIFfunctionreturnsoneoftwovaluesdependingontheresultofa logicaltest. WhentheexpressionTestistrue,theIFfunctionreturnsValue1. WhentheexpressionTestisfalse,theIFfunctionreturnsValue2. ThedatatypereturnedbyanIFfunctionisdeterminedbythedatatypesof Value1andValue2. Value1andValue2mustbethesamedatatype,eitherstringornumeric. AnIFfunctionwhereValue1isastringandValue2isanumberyieldsan errorstatement. YoucanalsonestIFstatements: IF(test1, value1, IF (test2, value2, value3)) ThefollowingtableshowstwoIFexamples. Expression IF (7>6,1,0) Result yields1

3-8

TM1 Developers Guide

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

IF (7>6, 'True', 'False') Using Comparison Operators

yields'True'

Youcancomparenumberswiththefollowingoperators. Operator Meaning > < >= <= = <> Greaterthan Lessthan Greaterthanorequalto Lessthanorequalto Equalto Notequalto

Tocomparetwostringvalues,insertthe@symbolbeforethecomparison operator,asshowninthefollowingexample: IF ('A'@='B',0,1) yields the number 1.

Advanced Calculations for Business Data

3-9

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Youcancombinelogicalexpressionswithlogicaloperators. Operator & (Ampersand) Meaning AND Example (Value1 > 5) & (Value1 < 10) ReturnsTRUEifthevalueisgreaterthan5and lessthan10. %(Percentsign) OR (Value1 > 10) % (Value1 < 5) ReturnsTRUEifthevalueisgreaterthan10or lessthan5. ~ (Tilde) NOT ~(Value1>5) Equivalentto(Value1 <= 5) Youcanconcatenatestringsusingthepipe(|)character. Forexample,thefollowingexpressionsreturnsRheingold. (Rhein | gold) Ifthestringresultingfromaconcatenationislongerthan254bytes,TM1 returnsanerror.

Using Cube References


Allrulesformulascontaincubereferences,whichpointtoareaswithinacube fordata.Thecubereferencescanpointtothecubeforwhichyouarewritinga rule(internalcubereferences)ortoareaswithinothercubes(externalcube references).

3-10

TM1 Developers Guide

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Internal Cube References Internalcubereferencesusethesamesyntaxastheareaforwhichyouwrite therule.Examplesinclude: ['January'] ['Sales','January'] ['Germany','Sales','January'] Inthefollowingexample,TM1calculatestheGross MarginforGermanyby multiplyingtheSalesforGermanyinthesamecubeby0.53: ['Gross Margin','Germany']=['Sales']*0.53;

Advanced Calculations for Business Data

3-11

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

External Cube References UsetheDBfunctiontopointtoexternalcubes. DB('cube', dimension1, dimension2,...dimensionn) cube dimension Nameoftheexternalcube. Oneofthefollowingarguments: Thenameofanelementinadimensionoftheexternal cube,enclosedinsinglequotes. Thenameofadimensionprecededbyanexclamation mark(!),whichiscalledvariablenotation.Anargument usingvariablenotationreturnsthecurrentdimension elementinthecelltowhicharulestatementapplies. Forexample,inarulescalculatedcellthatisidentified bytheGermanyelementoftheRegiondimension, !Region returnsGermany. Anexpressionthatresolvestoanelementname. Specifyadimensionargumentforeachdimensionoftheexternalcube.You mustorderthedimensionargumentstocorrespondtotheorderofthe dimensionsintheexternalcube. Inthefollowingrulesstatement,allSalesvaluesintheinternalcubeare computedbymultiplyingUnitsintheinternalcubebythevaluesinthe externalPriceTabcube: ['Sales']=['Units']*DB('PriceTab',!Region,!Product,!Month) ThePriceTabcubecontainsonlyprices.Eachofitscellsisidentifiedbyan elementinthreedimensions:Region,Product,Month.Theinternalcube
3-12 TM1 Developers Guide

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

containsthesedimensionsandatleastoneotherdimensionthathasboth theSalesandUnitselements. EverySalescellintheinternalcubeisidentifiedbySalesandelementsin thethreedimensionstheinternalcubeshareswiththePriceTabcube.To populateanySalescell,TM1pullsaPriceTabvaluelocatedatthe intersectionofthecorrespondingelementsintheshareddimensions. Theexternalcubecandifferfromtheinternalcubeintermsofthenumber ofdimensionsandthenumberofelementsalongeachdimension. However,adimensionyoureferenceasavariable(asin!Regionor !Product)mustatleastcontainalltheelementsfoundintheinternalcubes correspondingdimension.

Arranging Rules Statements


WhenmorethanonestatementinaruleappliestothesameArea,thefirst statementtakesprecedence. Considerthisexample.AcubenamedPriorityhastwodimensions,Country andYear.Therulehasfourstatements: ['Germany', 'Year1'] = 10; ['Year1'] = 5; ['United States'] = 6; [ ] = 2;

Advanced Calculations for Business Data

3-13

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

HerearesamplevaluesforthePrioritycube,allofwhicharederivedbythe precedingrule.

TM1processestherulestatementsasfollows: Thefirststatementassignsthevalue10totheGermany,Year1cell.Thefirst statementtakesprecedenceoverthesecondstatement,whichspecifiesthat allYear1cellscontain5. Thesecondstatementtakesprecedenceoverthethirdstatement.Therefore, thecellforUnited States,Year 1contains5,eventhoughthethird statementspecifiesthatallvaluesforUnited Statesshouldbe6. Thelaststatement[]=2specifiesthatallvaluesinthecubecontainthe value2.Thisruleappliestoallcellsthatarenotaffectedbypreceding statements,suchasthecellFrance,Year2.

3-14

TM1 Developers Guide

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Specifying Different Rules at the N: and C: Levels


ItisoftennecessarytodifferentiatethewayC:levelandN:levelcellswithinan areaaretreated. N:LevelCellsIdentifiedonlybysimpleelements. C:LevelCellsIdentifiedbyatleastoneconsolidatedelement. UsethefollowingsyntaxtowritearulesstatementthatappliesonlytoN:level cellsinanarea: [Area] = N:[Formula]; Forexample: ['Sales'] = N:['Price']*['Units']\1000; UsethefollowingsyntaxtowritearulesstatementthatappliesonlytoC:level cellsinanarea. [Area] = C:[Formula]; Forexample: ['Price'] = C:['Sales']\['Units']*1000; WhenaspecificareaofacubeiscalculateddifferentlyattheC:andN:levels, youcanusethefollowingsyntax: [Area] = N:[Formula A]; C:[Formula B]; Forexample: ['Price'] = N:DB('PriceCube', !Actvsbud, !Region, !Model, !Month); C:['Sales']\['Units']*1000;

Advanced Calculations for Business Data

3-15

Guidelines for Writing TM1 Rules Statements

Table of Contents

Index

Bypassing Rules
ByusingtheSTETfunction,youcanbypasstheeffectofarulesstatementfor specificareasofacube. Forexample,youmightwanttowritearulesstatementforGross Marginthat appliestoallregionsexceptFrance.Youcanwritethegeneralruleandthe exceptionintwoways. WritetheSTETstatementfirstfollowedbythegeneralstatement: [Gross Margin, 'France'] = STET; [Gross Margin] = ['Sales'] * 0.53; WriteonerulesstatementthatincludesanIFfunction: ['Gross Margin'] = IF(!Region @= 'France', STET, ['Sales'] * 0.53);

Qualifying Element Names


Whenyouwanttolimitarulesstatementtovaluesidentifiedbyanelement thatappearsinmultipledimensions,qualifytheelementnamewithits dimensionnameusingthefollowingsyntax: [dimname:'element'] Forexample,ifTotaloccursinboththeRegionandProduct dimensionsand youwanttherulelimitedtocellsidentifiedbyTotalintheRegiondimension, specify: [Region:'Total']=

3-16

TM1 Developers Guide

Rules Editor and Rules Worksheets

Table of Contents

Index

Rules Editor and Rules Worksheets


Youcancreaterulesthroughtwointerfaces: RulesEditorAllpreviousexamplesinthischapterusethisinterface. RulesworksheetAmodifiedExcelworksheetinwhichyoutyperules statementsforonecubeincolumnA. TM1savestherulesintwofiles: cube.xruRulesworksheet cube.ruxCompiledfile NOTE: Youcanmodifytherulesyoucreatethroughtherulesworksheetsby usingtheRulesEditor.Whenyoudoso,TM1promptsyoutosavethechanges totheworksheet.Ifyoudonotsavethechanges,the.xruand.ruxfileswillbe outofsync.Therefore,youcannotsubsequentlymodifythechangesbyediting therulesworksheet.Allrulesdescribedinthatsectionapplytotherules worksheetsaswellasthedimensionworksheets. ToensurethatTM1hasaccesstoallofyourchanges,useoneoftheinterfaces exclusivelyforcreatingandmaintainingrules.

Creating Rules Worksheets


WhenyouusearulesworksheettocreatearuleoneitheralocalorremoteTM1 server,yourTM1clientmusthaveavaliddirectorysetintheLocal Server

Advanced Calculations for Business Data

3-17

Rules Editor and Rules Worksheets

Table of Contents

Index

Data DirectoryboxintheTM1 Optionsdialogbox.Thedirectoryisthelocation whereyourTM1clientsavestherulesworksheets(.xru files). Caution: Ifyoudonotsetadirectory,orifthedirectoryisnotvalid,TM1 cannotsaveyourrulesworksheets. Tocreatearuleinarulesworksheet: 1. ClickTM1Rule WorksheetsNewinExcel. TheSelect Cube for Rulesdialogboxopens.Thelistcontainsthecubeson yourlocalserverandanyserversyouhaveloggedintoduringthecurrent TM1session.

2. SelectacubeandclickOK. TM1displaysablankrulesworksheetthatlookslikeotherExcel worksheets,exceptthefirstcolumnhasawidthof100. 3. PlaceeachrulestatementonaseparatelineincolumnA,asinthefollowing example.


3-18 TM1 Developers Guide

Rules Editor and Rules Worksheets

Table of Contents

Index

YoucanclickTM1Edit FormulatoaccesstheTM1Edit Formuladialogbox. Thisdialogbox,whichhelpsyouconstructaccuraterulesstatements,provides allofthefunctionalityfoundintheRulesEditor.TheRulesEditorisdescribed laterinthischapter.

Saving Rules Worksheets


TosavetheruleinaformatthatTM1canuse,clickTM1Rule WorkSheets Save inExcel. TheSaveoptionupdatestheruleworksheetfile(cube.xru)andcreatesa compiledrulesfile(cube.rux).TM1savesthe.xru file inyourlocalserverdata directory,andsavesthe.ruxfileintheTM1serversdatadirectory.TM1 immediatelyappliesthenewrulestothecube.

Advanced Calculations for Business Data

3-19

Rules and Dimension Consolidations

Table of Contents

Index

NOTE: IfyouclickFileSaveinExcel,onlythecube.xrufileisupdated.To usethenewruleinacube,youmustcreatethecompiledrulesfile.

Rules and Dimension Consolidations


TM1rulesworkinconcertwithconsolidationsyoudefineindimensions. Althoughyoucandefineconsolidationsusingrules,thisisnotrecommended forperformancereasons.Consolidationsdefinedindimensionsarecalculated muchmorequicklythanrulesderivedvalues,especiallyinverylarge,sparse cubes.

Order of Calculation
Rulestakeprecedenceoverconsolidationswithindimensions. WhenTM1calculatesacubecellandaconsolidationbyarule,TM1examines therulesstatementfirst.However,iftherulesstatementreferstothecellsthat aretheresultofconsolidations,TM1firstperformstheconsolidationandthen calculatestherulesstatementusingtheresults. Conversely,ifyoudefineacellbyconsolidationonly,TM1looksatthevalues neededtoperformtheconsolidation.Whensomevaluesaretheresultof calculationrules,TM1thenperformstherulescalculationbeforeperforming theconsolidation.

Overriding C: Level Elements with Rules


Youshouldavoidwritingarulethatoverridesaconsolidatedvaluethatisa componentofanotherconsolidation.

3-20

TM1 Developers Guide

Rules and Dimension Consolidations

Table of Contents

Index

Asimpleexampleillustratesthisissue.Supposeyouhaveatwodimensional cubenamedSalesthatiscomposedofthedimensionsProductandMonth, withproduct(Total)andquarterly(1 Quarter)consolidationsdefined.

Tocalculatethegrandtotal(Total,1 Quarter),TM1canconsolidatetheproduct totalsforeachmonthorconsolidatequarterlytotalsforeachproduct.

Grand total calculated by consolidating quarterly totals for each product.

Grand total calculated by consolidating product totals for each month.

SupposefurtherthatyouwritearulethatcalculatesavalueforTotalproduct salesinJan,andthattherulescalculatedvaluedoesnotsumtheindividual productvaluesforJan.ArulethatdefinesthevalueofTotalproductsinJanas 999servesasanillustration. ['Jan','Total']=999; Ifthegrandtotaliscalculatedbyconsolidatingtheproducttotalsforeach month,thevaluewilldifferfromtheconsolidationofthequarterlytotalsfor


Advanced Calculations for Business Data 3-21

Rules and Dimension Consolidations

Table of Contents

Index

eachproduct.Thisisbecausetherulescalculatedvaluefortotalproductsales inJanoverridesthenaturalconsolidationdefinedintheProductdimension.

Value of Jan, Total calculated by the ['Jan','Total']=999 rules statement. Grand total calculated by consolidating product totals for each month appears incorrect. The actual grand total calculated by consolidating product totals for each month is 1,318.

Grand total calculated by consolidating quarterly totals for each product is correct.

YouhavenocontrolovertheorderinwhichTM1performsdimension consolidations.Furthermore,dependingonwhichconsolidationpathis optimalatanygivenmoment,TM1mayalternatebetweenpaths. Consequently,youmayrequesttheTotal,1 Quarter valuetwiceinthesame TM1sessionandgetdifferentresults. Youcanremedythissituationbywritingarulesstatementthatcalculatesthe valueoftheTotal, 1 Quarter consolidationasthesumofitsimmediate childrenalongtheMonthdimension,therebyoverridingtheProduct dimensionconsolidation.Thestatement['Total']=ConsolidateChildren(Month) performsthiscalculation. However,thereremainsanimplicitinconsistencywhenviewingthecube:the sumofthequarterlytotalsforeachproductisdifferentfromthesumof producttotalforeachmonth.Thus,overridingC:levelvaluesthatare componentsofotherconsolidationsisnotrecommended.
3-22 TM1 Developers Guide

Rules and Dimension Consolidations

Table of Contents

Index

Value of Jan, Total calculated by the ['Jan','Total']=999 rules statement. Grand total calculated by consolidating product totals for each month is correct.

Grand total calculated by consolidating quarterly totals for each product appears incorrect.

Total, 1 Quarter consolidation calculated by rules statement ['Total']=ConsolidateChildren(Month).

Stacking Rules
Arulesstatementcanrefertoacellinacubethatisdefinedbyotherrules statements.TM1stackstheserulesstatementsuntilitcanobtainafinalvalue, andthenworksbacktoreturnaresult.Thenumberoflevelsofstackingthat TM1canaccommodateislimitedonlybytheavailablememory. Ifacircularreferenceoccurswithinarulesstack,orthemaximumlevelof stackingisexceeded,TM1displaystheerrormessage: Error Evaluating Rule: Possible Circular Reference Hereisanexampleofacircularreference: [Sales] = [Units] * [Price] ; [Price] = [Sales] / [Units] ;

Advanced Calculations for Business Data

3-23

Sample Applications

Table of Contents

Index

Sample Applications
Thissectioncontainsexamplesofcommonlyusedrulesapplications.Examine theseexamplestodevelopanunderstandingofthesyntaxandscopeofrules. CalculatingRatios SharingDatabetweenCubes RestrictingRulestoSimpleValues CalculatinganAveragePrice LinkingTwoAsymmetricalCubes

Calculating Ratios
Inthefollowingexample,arulecalculatestheGross Marginasapercentageof theSalesintheSalesCubecube.YouassociatethisratiowiththeGross Margin%,anewnumericelementintheAccount1dimension. First,youneedtocreatetheGrossMargin%element. Creating the Margin% Element FollowthesestepstoaddtheelementGrossMargin%totheAccount1 dimension. 1. OpentheServerExplorer. 2. SelecttheAccount1dimension. 3. ClickDimensionEdit Dimension Structure. TheDimensionEditoropens.

3-24

TM1 Developers Guide

Sample Applications

Table of Contents

Index

4. Intheleftpane,doubleclickAccount1. 5. ClickEditInsert Element. TheDimension Element Insert dialogboxopens. 6. TypeGross Margin%andclickAdd. 7. ClickOK. 8. Savethedimension. Creating the Margin% Rule TocreatetheGross Margin%formula: 1. IntheServerExplorer,rightclickSalesCube,andclickCreate Rule. TheRulesEditoropens.

Advanced Calculations for Business Data

3-25

Sample Applications

Table of Contents

Index

2. ClickArea

TheReference to Cubedialogboxdisplaysthedimensionsofthe SalesCubecube.

3-26

TM1 Developers Guide

Sample Applications

Table of Contents

Index

3. ClickAccount1. TheSubsetEditorwindowopens. 4. Intheleftpane,selectGross Margin%andclickOK. TheReference to Cubedialogboxreopens. 5. ClickOK. TheRulesEditordisplays['Gross Margin%'] intheentryfield.

Advanced Calculations for Business Data

3-27

Sample Applications

Table of Contents

Index

6. ClickEqual 7. ClickArea

. again,andclickAccount1.

8. IntheSubsetEditorwindow,selectGross MarginandclickOK. 9. ClickOKintheReference to Cubedialogbox. 10. ClickZero Display Division .

TM1placesadivisionsignafter['Gross Margin'].
3-28 TM1 Developers Guide

Sample Applications

Table of Contents

Index

NotethattherearetwodivisionbuttonsintheRulesEditor. Division Operator Ifyouusethisdivisionoperatorinarulethat resultsindivisionbyzero,TM1returnsanundefinedvalue,anddisplays N/Aintheview. Zero Display Division Operator Ifyouusethisdivisionoperatorina rulethatresultsindivisionbyzero,TM1returnsthevalue0. 11. ClickArea again,andclickAccount1.

12. IntheSubsetEditorwindow,selectSalesandclickOK. 13. ClickOKintheReference to Cubedialogbox. 14. ClickMultiplication .

15. Type100attheendoftheformula. 16. ClickSemicolon toplaceasemicolonattheendoftheformula.

NOTE: Youmustendallrulesstatementswithasemicolon. Thecompleteruleshouldnowappearasfollows.

Advanced Calculations for Business Data

3-29

Sample Applications

Table of Contents

Index

17. ClickSave. TM1savestheruleandappliesittothecube.AnewRuleobjectopens beneaththeSalesCubecube.Arulealwaysbearsthesamenameasthe cubewithwhichitisassociated.

3-30

TM1 Developers Guide

Sample Applications

Table of Contents

Index

Understanding the Generated Rule Letsexaminethecomponentsofthenewrulesstatement. AreaSpecifiesthecubeareathatTM1calculates.Inthisexample,the GrossMargin%elementidentifiesallcellvaluesderivedthrougharule. FormulaDefinesthecalculation. TerminatorTerminatesallrulesstatementswithasemicolon(;).


Area Formula Terminator

Formoreinformationaboutrulessyntax,seetheTM1RulesGuide. Browsing the Gross Margin% Values Thesampleviewsalesmargin%nowdisplaysthecalculatedvaluesfor GrossMargin%. Toopenthesampleview: 1. IntheServerExplorerwindow,clicktheViewsiconfortheSalesCube cube. 2. Doubleclicktheviewsalesmargin%. TheviewopensintheCubeViewer. ThevaluesforGross Margin%,whicharederivedthroughtheruleyoujust created,appearintheview.

Advanced Calculations for Business Data

3-31

Sample Applications

Table of Contents

Index

Sharing Data between Cubes


TheSalesCubecubedoesnotcontainpricedata.Thepriceinformationforthis cubeisstoredinaseparatefourdimensionalcubecalledPriceCube. YoucansharevaluesbetweencubesbyusingtheDBrulesfunction.Valuesare storedinonecubeandreferencedinothercubes.Thefollowingexample showshowrulesforonecubecanreferencevaluesinaseparatecube. 1. IntheServerExplorer,doubleclicktheSalesCuberule. TheRulesEditoropens. 2. Positionthecursoronthesecondentryline. 3. ClickArea .

3-32

TM1 Developers Guide

Sample Applications

Table of Contents

Index

TheReference to Cubedialogboxdisplaysthedimensionsofthe SalesCubecube. 4. ClickAccount1. TheSubsetEditorwindowopens. 5. Intheleftpane,selectPriceandclickOK. TheReference to Cubedialogboxreopens. 6. ClickOK. TheRulesEditordisplays['Price']intheentryfield. 7. ClickEqual . .

8. ClickDatabase Reference

TheSelect Cube dialogboxopens.

9. SelectPriceCubeandclickOK.
Advanced Calculations for Business Data 3-33

Sample Applications

Table of Contents

Index

TheReference to Cubedialogboxdisplaysthedimensionsofthe PriceCubecube. 10. ClickOK. ThefollowingformulaopensintheRulesEditor. ['Price']=DB('PriceCube',!Actvsbud,!Region,!Model,!Month) Readtheformulaasfollows:AnycellintheSalesCubecubethatis identifiedbythePriceelementtakesitsvaluefromacellinthePriceCube cube.ThelocationofthePriceCubecellisfoundattheintersectionof correspondingelementsinthefourdimensionsthatPriceCubeshareswith SalesCube. Forexample,theSalesCubecellidentifiedbytheelementsActual, Germany,S Series 1.8 L Sedan,Price,Jantakesitsvaluefromthe PriceCubecellidentifiedbytheelementsActual,Germany,S Series 1.8 L Sedan,Jan. 11. ClickSemicolon toplaceasemicolonattheendoftheformula.

12. ClickSave tosavetherule. YoucannowchangeapriceinthePriceCubecubeandseethechange reflectedintheSalesCubecube.However,youcannoteditthepricesin SalesCubebecausetheyarederivedthroughtheruleyoujustcreated. ThesampleviewSalesPriceincludesthepricevalues. ToopenthesampleviewSalesPrice: 1. IntheServerExplorerwindow,clicktheViewsiconfortheSalesCube cube. 2. DoubleclicktheviewSalesMargin%.
3-34 TM1 Developers Guide

Sample Applications

Table of Contents

Index

TheviewopensintheCubeViewer,completewiththePricevaluespulled fromthePriceCubecube.

Calculating Sales Inthepreviousexercise,youbroughtpricesintotheSalesCubecube.Ifyou changeapriceinPriceCube,TM1doesnotchangethecorrespondingsales valueinSalesCube.ThisisbecausethesalesvaluesinSalesCubeexistasdata valuesinthecube.Youneedtocreatearuletoderivethesalesvaluesin SalesCubefromthepricesandunits. 1. ReopentheRulesEditorfortheSalesCubecube. 2. Beneaththe['Price']formula,enterthefollowingrule: ['Sales']=['Price']*['Units']\1000;

Advanced Calculations for Business Data

3-35

Sample Applications

Table of Contents

Index

NOTE: AllvaluesintheSalesCubecubeareinthousandsexceptthePrice values,whichareactualnumbers.BecauseSalesnumbersshouldremain inthousands,youdivideby1000intherulesstatement. 3. ClickSave tosavetheSalesCuberule. 4. ReopenthesampleSalesPriceview.

TM1shadesallcellsidentifiedbytheSaleselement,whichindicatesthat thevaluesinthesecellsarederivedthroughrules. 5. ChangetheJanuaryunitsvalueto10,000bytyping10000inthecellatthe intersectionofUnitsandJan. 6. PressF9torecalculatethecellvalues. 7. ObservethenewsalesvalueforJanuary.

3-36

TM1 Developers Guide

Sample Applications

Table of Contents

Index

NotethattheGross Margin%valueforJanuaryupdates,asthisvalueis derivedthrougharule,whichreferencestheSaleselement. 8. Restorethevalue313tothecellattheintersectionofJanandSales.

Restricting Rules to Simple Values


Inthepreviousexercise,youcreatedarulethatappliestoallcellscontaining salesnumbers.Thistypeofrulesupersedesconsolidationswithindimensions, producingincorrectresults.Inthefollowingexercise,youinspectaquarterly totalthroughasliceworksheet,andrestricttheSalesCuberuletosimple values,therebyallowingconsolidationstofunctionproperly. 1. OpenthesampleviewSales1qtr oftheSalesCubecube. 2. ClickSlice toslicetheviewtoanExcelworksheet.
Advanced Calculations for Business Data 3-37

Sample Applications

Table of Contents

Index

Thesliceshouldappearasfollows.

3. SavethesliceworksheetwiththenameTest. 4. ExaminetheSalesvaluefor1QuarterincellB10. AccordingtotheSalesCuberule,thevalueistheproductofmultiplying thefirstquarterpricebyafraction(1/1000)offirstquarterunits.Instead, thevalueshouldbetheconsolidationofsalesforthefirstthreemonths. However,thevaluesderivedbytheSalesCube rule(asitcurrentlyexists) takeprecedenceoverthevaluesderivedthroughconsolidation.Tocorrect this,youneedtomodifytherulesothatitdoesnotcalculatethevaluesfor consolidatedelements. 5. OpentheSalesCuberuleintheRulesEditor. 6. Onthethirdline,insertN:infrontof['Price']sothattheformulareads: ['Sales']=N:['Price']*['Units']\1000;

3-38

TM1 Developers Guide

Sample Applications

Table of Contents

Index

TherestrictorN:limitstheruletothecellsidentifiedonlybysimple elements.Therulenolongerappliestoconsolidatedelements,leaving consolidationstofunctionproperly. 7. ClickSavetosavetheeditedrule. 8. PressF9torecalculatethetestworksheet. ThecorrectvaluenowopensattheintersectionofSales and 1Quarter.

Calculating an Average Price


ExaminethePrice,1Quarter valueintheTestworksheet.Thisnumberisthe sumofthepricesforJanuary,February,andMarch.However,thenumber shouldreflecttheaveragepriceforthethreemonths.Thefollowingrules statementyieldsthedesiredvalue: ['Price']=C:['Sales']\['Units']*1000; TherestrictorC:limitsthisrulesstatementtoconsolidations;thatis,only whenoneormoreoftheelementsthatidentifyaPricecellareconsolidated elements. Toaddtherulesstatement: 1. ReopentheRulesEditorfortheSalesCubecube. 2. EnterthefollowingstatementwithouttheAreadefinition,asthethirdline intheentryfield. ['Price']=DB('PriceCube',!actvsbud,!region,!model,!month); C:['Sales']\['Units']*1000;

Advanced Calculations for Business Data

3-39

Sample Applications

Table of Contents

Index

YouomittheAreadefinitionbecauseyoualreadydefinedthePriceareain thesecondline.Whenyouwanttoapplydifferentformulastothesame Area,youdefinetheareaandthenspecifytheformulassequentially. 3. ClickSavetosavetheeditedrule. 4. Inthetestworksheet,pressF9torecalculateandupdatethevalues. ObservethePrice, 1Quartervalue,whichstilldisplaysthevalue76,132.59. ThisisbecauseTM1usesthefirstrulesformulaitencountersthatappliestothe Price, 1 Quartercell: ['Price']=DB('PriceCube',!actvsbud,!region,!model,!month); ThisstatementisappropriateonlyforN:levelcells,suchasPrice, Jan. ConsolidatedPricevaluesshouldbecalculatedthroughthesecondPrice statement.ByrestrictingthefirstPriceformulatoN:levelcellsonly,you enableTM1toapplythesecondPriceformulatoconsolidations. NOTE: TM1evaluatestherulesstatementsintheordertheyappearwithina rule,butthefirstformulaforagivenAreatakesprecedenceoverlater formulasforthesamearea.Ifyouhavemultiplerulesstatementsthataddress thesameArea,youshouldorderthemleastrestrictivetomostrestrictive.For details,seeArrangingRulesStatements. TorestrictthefirstPriceformulatoN:levelcells: 1. OpentheSalesCuberuleintheRulesEditor. 2. InsertN: infrontofthefirstformulaportionofthefirstPricestatement: ['Price']=N:DB('PriceCube',!actvsbud,!region,!model,!month); TheentireruleforthePriceareashouldnowappearasfollows:

3-40

TM1 Developers Guide

Sample Applications

Table of Contents

Index

['Price']=N:DB('PriceCube',!actvsbud,!region,!model,!month); C:['Sales']\['Units']*1000; 3. ClickSavetosavetherule. 4. IntheTestworksheet,pressF9torecalculateanddisplaytheupdatedval ues. AllPricevaluesshouldnowreflectthecorrectcalculations,withthe1 Quarter,Pricevalueasanaverageofthefirstthreemonthsoftheyear.

Linking Two Asymmetrical Cubes


MostcompaniesdonotbreakoutoverheadcostsbyproductbelowtheGross Marginline.Thesenumbers,suchasrentandutilities,areavailableonlyona regionalordivisionalbasis.Inotherwords,thestructureofthecostnumbers arenotsymmetricalwiththesalesnumbers.Thereforeyouwouldnormally storethedatainseparatecubes.

Advanced Calculations for Business Data

3-41

Sample Applications

Table of Contents

Index

ThecostdatathatcorrespondstothesalesdataintheSalesCubecubeis availableinthePnLCube cube.Thetwocubescompare,asfollows: PnLCubehasfourdimensions.Thecostdataisdimensionedbyversion (actualversusbudget),region,account,andmonth. SalesCubehasfivedimensions.Thesalesdataisdimensionedbyversion (actualversusbudget),region,product(model),account,andmonth. Thetwocubessharethreedimensions:Region,Actvsbud,andMonth. Measurestrackedinthesecubesareidentifiedbyelementsindifferent dimensions.SalesCubeusestheAccount1dimension.PnLCubeusesthe Account2dimension. PnLCubehasnodataforSales orVariable Costs.Thesevaluesarealready calculatedindetailinSalesCube. Inthefollowingexercise,youwriterulesforthePnLCubethatpullsthesales andvariablecostsdatafromtheSalesCube. 1. IntheServerExplorerwindow,rightclickthePnLCube,andclickCreate Rule. TheRulesEditoropens. 2. EntertwostatementstospecifythattheSalesandVariable Costsvaluesin thePnLCubepullthecorrespondingvaluesfromtheSalesCube. Onthefirstlineoftheentryfield,createthisSalesformula: ['Sales']=DB('SalesCube', !Actvsbud, !Region, 'Total', 'Sales', !Month); Onthesecondline,createthisVariable Costsformula: ['Variable Costs']=DB('SalesCube', !Actvsbud, !Region, 'Total', 'Variable Costs', !Month); 3. ClickSave tosavetherules.
3-42 TM1 Developers Guide

Sample Applications

Table of Contents

Index

NotethattheSalesandVariable CostsvaluesnowappearinthePnLCube cube.TheGross Marginvaluesarealsoavailablebecauseyoudefinedthe Gross Marginintheaccount2dimensionasthedifferencebetweenthe SalesandVariableCosts. 4. InMicrosoftExcel,openthesampleworksheetTwoCubes. The TwoCubes worksheetissetuptosimultaneouslypullnumbersfrom SalesCubeandPnLCube.Thisworksheetdemonstrateshownumberscan flowbetweenthetwocubes. LetschangetheUnitsnumberincellB6toaverylargenumbersothatyou canseetheeffectofthechangeripplethroughtheworksheet.

Advanced Calculations for Business Data

3-43

Sample Applications

Table of Contents

Index

5. ClickcellB6andtype100000. 6. PressF9torecalculatetheworksheet. NotethattheUnitsvaluefortheS Series 2.5 L Sedan changestheSales valueforthatmodelandforthemodeltotal.ThesechangesaffecttheSales valuesofthePnLCube, whichripplesallthewaydowntotheEarnings Before TaxesvalueinthePnLCube.
3-44 TM1 Developers Guide

Sample Applications

Table of Contents

Index

NOTE: Allthecellvaluesinthisworksheetaretheresultofreferencesto twocubes,SalesCubeorPnLCube.Theworksheetdoesnotcalculateany ofthevalues.

Advanced Calculations for Business Data

3-45

Creating Drill-Through Processes and Rules

Table of Contents

Index

Creating Drill-Through Processes and Rules


Youcancreateadrillprocessanddrillrulestoassociateacellwithmore detaileddata.Thisdatacanprovideunderlyingdetailforthecell,orother informationrelevanttothecell. ATM1drillthroughconsistsoftwocomponents. DrillProcessDefinesthedetaileddatayouwanttoassociatewithacell DrillAssignmentRuleDefinestherelationshipbetweenthecellandthe detaileddata Afteryoucreateadrillprocessandadrillassignmentruleforacube,youcan executetheprocessandopenthedetaileddatainanewwindow,thereby drillingthroughtoanewlevelofdetail.

Creating a Drill Process


AdrillprocessisaTurboIntegratorprocessthatdefinesthedetaileddata, whichopensinanewwindow.Thecubefromwhichadrillthroughoriginates iscalledtheoriginationcube. Beforeyoucreateadrillprocess,youshouldbefamiliarwiththedatayou wanttoopenwhendrillingfromtheoriginationcube. Tocreateadrillprocess: 1. RightclicktheoriginationcubeintheServerExplorer. 2. ClickCubeDrillCreate Drill Process. ThefirstwindowoftheDrill Process Setup Wizardopens.

3-46

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

Thewizarddisplaysatablewithparametervaluesfortheoriginationcube andallitsdimensions.TM1usestheseparametervaluestosetupthedrill process.Whenyouexecutethedrillprocesstodrillfromanorigination cubetothedetaileddata,TM1updatestheparametervaluestoreflectthe cubelocationfromwhichthedrillthroughoriginates.

3. ClickNext.

Advanced Calculations for Business Data

3-47

Creating Drill-Through Processes and Rules

Table of Contents

Index

ThesecondwindowoftheDrillProcessSetupWizardopens.

4. SelecttheDatasource Typeforthedetaileddatayouwanttodrillthrough tofromtheoriginationcube.

3-48

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

TherearethreeDatasource Typeoptions: ODBC DrillsfromtheoriginationcubetoanODBC source.TheODBCsourcemustbeaccessible fromthecomputeronwhichtheTM1serveris running. Drillsfromtheoriginationcubetoadifferent cubeview.Youcandrilltoanycubethat residesonthesameserverastheorigination cube. Youcandefineacubeviewdatasourcethat exceedsthemaximumamountofmemory thatTM1canallocatewhenyouaccessaview. Bydefault,thememorythresholdforthe MaximumViewSizeparameterintheTm1s.cfg fileis100MBona32bitsystem,and500MB ona64bitsystem. Important: Ifyoudonotspecifythe maximumviewsizeintheconfigurationfile, TM1displaysanerrormessagewhenyou attempttodrilltothecubeview. Other Drillsfromtheoriginationcubetoanydata sourceTurboIntegratorsupports.

Cube View

TM1displaysthedatasourceoptionsforthedatasourcetypeyouselected inthewizard. 5. Definethedatasource.


Advanced Calculations for Business Data 3-49

Creating Drill-Through Processes and Rules

Table of Contents

Index

ForanODBCdatasource,youmustsupplythefollowinginformation: Datasource Name NameoftheODBCdatasource(DSN)youwant toaccesswhendrillingfromtheoriginationcube. User Name Password Query ValidusernametologontotheODBCsource. Passwordfortheusername. Querythatdefinesthedatatoreturnfromthe ODBCsource.Queryresultsdatadisplaysina separatewindowwhenyoudrillfromthe originationcube.

ForaCube Viewdatasource,youmustsupplythefollowing information: Datasource Name Nameoftheviewyouwanttoopenwhen drillingfromtheoriginationcube.ClickBrowse toselectaviewnameorcreateaview. FortheOtherdatasource,clickLaunch TurboIntegratortodefinethe datasource. 6. ClickFinish. TheSave Process Asdialogboxopens.

3-50

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

7. EnteranameforthedrillprocessintheNamebox. NOTE: Forbestpractice,werecommendthatyouuseadrillprocessname thatidentifiestheoriginationcubeassociatedwiththedrillprocess.For instance,ifyoucreateaprocesstodrillfromacubenamedPriceCubetoan ODBCsource,youwouldnamethedrillprocess PriceCubeToODBCSource.Thistypeofnamingconventionmakesiteasier toidentifyadrillprocessnamewhenyoueditadrillprocess,orselectfrom severaldrillprocessesassociatedwithacube. 8. ClickSave. TM1savesthedrillprocessasaTurboIntegratorprocess,butprefixesthe nameyouassignedinstep7withthestring}Drill_.Forexample,ifyousave adrillprocesswiththenamePriceCubeToODBCSource,TM1savesthe processas}Drill_PriceCubeToODBCSource.

Editing Drill Processes


WhenyoucreateadrillprocesswithaCubeViewdatasource, TurboIntegratorinsertsthefunctionReturnViewHandle('Cube','View')aboveor belowtheGenerated Statementsarea,whichislocatedontheEpilogsubtabof theAdvancedtabintheTurboIntegratorwindow.

Advanced Calculations for Business Data

3-51

Creating Drill-Through Processes and Rules

Table of Contents

Index

Ifyouchangethedatasourceforadrillprocess,TurboIntegratordoesnot updatethefunctionwiththenewdatasourcebecausethefunctionisoutside theGenerated Statementsarea.YoumustedittheCubeViewdatasourcein theReturnViewHandle functionforthedrillprocess. NOTE: ForadrillprocesswithanODBCdatasource,TurboIntegratordoes notinserttheReturnViewHandlefunction.Therefore,youdonotneedtoedit thefunctionwhenyouchangeanODBCdatasourceforadrillprocess. TochangetheCubeViewdatasourceforadrillprocess: 1. IntheServerExplorer,rightclicktheoriginationcubewithwhichthedrill processisassociated. 2. ClickDrillEdit Drill Process. TheSelect dialogboxopens. 3. SelectadrillprocessandclickOK. TheTurboIntegrator windowopens. 4. ClicktheAdvancedtab. 5. ClicktheEpilogtab. 6. EdittheReturnViewHandle functiontoreflectthenewview. Forexample,tousetheEurope_1QviewoftheSalescubeasadatasource, theReturnViewHandlefunctionwouldlooklikethis: ReturnViewHandle('Sales','Europe_1Q') 7. ClickSave. 8. ClosetheTurboIntegratorwindow.

3-52

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

Deleting Drill Processes


Todeleteadrillprocess: 1. IntheServerExplorer,rightclicktheoriginationcubewithwhichthedrill processisassociated. 2. ClickDrillDelete Drill Processes. TheDelete Drill Processesdialogboxopens.

3. Selecttheprocess(es)youwanttodelete. Toselectmultipleadjacentdrillprocesses,clickanddragacrossthe processes. Toselectmultiplenonadjacentprocesses,holddownCTRL,andclick eachdrillprocess. 4. ClickOK.


Advanced Calculations for Business Data 3-53

Creating Drill-Through Processes and Rules

Table of Contents

Index

Creating a Drill Assignment Rule


AdrillassignmentruleisaTM1rulethatlinkscubecellswithrelateddetailed data.Asindicatedabove,therelateddatacanbeacubeview,ODBCsource,or anyotherdatasourceaccessiblethroughTurboIntegrator. Tocreateadrillassignmentrule: 1. IntheServerExplorer,selecttheoriginationcubeforwhichyouwantto createadrillassignmentrule. 2. ClickCubeDrill Create Drill Assignment Rule. TheRulesEditoropens. Foreachcubeareayouwanttoassociatewithdetaileddata,continuewith steps3through8.

3-54

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

3. ClickArea detaileddata.

todefinethecubecells(area)youwanttoassociatewith

Advanced Calculations for Business Data

3-55

Creating Drill-Through Processes and Rules

Table of Contents

Index

WhenyouclicktheAreabutton,theReference to Cubedialogboxopens.

4. Todefinethearea,dooneofthefollowing: Todefinetheareaastheentirecube,clickOK. Tonarrowtheareadefinition,clickthedimensionbuttonsandselectthe elementsthatdefinethecellsyouwanttoassociatewiththedetailed data,andthenclickOK. 5. ClickEqual 6. ClickString . .

7. Enterthenameofthedrillprocessenclosedinsinglequotationmarksto definethedetaileddatayouwanttoassociatewiththearea.Forexample, enter'PriceCubeToSource'. Caution:Donotincludethe}Drill_prefixinadrillprocessname.For example,enter'PriceCubeToSource' foradrillprocessnamed }Drill_PriceCubeToSource.

3-56

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

Youcanassociatemorethanonedrillprocesswithanarea.Enclosealldrill processes,separatedbycommas,withinasetofsinglequotationmarks. NOTE: Youcanalsouseconditionallogicorotherfunctionstoreturnthename ofadrillprocess. 8. ClickSemicolon .

ThesemicolonindicatestheendofaTM1rulesstatement. 9. ClickSave. Youcannowdrillthroughtodetaileddataforwhichyouhavecreateda drillprocessandadrillassignmentrule.

Drill-Through Example
Thissectionguidesyouthroughthecreationofadrillprocessanddrill assignmentrule,whichallowsyoutodrillfromtheSalesByQuartercubetoa relationaltablethatistheoriginalsourceforthecubedata.Thetablecontains dataatthemonthlylevel,whiletheSalesByQuarter cubecontainsdataatthe quarterlylevel.Bydrillingthroughtotherelationalsource,youcanviewthe underlyingdetailforthecubedata. Setting Up the ODBC Data Source TheexampleinthissectiondrillsthroughtoanODBCsource(Access database).Beforelookingattheexample,youmustsetuptheODBCdata source. 1. OpentheWindowsODBC Data Source Administrator dialogbox. Theprocedureforopeningthisdialogboxvaries,dependingontheversion ofWindowsyouarerunning.Fordetails,seetheWindowsHelp.
Advanced Calculations for Business Data 3-57

Creating Drill-Through Processes and Rules

Table of Contents

Index

2. OntheSystem DSNtab,clickAdd. TheCreate New Data Sourcedialogboxopens. 3. SelectMicrosoft Access Driver andclickFinish. TheODBC Access Setupdialogboxopens. 4. TypeTM1_sample_dataintheData Source Namebox. 5. ClickSelect. TheSelect Databasedialogboxopens. 6. Navigatetoyour\install_dir\Custom\TM1Data\PData\RelationalDatadirec toryandselectSales.mdb. 7. ClickOKtoexittheSelect Databasedialogbox. 8. ClickOKtoexittheODBC Administrator dialogbox. TheAccessdatabasenamedSalesisnowavailableasanODBCsource.The exampledrillprocessesusethisODBCdatasource. Creating a Drill Process YoucannowcreateadrillprocessfortheSalesByQuarterCubecube.Thedrill processdefinesanODBCdatasourceasthedetaileddatathatyoucanview whenyoudrillfromtheSalesByQuarterCubecube. 1. IntheServerExplorer,rightclickSalesByQuarterCube. 2. ClickDrill Create Drill Process. TheDrill Process Setup Wizardopens.Thetablecontainsthedefault parametersforthedrillprocess.

3-58

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

3. SelecttheYearparametervalue. 4. ClickSelect Element. TheSubsetEditor opens. 5. Select1 QuarterandclickOK. 6. Repeatsteps3through5tochangetheGross Margin%parametervalueto Units.

Advanced Calculations for Business Data

3-59

Creating Drill-Through Processes and Rules

Table of Contents

Index

Thetableinthewizardshouldnowappearasfollows:

7. ClickNext. Thesecondscreenofthewizardopens. 8. SelectODBCastheDatasource Type. 9. ClickBrowsenexttotheData Source Nameboxandselect TM1_sample_data. 10. EnteradminastheUser Name. 11. EnterthefollowingqueryintheQuerybox. ThisqueryisspecifictothesampleAccessdatabase.ItusesIIFfunctions thatareuniquetoAccessandcannotbeusedagainstanyotherdatabase.
SELECT ActvsBud, Region, Model, Account1, Month, Data FROM Sales WHERE ( ActvsBud = '?actvsbud?' AND Region = '?region?' AND Model = '?model?' AND Account1 = '?account1?' AND ( IIF( '?quarter?'= '1 Quarter', Month = 'Jan' OR Month = 'Feb' OR Month = 'Mar', IIF( '?quarter?'= '2 Quarter', Month = 'Apr' OR Month = 'May' OR Month = 'Jun', IIF( '?quarter?'= '3 Quarter', Month = 'Jul' OR Month = 'Aug' OR Month = 'Sep', IIF( '?quarter?'= '4 Quarter', Month = 'Oct' OR Month = 'Nov' OR Month = 'Dec', IIF( '?quarter?'= 'Year',TRUE,TRUE)))))

) )

3-60

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

NOTE: BesuretoenclosethereferencestotheTM1parameternamesin questionmarks(?). ThecompletedDrill Process Setup Wizardshouldappearasfollows:

12. ClickFinish. TheSave Process Asdialogboxopens. 13. SavetheprocessasRELATIONALTABLE_SalesByMonth.

Advanced Calculations for Business Data

3-61

Creating Drill-Through Processes and Rules

Table of Contents

Index

Thenewdrillprocessdisplaysasanavailableprocessontheserver.Note thattheprocessnameincludesthe}Drill_ prefix,indicatingthatitisadrill process.

YoucannowcreateadrillassignmentruletomaketheODBCdatasource availablefromtheSalesByQuarterCubecube. Creating a Drill Assignment Rule Followthesestepstocreateadrillassignmentrulethatmakesthe RELATIONALTABLE_SalesByMonth processavailablefromthe SalesByQuarterCubecube. 1. IntheServerExplorer,rightclickSalesByQuarterCube. 2. ClickDrill Create Drill Assignment Rule. TheRulesEditoropens. 3. Enterthefollowingruleinthelargebox.
['Year'] = S:IF( ( ELLEV( 'actvsbud', !actvsbud ) = 0 ) & ( ELLEV( 'region', !region ) =0)& ( ELLEV( 'model', !model ) =0)& ( ELLEV( 'account1', !account1 ) = 0), 'RELATIONALTABLE_SalesByMonth', '' ); [] = S:IF( ISLEAF= 1, 'RELATIONALTABLE_SalesByMonth','' );

3-62

TM1 Developers Guide

Creating Drill-Through Processes and Rules

Table of Contents

Index

ThisruleindicatesthattheRELATIONALTABLE_SalesByMonth drill processwillbeexecutedwhenyouselecttheDrilloptionfromacellthatis either: IdentifiedbytheYearelementand0levelelementsfromallother dimensions Identifiedbyall0levelelements 4. Savetherule. YoucannowtestthedrillthroughfunctionalityforSalesByQuarterCube cube. Viewing the Drill-Through Example Toviewtheresultofthedrillprocessanddrillassignmentrule: 1. OpentheDrill_relationalviewoftheSalesByQuarterCube.

2. RightclickthecellattheintersectionofUnitsandYear.

Advanced Calculations for Business Data

3-63

Creating Drill-Through Processes and Rules

Table of Contents

Index

3. ClickDrill. AnextractfromtheTM1_sample_data datasourceopens,displayingthe monthlydetailforthecell.

4. ClickOKtoclosethewindow. 5. DrillthroughothercellsintheDrill_relational viewtoviewthemonthly detail.Youshouldbeabletodrillthroughanycellintheview. 6. ChangetheRegiontitleelementfromGermanytoEurope. 7. Rightclickanycellintheview.

3-64

TM1 Developers Guide

Debugging Rules

Table of Contents

Index

NotethattheDrilloptionisnotavailable.Thisisbecausethedrill assignmentruleforSalesByQuarterCube indicatesthattheDrilloptionis onlyavailableforcellsidentifiedbythe0levelelementsorforthecells identifiedbytheYearelementand0levelelements.Europeisa consolidation,sotheDrilloptionisnotavailable.

Debugging Rules
TM1providesatoolcalledtheRulesTracertoassistinthedevelopmentand debuggingofTM1rules.The RulesTracerfunctionalityisavailableonlyinthe CubeViewer. WiththeRulesTracer,youcandothefollowing: TracecalculationsEnsurethatrulesarebeingassignedtoselectedcells andcalculatedproperly,ortracethepathofconsolidatedelements

Advanced Calculations for Business Data

3-65

Debugging Rules

Table of Contents

Index

TracefeedersEnsurethatselectedleafcellsarefeedingothercells properly CheckfeedersEnsurethatthechildrenofaselectedconsolidatedcellare fedproperly

Tracing Calculations
Totraceacalculation,whetheraconsolidationorarulescalculation,rightclick thecellcontainingthecalculationandclickTrace Calculation. TheRulesTracerwindowopens.Fromhere,youcantraceacalculationtoits leaflevelcomponents.TheRulesTracerwindowcontainstwopanes. TracingCalculation(toppane)Displaysthedefinitionofthecurrentcell location,withaniconindicatingwhetherthevalueinthecellisderivedby Consolidation orbyRules .Alsodisplaysthecurrentvalueofthecell. Ifthevalueisderivedbyrules,theruledisplaysinthestatusbarofthe TracingCalculationpane. Trace(bottompane)Displaysthecomponentsofthefirstconsolidated elementorthefirstruleinthecelldefinition.Youcandoubleclickanyitem inthebottompanetotraceapathtotheleaflevelelementsthatdefinethe cell. Tracing a Rule Calculation Example (Simple) Toviewasimpleexampleoftracingarulecalculation: 1. OpentheTrace_simpleviewoftheSalesCubecube. ThisviewcontainsthePricevaluesthatarederivedthroughrulesyou createdearlierinthischapter.

3-66

TM1 Developers Guide

Debugging Rules

Table of Contents

Index

2. RightclickthecellattheintersectionofPriceandJan. 3. SelectTrace Calculation. TheRulesTracerwindowopens. IntheTracingCalculationpaneatthetop,TM1displaysthecurrentcell definition,alongwithRules iconindicatingthatthecellvalueisderived throughrules.Therulethatappliestothecellisshaded,andtheCalculated valueofthecelldisplaysinthelowerrightcornerofthepane. IntheTracepaneatthebottom,TM1showstheevaluationoftherulethat appliestothecurrentcell.Inthisexample,therule ['Price']=N:DB('PriceCube',!actvsbud,!region,!model,!month); C:['Sales']\['Units']*1000; evaluatesto ['Price']=PriceCube(Actual, Germany, L Series 1.8L Sedan, Jan)

Advanced Calculations for Business Data

3-67

Debugging Rules

Table of Contents

Index

becausethecurrentcellisanN:location(notdefinedbyany consolidations). YounowknowthatthecellSalesCube(Actual, Germany, L Series 1.8L Sedan, Price, Jan) takesitsvaluefromPriceCube(Actual, Germany, L Series 1.8L Sedan, Jan).

Tracing a Consolidation Example (Complex) TheprevioussimpleexampleshowshowtheRulesTracerworksforcellsat theN:level.ThefollowingexampleshowshowyoucanusetheRules Tracertotracevaluesthatincludeconsolidations. 1. OpentheTrace_complexviewoftheSalesCubecube.


3-68 TM1 Developers Guide

Debugging Rules

Table of Contents

Index

2. RightclickthecellattheintersectionofSalesand1 Quarter. 3. ClickTrace Calculation. TheRulesTraceropens. IntheTracing Calculationpaneatthetop,TM1displaysthecurrentcell definition,alongwiththeConsolidation iconindicatingthatthecellvalue isderivedthroughconsolidation.ThevalueoftheConsolidatedcell displaysinthelowerrightcornerofthepane. IntheTracepaneatthebottom,TM1displaysthecomponentsofthefirst consolidatedelementinthecelldefinition.Inthisexample,T Seriesisthe firstconsolidatedelementinSalesCube(Actual, Germany, T Series, Sales, 1Quarter).TM1displaystheT Seriescomponentswiththeirvalues.

Advanced Calculations for Business Data

3-69

Debugging Rules

Table of Contents

Index

4. DoubleclickT Series 2.8L CoupeintheTracepane. YouarenowtracingthevalueofSalesCube(Actual, Germany, T Series, Sales, 1Quarter) throughT Series 2.8L Coupe. TheTracing Calculationpanenowdisplaysthecelldefinitionforthe elementyoudoubleclicked. SalesCube(Actual, Germany, T Series 2.8L Coupe, Sales, 1 Quarter) TheTracepanenowdisplaysthecomponentsofthefirstconsolidated elementinthiscelldefinition.Thefirstconsolidatedelementin SalesCube(Actual, Germany, T Series 2.8L Coupe, Sales, 1 Quarter)is1 Quarter.TM1showsthethreecomponentsJan,Feb,andMar,withtheir values.

3-70

TM1 Developers Guide

Debugging Rules

Table of Contents

Index

IntheTracepane,notethataRules iconprecedeseachcomponent name,indicatingthatthecomponentsderivetheirvaluesthroughrules.

5. DoubleclickJanintheTracepane. YouarenowtracingthevalueofSalesCube(Actual, Germany, T Series, Sales, 1Quarter) throughtheT Series 2.8L Coupe and Jan. TheTracing Calculationnowdisplaysthecelldefinitionfortheelementyou doubleclicked.Inthiscase,SalesCube(Actual, Germany, T Series 2.8L Coupe, Sales, Jan).Thiscelliscalculatedbyarule, [Sales]=N:[Price]\[Units]*1000,whichisshaded.TheConsolidatedvalue ofthecell,18730.0772,displaysinthelowerrightcornerofthepane. TheTracepanenowdisplaysthecomponentsoftheruleformulaandtheir values.ThecomponentPricehasavalueof43156.86,andisderivedby anotherrule.ThecomponentUnitshasavalueof434,andisanInput Value,asdenotedbythegraybullet .

Advanced Calculations for Business Data

3-71

Debugging Rules

Table of Contents

Index

Bypluggingthesevaluesintotheruleformula,youcanseethat (43156.86 X 434)\1000 = 18730.0772, confirmingthevalueof SalesCube(Actual, Germany, T Series 2.8L Coupe, Sales, Jan).

6. DoubleclickPricetoviewtherulethatisusedtoderivethePricevalue. ThefollowingrulecalculatesthePrice: ['Price']=N:DB('PriceCube',!actvsbud,!region,!model,!month); C:['Sales']\['Units']*1000; Thisruleevaluatesto: PriceCube(Actual, Germany, T Series 2.8L Coupe, Jan) whichdisplaysintheTracepaneasanInput Value,denotedbyagray bullet ,indicatingthatyoucannottracethecalculationanyfurther.

3-72

TM1 Developers Guide

Debugging Rules

Table of Contents

Index

Tracing a New Calculation Path YoucanclickanycelldefinitionintheTracing CalculationpaneoftheRules Tracertobegintracinganewcalculationpath. Forinstance,usingthepreviouscomplexexample,youcouldclickthefirstcell definitionintheTracing Calculationpanetobegintracinganewpaththrough theT Seriesconsolidation. WhenyouclickacelldefinitionintheTracing Calculationpane,theTrace panedisplaysthecomponentsofthefirstconsolidatedelementinthecell definition.Youcanthendoubleclickanycomponenttobegintracinganew calculationpath.

Advanced Calculations for Business Data

3-73

Debugging Rules

Table of Contents

Index

Tracing Feeders
The RulesTracerletsyoutracethewayaselectedcellfeedsothercells. Becauseyoucanonlyfeedothercellsfromaleafelement,theTrace Feeders commandisavailablefortheleafcellsyoudefinebyrules,butisnotavailable forconsolidatedcells. Totracefeedersforacell: 1. IntheCubeViewer,rightclickthecellyouwanttotrace. 2. Click Trace Feeders.

3-74

TM1 Developers Guide

Debugging Rules

Table of Contents

Index

TheRulesTracerwindowopens.Thiswindowcontainstwopanes. TracingFeeders(toppane)Displaysthedefinitionofthecurrentcell location,andthefeederrulesassociatedwiththecurrentcell Trace(bottompane)Displaysthelocationsfedbythecurrentcell

3. DoubleclickalocationintheTrace pane. ThislocationbecomesthecurrentcelllocationintheTracing Feederspane, andtheTracepanedisplaysanylocationsfedbythecurrentcell. 4. ContinuedoubleclickingthelocationsintheTracepaneuntilyouhave tracedthefeederstothelevelyourequire.

Advanced Calculations for Business Data

3-75

Debugging Rules

Table of Contents

Index

Checking Feeders IfacubecontainsarulewithSKIPCHECKandFEEDERSstatements,youcan usetheRulesTracertocheckthatTM1properlyfeedsthecomponentsofthe consolidation. Tocheckthefeeders: 1. IntheCubeViewer,rightclicktheconsolidatedcellyouwanttocheck. 2. ClickCheck Feeders. TheRulesTraceropens.Thiswindowcontainstwopanes. CheckingFeeders(toppane)Displaysthedefinitionofthecurrentcell (consolidation) Trace(bottompane)Displaysallcomponentsoftheconsolidationthat arenotproperlyfed TheTracepaneisempty,whichmeanstheconsolidationisfedproperly andthecubesvaluesareaccurate.

3-76

TM1 Developers Guide

Debugging Rules

Table of Contents

Index

IftheTracepanedisplaysthecomponentsoftheconsolidation,youmust edittheruleassociatedwiththecurrentcubetoaddtheFEEDERS statementsthatfeedallthelistedcomponents. NOTE: YoucanonlychecktheFEEDERSforacellonceperTM1session. TheactionofcheckingtheFEEDERSactuallyfeedsthecomponentsofthe consolidation.AnysubsequentcheckingoftheFEEDERSdoesnotyield accurateresults.IfyouwanttochecktheFEEDERSforacellmorethan once,youmustrecycletheTM1serverbeforeeverycheck.

Advanced Calculations for Business Data

3-77

Debugging Rules

Table of Contents

Index

3-78

TM1 Developers Guide

Table of Contents

Index

4 Organizing Objects in TM1 Applications


TM1letsyouorganizeobjectslogicallybyapplication,andbytype. ThischapterdescribeshowtocreateTM1applicationsandincludesthe followingtopics: TM1ApplicationOverview SecurityConsiderationsforCreatingandViewingApplications CreatingandManagingApplications AddingTM1ObjectReferencestoanApplication AddingFileReferencestoanApplication AddingURLReferencestoanApplication WorkingwithObject,File,andURLReferencesinTM1Applications AdministeringSecurityforTM1Applications ViewingLogicalGroupingsinTM1Applications PublishingTM1ApplicationstoTM1Web

Organizing Objects in TM1 Applications

4-1

TM1 Application Overview

Table of Contents

Index

TM1 Application Overview


ATM1applicationisanobjectthatfunctionsasavirtualfoldertoorganize shortcutstoTM1objects,files,andURLsinalogical,jobspecificgrouping. Forexample,youmightcreateaTM1applicationthatorganizesallTM1 objectsandrelatedfilesforaNorthAmericansalesorganization.

TM1 application

TM1 objects

File references (Excel, Word, PDF ...)

URL reference

YouinsertTM1objects,files,andURLsintoanapplicationbycreatinga shortcutorreference.Applicationsandreferencesprovideaquickand organizedwaytoopenthetargetobjectstowhichthereferencespoint.


4-2 TM1 Developers Guide

TM1 Application Overview

Table of Contents

Index

Types of References
TM1applicationscancontainreferencestoanyofthefollowingitems: TM1objectsAnapplicationcancontainreferencestoanytypeofTM1 objectexceptforrulesandreplications. YoucanreferenceTM1objectsonthesameTM1servercontainingthe applicationoranyotherTM1servertowhichyouhaveaccess. FilesAnapplicationcanreferenceanytypeoffile,suchasanExcel spreadsheet,aWorddocument,oranyotherfile.AnyExcelfilecanbe referenced,regardlessofwhetherthefilecontainsaTM1slice,functions,or otherTM1features. Youcanreferencebothexternalanduploadedfiles: Areferencetoanexternalfileprovidesashortcuttoafilethatcanexistin anyshareddirectoryonyournetwork. AreferencetoanuploadedfilesavesacopyoftheoriginalfileontheTM1 server.However,changestotheoriginalsourcefile,outsideofTM1,arenot automaticallyreflectedintheuploadedcopyofthefileontheTM1server. Youmustupdatethefileontheservertomakethechangesavailable. URLsAnapplicationcancontainlinkstoanywebpagesorresourcesthat usethehttporhttpsprotocol.

Behavior of References
Itisimportanttounderstandthatwhenyouaddobjectandfilereferencesto anapplication,theyexistbyreferenceonlyasashortcutthatopensthe originalTM1objectorfile.Deletingareferenceinanapplicationisdifferent fromdeletingthesourceTM1objectorfile:
Organizing Objects in TM1 Applications 4-3

TM1 Application Overview

Table of Contents

Index

Deletingareferencefromanapplicationhasnoimpactonthecorresponding sourceTM1objectorfile.Onlythereferenceisdeleted. DeletingasourceobjectinTM1,orafileondisk,breaksanycorresponding referenceinanapplication,butdoesnotdeletethereference.Thereference remainsbutisnotfunctionalifthesourceobjectorfileisdeleted. Oneexceptiontotheaboveisforuploadedfilereferences.Inthiscase,thefile isactuallycopiedtotheTM1server.Ifyoudeleteareferencetoanuploaded file,TM1deletestheuploadedcopyofthefilefromtheTM1server. Fordetailsonfilereferences,seeAddingFileReferencestoanApplication.

Display Order for References in Applications


TM1displaysreferencesinapplicationsinthefollowingorder.Withineach referencegroup,TM1sortsthereferencesalphabeticallyindescendingorder. Cubes Views Dimensions Subsets Processes Chores FilesandURLs NOTE: Youcannotsettheorderinwhichreferencegroupsdisplay,northesort orderwithinreferencegroups.

4-4

TM1 Developers Guide

Security Considerations for Creating and Viewing Applications

Table of Contents

Index

Using Applications and References in TM1 Web


WhenyoucreateTM1applicationsandreferencesintheServerExplorer,they areautomaticallyavailableinTM1Web.Thisappliesforreferencestocubes, views,files,andURLs. Fordetails,seePublishingTM1ApplicationstoTM1Web.

Security Considerations for Creating and Viewing Applications


Thefollowingtabledescribesthesecurityprivilegesrequiredtoperform actionsrelatedtoTM1applications.Fordetails,seeAdministeringSecurity forTM1Applications. Action Createatoplevelapplication Createasecondarylevel application Viewanduseapplicationsand references Addaprivatereferencetoan application Publishaprivateapplication Required Security Privilege MustbememberofADMINgroup Adminaccesstoparentapplication

Read Read MustbememberofADMINgroup

Organizing Objects in TM1 Applications

4-5

Security Considerations for Creating and Viewing Applications

Table of Contents

Index

Action Publishaprivatereferencetoa publicobject Publishaprivatereferencetoa privateobject Privatizeapublicapplicationor reference Deleteapublicapplicationor reference Deleteaprivateapplication Deleteaprivatereference

Required Security Privilege Admin

Cannotbedone Admin Admin Admin Read

4-6

TM1 Developers Guide

Creating and Managing Applications

Table of Contents

Index

Creating and Managing Applications


TobeginaddingapplicationstoaTM1server,amemberoftheADMINgroup mustfirstcreateoneormoretoplevelapplications.Toplevelapplicationsare applicationsthatappeardirectlybelowtheApplicationsgroupintheServer Explorer.Secondarylevelapplicationsappearwithinaparentapplication,as explainedinCreatingaSecondaryLevelApplicationwithinanExisting Application. Inthefollowingexample,youseeanapplicationsgroup(Applications),three toplevelapplications(European Sales, North American Sales, andPacRim Sales),andtwosecondarylevelapplications(ChinaandIndonesia) beneath thePacRim Salestoplevelapplication.
Applications group Top-level applications Secondary-level applications

Creating a Top-Level Application


Tocreateatoplevelapplication: 1. EnsurethattheApplicationsgroupisvisibleonyourTM1server.Ifthe groupisnotvisible,clickViewApplicationsintheServerExplorer. 2. IntheServerExplorer,rightclicktheApplicationsgroupontheserver whereyouwanttocreatetheapplicationandclickCreate New Application.
Organizing Objects in TM1 Applications 4-7

Creating and Managing Applications

Table of Contents

Index

TM1insertsanewtoplevelapplicationtemporarilynamedNew Folderin theselectedApplicationsgroup.

3. Assignanametothenewapplication.

Allapplicationsareprivateobjectsthatonlytheuserwhocreatesthe applicationcanaccess.Youmustpublishanapplicationtomakeitavailable tootherTM1users.OnlyTM1ArchitectandTM1Perspectivesuserscan createpublicapplications.TM1Clientuserscancreateonlyprivate applications. 4. RightclicktheapplicationandclickSecurityMake Public tomakethe applicationavailabletootherusers. NOTE: Thetypeoficonthatisusedforanapplicationdependsonthe privateorpublicstatusoftheapplication. AprivateapplicationdisplayswithaPrivate Applications whichincludesakeyintheupperrightcorner. ApublicapplicationdisplayswithaPublic Applications icon icon.

Youcannowbeginaddingreferencesand/orsecondarylevelapplications totheapplication.
4-8 TM1 Developers Guide

Creating and Managing Applications

Table of Contents

Index

Renaming Applications
Torenameanapplication: 1. RightclicktheapplicationintheServerExplorer. 2. ClickRename. Thecurrentapplicationnameisselectedandreadytobeedited. 3. Typeanewnamefortheapplication. 4. PressENTER.

Deleting Applications
Youcandeleteanyapplication,publicorprivate,towhichyouhaveADMIN privilege. WARNING:Whenyoudeleteanapplication,TM1deletesallsubapplications andreferencescontainedintheapplication. WhenyouhaveADMINprivilegetoanapplication,youmustalsohaveADMIN privilegetoallreferencesandsubapplicationswithintheapplication, regardlessofthesecurityprivilegesthatTM1appliesthroughtheTM1 Security Assignments window.Therefore,whenyouhaveADMINaccesstoan application,youcandeletesubapplicationsandreferencestowhichyouwere assignedonlytheREADorNONEprivilege. ToillustratetheADMINprivilegefordeletinganapplication,considerthe followingexample.Therearethreeapplicationsonaserver(App1, App2, and App3),allcreatedbyamemberoftheADMINgroup.

Organizing Objects in TM1 Applications

4-9

Creating and Managing Applications

Table of Contents

Index

Theadministratorhasdefinedthefollowingsecurityprivilegestothe applicationsfortheNorth Americausergroup: Application Name App1 App2 App3 Security Privilege for North America User Group Admin Read None

WhenamemberoftheNorth AmericausergrouplogsontotheTM1server,he willseeApp1,towhichhehasADMINprivilege,andApp2,towhichhehas READprivilege.HewillnotseeApp3,ashehasNONEprivilegeforthat application.

Now,ifamemberoftheNorth AmericausergroupattemptstodeleteApp1, thedeletionwillsucceed.ThisisexpectedbecausetheNorth Americauser grouphasADMINprivilegetoApp1,whichallowsdeletionofapplications. However,bothApp2andApp3(alongwithanyreferencescontainedtherein)


4-10 TM1 Developers Guide

Creating and Managing Applications

Table of Contents

Index

willalsobedeletedwithoutwarning,despitethefactthattheNorth America grouphasbeenassignedREADandNONEprivilegesfortheapplications, respectively. Todeleteanapplication: 1. RightclicktheapplicationintheServerExplorer. 2. ClickDelete. 3. ClickYeswhenpromptedforconfirmation.

Creating a Secondary-Level Application within an Existing Application


AnyTM1userwithAdminprivilegetoanexistingapplicationcancreate secondarylevelapplications. Tocreateasecondarylevelapplicationwithinanexistingapplication: 1. Rightclicktheexistingapplication. 2. ClickNewApplication. TM1insertsanewsecondarylevelapplicationtemporarilynamedNew Folderintheexistingapplication. 3. Assignanametothenewapplication. TM1createstheapplicationasaprivateobjectwhichonlyyoucanaccess. 4. IfyouareamemberoftheADMINgroupandyouwanttopublishthe applicationsothatotherTM1userscanaccessit,rightclicktheapplication andclickSecurityMake Public. Whenyoupublishasecondarylevelapplication,securityprivilegesforthe secondarylevelapplicationareinheritedfromthesecurityprivileges
Organizing Objects in TM1 Applications 4-11

Adding TM1 Object References to an Application

Table of Contents

Index

definedfortheparentapplication.Youcanchangesecurityprivilegesby followingthestepsoutlinedinAssigningSecurityPrivilegesforTM1 ApplicationsandReferencestoUserGroups.

Adding TM1 Object References to an Application


YoucanaddreferencestoobjectsfromtheTM1serveronwhichthe applicationresidesaswellasobjectsfromotherserverstowhichyouare connected. ToaddareferencetoanexistingTM1objecttoanapplication: 1. SelecttheobjectintheServerExplorer. 2. Draganddroptheobjectontotheapplication. Areferencetotheobjectdisplaysintheapplication. TheexampleshowsareferencetotheSalesCubecubethatwasaddedto theNorth American Salesapplication.

Bydefault,anyreferenceyouaddtoanapplicationisaprivatereference,as indicatedbyakeysuperimposedovertheobjecticon.Onlyyoucanaccess thereference. TM1addsanimageofashortcutarrowtoanobjectsicontorepresenta reference.

4-12

TM1 Developers Guide

Adding TM1 Object References to an Application

Table of Contents

Index

Shortcut arrow represents a reference to an object

Animageofakeyisaddedtothelowerandupperrighthandcornersofa referenceicontorepresentprivatereferencesandprivateobjects.
Upper key represents that the original object is a private object.

Lower key represents a private reference.

Making a Reference Public IfyouwanttomakethereferenceavailabletootherTM1users,youmust publishthereferencebyrightclickingthereferenceandclickingApplication ItemSecurityMake Public. TM1combinestheobjectsiconwithashortcutarrowtoidentifyapublic referencetoapublicobject. Publicreferencetoapublicsubset.

Publicreferencetoapublicview.

Tip:Tosimplifytheprocessofcreatingapublicreference,youcanrightclick anobjectintheServerExplorer,holddowntherightmousebutton,andthen draganddroptheobjectontoanapplication.Whenyoudroptheobject,TM1 displaysashortcutmenu.ClickCreate Public Reference.

Organizing Objects in TM1 Applications

4-13

Adding TM1 Object References to an Application

Table of Contents

Index

Youcanpublishreferencesinpublicapplicationsonly.Whenyoupublisha referenceinanapplication,securityprivilegesforthereferencesareinherited fromthesecurityprivilegesdefinedfortheparentapplication.Youcanchange securityprivilegesbyfollowingthestepsoutlinedinAssigningSecurity PrivilegesforTM1ApplicationsandReferencestoUserGroups. Adding References to Private Views and Subsets to an Application Whenyouaddareferencetoaprivatevieworsubsettoanapplication,the referenceiscreatedasaprivatereference,whichisthedefaultbehaviorwhen creatinganyreferenceinanapplication. TM1addsanimageoftwokeystoareferenceicontoidentifyaprivate referencetoaprivateobject. Privatereferencetoaprivatesubset.

Privatereferencetoaprivateview.

Theseiconshelpyoudifferentiate: privatereferencestoprivateobjects,from privatereferencestopublicobjects.

4-14

TM1 Developers Guide

Adding TM1 Object References to an Application

Table of Contents

Index

TM1addsasinglekeytoareferenceicontoidentifyaprivatereferencetoa publicobject. Privatereferencetoapublicsubset.

Privatereferencetoapublicview.

Ifyoupublishaprivatevieworsubsetforwhichareferenceexists,the referenceisnolongervalid,anddisplaysanerrormessagewhenaccessed. Forexample,ifcreateareferencetoaprivateviewcalledView1,andthen makeView1public,thereferencebreaksandcannotopentheview.

Insuchacircumstance,youshoulddeletetheoldreferenceandinsertanew referencetothe(now)publicvieworsubset.

Organizing Objects in TM1 Applications

4-15

Adding TM1 Object References to an Application

Table of Contents

Index

Simultaneously Creating a New Object and Adding a Reference to an Application


YoucancreateanewTM1objectfromwithinanapplication.TM1createsthe newobjectontheserverwheretheapplicationresides,andinsertsaprivate referencetotheobjectintheapplication.Youcancreatedimensions,cubes, processes,andchoresfromwithinanapplication. 1. IntheServerExplorer,rightclicktheApplicationfromwhichyouwantto createtheobject,andclickNew <Object type>ontheshortcutmenu.For example,tocreateanewcube,clickNew Cube. Whenyouselectanobjecttype,adialogboxorwindowopens.For example,ifyouclickNewCube,theCreating Cubedialogboxopens. 2. Completetheprocedurerequiredtocreatethetypeofobjectyouchose. Whenyouaredone,TM1createstheobjectontheserverandinsertsa privatereferencetotheobjectintheapplication. TheexampleshowstheresultofcreatingthecubeNew Cubefromwithin theNorth American Salesapplication.

4-16

TM1 Developers Guide

Adding File References to an Application

Table of Contents

Index

Adding File References to an Application


YoucanaddfilereferencestoTM1applicationsforanytypeoffileonyour computerornetwork,suchasExcel,Word,PowerPoint,PDF,oranyotherfile. NOTE: YoucanaddareferencetoanyExcelfiletoanapplication.Youarenot restrictedtoworkingonlywithExcelfilescontainingTM1slicesorotherTM1 features. NOTE: Filesareopenedwiththeprogramwithwhichtheyareassociated,as configuredintheWindowsfiletypesettings.TM1displaysaniconforeach filebasedonthisassociation. Toaddafilereferencetoanapplication: 1. IntheServerExplorer,rightclicktheApplicationtowhichyouwanttoadd thefilereference,andclickAdd Fileontheshortcutmenu.

Organizing Objects in TM1 Applications

4-17

Adding File References to an Application

Table of Contents

Index

TheAdd Filedialogboxopens.

2. Browsetothedirectorycontainingthefileandselectthefileyouwantto addtotheapplication.

4-18

TM1 Developers Guide

Adding File References to an Application

Table of Contents

Index

3. SelectanoptionthatdetermineshowTM1willaddthefiletotheapplica tion. Attach the file as a referenceKeepsthefileinitscurrentlocationand insertsareferencetothefileintheTM1application. Whenafileisaddedasareference,itdisplaysasiconwithanarrowin TM1.Forexample,theiconforanExcelfilethatisaddedusingtheAttach the file as a referenceoptionlookslikethisintheTM1applicationobject tree:
An icon with an arrow indicates the file has been added as a reference.

Theprimaryadvantageofthisoptionisthatanyeditsormodificationsto theExcelfileareimmediatelyavailableintheapplication.Ifyouselectthis option,theExcelfileshouldresideinasharedfolderandyoushould navigatetothefilethroughyournetworktocreateaUNCpathtothefile. TomaintainaccesstoanattachedExcelfilewhenevertheTM1serveris running,thecomputerwherethefileresidesmustbeavailableonthe network. Copy the file to the TM1 server CopiesthefiletotheTM1serveron whichtheapplicationresides. ThistypeofreferencedisplaysasaniconwithoutanarrowinTM1.For example,anExcelfilethatisaddedusingtheCopy the file to the TM1 serveroptionhasthefollowingiconinaTM1application:
An icon without an arrow indicates the file has been copied to the TM1 server.

TM1copiestheuploadedfilestothe}ExternalssubdirectoryoftheTM1 serverdatadirectory.Forexample,ifyouaddanExcelfiletoanapplication
Organizing Objects in TM1 Applications 4-19

Adding File References to an Application

Table of Contents

Index

onthesdataserverthatispartofthesampleTM1database,TM1savesthe filetoC:\Program Files\Cognos\TM1\Custom\TM1Data\sdata\}Externals. Theprimaryadvantagetothisoptionisthatthefileisavailablewhenever theTM1serverisrunning.However,changestotheoriginalsourcefileare notautomaticallyreflectedinthefileontheTM1server.Youmustupdate thefileontheservertomakethechangesavailable. FordetailsonupdatingExcelfilesthathavebeencopiedtoTM1,see UpdatingExcelFilesontheTM1Server. FordetailsonupdatingnonExcelfilesthathavebeencopiedtoTM1, seeUpdatingNonExcelFilesontheTM1Server. NOTE: IfyouselecttheCopy the file to the TM1 serveroption,thefileyou wanttouploadcannotbecurrentlyinusebyanotherprogram.Ifyou attempttouploadanopenfile,TM1displaysanerrormessage.Makesure thefileisclosedbeforeuploadingittoTM1. 4. SelecteitherthePublicorPrivateoption. PublicMakesthefilereferenceavailabletootheruserswhohave accesstotheTM1application. PrivateOnlyyoucanaccessthereferencetothefile. 5. DependingonhowTM1isconfigured,thePublish to TM1 Webcheckbox mayappearontheAdd Filedialogbox. Whenthisoptionisavailable,TM1requiresyoutoexplicitlyselectitifyou wanttopublishanExcelfilefromaTM1applicationtoTM1Web.Formore details,seePublishingExcelFilestoTM1WebwithoutUsingExcelonthe TM1WebServer.

4-20

TM1 Developers Guide

Adding File References to an Application

Table of Contents

Index

IfthisoptionisavailableandyouwanttopublishtheselectedExcelfileto TM1Web,clickthePublish to TM1 Web checkbox. NOTE: ThePublish to TM1 Webcheckboxbecomesenabledonlyafteryou clickonanExcelfile.

This option appears only when TM1 requires you to explicitly publish Excel files from TM1 applications to TM1 Web.

6. ClickOpen. ThefileisnowavailablefromwithintheTM1application. YoucanalsoaccessfilesinTM1applicationsfromTM1Web.Fordetails, seethefollowingsectionslaterinthischapter: PublishingTM1ApplicationsandReferences PublishingTM1ApplicationstoTM1Web

Organizing Objects in TM1 Applications

4-21

Adding File References to an Application

Table of Contents

Index

Understanding Public and Private File References


TM1usesthefollowingiconformatstovisuallyidentifypublicandprivatefile referencesinTM1applications. PublicreferencetoafilethatwasaddedtoTM1asareference.

PrivatereferencetoafilethatwasaddedtoTM1asareference.

PublicreferencetoafilecopiedtotheTM1server.

PrivatereferencetoafilecopiedtotheTM1server.

Behavior of Files Uploaded to the TM1 Server


AnuploadedfileisanyfilethatisaddedtoaTM1applicationusingtheCopy the file to the TM1 serveroption.

Uploadedfilesbehavedifferentlythanreferencedfilesbecauseuploadedfiles areactuallycopiedtoandstoredwithintheTM1server.
4-22 TM1 Developers Guide

Adding File References to an Application

Table of Contents

Index

TM1copiesandsavesuploadedfilestotheTM1serverinthefollowing directory:<server_data_dir>\}Externalsdirectory. WhenafileisuploadedtotheTM1server,thefilenameisappendedwitha time/datestamp. Forexample,ifyouuploadthefileUS Budget.xlstotheTM1server,thefile issavedasUS Budget.xls_20040702193054.xls. WhenyoudeleteanuploadedfilefromaTM1application,TM1deletesthe copyoftheuploadedfilefromthe}Externalsdirectory.Theoriginalfile, outsideofTM1,thattheuploadedfilewascopiedfrom,isnotdeleted. Ifyouwanttocreateahyperlinkthatopensanuploadedfilefroma WebsheetorotherTM1applicationfileinTM1Web,thehyperlinkmust includetheTM1assignednamefortheuploadedfile.Fordetails,see CreatingHyperlinkstoUploadedFiles.

Updating Excel Files on the TM1 Server


NOTE: TM1providesadedicatedprocesstojustupdateExcelfilesthathave beenuploadedtotheTM1server.FordetailsonupdatingnonExcelfiles (Word,PowerPoint,orotherfiletypes)seeUpdatingNonExcelFilesonthe TM1Server. ToupdateanExcelfilethathasbeenuploadedtotheTM1server: 1. DoubleclickthefileintheServerExplorer. ThefileopensinExcelwithatemporaryfilenamesuchasTM12C5D.xls displayedinthetitlebar.

Organizing Objects in TM1 Applications

4-23

Adding File References to an Application

Table of Contents

Index

NOTE: Itisimportanttoremembertheoriginalnameofthefileyouare updating(asopposedtothetemporaryfilename).Youwillneedtoselect theoriginalfilelaterinstep4. 2. ApplyyoureditstotheExceldocument. 3. ClickTM1Save Workbook on TM1 ServerUpdate Existing Application File on TM1 Server. TheSelect a TM1 External File to Updatedialogboxopens.

4. SelecttheoriginalExcelfileyouwanttoupdate. BesuretoselecttheoriginalExcelfileyouopenedinStep1.Ifyouselect anyotherfile,TM1willoverwritethatselectedfilewithoutwarning. 5. ClickOK.


4-24 TM1 Developers Guide

Adding File References to an Application

Table of Contents

Index

TM1updatesthefileontheTM1server.TheExcelfileisavailablefrom withinitsparentapplication.

Updating Non-Excel Files on the TM1 Server


YoucanupdateanonExcelfilethathasbeenuploadedtotheTM1serverby savingthefileasanexternalfileandthenmanuallyreaddingthefiletothe TM1server. ToupdateanonExcelfilethathasbeenuploadedtotheTM1server: 1. DoubleclickthefileintheServerExplorer. Thefileopensintheassociatedprogramwithatemporaryfilenamesuch asTM163.doc displayedinthetitlebar. Forexample,anuploadedWordfileopensinMicrosoftWord. 2. Usingtheprogramassociatedwiththefile,makeyourchangestothefile andthenusetheprogramsSave Asfeaturetosavethefiletoanewloca tionandfilename. NOTE: Rememberthenameandlocationofthenewupdatedfilesoyou canadditbackintoTM1inthenextstep. 3. InServerExplorer,rightclickontheoldversionofthefileandclickDelete. TM1displaystheConfirm Deletedialogsoyoucandeletetheoldfile. 4. ReaddtheupdatedfileusingthestepsdescribedinAddingFileRefer encestoanApplication.

Organizing Objects in TM1 Applications

4-25

Adding URL References to an Application

Table of Contents

Index

Adding URL References to an Application


YoucanaddaURLaddresstoanapplicationforanyofthefollowingURL protocols: http:// https:// WhenyouopenaURLreferenceinaTM1applicationfromwithinTM1 Architect,ServerExplorer,orTM1Web,thetargetsourceoftheURLdisplays inyoursystemsdefaultwebbrowser. ToaddaURLreferencetoanapplication: 1. IntheServerExplorer,rightclicktheApplicationtowhichyouwanttoadd theURLreference,andclickAdd URLontheshortcutmenu.

TheAdd URLdialogopens.
4-26 TM1 Developers Guide

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

2. EnteracompleteURL,includingthehttp://orhttps://protocol. Forexample:http://www.Cognos.com 3. EnteradescriptivenamefortheURL. Forexample:Cognos Web Site 4. ClickOKtoaddtheURL. TheURLisaddedtotheTM1application,usingyoursystemsdefaulticon foraURLlink.

Working with Object, File, and URL References in TM1 Applications


Youcandoubleclickareferencetoanobject,file,orURLinaTM1application toperformthedefaultactionontheobject. Tip:Youcanrightclickanobjectreference,andselectanysupportedactionfor theobjectfromtheshortcutmenu.

Organizing Objects in TM1 Applications

4-27

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

Thefollowingtabledescribesthedefaultactionforallobjects,files,andURLs thatyoucanaccessfromTM1applications. Reference Type Cube Cube view Dimension Subset Process Chore File Default Action OpensthedefaultviewofthecubeintheCubeViewer. OpenstheviewintheCubeViewer. OpensthedefaultsubsetofthedimensionintheSubsetEditor.Ifa defaultsubsetisnotdefined,theAllsubsetisopened. OpensthesubsetintheSubsetEditor. OpenstheprocessforeditingintheTurboIntegratorwindow. Ifthechoreisinactive,opensthechoreintheChore Setup Wizard. (Youcannotopenanactivechore.) Opensthefileintheprogramwithwhichitisassociated,as configuredintheWindowsfiletypesettings.Forexample,an.xls fileopensinExcel. OpenstheURLinyoursystemsdefaultwebbrowser.

URL

NOTE: WhenaccessingTM1objectsthatarelocatedonanotherTM1server, theservermustberunningandyoumustbeloggedintoit. Ifyoutrytoaccessareferencetoanobjectthatresidesonaserverthatis running,buttowhichyouarenotcurrentlyconnected,TM1promptsyou tologintotheserver.


4-28 TM1 Developers Guide

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

Ifyoutrytoaccessareferencetoanobjectthatresidesonaserverthatisnot running,TM1issuesthefollowingwarning:

Torestoreaccesstothereference,starttheserveronwhichthesourceobject resides.

Viewing TM1 Application Properties


ToviewthepropertiesofreferencesandsubapplicationsinaTM1 application: 1. SelecttheapplicationintheServerExplorer. 2. IfthePropertiespaneisnotvisibleinthe ServerExplorer,clickDisplay Properties Window .

ThePropertiespanedisplaysinformationaboutallreferencesandsub applicationstowhichyouhaveatleastReadaccess.Referencesandsub applicationstowhichyouhaveNoneaccessdonotappearintheServer Explorer,soyoucannotviewthepropertiesoftheseitems. OnlyimmediatesubapplicationsoftheselectedTM1applicationappearin thePropertiespane. 3. TosortitemsinthePropertiespanealphabeticallybypropertyvalue,click thecolumnlabeltowhichyouwanttoapplythesort.Forexample,tosort itemsalphabeticallybycurrentstatus,clicktheStatuscolumnlabel.


Organizing Objects in TM1 Applications 4-29

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

Properties for references and sub-applications

TM1 sub-application

TM1 objects

File references (Excel, Word, PDF ...)

URL reference

4-30

TM1 Developers Guide

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

Foreachreferenceandsubapplication,thefollowingpropertiesdisplay. Property Name Description Thenameofthereferenceorsubapplicationasitappearsin theselectedapplication. Youcaneditreferencenames,whichdonothavetodirectly correspondtosourceobjectnames.Forexample,inthefigure above,thePricereferencereferstothesourcecubenamed PriceCube. System Name Formostreferences,System Nameistheactualnameof thesourceobjecttowhichareferencepoints. ForfilesthathavebeenuploadedtotheTM1server, System NameisthenameassignedtothefileontheTM1 server.NamingconventionsforfilesuploadedtotheTM1 serveraredescribedinBehaviorofFilesUploadedtothe TM1Server. Forfilesthatareattachedasareference,System Nameis theUNCpathtothefile. TheSystem Name propertydoesnotapplytosub applications. Server TheTM1serveronwhichthesourceobjectforareference resides. Forexample,intheaboveimagethesourcecubeforthe Currencyreferenceresidesontheinventoryserver.

Organizing Objects in TM1 Applications

4-31

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

Property Private

Description Thispropertyappliesonlytosubsetsandviews. ThePrivatepropertyindicateswhetherthesourceforasubset orviewreferenceisaprivateobject.ApropertyvalueofYes indicatesthatthesourceisaprivateobject.Noindicatesa publicobject. Forexample,intheimageabove,thesourcesfortheNorth American Currenciessubsetreference,aswellastheNorth American Price PlanandNorth American Modelsviews,are allprivateobjects.

Status

Thispropertyindicatesthecurrentavailabilityofreferences andsubapplications.TherearethreepossibleStatusvalues: AvailableThereferenceorsubapplicationisavailablefor use. Not ConnectedYouarenotconnectedtotheTM1server onwhichthesourceobjectforthereferenceresides.Login totheservertorestoreyouraccesstothereference. Not AvailableTheTM1serveronwhichthesourceobject forthereferenceresidesisnotrunning,andthereforeyou cannotaccessthereference.

Security

Thispropertyindicatesyoursecurityprivilegeforareference orsubapplication.

4-32

TM1 Developers Guide

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

Deleting Object, File, and URL References from TM1 Applications


TodeleteanobjectreferencefromaTM1application: 1. Rightclicktheobjectreferenceintheapplication. NOTE: Youmustselecttheobjectreferenceintheapplication.Ifyouselect thesourceobjectelsewhereintheserverhierarchy,youcannotdeletethe objectfromtheapplication. 2. ClickApplication ItemDelete. TodeleteafileorURLreferencefromanapplication: 1. Rightclickthefileintheapplication. 2. ClickDelete.

Renaming Object, File, and URL References in TM1 Applications


AreferencetoanobjectorfileinaTM1applicationdoesnothavetousethe nameofthesourcefilewithwhichitisassociated.Youcanrenameanobjector filereferenceinanapplicationandmaintaintheconnectiontothesourcefile. Torenameanobjectorfilereferencefromanapplication: 1. Rightclickthereferenceintheapplication. 2. SelecttheRenameoptionasfollows: ClickApplication ItemRenametorenameanobjectreference. ClickRenametorenameafileorURLreference. Thereferencenameisselectedandreadytobeedited.

Organizing Objects in TM1 Applications

4-33

Working with Object, File, and URL References in TM1 Applications

Table of Contents

Index

3. Typeanewnameforthereference. 4. PressENTER.

Deleting Source Objects that are Referenced by TM1 Applications


WhenyoudeleteasourceobjectthatisreferencedbyaTM1application,TM1 doesnotdeletethecorrespondingobjectreferencefromtheapplication. Forexample,ifyoudeletetheCanada Salesviewfromthesdataserver,the referencetotheCanada SalesviewremainsintheNorth American Sales application.

Deleting the Canada Sales view from the sdata server does not delete the reference to the Canada Sales view in the North American Sales application.

4-34

TM1 Developers Guide

Administering Security for TM1 Applications

Table of Contents

Index

Ifyouattempttoopenanobjectorfilereferenceinanapplication,andthe sourcefortheobjectorfilehasbeendeletedfromtheTM1server,TM1 displaysanerrormessage.

Whenthesourceforanobjectorfileinanapplicationhasbeendeletedfrom theserver,youshoulddeletethecorrespondingreferencefromtheapplication. Fordetails,seeDeletingObject,File,andURLReferencesfromTM1 Applications.

Administering Security for TM1 Applications


ThefollowingsectionsdescribehowtoassignsecurityprivilegesforTM1 applicationsandreferencestousergroupsontheTM1server,aswellashow topublishandprivatizeTM1applicationsandreferences.

Assigning Security Privileges for TM1 Applications and References to User Groups
Youcanassignsecurityprivilegesforpublicitems(eitherreferencesorsub applications)withinpublicTM1applicationstousergroupsontheTM1 server.YoumusthaveAdminprivilegetoanapplicationtoassignsecurityto itemswithintheapplication. Youcannotassignsecurityforprivateapplicationsandreferences;onlythe userwhocreatesaprivateitemcanaccesstheitem.
Organizing Objects in TM1 Applications 4-35

Administering Security for TM1 Applications

Table of Contents

Index

Toassignsecurityprivileges: 1. IntheServerExplorer,rightclicktheTM1applicationthatcontainsthe itemstowhichyouwanttoassignsecurity. 2. ClickSecuritySecurity Assignments. TheTM1 Security Assignments windowopens.Thewindowlistsallpublic items(TM1objects,files,URLs,andsubapplications)thatresideinthe currentapplication.

4-36

TM1 Developers Guide

Administering Security for TM1 Applications

Table of Contents

Index

3. Selectthecellattheintersectionoftheitemforwhichyouwanttodefine securityandtheusergrouptowhichyouwanttoassignsecurity.

Organizing Objects in TM1 Applications

4-37

Administering Security for TM1 Applications

Table of Contents

Index

4. Clickoneoftheavailablesecurityprivileges. Security Privilege None Read As Applied to TM1 Applications As Applied to References

Membersoftheusergroupcannot Membersoftheusergroup seetheapplicationoritscontents. cannotseethereference. Membersoftheusergroupcansee Membersoftheusergroupcan usethereference. theapplicationanduseany referenceswithintheapplicationto whichthegrouphasatleastRead privilege.Memberscanalsocreate privatereferencesinthe application. Membersoftheusergroupcansee theapplication,usereferences withintheapplication,andcreate bothpublicandprivatereferences intheapplication.Theycanalso createprivatesubapplications. MemberswithAdminprivilegeto anapplicationcansetsecurity privilegesforallreferencesand subapplicationswithinthe application. Membersoftheusergroupcan usethereference.Theycanalso updateordeletethereference. Theycanpublishprivate references,andprivatizepublic references.

Admin

5. Repeatsteps3and4foranyotheritemsforwhichyouwanttodefinesecu rity.
4-38 TM1 Developers Guide

Administering Security for TM1 Applications

Table of Contents

Index

6. ClickOK. Foranygivenusergroup,itispossibletoassigntheREAD or ADMIN privilegetoareferencewhentheprivilegeassignedtotheobjectassociated withthereferenceisNONE.Inthisscenario,membersoftheusergroup willnotbeabletoseethereferenceinanapplication. Forexample,ifausergroupisassignedNONEprivilegeforacube,but READprivilegeforareferencetothesamecube,membersoftheuser groupwillnotseethereferencetothecubeinanapplication.

Publishing TM1 Applications and References


ThefollowingsectionsdescribehowtopublishTM1applicationsand references.Todeterminethesecurityprivilegesrequiredtoperformthese procedures,seetheSecurityPrivilegestable. Publishing Private TM1 Applications Topublishaprivateapplication: 1. RightclicktheapplicationintheServerExplorer. 2. ClickSecurityMake Public. NOTE: Whenyoupublishaprivateapplication,TM1alsopublishesall privatereferencestopublicobjectswithintheapplication. Publishing Private References to Public Objects Youcanpublishprivatereferencesthatresideinpublicapplications Topublishaprivatereferencetoapublicobject: 1. RightclickthereferenceintheServerExplorer.
Organizing Objects in TM1 Applications 4-39

Administering Security for TM1 Applications

Table of Contents

Index

2. SelectApplication ItemSecurityMake Public.

Privatizing TM1 Applications and References


YoucanprivatizepublicTM1applicationsandreferences.Whenyoumakean applicationorreferenceprivate,onlyyoucanaccesstheitem. Privatizing a Public TM1 Application Toprivatizeapublicapplication: 1. RightclicktheapplicationintheServerExplorer. 2. SelectSecurityMake Private. Whenyouprivatizeapublicapplication,allpublicreferenceswithinthe applicationareautomaticallyprivatizedaswell. Ifapublicapplicationcontainsidenticallynamedreferencestoasingleobject type,onepublicandoneprivate,thestring_Publicisappendedtothepublic referencewhentheapplicationisprivatized. Forexample,thefollowingimageshowstheEuropean Salesapplication, whichcontainstworeferencestoviewsnamedNorthern Europe Sales,one publicandoneprivate.
Public application A public and private reference to the same view object

WhenyouprivatizetheEuropean Salesapplication,thepublicreferenceis convertedtoaprivatereferenceanditsnameischangedtoNorthern Europe Sales_Public,indicatingthatthisisaprivatereferencetoapublicobject.


4-40 TM1 Developers Guide

Viewing Logical Groupings in TM1 Applications

Table of Contents

Index

Private application Two private references to the same view object

Thenamechangeisnecessarybecauseanapplicationcannotcontaintwo identicallynamedprivatereferencestoasingleobjecttype. Privatizing a Public Reference Toprivatizeapublicreference: 1. RightclickthereferenceintheServerExplorer. 2. SelectApplication ItemSecurityMake Private.

Viewing Logical Groupings in TM1 Applications


OneoftheprimaryadvantagesofTM1applicationsisthattheyletyouview andmanageobjectsandfilesinlogicalgroupings.Thissimplifiesthetaskof usingTM1,becauseyoucaneasilyidentifyandlocatefilesandobjectsinjob specificapplicationswithouthavingtoscanthroughlargelistsofobjects arrangedbytype. TofurthersimplifytheuseofTM1,youcansuppressthedisplayofobjectsby type.Thisyieldsacleaner,moreeasilynavigateddisplayintheServer Explorer.(Bydefault,allobjecttypesaredisplayedintheServerExplorer.) Tosuppressthedisplayofaparticulartypeofobject,clickView <Object type>fromtheServerExplorer.Thisclearsthecheckmarknexttotheobject typeintheViewmenuandsuppressesthedisplayoftheobjecttypeinthe

Organizing Objects in TM1 Applications

4-41

Viewing Logical Groupings in TM1 Applications

Table of Contents

Index

ServerExplorer.Inthefollowingfigure,allobjectsaresuppressedexceptfor Applications.

NOTE: WhenyousuppressthedisplayofagivenobjecttypeintheServer Explorer,referencestoobjectsofthattypestillappearwithinTM1 applications.However,controlobjectsaresuppressedwithinapplications whenthedisplayofcontrolobjectsissuppressedintheServerExplorer. ThefollowingfigureshowstheServerExplorerwiththedisplayofallobjects suppressedexceptforapplications.

4-42

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Thispresentsamuchmoreconciseandconvenientlistingofreferenceswithin applications.MembersoftheNorthAmericansalesorganizationcanview referencestoalltheobjectsandfilestheyneedtodotheirjobsinasingle application.

Publishing TM1 Applications to TM1 Web


Allreferencestocubes,views,files,andURLsinTM1applicationsare automaticallyavailableinTM1Web. NOTE: IfyourinstallationofTM1WebisconfiguredtorunwithoutMicrosoft ExcelontheWebserver,youmustexplicitlypublishallExcelfilesinTM1 applicationstoTM1WebifyouwanttheExcelfilestobeavailableasTM1

Organizing Objects in TM1 Applications

4-43

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Websheets.Formoredetails,seePublishingExcelFilestoTM1Webwithout UsingExcelontheTM1WebServer. ThefollowingfigureshowsanexampleofanapplicationnamedNorth American Sales onthesdataTM1server.

Excel files

Inthisexample,North American Sales isapublicapplicationthatcontains referencestoacollectionofTM1objectsandExcelfiles.Whenyouaccessthe sdataTM1serverthroughTM1Web,thesereferencesaredisplayedunder Applications.

4-44

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

WhenworkinginTM1Web,youcanclickonareferencetoopenanddisplayit asfollows: CubesandviewsdisplaydirectlyinTM1Web. ExcelfilesdisplayasTM1WebsheetsdirectlyinTM1Web. NOTE: ExcelfilesthathavebeenprotectedthroughtheExcelcommand, Tools Protection,cannotbeaccessedthroughTM1Web. NonExcelfilesopenanddisplayintheirassociatedprogram. NOTE: SomefiletypesandprogramsmaynotbeviewablefromTM1Web. URLreferencesopenanddisplayinaseparatewebbrowser. Forexample,clickonanExcelfiletoopenitasanTM1Websheet.

Organizing Objects in TM1 Applications

4-45

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

NOTE: TM1determinesthecolumnwidthsofanTM1Websheetbasedonthe ExcelfilefromwhichtheWebsheetisgenerated.IfthecolumnsintheExcelfile donotaccommodatethefulldisplayofrowandcolumnlabels,the correspondinglabelsintheWebsheetaretruncated. Youcanaccessbothpublicandprivateapplicationsandreferencesthrough TM1Web.Onlytheuserwhocreatesaprivateapplicationorreferencecan accesstheitemthroughTM1Web.Accesstopublicapplicationsandreferences inTM1Webisdeterminedbythesecurityprivilegesdefinedforthesource applicationsandreferencesontheTM1server.Fordetailsonsettingsecurity privileges,seeAssigningSecurityPrivilegesforTM1Applicationsand ReferencestoUserGroups.

Setting TM1 Websheet Properties


WebsheetpropertiesareconfiguredinServerExplorertocontrolhowanExcel fileappearsandbehaveswhenviewedasaWebsheetinTM1Web. TosetpropertiesforanTM1Websheet: 1. IntheServerExplorer,opentheTM1applicationcontainingtheExcelfile fromwhichtheTM1Websheetisgenerated. 2. RightclicktheExcelfile. 3. ClickProperties. TheTM1 Web Propertiesdialogboxopens.

4-46

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

4. UsetheoptionsontheGeneralandDisplay Propertiestabstosetproperties fortheTM1Websheet. FordetailsontheTM1 Web Properties options,seeWorkingwith WebsheetsintheTM1UsersGuide. 5. ClickOK.

Publishing Excel Files to TM1 Web without Using Excel on the TM1 Web Server
IfyourinstallationofTM1WebisconfiguredtorunwithoutMicrosoftExcel ontheWebserver,youmustexplicitlypublishallExcelfilesinTM1 applicationstoTM1WebifyouwanttheExcelfilestobeavailableasTM1
Organizing Objects in TM1 Applications 4-47

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Websheets.Similarly,anytimeyouchangeanExcelfilethathasbeen previouslypublishedtoTM1Web,youmustrepublishthefiletomakethe changesavailableintheWebsheet. Fordetailsaboutthisconfiguration,seetheExcelWebPublishEnabled parameterinParametersintheTm1s.cfgFileintheTM1OperationsGuide. ThereareseveralmethodsforpublishingExcelfilestoTM1Web.Youcan: SimultaneouslyaddanExcelfiletoanapplicationandpublishtoTM1Web PublishindividualExcelfilesthatexistwithinanapplicationtoTM1Web PublishallExcelfileswithinanapplicationtoTM1Web Simultaneously Adding an Excel File to an Application and Publishing to TM1 Web WhenyouinitiallyaddanExcelfiletoanapplication,youcanchooseto simultaneouslypublishthefiletoTM1Web. TherearetwowaystoaddanExcelfiletoanapplication: FromTM1Architect/ServerExplorerRightclickanapplicationand chooseAdd File. FromTM1Perspectives/ExcelChooseTM1Save Workbook on TM1 Server Upload New Application File to TM1 Serverandthenselectan applicationfolder. Regardlessofwhichmethodyouuse,TM1displaysadialogboxwithan optiontopublishthefiletoTM1Webwhileaddingthefiletoanapplication.

4-48

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

TM1 Architect/Server Explorer: Option to publish the selected Excel file to TM1 Web

NOTE: ThePublish to TM1 Webcheckboxbecomesenabledonlyafteryou clickonanExcelfile.


Organizing Objects in TM1 Applications 4-49

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

TM1 Perspectives/Excel: Option to publish the current Excel file to TM1 Web

YoucanchoosetopublishornotpublishtheExcelfiletoTM1Webasfollows: SelectthePublish to TM1 WeboptiontopublishtheExcelfiletoTM1Web. ClearthePublish to TM1 WeboptiontoaddtheExcelfiletothe applicationbutnotpublishthefiletoTM1Web. Publishing an Individual Excel File to TM1 Web IfanExcelfilehasbeenaddedtoanapplicationbuthasnotyetbeenpublished toTM1Web,thefilenameappearsingreytextinTM1ServerExplorer.Such filesmustbepublishedtoTM1WebbeforetheycanbeviewedasWebsheets.

4-50

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Grey text indicates that this file has not been published to TM1 Web.

TopublishanindividualExcelfilefromanapplicationtoTM1Web: 1. Rightclickthefile. 2. SelectPublish to TM1 Web.

AftertheExcelfileispublishedtoTM1Web,thefilenameappearsinblack text.

Black text indicates that this file has been published to TM1 Web.

Publishing all Excel Files Within an Application to TM1 Web TopublishallExcelfileswithinanapplicationtoTM1Web:

Organizing Objects in TM1 Applications

4-51

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

1. Rightclicktheapplicationfoldercontainingthefilesyouwanttopublish. 2. SelectPublish All Files to TM1 Web.

AllExcelfilesintheapplication,includingthoseinsubapplications,are publishedtoTM1Web. Deleting an Excel File from TM1 Web YoucanalsodeleteanExcelfilethathaspreviouslybeenpublishedtoTM1 Web.WhenyoudeleteanExcelfilefromTM1Web,theWebsheetisnolonger availableinTM1WebbutthesourceExcelfileremainsintheTM1Application. TodeleteafilefromTM1Web: 1. Rightclickthefile. 2. SelectRemove from TM1 Web.

4-52

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Updating Excel Files in TM1 Applications WhenyouchooseTM1 Save Workbook on TM1 ServerUpdate Existing Application File on TM1 ServerinMicrosoftExcel,youcanupdateanExcelfile thathaspreviouslybeenpublishedtoTM1Web.

YoucansimultaneouslyrepublishtheupdatedExcelfiletoTM1Webby selectingthePublish File to TM1 Weboption.

Organizing Objects in TM1 Applications

4-53

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Publish and update the selected Excel file to TM1 Web

FormoredetailsonupdatingExcelfiles,seeUpdatingExcelFilesontheTM1 Serverearlierinthischapter. NOTE: IfyouupdateanExcelfilethathaspreviouslybeenpublishedtoTM1 Web,butdonotselectthePublish File to TM1 Weboption,thefileinthe applicationwilldifferfromthefileavailableinTM1Web.Thereisnovisual indicationintheServerExplorertoalertyouthatafilehasbeenupdatedinan applicationbuthasnotbeenrepublishedtoTM1Web.

4-54

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Creating Hyperlinks to Uploaded Files


IfyouwantaWebsheettocontainahyperlinktoanuploadedfile,the hyperlinkmustincludethelocationandnamethatTM1assignstothe uploadedfile. WhenyouaddanuploadedfiletoaTM1application,acopyofthefileissaved ontheTM1serverandthefilenameisappendedwithadataandtimestamp. Forexample: Report_2006.xls_20070123212746.xls IfyoudonotincludetheTM1assignedfilenameinthehyperlink,thelink doesnotworkinTM1Webandanerrordisplays.

Tocreateahyperlinktoanuploadedfile: 1. InServerExplorer,usethePropertiespanetofindtheTM1assignedname fortheuploadedExcelfilethatwillbethetargetofthehyperlink.

Organizing Objects in TM1 Applications

4-55

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

User assigned name for an uploaded Excel file

TM1 assigned name of an uploaded Excel file

2. CreatethehyperlinktotheuploadedExcelfileusingthefollowingformat: TM1://ServerName/blob/PUBLIC/.\}Externals\TM1_Filename where: ServerNameistheTM1severnamewheretheExcelfileislocated. TM1_FilenameisthenamethatTM1assignedtotheuploadedExcelfile. Forexample: TM1://sdata/blob/PUBLIC/.\}Externals\Report_2006.xls_20070123212746.xls 3. InExcel,addthehyperlinktotheworksheetwhereyouwantthelinkto exist.

4-56

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Hyperlink to an uploaded Excel worksheet

4. AddtheworksheettoaTM1applicationandthenviewthefileasaWeb sheetinTM1Web.

Organizing Objects in TM1 Applications

4-57

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Websheet with hyperlink to an uploaded Excel worksheet

4-58

TM1 Developers Guide

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

Viewing Websheets that Contain the 0x1A Hexadecimal Character


TM1WebcannotopenaWebsheetthatcontainsthe0x1Ahexadecimal character.IfyouattempttoopenaWebsheetcontainingthe0x1Ahexadecimal character,TM1Webissuesthefollowingerror:

Ifyouremovethe0x1AhexadecimalcharacterfromtheWebsheet,thefilewill openinTM1Web. NOTE: TheASCIIOutputTurboIntegratorfunctionplacesthe0x1A hexadecimalcharacterattheendofallgeneratedfiles.IfyouuseASCIIOutput toexportTM1datatoanASCIIfileandthenattempttoopenthefileinaTM1 Websheet,youwillencounterthiserror.

Organizing Objects in TM1 Applications

4-59

Publishing TM1 Applications to TM1 Web

Table of Contents

Index

4-60

TM1 Developers Guide

Table of Contents

Index

5 Importing Data with Processing Worksheets


ThischapterdescribeshowtoimportdataintoaTM1cubeusingaprocessing worksheet.AprocessingworksheetisamodifiedExcelworksheetinwhich youuseTM1functionstosendvaluestoalocationinanexistingcube. NOTE: Processingworksheets,whileavalidmeansofimportingdata,are deprecatedfunctionalityinthecurrentTM1release.Westronglyrecommend usingTurboIntegratortoimportdataintoTM1cubes. Thefollowingtopicsaredescribedinthischapter. ProcessingWorksheetsOverview ImportingDataUsingProcessingWorksheets

Importing Data with Processing Worksheets

5-1

Processing Worksheets Overview

Table of Contents

Index

Processing Worksheets Overview


AprocessingworksheetisamodifiedExcelworksheetinwhichyouuse functionstosendinputvaluestoalocationinanexistingTM1cube. Youcanuseprocessingworksheetstoconvertinputvaluesthatdonotmap directlytoexistingelements.Forexample,inthefollowingtable,thefirsttwo columnscontaincodesthatdonotdirectlycorrespondtoelementsinthecube towhichvaluesarebeingsent. Scenario 001 002 001 002 001 002 001 002 Country R54 R54 R32 R32 R1A R1A R30 R30 Model Measure Jan Feb Mar 25041.90 25041.90 25041.90 25041.90 25041.90 25041.90 25041.90 25041.90

S Series 1.8 L ... Price S Series 1.8 L ... Price S Series 1.8 L ... Price S Series 1.8 L ... Price S Series 1.8 L ... Price S Series 1.8 L ... Price S Series 1.8 L ... Price S Series 1.8 L ... Price

25259.93 25830.76 25259.93 25830.76 25259.93 25830.76 25259.93 25830.76 25259.93 25830.76 25259.93 25830.76 25259.93 25830.76 25259.93 25830.76

Inthisexample,thecodesinthefirstcolumnrepresentelementsinthe Actvsbuddimension.ByusingasimpleIFfunction,youcanconvert001to Actualand002toBudget.

5-2

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

Thesecondcolumncontainsfourcountrycodes,whichmaptocountry regionssuchasArgentina,UnitedStates,andGreece.Iftheseweretheonly values,youcouldwriteanestedIFformulatoconvertthevaluestoelements. Asthenumberofpossiblevaluesincreases,writinganestedIFformulacanbe cumbersomeanderrorprone.Asanalternative,youcancreateatwo dimensionalcubethatservesasalookuptableforretrievingelementnames.

Importing Data Using Processing Worksheets


Youcancreateaprocessingworksheettoperformthefollowingtasks: Importdatafrominputrowsthatrequiretransformations. Updatecubesbutnotcreatecubes,norcreateconsolidations. Useasastagingareaforimportingdata. TM1readstheinputrecords,oneatatime,intothefirstrowoftheprocessing worksheet,andthensendsthedatavaluesassociatedwiththerecordtoaTM1 cube. Beneaththefirstworksheetrow,aprocessingworksheetincludes: Conversioninstructionsforvaluesthatmaptoelementnamesbutdonot matchelementnamespellings. Anydatatransformationcalculationsthatmodifydatavaluesbefore importing. DatabaseSend(DBS)formulasthatmaptheinputdatatocellsinthecube. Eachformulasendsavaluefromthefirstrowtoalocationinthecube identifiedbyoneelementineachdimensionofthecube.

Importing Data with Processing Worksheets

5-3

Importing Data Using Processing Worksheets

Table of Contents

Index

NOTE: YoumustuseDBSformulas,notDBSWformulas,inprocessing worksheets.YoumustuseDBRformulasratherthanDBRWformulasin processingworksheets. Othervaluesineachinputrowsupplytheelementnamesdirectlyor throughconversioninstructions. Thefollowingsummarizesthestepsrequiredtoimportdata: 1. Readinthefirstinputrecordintotheprocessingworksheetasanexample. 2. Comparetheinputwiththecubestructure. 3. Maptheinputvaluestoelementnames,ifnecessary. 4. BuildaDBSformulaforeachinputvaluethatpopulatesacubecell. 5. Processallinputrecords.

Reading in the First Input Row


Youcanuseprocessingworksheetstoprocessdatafromthefollowingdata sources: ASCIIfiles ODBCdatasources TM1cubes Thenextthreesectionsdescribehowtoreadaninitialrecordfromeachdata source. Reading the First Record from an ASCII File 1. CreateanewExcelworksheet,andcloseanyotherones.

5-4

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

2. ClickTM1Process DataExample. TheSelect Cube, ODBC or Flat Filedialogboxopens.

3. ClickFlat File. TheSelect Input Filedialogboxopens. 4. Selecttheinputfile. Forthisexample,selectprice.cmafileinyour\install_dir\PData directory. 5. ClickOK. Thefirstrecordoftheinputfiledisplaysinthefirstrowoftheprocessing worksheet.

6. ClickEdit SaveandsavetheprocessingworksheetasPriceProcessing.xls. Reading the First Record from an ODBC Source 1. CreateanewExcelworksheet,andcloseanyotherones. 2. ClickTM1Process DataExample. 3. ClickODBC.

Importing Data with Processing Worksheets

5-5

Importing Data Using Processing Worksheets

Table of Contents

Index

TheConnect to a data sourcedialogboxopens.

4. Selectadatasource. 5. ChangetheClientandPassword,ifnecessary. 6. ClickOK. TheSelect tabledialogboxopens. 7. SelectatableandclickOK. ThefirstrecordoftheODBCsourcedisplaysinthefirstrowofthe worksheet. Reading the First Record from Cube 1. CreateanewExcelworksheet,andcloseanyotherones. 2. ClickTM1Process DataExample. 3. ClickCube.

5-6

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

TheSelect Cubedialogboxopens.

4. SelectthesourcecubeandclickOK. TheView Extractdialogboxopens. 5. ClickExport. Thefirstrecordofthesourcecubedisplaysinthefirstrowofthe worksheet.

Importing Data with Processing Worksheets

5-7

Importing Data Using Processing Worksheets

Table of Contents

Index

Comparing Input Records with a Cubes Structures


TheexamplesinthismanualprocessdataintothesampleSalesCubecube, whichhasthefollowingstructure. Dimension Actvsbud Region Model Account1 Month Sample Elements Actual, Budget Argentina, Belgium, United States S Series 1.8 L Sedan, S Series 2.0 L Sedan Units, Sales, Price Jan, Feb, Mar, Apr

TopopulatetheSalesCubecube,eachrecordinthedatasourcemustcontain thefollowingdetail: Oneormorecellvalues. Namesofelementsfromdifferentdimensionsthatidentifythecelllocation foreachimportedvalue. or Inputvaluesthatyoucanmaptoelementnames. Theelementinformationcanbeincomplete.Forexample,whenthesource recordscontainmultiplevaluesforasinglemeasure,themeasureisoptional. YoucansupplythemissingmeasureusingaDBSformula. Considerthefollowingrecord,asitappearsinaprocessingworksheet.This recordcontainsmonthlypricedataforasinglecarmodel.Mappingthisdata
5-8 TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

totheSalesCubecubefirstrequiresconvertingtwoinputvaluestoelement namesandsupplyingmissingelementnames.
Actvsbud code Model name Monthly Price Data

Region code

Letsexamineeachinputvalue: CellA1containsacodethatidentifiesthepricedataasactualorbudget amounts.Code001representsActual,andCode002representsBudget, whicharetwoelementsintheActvsbuddimension.ByusingtheExcelIF function,youcanconvertthesevaluestoelementnames. CellB1suppliesaregioncodethatcorrespondstoanelementnameinthe Regiondimension.Supposethattheinputhas21regioncodesthatrequire conversion.Toconvertthesevalues,youcancreateatwodimensionalcube thatservesasalookuptable. CellC1suppliescarmodelnames,exactlyasfoundintheModel dimension.Noconversionisrequired. CellsD1throughI1supplythemonthlydata.Youneedtomapthisdatato elementsintheMonthdimension. MissingfromeachsourcerecordisacellcontainingPrice,whichisanelement intheAccount1dimension.YouspecifythisvaluedirectlyintheDBSformulas thatsendthedatavaluestothecube.

Importing Data with Processing Worksheets

5-9

Importing Data Using Processing Worksheets

Table of Contents

Index

Converting Using IF Formulas


Thefirstcolumninprice.cmacontainsascenariocode,001foractualand002 forbudget.YoucanusetheExcelIFfunctiontoconvertthecodetothenameof thecorrespondingelementfromtheActvsbuddimension 1. ClickcellA3oftheprocessingworksheet. 2. Enterthefollowingformula: =IF(A1="001","Actual","Budget")

Mapping Using Fixed Labels


CellsD1throughO1containvaluesthatmaptothe12elementsintheMonth dimension(JanDec).Becausetheseinputcolumnsalwaysmaptothesame months,youcanentertheelementnamesdirectlyintheprocessingworksheet. Elementnamesmustexactlymatchthespellingsinthedimension.Youcan avoidmisspellingnamesbycopyingthemfromtheSubsetEditorwindow.To copyelementnamesfromtheSubsetEditorwindow: 1. OpentheServerExplorer. 2. DoubleclicktheMonthdimension. TheSubsetEditorwindowopens. 3. SelectthetwelvemonthsJanDecintheTreepane.
5-10 TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

4. ClickEditPick ElementsHorizontal. 5. Returntotheprocessingworksheet. 6. RightclickcellD3andclickPaste. TM1pastestheelementnameshorizontallystartingincellD3.

Converting Using a Lookup Cube


ColumnB,thesecondinputcolumn,suppliesthecodesthatidentifythe21 regionsinwhichthecarmodelsaresold.Forexample,R54represents Argentina.Toconvertthesecodestoelementnames,youhavetwochoices: CreateanestedIFformula.Asthelistofcodesincreases,thisbecomesa cumbersomechoice. Createatwodimensionalcubethatservesasalookupcubefortheregion names,andthenretrievethenamesusingaDBRformula. WellcreatealookupcubecalledTranslatethatcontainstwodimensions, RegCodesandRegName. Importing Unique Names UsingTurboIntegrator,youcancreateadimensionwhoseelementsareunique valuesfromaninputcolumn.Inthisexample,thesecondcolumnisprice.cma. 1. OpentheServerExplorer. 2. IntheTreepane,rightclickProcessesandclickCreate New Process.
Importing Data with Processing Worksheets 5-11

Importing Data Using Processing Worksheets

Table of Contents

Index

TheTurboIntegratordialogboxopens. 3. SpecifyanASCIIdatasourcetype. 4. ClicktheData Source NameBrowsebuttonandbrowsetotheprice.cma fileinyour\install_dir\Pdatadirectory. 5. ClicktheVariablestab. 6. SpecifyaContenttypeofIgnoreforallcolumnsexcepttheonethatsup pliesthecodesyouwanttoimport.Inthisexample,column2(identifiedby asamplevalueofR54)suppliesthecodesyouwanttoimport. 7. ClicktheMapstab. 8. SpecifyNo ActioninboththeCube ActionandData Actionsectionsofthe Cubessubtab. 9. ClicktheDimensionssubtab,anddothefollowing: TypeTranslateintheDimensionfield. SelectCreatefromtheActionlist. SelectNumericfromtheElement Typelist. 10. ClickFileSaveandsavetheprocessascreate_RegCodes_dimension. 11. ClickFileExecute tocreatetheRegCodesdimension. RegCodesisnowavailableasadimensionintheServerExplorer. Creating a RegName Dimension TocreatetheRegNamedimensionwithasinglestringelement: 1. OpentheServerExplorer.

5-12

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

2. IntheTreepane,rightclickDimensions andclickCreate New Dimension. TheDimensionEditoropens. 3. ClickEditInsert Element. TheDimension Element Insert dialogboxopens. 4. TypeNameintheElement Namefield. 5. SelectStringfromtheElement Typelist. 6. ClickAdd. TheNameelementnowopensasastringelement. 7. ClickOK. 8. ClickEdit SaveandsavethedimensionasRegName. Creating the Translate Cube TocreatetheTranslatecube: 1. RightclickCubesintheServerExplorer,andclickCreate new cube. TheCreating Cubewindowopens. 2. TypeTranslateintheCube Namefield. 3. IntheAvailable Dimensionsbox,doubleclickRegCodes. RegCodesmovestotheDimensions in new cubebox. 4. IntheAvailable Dimensionsbox,doubleclickRegName.

Importing Data with Processing Worksheets

5-13

Importing Data Using Processing Worksheets

Table of Contents

Index

RegNamemovestotheDimensions in new cubebox.

5. ClickOKtosavethetwodimensionalTranslatecube. Populating the Translate Cube UsingtheCubeViewer,youcannowenterthecorrespondingregionnames fortheregioncodes. TopopulatetheTranslatecubewithregionnames: 1. IntheTreepaneoftheServerExplorerwindow,doubleclickTranslate.

5-14

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

TheCubeVieweropens. 2. PressF9toseetheelementsineachdimensionoftheTranslatecube. 3. Entertheregionnamesthatcorrespondtotheregioncodes,usingthetable inthefigureasyourguide.

4. ClickFileClose toreturntotheServerExplorer. 5. IntheServerExplorer,clickFileSave Data All tosavethecellvalues. RegCode R54 R32 Name Argentina Belgium
Importing Data with Processing Worksheets 5-15

Importing Data Using Processing Worksheets

Table of Contents

Index

RegCode R55 R1B R56 R45 R33 R49 R44 R30 R353 R39 R352 R52 R31 R47 R351 R34 R46

Name Brazil Canada Chile Denmark France Germany Great Britain Greece Ireland Italy Luxemburg Mexico Netherlands Norway Portugal Spain Sweden

5-16

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

RegCode R1A R598 Creating the DBR Formula

Name United States Uruguay

YoucannowcreateaDBRformulathatretrievesregionnamesforeachregion codereadintotheprocessingworksheet. NOTE: YoumustuseDBRformulas,notDBRWformulas,inprocessing worksheets. TocreateaDBRformula: 1. Intheprocessingworksheet,clickcellB3. 2. ClickTM1Edit Formula. TheEdit Formulabaropens.

3. ClickDB Ref. TheSelect Cubedialogboxopens.

Importing Data with Processing Worksheets

5-17

Importing Data Using Processing Worksheets

Table of Contents

Index

4. ClickPick. AdifferentSelect Cubedialogboxopens.

5. Selectlocal:TranslateandclickOK. TM1correctlyassumesthattheelementfromtheRegCodesdimensionis incellB1,butcannotfindanelementforRegName.

5-18

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

6. ClickRegName. TheSubsetEditoropens. 7. SelecttheelementNameandclickOK. TheregnamefieldnowdisplaysPicked. 8. ClickOKintheEdit Reference to Translatedialogbox. TheEdit Formulabarnowdisplaysthecompleteformula: =DBR("local:Translate", $B$1, "Name") ThisformulareturnsthevaluefromtheTranslatecubefoundatthe intersectionoftheRegcodeselementincellB1andtheRegnameelement Name. 9. ClickOKtoinserttheformulaincellB3. CellB3nowdisplaysArgentina,whichisthecorrectregionforthecodeR54.

Importing Data with Processing Worksheets

5-19

Importing Data Using Processing Worksheets

Table of Contents

Index

Creating Database Send (DBS) Formulas


YoucancreateDBSformulasthatsendnumericdatavaluestothecube because: YouconvertedcodesthatmaptoelementsintheActvsbuddimension. YouconvertedcodesthatmaptoelementsintheRegiondimension. Youmappedmultipledatavaluestotheirappropriatemonths. InserttheDBSformulasinarowbeneaththerowscontainingthedataand mappinginstructions.Donotinserttheminthefirstrowbecausetheywillbe overwrittenasTM1readsinrecordsintotheprocessingworksheet. TocreatetheDBSformulasintheprocessingworksheetforprice.cma: 1. ClickcellD4,anemptycellthatwillstorethefirstDBSformula. 2. ClickTM1Edit Formula. TheEdit Formulabaropens. 3. ClickDB Send. TM1promptsyoutoselectthevaluetobesenttothecube.

4. DoubleclickcellD1,whichcontainstheJancellvalue. TM1promptsyoutoselectthetypeofcellreference. 5. ClickColumn Rel.


5-20 TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

TheDBSformulaalwaysreferencesrow1,butthecolumnreferencewillbe relativetothelocationoftheformula. TM1promptsyoutoindicatethetypeofdatainthecell.

6. ClickNumeric. TheSelect Cubedialogboxpromptsyoutoselectthecubetobepopulated. 7. ClickPick. AdifferentSelect Cubedialogboxopens. 8. Selectthelocal:SalesCubecubeandclickOK. TheEdit Reference to Cubedialogboxdisplayswithmostofthemapping instructionsforthevalue(cellD1)tobesenttothecube. CellA3suppliesanelementintheActvsbuddimension. CellB1suppliesanelementintheRegiondimension. CellC1suppliesanelementintheModeldimension. CellD3suppliesanelementintheMonthdimension.

Importing Data with Processing Worksheets

5-21

Importing Data Using Processing Worksheets

Table of Contents

Index

Tocompletethemapping,youmustidentifyanelementfortheAccount1 dimension.Price.cma containspricevalues,soallDBSformulasshould maptothepriceelement. 9. Clickaccount1. TheSubsetEditoropens. 10. SelectPriceandclickOK. Theaccount1fieldoftheEdit Reference to Cubedialogboxnowdisplays Picked. 11. ClickOK. TheEdit FormulabardisplaysthegeneratedDBSfunction: DBS(D$1,"local:SalesCube",$A$3,$B$3,$C$1,"Price",D$3) Forafullexplanationoftheformula,seeDBSSyntaxlaterinthischapter. 12. ClickOKtoplacethisformulaintheprocessingworksheet.

5-22

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

13. CopytheformulainD3totherangeE3:O3.

14. SavethePriceProcessingworksheet. DBS Syntax TheDBSfunctionusesthefollowingsyntax: DBS (value, server:cube, e1, e2[,...en]): value server:cube Numericvaluethatissenttothecube. Thenameofthecubethatreceivesthesentvalue.Thecubename mustbeprefixedwiththenameoftheserveronwhichthecube resides,forexamplesdata:SalesCube. Elementsthatidentifythecelllocationinthecubethatreceivesthe value.Specifytheelementargumentsindimensionorder.For example,e1mustbeanelementfromthefirstdimensionofthe cube,e2mustbeanelementfromtheseconddimensionofthe cube.

e1,...en

Importing Data with Processing Worksheets

5-23

Importing Data Using Processing Worksheets

Table of Contents

Index

Processing a Data Source into a Cube


Afteryoucreateaprocessingworksheet,youcanprocessdataintoacube. Ifyouhavebeencompletingtheexercisesinthischapter,youknowthatthe PriceProcessingworksheetprocessespricevaluesintotheSalesCubecube. Youcannotuseaprocessingworksheettowritevaluestocubecellsthatare calculatedbyrules,asyoucannoteditrulesderivedcellvalues.Youmust verifythatPricevaluesinSalesCubearenotderivedbyrules. Verifying That Cube Cells Are Not Calculated by Rules 1. OpentheServerExplorer. 2. DoubleclicktheSalesCubecube. 3. Checkifthereisaruleattachedtothecube.Ifnot,skiptothenextsection, ProcessingaDataSourceintoaCube. 4. Ifaruleisattached,opentheruleintheRulesEditor. 5. ExaminetheruletoseeifPriceiscalculatedbyrules. Notethattheruleincludesthefollowingstatementwhichcalculatesthe valueforPriceatboththenumericandconsolidatedlevels: ['Price']=N:DB('PriceCube',!actvsbud,!region,!model,!month); C:['Sales']\['Units']*1000; ThisstatementcalculatesthevalueforPriceatboththenumericand consolidatedlevels. 6. Insertapoundsign(#)atthebeginningofbothstatementstodisablethecalcula tionofPrice.

5-24

TM1 Developers Guide

Importing Data Using Processing Worksheets

Table of Contents

Index

#['Price']=N:DB('PriceCube',!actvsbud,!region,!model,!month); #C:['Sales']\['Units']*1000; 7. Savetherule. YoucannowusetheprocessingworksheettoprocessthePrice.cmasource fileintoSalesCube. Processing a Data Source into a Cube Toprocessadatasourceintoacube: 1. OpentheprocessingworksheetthatcontainstheDBSformulasandany mappinginstructions. Ifyoufollowedtheearlierexamplesinthischapter,openthe PriceProcessingprocessingworksheet. 2. Closeanyotherworksheets. 3. ClickTM1Process DataProcess. Thefollowingdialogboxopens.

4. ClickFlat File. TheSelect Input Filedialogboxopens.

Importing Data with Processing Worksheets

5-25

Importing Data Using Processing Worksheets

Table of Contents

Index

5. SelectthePrice.cmasourcefileandclickOK. TM1processesthesourcefile.Duringtheprocess,aprogressbardisplays. TM1sequentiallyreadseachrecordofthesourcefileintothefirstrowof theprocessingworksheet.Theprocessingworksheetrecalculatesaftereach recordisread,andtheDBSformulassendthevaluesinthefirstrowtothe appropriatecellofthecube. 6. BrowseSaleCube,andnotethatthePricevalueshavebeenupdatedbythe valuesinPrice.cma.

5-26

TM1 Developers Guide

Table of Contents

Index

6 Controlling Access to TM1 Objects


ThischapterdescribeshowyoucanlimitaccesstoobjectsonaTM1serverfor allTM1installations,regardlessoftheauthenticationmethod. Thischaptercoversthefollowingtopics: AssigningSecurityRightstoGroups InteractionofDifferentObjectSecurityRightsSecuringCubes SecuringCubes SecuringDimensions SecuringElements SecuringCells SecuringProcesses SecuringChores SecuringApplicationsandReferences

Controlling Access to TM1 Objects

6-1

Assigning Security Rights to Groups

Table of Contents

Index

Assigning Security Rights to Groups


Byassigningsecurityrightstogroups,youcancontrolausersaccesstoTM1 objects.Thesecurityrightsare: AdminGrouphascompleteaccesstoacube,element,dimension,orother object. LockGroupcanviewandeditacube,element,dimension,orotherobject andcanpermanentlylockobjectstopreventotherusersfromupdating them. ReadGroupcanviewacube,element,dimension,process,orchore,but cannotperformoperationsontheobject. ReserveGroupcanviewandeditacube,element,dimension,orother object,andcantemporarilyreserveobjectstopreventotherusersfrom updatingthem. WriteGroupcanviewandupdateacube,element,dimension,process,or chore. NoneGroupcannotseeacube,element,dimension,process,orchore, andcannotperformoperationsontheobject.

6-2

TM1 Developers Guide

Assigning Security Rights to Groups

Table of Contents

Index

Thefollowingtabledescribesthesecurityrightsthatyoucanassigntogroups. Privilege Admin Object Cube Description Membersofthegroupcanread,write,reserve,lock,anddelete thecube.Theycansavepubliccubeviews.Theycanalsogrant securityrightstootherusersforthisobject. Membersofthegroupcanaccess,update,reserve,lock,and deletetheelement.Theycanalsograntsecurityrightstoother usersforthisobject.

Element

Dimension Membersofthegroupcanadd,remove,andreorderelementsin thedimension,andcanreserveorlockthedimension.Theycan savepublicdimensionsubsets.Theycanalsograntsecurity rightstootherusersforthisobject. Application Membersofthegroupcanseetheapplication,usereferences withintheapplication,andcreatebothpublicandprivate referencesintheapplication. WhenagrouphasAdminprivilegetoanapplication,members ofthegroupcansetsecurityprivilegesforallreferencesandsub applicationswithintheapplicationforothergroupsbutnottheir owngroup. Reference Membersofthegroupcanusethereference,aswellasupdateor deletethereference.Theycanpublishprivatereferences,and privatizepublicreferences.

Controlling Access to TM1 Objects

6-3

Assigning Security Rights to Groups

Table of Contents

Index

Privilege Lock

Object Cube

Description MembersofthegrouphaveallprivilegesimpliedbyWrite permission,andcanalsolockthecube.Whenacubeislocked, nobodycanupdateitsdata. ThelockcanberemovedonlybyuserswhohaveAdminrights forthecube. Locksstaysinplaceaftertheremoteservershutsdown.

Element

MembersofthegrouphaveallprivilegesimpliedbyWrite permission,andcanalsolocktheelement.Whenanelementis locked,nobodycanupdatecubecellsidentifiedbytheelement ThelockcanberemovedonlybyuserswhohaveAdminrights fortheelement. Locksstaysinplaceaftertheremoteservershutsdown.

Dimension MembersofthegrouphaveallprivilegesimpliedbyWrite permission,andcanalsolockthedimension.Whenadimension islocked,nobodycaneditthedimensionstructure. ThelockcanberemovedonlybyuserswhohaveAdminrights forthedimension. Locksstaysinplaceaftertheremoteservershutsdown.

6-4

TM1 Developers Guide

Assigning Security Rights to Groups

Table of Contents

Index

Privilege Read

Object Cube Element

Description Membersofthegroupcanseethecellsinthecube,butcannot changetheirdata. Membersofthegroupcanseethecellsidentifiedbytheelement, butcannotchangetheirdata.

Dimension Membersofthegroupcanseetheelementsinadimension,but cannotadd,remove,orreordertheelements. Process MembersofthegroupcanseetheprocessintheServerExplorer, andcanmanuallyexecutetheprocess,butcannoteditthe process. NOTE:Privilegesassignedtoprocessesareignoredwhena processisexecutedfromwithinachore. Chore MembersofthegroupcanseethechoreintheServerExplorer, andcanmanuallyexecutethechore,butcannoteditthechore.

Application Membersofthegroupcanseetheapplicationanduseanypublic referenceswithintheapplicationtowhichtheyhaveatleast Readprivilege.Theycancreateprivatereferencesinthe application,andalsocreateprivatesubapplications Reference Membersofthegroupcanopenthereference,butcannotupdate thereferenceintheapplication.Membersofthegroupcan, however,performasaveasoperationtosaveanewprivate versionofthereference.

Controlling Access to TM1 Objects

6-5

Assigning Security Rights to Groups

Table of Contents

Index

Privilege Reserve

Object Cube

Description MembersofthegrouphaveallprivilegesimpliedbyWrite permission,andcanalsoreservethecubetopreventotherusers fromapplyingedits.Thereservationcanberemovedeitherby theuserwhoreservedthecubeorbyuserswhohaveAdmin rightsforthecube. Areservationexpiresautomaticallywhenthereservinguser disconnectsfromtheremoteserverorwhentheservershuts down.

Element

MembersofthegrouphaveallprivilegesimpliedbyWrite permission,andcanalsoreservetheelementtopreventother usersfromupdatingcubecellsidentifiedbytheelement.The reservationcanberemovedeitherbytheuserwhoreservedthe elementorbyuserswhohaveAdminrightsfortheelement. Areservationexpiresautomatically,whenthereservinguser disconnectsfromtheremoteserverorwhentheservershuts down.

Dimension MembersofthegrouphaveallprivilegesimpliedbyWrite permission,andcanalsoreservethedimensiontopreventother usersfromredefiningthedimension.Thereservationcanbe removedeitherbytheuserwhoreservedthedimensionorby userswhohaveAdminrightsforthedimension. Areservationexpiresautomaticallywhenthereservinguser disconnectsfromtheremoteserverorwhentheservershuts down.

6-6

TM1 Developers Guide

Assigning Security Rights to Groups

Table of Contents

Index

Privilege Write

Object Cube

Description Membersofthegroupcanreadandupdatecells.Theycansave privatecubeviews.Writeaccessdoesnotapplytocellsidentified byconsolidatedelementsortocellsderivedfromrules. Membersofthegroupcanreadandupdatethecellsidentified bytheelementandeditattributesoftheelement.

Element

Dimension Membersofthegroupcaneditelementattributes,editelement formats,andcreateprivatesubsetsforthedimension.Members canalsoeditattributesforthedimensionitself.

Controlling Access to TM1 Objects

6-7

Assigning Security Rights to Groups

Table of Contents

Index

Privilege None

Object Cube Element

Description MembersofthegroupcannotseethecubeintheServerExplorer, andthuscannotbrowsethecube. MembersofthegroupcannotseetheelementintheSubset EditororDimensionEditor,andcannotseethecellsidentifiedby theelementwhenbrowsingacube.

Dimension MembersofthegroupcannotseethedimensionintheServer Explorer,andcannotbrowseacubethatcontainsthedimension. Process MembersofthegroupcannotseetheprocessintheServer Explorer,andthuscannotexecutetheprocess. NOTE:Privilegesassignedtoprocessesareignoredwhena processisexecutedfromwithinachore. Chore MembersofthegroupcannotseethechoreintheServer Explorer,andthuscannotexecutethechore.

Application Membersofthegroupcannotseetheapplicationoritscontents intheServerExplorer. Reference MembersofthegroupcannotseethereferenceintheServer Explorer.

6-8

TM1 Developers Guide

Interaction of Different Object Security Rights

Table of Contents

Index

Interaction of Different Object Security Rights


Ifyouapplydifferentsecurityrightstotheobjectsthatidentifyacellofdata, TM1appliesthemostrestrictivesecurityrighttothecell.

Scenario 1
SupposeyouassignauserReadaccesstotheSalesCubecube,andWrite accesstotheelementsinthiscube.Inthisscenario,theReadaccessofthecube overridestheWriteaccessoftheelements,andtheusercanviewcubedatabut cannotupdatethecubedata.

Scenario 2
TheSalesPriorCubecubecontainsthefollowingdimensions: Actvsbud Region Model Account1 Month

SupposeauserhasWriteaccesstotheSalesPriorCubecube,Readaccesstoall oftheelementsintheActvsbuddimension,andWriteaccesstoallofthe elementsintheotherdimensions.TheelementsintheActvsbuddimension identifyeverycellinthecube,andthereforetheusercannotupdateanycube data.

Controlling Access to TM1 Objects

6-9

Interaction of Different Object Security Rights

Table of Contents

Index

Scenario 3
Youcanchangethesecurityrightsforbothcubesanddimensions.When groupshavesecurityrightsforacube,thoserightsapplytoalldimensionsin thecube,unlessyoufurtherrestrictaccessforspecificdimensionsorelements. Supposeyouwantseveralregionalgroupsofuserstoreadalldatainthe SalesPriorCubecube.Youalsowanteachgrouptoupdatedatainitsown region.Forexample,youwantsalespeopleintheNorth Americagroupto updateNorthAmericadata. Toimplementthissecurityscheme,youcould: Creategroupsthatreflectsalesregions. Adduserstotheappropriategroups. GranteachregionalgroupWriteaccesstotheSalesPriorCubecube. GranttheNorth AmericagroupReadaccesstothoseelementsthatdonot reflectdatafortheNorth Americaregion.

6-10

TM1 Developers Guide

Securing Cubes

Table of Contents

Index

TheTM1sampledatareflectsthissecurityscheme.Usr1isintheNorth Americagroup,whichhasWriteaccesstothedataassociatedwithcountriesin theNorth Americaregion,andReadaccesstothedataassociatedwith countriesinotherregions.

Securing Cubes
Youcanenhanceorrestrictagroupsaccesstoindividualcubes.Whenyou createanewcube,othergroupsinitiallyhaveNoneaccesstothenewcube. Youmustassignsecurityrightstothenewcubeforothergroups.

Assigning Security Rights for Cubes


Toassignsecurityrightsforacube: 1. OpentheServerExplorer. 2. SelecttheCubesiconfortheserveryouareworkingwith.

Controlling Access to TM1 Objects

6-11

Securing Cubes

Table of Contents

Index

3. ClickCubesSecurity Assignments. TheTM1 Security Assignmentsdialogboxopens.

4. Clickthecellattheintersectionofthecubenameandthegroupnamefor whichyouwanttoassignrights. Youcanassignrightsformultiplecubesortomultiplegroupsbyselectinga rangeofcells.Toselectarangeofcells,clickacelltoestablishthetopofthe range,holddownShift,andclickfurtherdownthecolumnorrowto establishthebottomoftherange. 5. Selecttheaccesslevelyouwanttoassign. Thenameoftheassignedaccessprivilegedisplaysinthecell.


6-12 TM1 Developers Guide

Securing Cubes

Table of Contents

Index

6. ClickOK.

Reserving and Releasing Cubes


Whenauserreservesacube,thatusergainsexclusiverightstoupdatethedata inthecube.Otheruserscannotupdatethecubedatauntilthecubeisreleased. Acubecanbereleasedbyeithertheuserwhoreserveditorbyauserwhohas Adminrightsforthatcube. Considerreservingacubeasawaytotemporarilyfreezeitsdata.A reservationexpiresautomaticallywhenthereservinguserdisconnectsfrom theremoteserverorwhentheservershutsdown. Toreserveacube: 1. OpentheServerExplorer. 2. Selectthecubeyouwanttoreserve. 3. ClickCubeSecurity Reserve. Toreleaseacube: 1. FollowSteps1and2forreservingacube. 2. Click CubeSecurity Release.

Locking and Unlocking a Cube


Whenauserlocksacube,onlythoseuserswhohaveAdmin rightsforthat cubecanupdateitsdataorunlockthecube.Eventheuserwholocksthecube cannotupdatethecubedataorunlockthecube,unlesshe/shehasAdmin rightsforthatcube.

Controlling Access to TM1 Objects

6-13

Securing Elements

Table of Contents

Index

Considerlockingacubeasawaytopermanentlyarchiveitsdata.Locksstays inplaceafteraservershutsdown. Tolockacube: 1. OpentheServerExplorer. 2. Selectthecubeyouwanttolock. 3. ClickCubeSecurity Lock. Tounlockacube: 1. FollowSteps1and2forlockingacube. 2. Click CubeSecurity Unlock.

Securing Elements
Youcanenhanceorrestrictagroupsaccesstoindividualelementsusingthe Element Security Assignmentsdialogbox.

Assigning Security Rights for Elements


Toassignsecurityrightsforelements 1. OpentheServerExplorer. 2. Selectthedimensionyouwanttoworkwith. 3. ClickDimensionSecurityElements Security Assignments. TheTM1 Security Assignmentsdialogboxdisplays.

6-14

TM1 Developers Guide

Securing Elements

Table of Contents

Index

4. Clickthecellattheintersectionoftheelementnameandthegroupname. Youcanassignrightsformultipleelementsortomultiplegroupsby selectingarangeofcells.Toselectarangeofcells,clickacelltoestablish thetopoftherange,holddownShift,andclickfurtherdownthecolumnor rowtoestablishthebottomoftherange. 5. Selecttheaccesslevelyouwanttoassign. Thenameoftheassignedaccessprivilegedisplaysinthecell. 6. ClickSaveorOK.

Controlling Access to TM1 Objects

6-15

Securing Elements

Table of Contents

Index

NOTE: IfyouclickSave,youcancontinuetoassignsecurityrightsto differentelements.Youcanaccesselementsinotherdimensionsby selectingadimensionintheSelect Dimensionfield. Interaction of Security Rights for Leaf and Consolidated Elements Youcansetdifferentlevelsofsecurityforaconsolidatedelementandtheleaf elementsthatbelongtotheconsolidation. Forexample,theRegion dimensioninthesampledatahasthefollowing elementhierarchy:

SupposeUsr4hasReadaccesstotheCanadaleafelementandNoneaccessto theNorth Americaconsolidatedelement.Usr4canseethedataidentifiedby theCanadaelement,butcannotseetheconsolidateddataidentifiedbythe NorthAmericaelement.

Reserving and Releasing Elements


Whenauserreservesanelement,thatusergainsexclusiverightstoupdatethe dataidentifiedbythatelement.Otheruserscannotupdatetheelementsdata, untiltheelementisreleased.Anelementcanbereleasedbyeithertheuser whoreserveditorbyauserwhohasAdminrightsforthatelement. Considerreservinganelementasawaytotemporarilyfreezethedatathatit identifies.Areservationexpiresautomaticallywhenthereservinguser disconnectsfromtheremoteserverorwhentheservershutsdown.

6-16

TM1 Developers Guide

Securing Elements

Table of Contents

Index

Toreserveanelement: 1. OpentheServerExplorer. 2. Doubleclickthedimensionyouwanttoworkwith. TheSubsetEditordisplays. 3. Selecttheelementyouwanttoreserve. 4. ClickEdit Security Reserve. Toreleaseanelement: 1. FollowSteps1through3forreservinganelement. 2. Click Edit Security Release.

Locking and Unlocking an Element


Whenauserlocksanelement,onlythoseuserswhohaveAdmin rightsforthat elementcanupdatethedatathatitidentifies.Eventheuserwholocksthe elementcannotupdateitsdata,unlesstheyhaveAdminrightsforthatelement. Considerlockinganelementasawaytopermanentlyarchivethedatathatit identifies.Locksstaysinplaceaftertheremoteservershutsdown. Tolockanelement: 1. OpentheServerExplorer. 2. Doubleclickthedimensionyouwanttoworkwith. TheSubsetEditordisplays. 3. Selecttheelementyouwanttolock. 4. ClickEdit Security Lock.
Controlling Access to TM1 Objects 6-17

Securing Dimensions

Table of Contents

Index

Tounlockanelement: 1. FollowSteps1through3forlockinganelement. 2. Click Edit Security Unlock.

Securing Dimensions
Youcanenhanceorrestrictagroupsaccesstoindividualdimensions. Bydefault,TM1securitycontrolsdimensionsonaremoteserver,asfollows: OnlymembersoftheADMINgroupcancreateanddeletedimensionsona remoteserver. GroupswithREADaccesstoadimensioncanviewdimensionandelement attributesthroughtheServerExplorer,butcannoteditattributevalues. OthergroupsinitiallyhaveNoneaccesstonewdimensions. Whennosecurityhasbeenassignedtoanelementinadimension,groups haveWrite accesstonewelementsinthatdimension. Whenyouassignsecurityrightstoatleastoneelementinadimension, groupshaveNoneaccesstonewelementsinthatdimension.Existing elementskeeptheiroriginalaccess(Write),unlessyouchangethataccess. NOTE: Ifyouchangethesecurityinadimension,andyouwanttoreset thatsecuritytothedefaultsetting(groupshaveWriteaccesstonew elementsaddedtothedimension),shutdownyourTM1serverand manuallydeletethe}ElementSecurity<dimname>.cubfile.

6-18

TM1 Developers Guide

Securing Dimensions

Table of Contents

Index

Assigning Security Rights for Dimensions


Toassignsecurityrightsforadimension: 1. OpentheServerExplorer. 2. SelecttheDimensionsiconfortheserveryouareworkingwith. 3. ClickDimensions Security Assignments. TheTM1 Security Assignmentsdialogboxdisplays.

4. Clickthecellattheintersectionofthedimensionnameandthegroup name.

Controlling Access to TM1 Objects

6-19

Securing Dimensions

Table of Contents

Index

Youcanassignrightsformultipledimensionsortomultiplegroupsby selectingarangeofcells.Toselectarangeofcells,clickacelltoestablish thetopoftherange,holddownShift,andclickfurtherdownthecolumnor rowtoestablishthebottomoftherange. 5. Selecttheaccesslevelyouwanttoassign. Thenameoftheassignedaccessprivilegedisplaysinthecell. 6. ClickOK.

Reserving and Releasing Dimensions


Whenauserreservesadimension,thatusergainsexclusiverightstoadd, remove,andreorderelementsinthatdimension.Otheruserscannotmodify thedimension,untilitisreleased.Adimensioncanbereleasedbyeitherthe userwhoreserveditorbyauserwhohasAdminrightsforthatdimension. Considerreservingadimensionbeforeyouredefineit.Areservationexpires automaticallywhenthereservinguserdisconnectsfromtheremoteserveror whentheservershutsdown. Toreserveadimension: 1. OpentheServerExplorer. 2. Selectthedimensionyouwanttoworkwith. 3. ClickDimensionSecurity Reserve. Toreleaseadimension: 1. FollowSteps1and2forreservingadimension. 2. ClickDimensionSecurity Release.

6-20

TM1 Developers Guide

Securing Processes

Table of Contents

Index

Locking and Unlocking a Dimension


Whenauserlocksadimension,onlythoseuserswhohaveAdmin rightsfor thatdimensioncanadd,remove,orreorderelementsinthatdimension.Even theuserwholocksthedimensioncannotmodifyit,unlesstheyhaveAdmin rightsforthatdimension. Considerlockingadimensionifyouwantexclusivecontrolofitsdefinition. Tolockadimension: 1. OpentheServerExplorer. 2. Selectthedimensionyouwanttoworkwith. 3. ClickDimension Security Lockfromthepopupmenu. Toreleaseadimension: 1. FollowSteps1and2forlockingadimension. 2. Rightclickthemouse,andclick Dimension Security Unlock.

Securing Processes
YoucanenhanceorrestrictagroupsaccesstoindividualTurboIntegrator processes. IMPORTANT:TM1ignoressecurityrightsassignedtoTurboIntegrator processeswhenyouexecuteaprocessfromachore.Thesecurityrightsyou assigntothechoredeterminetheabilityofagrouptoexecuteaprocessfroma chore.Forexample,ifagrouphasNoneaccesstoProcess1,butReadaccessto achorethatincludesProcess1,thegroupcanexecuteProcess1fromthe chore.
Controlling Access to TM1 Objects 6-21

Securing Processes

Table of Contents

Index

Assigning Security Rights for Processes


Toassignsecurityrightsforaprocess: 1. OpentheServerExplorer. 2. SelecttheProcessesiconfortheserveryouareworkingwith. 3. ClickProcesses Security Assignments. TheTM1 Security Assignmentsdialogboxopens.

4. Clickthecellattheintersectionoftheprocessnameandthegroupname.

6-22

TM1 Developers Guide

Securing Chores

Table of Contents

Index

Youcanassignrightsformultipleprocessesortomultiplegroupsby selectingmultiplecells. Toselectarangeofadjacentcells,clickacelltoestablishthetopofthe range,holddownShift,andclickfurtherdownthecolumnorrowto establishthebottomoftherange. Toselectmultiplenonadjacentcells,holddownCTRL,andclickeachcell. 5. Selecttheaccesslevelyouwanttoassign. Thenameoftheassignedaccessprivilegedisplaysinthecell(s). 6. ClickOK.

Securing Chores
Youcanenhanceorrestrictagroupsaccesstoindividualchores.

Assigning Security Rights for Chores


Toassignsecurityrightsforachore: 1. OpentheServerExplorer. 2. SelecttheChoresiconfortheserveryouareworkingwith. 3. ClickChores Security Assignments. TheTM1 Security Assignmentsdialogboxopens. 4. Clickthecellattheintersectionofthechorenameandthegroupname. Youcanassignrightsformultiplechoresortomultiplegroupsbyselecting multiplecells.
Controlling Access to TM1 Objects 6-23

Securing Applications and References

Table of Contents

Index

Toselectarangeofadjacentcells,clickacelltoestablishthetopofthe range,holddownShiftandclickfurtherdownthecolumnorrowto establishthebottomoftherange. Toselectmultiplenonadjacentcells,holddownCTRL,andclickeachcell. 5. Selecttheaccesslevelyouwanttoassign. Thenameoftheassignedaccessprivilegedisplaysinthecell(s). 6. ClickOK.

Securing Applications and References


Youcanassignsecurityprivilegesforpublicitems(referencesorsub applications)withinpublicTM1applicationstousergroupsontheTM1 server.YoumusthaveAdminprivilegetoanapplicationtoassignsecurityto itemswithintheapplication. Youcannotassignsecurityforprivateapplicationsandreferences;onlythe userwhocreatesaprivateitemcanaccesstheitem. Toassignsecurityprivileges: 1. IntheServerExplorer,rightclicktheapplicationthatcontainstheitemsto whichyouwanttoassignsecurity. 2. ClickSecuritySecurity Assignments. TheTM1 Security Assignmentswindowopens.TheNamelistcontainsall publicitems(TM1objects,Excelfiles,andsubapplications)thatresidein thecurrentapplication.

6-24

TM1 Developers Guide

Securing Applications and References

Table of Contents

Index

3. Selectthecellattheintersectionoftheitemforwhichyouwanttodefine securityandtheusergrouptowhichyouwanttoassignsecurity. 4. Clickoneoftheavailablesecurityprivileges. Fordetails,seeAssigningSecurityRightstoGroups,earlierinthis chapter. 5. Repeatsteps3and4foranyotheritemsforwhichyouwanttodefinesecurity.

Controlling Access to TM1 Objects

6-25

Securing Cells

Table of Contents

Index

6. ClickOK. Foranygivenusergroup,youcanassigntheREAD or ADMINprivilegetoa referencewhenyouassigntheNONEprivilegetothesourceobject associatedwiththereference.Inthisscenario,membersoftheusergroup cannotseethereferenceinanapplication. Forexample,ifyouassigntheNONEprivilegetoausergroupforacube, butassigntheREADprivilegeforareferencetothesamecube,membersof theusergroupcannotseethereferencetothecubeinanapplication.

Securing Cells
CelllevelsecurityappliestoaspecifiedcellandoverridesallotherTM1 security.Celllevelsecurityrequires: Creatingacellsecuritycontrolcubethatcontainsallofthedimensionsof thecubewhosecelllevelsecurityyouconfigure. Settingsecurityfortheappropriatecellsinthesecuritycontrolcubeby assigningsecurityrightsforTM1securitygroups. NOTE: Forelementlevelsecuritytoapplytoacell,nosecurityrightscanbe assignedtoanyTM1securitygroupforthecell.Celllevelsecurityoverrides elementlevelsecurity,socelllevelsecurityforthecellmustbeundefined. Celllevelsecurityappliestoleafelementsandgenerallydoesnotapplyto consolidations,althoughyoucanusetheNoneandReadsecurityrightsto controlthedisplayoreditingofconsolidations.

6-26

TM1 Developers Guide

Securing Cells

Table of Contents

Index

Creating a Cell Security Control Cube


Tocreateacellsecuritycontrolcube: 1. InTM1ArchitectorTM1Perspectives,rightclickonthecubeforwhichyou wanttodefinecelllevelsecurityandthenselectSecurity Create Cell Security Cube.

TM1automaticallycreatesasecuritycontrolcubeusingthenamingformat }CellSecurity_CubeName whereCubeNameisthenameofthecubethatyou selected.Forexample,ifyouselectedthecubeSalesCube,thenTM1 createsthesecuritycontrolcube}CellSecurity_SalesCube. TM1addsallthedimensionsoftheoriginalcubetothenewlycreated securitycontrolcube,plusthe}Groupsdimensionisaddedasthelast dimensioninthenewcube.


Controlling Access to TM1 Objects 6-27

Securing Cells

Table of Contents

Index

2. ClickView Display Control Objects,ifthecontrolcubesarenotalready visible. TM1displaysthenewsecuritycontrolcubealongwiththeoriginalcube.

Cell security control cube

Original cube

Toapplysecuritytocellsinthesecuritycontrolcube,byTM1securitygroup: 1. Openthesecuritycontrolcubeyoujustcreatedbydoubleclickingthesecu ritycontrolcube,forexample, .

2. ClickRecalculate todisplaythesecuritycontrolgroups,orclick Options Automatic Recalculate.

6-28

TM1 Developers Guide

Securing Cells

Table of Contents

Index

3. Expandtherowstodisplaythecellstowhichyouwanttoassignsecurity rights. NOTE: Remember,celllevelsecurityappliestoleafelements. 4. Enterthesecuritylevelinthecubecellstoassignsecurityrightsbyuser group. Fordetails,seeAssigningSecurityRightstoGroups. Forexample,themonthsinthesecondquarterfortheInspectorsgroup havesecurityassignedasNone.

5. Closethesecuritycontrolcube.
Controlling Access to TM1 Objects 6-29

Securing Cells

Table of Contents

Index

6. Savetheview. 7. Testthesecuritylevelsbylogginginasauserwhoisamemberofthe affectedsecuritygroupandviewingthecubeforwhichyouhavesetsecu rity.

Using Rules to Define Cell-Level Security


Inthesecuritycontrolcube,youcanuseTM1rulestoapplycelllevelsecurity insteadofenteringsecurityrightsintosecuritycontrolcubecells.Fordetails, seetheTM1OperationsGuide. SupposeyouwanttocreateaTM1ruletoapplycelllevelsecurityforthe }CellSecurity_SalesCubecube.Thefollowingrulepreventsanyusersinthe InspectorsgroupfromviewinganycellsidentifiedbytheelementGreece. ['Greece','Inspectors'] = S:'NONE'; NOTE: Makesurethatsecuritygroupnamesareuniqueandotherdimensions orelementsdonotusethesamename. Thebenefitsofusingrulestoimplementsecurityare: Youdonotentersecurityrightsintocellsinthesecuritycontrolcube, savingdataentrytime. BecauseTM1doesnotstorestringrulevaluesinmemorynorsavesthemto disk,yousaveonmemoryconsumptionanddiskstorage.

6-30

TM1 Developers Guide

Table of Contents

Index

7 Using the TM1 Action Button to Build Worksheet Applications


ThischapterdescribesTM1Actionbuttonfunctionalitywhichyoucanuseto runprocessesandnavigatebetweenworksheetsandwebsheets.Itcoversthe followingtopics: Overview AddinganActionButtontoaWorksheet ConfiguringanActionButtontoRunaProcess ConfiguringanActionButtontoNavigatetoAnotherWorksheet ConfiguringanActionButtontoRunaProcessandNavigatetoa Worksheet SettingtheAppearancePropertiesofanActionButton UsingAdvancedNavigationandMappingOptions ModifyinganExistingActionButton

Using the TM1 Action Button to Build Worksheet Applications

7-1

Overview

Table of Contents

Index

Overview
YoucaninsertaTM1Actionbuttonintoaworksheetsouserscanruna TurboIntegratorprocessand/ornavigatetoanotherworksheet.Userscan accessthesebuttonswhenworkingwithworksheetsinExcelwithTM1,or withWebsheetsinTM1Web. AnActionbuttoncanperformanyofthefollowingtasks: RunaTurboIntegratorprocess. Navigatetoanotherworksheet. RunaTurboIntegratorprocessandthennavigatetoanotherworksheet. ThefollowingfiguresshowexamplesofActionbuttonsinaworksheet.
Excel worksheet with TM1 Action button Run a TM1 Process

7-2

TM1 Developers Guide

Overview

Table of Contents

Index

Excel worksheet with TM1 Action button

Navigate to another worksheet

Excel worksheet with TM1 Action button Run a Process and then navigate to another worksheet

Using the TM1 Action Button to Build Worksheet Applications

7-3

Adding an Action Button to a Worksheet

Table of Contents

Index

Adding an Action Button to a Worksheet


ThegeneralstepsforinsertinganActionbuttonintoaworksheetinclude: Procedure1InsertinganActionButtonintoaWorksheet Procedure2ConfiguringanActionButton Procedure3SettingtheAppearancePropertiesfortheActionButton Procedure4FinishingtheActionButtonandReturningtoYour Worksheet

Procedure 1 Inserting an Action Button into a Worksheet


YoucaninsertanActionbuttonintothecurrentlyselectedemptycell,fromthe TM1menuortheTM1StandardtoolbarinExcel.

TM1 toolbar in Excel

TM1 menu in Excel

7-4

TM1 Developers Guide

Adding an Action Button to a Worksheet

Table of Contents

Index

ToinsertanActionbuttonintoaworksheet: 1. InExcel,selectanemptycellwhereyouwanttoinserttheActionbutton. NOTE: AnActionbuttoncannotbeinsertedintoacellthatcontainsdata. 2. SelectInsert Action ButtonfromTM1menuorclicktheInsert Action Button ontheTM1toolbar. TheActionbuttonisinsertedintothecurrentlyselectedcelllocationin yourworksheetandtheAction Button Propertiesdialogopens:

TM1 Action button

TM1 Action Button Properties

Using the TM1 Action Button to Build Worksheet Applications

7-5

Adding an Action Button to a Worksheet

Table of Contents

Index

3. ClicktheTM1 Serverlisttoselecttheserverwherethesourceandtarget worksheetsarelocated.

Ifyouarenotcurrentlyconnectedtotheserverthatyouwanttouse,click Connecttologin.

Procedure 2 Configuring an Action Button


Youcanselectoneofthefollowingactionsforthebuttontoperform:

SeethefollowingsectionstoconfiguretheactionforanActionbutton: ConfiguringanActionButtontoRunaProcess ConfiguringanActionButtontoNavigatetoAnotherWorksheet ConfiguringanActionButtontoRunaProcessandNavigatetoa Worksheet

7-6

TM1 Developers Guide

Adding an Action Button to a Worksheet

Table of Contents

Index

Procedure 3 Setting the Appearance Properties for the Action Button


TheAppearancetabletsyousetthecaption,backgroundpicture,andother visualfeaturesfortheActionbutton. Fordetails,seethesectionSettingtheAppearancePropertiesofanAction Button.

Procedure 4 Finishing the Action Button and Returning to Your Worksheet


IntheAction Button Propertiesdialog,clickOKtofinishthebuttonandreturn toyourworksheet. TheActionbuttonisupdatedinyourworksheetandcannowbeused.

Using the TM1 Action Button to Build Worksheet Applications

7-7

Configuring an Action Button to Run a Process

Table of Contents

Index

Configuring an Action Button to Run a Process


TheoverallstepsforconfiguringanActionbuttonthatrunsaTurboIntegrator processinclude: Procedure1InsertinganActionButtonintoaWorksheet Procedure2SelectingtheActiontoPerform Procedure3SelectingtheProcesstoRun Procedure4ConfiguringOptionsfortheActionButton Procedure5SettingtheAppearancePropertiesfortheActionButton Procedure6FinishingtheButtonandReturningtoYourWorksheet

Procedure 1 Inserting an Action Button into a Worksheet


FollowthestepsinAddinganActionButtontoaWorksheettoinsertan Actionbuttonintoaworksheet.

Procedure 2 Selecting the Action to Perform


ClicktheRun a Turbo Integrator Processoption.

TheProcesstabdisplays.
7-8 TM1 Developers Guide

Configuring an Action Button to Run a Process

Table of Contents

Index

Procedure 3 Selecting the Process to Run


Selecttheprocessyouwanttoruninoneofthefollowingways: SelecttheprocessnamefromthelistofprocessesonthecurrentTM1 server. Retrievetheprocessnameandparametersfromthecurrentworksheet. Selecting the Process Name from the List of Processes on the Current TM1 Server. ClicktheProcesslisttoselectaprocessbynamefromtheTM1servertowhich youarecurrentlyconnected.

Using the TM1 Action Button to Build Worksheet Applications

7-9

Configuring an Action Button to Run a Process

Table of Contents

Index

Afterselectingaprocess,theParametersgridopensanddisplaysthe parametersfortheselectedprocess.

Youcandirectlyentervaluesintothegridforeachparameter:

7-10

TM1 Developers Guide

Configuring an Action Button to Run a Process

Table of Contents

Index

Or,youcanclicktheExcel Reference buttontocreateareferencethat dynamicallyretrievesaparametervaluefromthecurrentworksheet. First,selecttheValuecellandthenclick .UsetheSelect a Cell dialogto selectthecellinyourworksheetwheretheparametervaluecanbefound.

Cell references for parameter values

Retrieving the Process Name and Parameters from the Current Worksheet. TouseanExcelreferencetoretrieveboththeprocessnameandparameters fromthecurrentworksheet,selectGet Process info from Worksheetinthe Processlist.

Using the TM1 Action Button to Build Worksheet Applications

7-11

Configuring an Action Button to Run a Process

Table of Contents

Index

Youcanreferenceasinglecellfortheprocessname,andarangeofcellsforthe parametervalues. NOTE: Iftheparametersfortheprocesschange,youmustalsoupdatethe settingsfortheActionbuttonsothebuttoncancorrectlyruntheprocess.

TocreateanExcelreferencethatretrievestheprocessname: 1. ClicktheExcel Reference buttonnexttotheProcess Nameboxto selectareferencefromthecurrentworksheet. TheSelect a Celldialogopens.

2. Clickthecellinthecurrentworksheetwheretheprocessnameislocated. ThelocationisautomaticallyenteredintotheSelect a Celldialog.

7-12

TM1 Developers Guide

Configuring an Action Button to Run a Process

Table of Contents

Index

3. ClickOKtoclosetheSelect a Celldialog. ThecellreferencedisplaysintheProcess Namebox.

IfyouwanttoreferenceanamedrangeinExceltoretrievetheprocess name,usethefollowingformat: =NameOfRange Thenamedrangemustpointtoonlyasinglecellthatcontainstextforthe processname. TocreateanExcelreferencethatretrievestheprocessparameters: 1. ClicktheExcel Reference buttonnexttotheParametersboxtoselect areferencefromthecurrentworksheet. TheSelect a Range dialogopens.

Using the TM1 Action Button to Build Worksheet Applications

7-13

Configuring an Action Button to Run a Process

Table of Contents

Index

2. Selecttherangeofcellsinyourworksheetwheretheparametervaluesare located. NOTE: Parametersmustbeenteredinthesameorderandtype(string, numeric)asintheprocess.

3. ClickOKtoclosetheSelect a Rangedialog. ThecellreferencedisplaysintheParametersbox.

7-14

TM1 Developers Guide

Configuring an Action Button to Run a Process

Table of Contents

Index

IfyouwanttoreferenceanamedrangeinExcel,usethefollowingformat: =NameOfRange Thenamedrangemustpointtoasinglecellorarangeofcells,depending ontheparametersthattheprocessisexpecting.


Reference to a named range called ProcessParams in Excel

Using the TM1 Action Button to Build Worksheet Applications

7-15

Configuring an Action Button to Run a Process

Table of Contents

Index

Procedure 4 Configuring Options for the Action Button


UsetheProcess OptionsdialogtocontrolthebehavioroftheActionbutton beforeandaftertheprocessisrun. ClickOptionstodisplaytheProcess Optionsdialog.

Selecttheoptionsyouwantandeditthetextfortheconfirmationandstatus messages.Theavailableoptionsinclude: Automatically Recalculate SheetRecalculatestheworksheetafterthe processhasrun. Show Success MessageDisplaysamessageaftertheprocesshas successfullyrun. Show Failure MessageDisplaysamessageiftheprocessdoesnotrun successfully.

7-16

TM1 Developers Guide

Configuring an Action Button to Run a Process

Table of Contents

Index

Show Confirmation DialogDisplaysaconfirmationmessagebeforethe processisrun.TheusercanclickYesorNo.

TheShow Success Message,Show Failure Message,andShow Confirmation DialogoptionscanalsouseanExcelreferencetoretrievethemessagetext. Forexample,toretrievethemessagetextfortheShow Confirmation Dialog optionfromthecontentsofcellA1,enter=A1intotheShow Confirmation Dialog textbox.

Excel reference

Resulting message when process is run

Using the TM1 Action Button to Build Worksheet Applications

7-17

Configuring an Action Button to Run a Process

Table of Contents

Index

IfyouwanttoreferenceanamedrangeinExcel,usethefollowingformat: =NameOfRange Thenamedrangemustpointtoonlyasinglecellthatcontainstextforthe message.

Procedure 5 Setting the Appearance Properties for the Action Button


Youcannowsettheappearancepropertiesofthebuttonasdescribedin SettingtheAppearancePropertiesofanActionButton.

Procedure 6 Finishing the Button and Returning to Your Worksheet


IntheAction Button Propertiesdialog,clickOKtofinishthebuttonandreturn toyourworksheet. TheActionbuttonisupdatedinyourworksheetandcannowbeused.

7-18

TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Configuring an Action Button to Navigate to Another Worksheet


YoucanuseanActionbuttontonavigatetoanotherworksheetinthesame workbook,ortoaworksheetinanotherworkbook. ThegeneralstepsforconfiguringanActionbuttontonavigatetoanother worksheetinclude: Procedure1InsertinganActionButtonintoaWorksheet Procedure2SelectingtheActiontoPerform Procedure3SelectingaTargetWorksheet Procedure4SettingtheMatchTitleElementsOption Procedure5SettingtheReplaceCurrentWorkbookOption Procedure6ConfiguringAdvancedMappingOptions Procedure7SettingtheAppearancePropertiesfortheActionButton PProcedure8FinishingtheButtonandReturningtoYourWorksheet

Procedure 1 Inserting an Action Button into a Worksheet


FollowthestepsinAddinganActionButtontoaWorksheettoinsertan Actionbuttonintoaworksheet.

Procedure 2 Selecting the Action to Perform


ClicktheGo to another WorksheetoptiontoaddanActionbuttonthat navigatestoanotherworksheet:

Using the TM1 Action Button to Build Worksheet Applications

7-19

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

TheWorksheettabisdisplayed.

Procedure 3 Selecting a Target Worksheet


Useoneofthefollowingmethodstoselectaworksheet: SelectaworksheetfromtheTM1Applicationstree. Selectaworksheetfromanetworkfile.

7-20

TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

UseanExcelreferencetoretrievetheworksheetnamefromacellornamed rangeinthecurrentworksheet. Directlytypeoneoftheabove. Adescriptionofeachprocedurefollows. Selecting a Worksheet from the TM1 Applications Tree ToselectaworksheetfromtheTM1Applicationstree: 1. ClicktheTM1 ApplicationsoptionandthenclickBrowse.

TheSelect a Worksheet dialogopens.

Using the TM1 Action Button to Build Worksheet Applications

7-21

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

2. SelectaworksheetandthenclickOKtoreturntotheAction Button Properties dialog. TheApplicationfolderpathandnameoftheworksheetyouselected displaysintheWorkbookbox.

Manually Entering the Path for a Worksheet in the TM1 Applications Tree TomanuallyentertheApplicationfolderpathtotheworkbook,typethepath intotheWorkbookbox.StartwiththefirstfoldernameunderApplicationsand useabackslash\charactertoseparatefolders.Donotincludethe Applicationsfolder,itself,inthepath.Forexample: Planning Sample\Bottom Up Input\Budget Input Tospecifyaworksheetandcelllocationtowhichyouwanttonavigate,type theworksheetnameandlocationintheSheetboxusingthefollowingformat:
7-22 TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

=SheetName!ColumnNameRowName NOTE: Ifyouenteraworksheetnamethatincludesspaces,youmustenclose thenameinsinglequotesasshowninthefollowingexample. ='My First Sheet'!$A$2 Selecting a Worksheet from a Network File Toselectafilefromalocalornetworkfolder: 1. ClicktheFilesoptionandthenclickBrowse.

TheOpendialogopenswhereyoucanbrowselocalandnetworkfolders.

2. SelectaworksheetfilefromtheOpendialogandthenclickOpen. TheselectedfileandpatharedisplayedintheWorkbookbox.

Using the TM1 Action Button to Build Worksheet Applications

7-23

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Manually Entering a Worksheet Name for a Network File Tomanuallyenterthefilenameandpathtotheworkbook,typethevaluein theWorkbookboxinthefollowingformat: \\ComputerName\Folder\WorkbookName Forexample:

Tospecifytheworksheettowhichyouwanttonavigate,typetheworksheet nameintheSheetbox.

7-24

TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Using an Excel Reference to Retrieve the Worksheet Name TouseanExcelreferencethatcontainsthenameoftheworkbookor worksheet: 1. ClicktheExcel Reference button.

Using the TM1 Action Button to Build Worksheet Applications

7-25

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

TheSelect a Celldialogopens.

2. SelectthecellwheretheworkbooknamecanbefoundandclickOK. RepeattheabovestepstoselecttheSheetname.

7-26

TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Manually Entering an Excel Reference TomanuallyenteranExcelreferencewherethenameoftheworkbookor worksheetcanbefound,typethereferenceintheWorkbookandSheetboxes. AnExcelreferencecanpointtoacelloranamedrange,andstartswiththe = symbol. Toreferenceasinglecell,usethefollowingformat: =ColumnNameRowName Toincludeasheetname,addthenameofthesheetfollowedbyanexclamation markasfollows: =SheetName!ColumnNameRowName NOTE: Ifyouenteraworksheetnamethatincludesspaces,youmustenclose thenameinsinglequotesasshowninthefollowingexample. ='My First Sheet'!$A$2 Toreferenceanamedrangethatevaluatestoasinglecell,usethefollowing format: =NamedRange

Procedure 4 Setting the Match Title Elements Option


TheMatch Title Elementsoptionautomaticallymatchesandsetsthetitle dimensionsinthetargetworksheetwhenauserclickstheActionbuttonto navigatetothetargetworksheet.

Using the TM1 Action Button to Build Worksheet Applications

7-27

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

WhentheMatch Title Elementsoptionisenabled,thedimensionsinthesource andtargetworksheetsareautomaticallymatchedbyTM1SUBNMandDBRW functionsasfollows: TM1automaticallymatchestitledimensionsinthesourceandtarget worksheetsbasedontheSUBNMformulainacell. Forexample,whenthesamedimensionexistsinboththesourceandtarget worksheets,thecurrentlyselectedelementforthedimensioninthesource issetforthesamedimensioninthetarget.
Matching title dimensions

Current element

TM1automaticallymatchestherowandcolumndimensionofthecurrently selectedDBRWcellinthesourceworksheettothematchingtitle dimensionsinthetargetworksheet,iftheyexist. Forexample,thefollowingfigureshowsOperating ExpenseandFeb-2004 astherowandcolumndimensionelementsforthecurrentlyselected elementinthesourceworksheet.Whennavigating,therowandcolumn

7-28

TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

dimensionelementsarethenmatchedwiththetitledimensionsinthe targetworksheet.
Row and column dimensions Source worksheet: Matching title dimensions Target worksheet:

Currently selected DBRW cell

Using the TM1 Action Button to Build Worksheet Applications

7-29

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Example of SUBNM Title Dimension Matching Anexampleofmatchingtitledimensionsbetweenthesourceandtarget worksheetsisshowninthefollowingfigure.

Navigation

Title dimensions are matched based on SUBNM cells

7-30

TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Example of DBRW Row and Column Dimension Mapping TherowandcolumndimensionsofthecurrentlyselectedDBRWcellinthe sourceworksheetarematchedtothetitledimensionsinthetargetworksheet asfollows:

Navigation

Row and column dimensions of the selected DBRW cell are matched to title dimensions

Currently selected DBRW cell

Using the TM1 Action Button to Build Worksheet Applications

7-31

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Procedure 5 Setting the Replace Current Workbook Option


TheReplace Current Workbookoptiondeterminesifthetargetworksheetis openedinanewwindoworinthesamewindow,replacingthesource worksheet.

Forexample: IfReplace Current Workbookisnotselected(default)andyouareworking inTM1Web,thenthesourceworksheetremainsopenandthetarget worksheetopensinanewtab. IfReplace Current WorkbookisselectedandyouareworkinginTM1Web, thenthesourceworksheetwillbereplacedbythetargetworksheetonthe sametabandanewtabwillnotopen. NOTE: IfyouenabletheReplace Current Workbookoption,remembertosave yourworkbookbeforetestingthenewbutton.Youcouldloseyourchangesif youclickthebuttonandcausethecurrentworkbooktoclose.

Procedure 6 Configuring Advanced Mapping Options


ToconfigureadvancedmappingusingtheAdvanced Options dialog,see UsingAdvancedNavigationandMappingOptions.

Procedure 7 Setting the Appearance Properties for the Action Button


YoucannowsettheAppearancepropertiesofthebuttonasdescribedin SettingtheAppearancePropertiesofanActionButton.

7-32

TM1 Developers Guide

Configuring an Action Button to Navigate to Another Worksheet

Table of Contents

Index

Procedure 8 Finishing the Button and Returning to Your Worksheet


IntheAction Button Propertiesdialog,clickOKtofinishthebuttonandreturn toyourworksheet. TheActionbuttonisupdatedinyourworksheetandcannowbeused.

Using the TM1 Action Button to Build Worksheet Applications

7-33

Configuring an Action Button to Run a Process and Navigate to a Worksheet

Table of Contents

Index

Configuring an Action Button to Run a Process and Navigate to a Worksheet


TheoverallstepsforconfiguringanActionthatrunsaTM1TurboIntegrator processandthennavigatestoanotherworksheetinclude: Procedure1InsertinganActionButtonintoaWorksheet Procedure2ConfiguringtheActionButtontoRunaProcess Procedure3ConfiguringtheActionButtontoNavigatetoaWorksheet Procedure4SettingtheAppearancePropertiesfortheActionButton Procedure5FinishingtheButtonandReturningtoYourWorksheett

Procedure 1 Inserting an Action Button into a Worksheet


FollowthestepsinAddinganActionButtontoaWorksheettoinsertan Actionbuttonintoaworksheet.

Procedure 2 Configuring the Action Button to Run a Process


FollowthestepsforconfiguringanActionbuttonthatrunsaprocess,as describedinConfiguringanActionButtontoRunaProcess.

Procedure 3 Configuring the Action Button to Navigate to a Worksheet


FollowthestepsforconfiguringanActionbuttonthatnavigatestoanew worksheet,asdescribedinConfiguringanActionButtontoNavigateto AnotherWorksheet.

7-34

TM1 Developers Guide

Configuring an Action Button to Run a Process and Navigate to a Worksheet

Table of Contents

Index

Procedure 4 Setting the Appearance Properties for the Action Button


ClicktheAppearancetabtoadjusttheappearancepropertiesofthebutton.

Procedure 5 Finishing the Button and Returning to Your Worksheet


ClickOKtofinishthebuttonandreturntoyourworksheet. TheActionbuttonisupdatedinyourworksheetandcannowbeused.

Using the TM1 Action Button to Build Worksheet Applications

7-35

Setting the Appearance Properties of an Action Button

Table of Contents

Index

Setting the Appearance Properties of an Action Button


UsetheAppearancetabtosetthecaption,backgroundpicture,andother visualfeaturesfortheActionbutton. ClicktheAppearancetabtoadjusttheappearancepropertiesofthebutton.

TheAppearancetabhasthefollowingoptions: CaptionSetsthecaptiontextthatdisplaysonthebutton. FontDisplaysastandardfontdialogwhereyoucanchangethefonttype andsizeofthebuttontext. Show Background ImageAllowsyoutoselectanimagefile(bmp,gif,or jpgformat)thatwillbestretchedtofitthebutton.

7-36

TM1 Developers Guide

Setting the Appearance Properties of an Action Button

Table of Contents

Index

Display as HyperlinkWhenenabled,thisoptiondisplaysthebuttonasa hyperlinkwithblue,underlinedtextinsteadofastandardbutton.

PreviewThisareashowsanexampleofthebutton. ColorsAllowsyoutosettextandbackgroundcolorsofthebutton.Click thecolorsampletodisplayaColordialogwhereyoucanselectastandard colorordefineacustomcolor.

Using the TM1 Action Button to Build Worksheet Applications

7-37

Using Advanced Navigation and Mapping Options

Table of Contents

Index

Using Advanced Navigation and Mapping Options


UsetheAdvanced Optionsdialogtomanuallymapfieldsbetweenthesource worksheetandthetargetworksheetwheninsertinganActionbuttonthat navigatesfromoneworksheettoanother.Thistoolhelpsyoumapdimensions, cells,andvaluesfromthesourceworksheettothetargetworksheet. NOTE: Advancedmappingisappliedafteranyautomaticmappinghasbeen performedbytheMatch Title Elementsoption. ToopentheAdvanced Optionsdialog,clickAdvanced Optionsonthe Worksheettab.

7-38

TM1 Developers Guide

Using Advanced Navigation and Mapping Options

Table of Contents

Index

TheAdvanced Optionsdialogincludesagridwhereyoudefinethemapping offieldsbetweenthesourceandtargetworksheets.UsetheAddandDelete buttonstomanagetherowsinthegrid.

Configuring Source to Target Mapping


Youmapthesourceworksheettothetargetworksheetbysettingvaluesforthe Source Type,Source Object,Target Type,andTarget Objectfieldsinthe Advanced Mapping grid. Youcanusethegridtospecifyhowelementsinthesourceandtarget worksheetsgetmatchedupwhenthetargetsheetopens.Eachrowinthegrid definesonemappingconfiguration.
Source fields Target fields

Each row defines one mapping configuration

Theoverallstepstoconfigureadvancedmappinginclude: Procedure1SetSourceType Procedure2SetSourceObject


Using the TM1 Action Button to Build Worksheet Applications 7-39

Using Advanced Navigation and Mapping Options

Table of Contents

Index

Procedure3SetTargetType Procedure4SetTargetObject Procedure5SetSubsetandAlias Thefollowingsectionsdescribethesestepsindetail.Repeatthesestepsto createmoremappingconfigurations. Procedure 1 Setting Source Type TheSource Typefieldrepresentsthetypeofobjectforthevalueyouwantto map. SelecttheSource Typeasfollows: SUBNMIndicatesthatyouaremappingfromacellthatcontainsatitle dimensioninthesourceworksheet. Selected DBRWIndicatesthatyouaremappingfromacellthatcontains aDBRWformulainthesourceworksheet. ValueIndicatesthatyouwillenterastringornumericvaluethatwillbe senttothetarget. Procedure 2 Setting Source Object TheSource Objectfieldtakesavalue,orExcelexpressionthatevaluatestoa value,dependingonwhatisselectedintheSource Typefield. EntertheSource Objectasfollows: IfSource TypeissettoSUBNM,thenyouneedtospecifythenameofthe titledimensionthatexistsinthesourceworksheet. IfSource TypeissettoSelected DBRW,thenyouneedtospecifythename ofaroworcolumntitledimensionthatexistsinthesourceworksheet.
7-40 TM1 Developers Guide

Using Advanced Navigation and Mapping Options

Table of Contents

Index

IfSource TypeissettoValue,thenyouneedtoenterastringornumeric valuethatwillbesenttothetargetworksheet. NOTE: Youcanalsoretrievethesevaluesfromthesourceworksheetbyusing the=symboltocreateanExcelreference. Procedure 3 Setting Target Type TheTarget Typeisthetypeofcellinthetargetworksheetwherethevaluefrom theSource Objectfieldwillbeinserted. SelecttheTarget Typeasfollows: SUBNMIndicatesthetargetisatitledimensioninthetargetworksheet. Named RangeIndicatesthetargetisanamedrangeinthetarget worksheet. RangeIndicatesthetargetlocationisacellinthetargetworksheet. NOTE: IfyousetTarget TypetoeitheraNamed RangeorRange, anypre existingdataorformulainthetargetcellwillbeoverwrittenwhenyouuse theActionbuttontonavigate.IfthetargetcellcontainsaTM1DBRW function,thenthefunctionwillbelostandthecellwillnotbeableto connectto,readfrom,orwritetotheTM1server. Procedure 4 Setting Target Object TheTarget Objectisthelocationinthetargetworksheetwherethevaluefrom theSource Object willbeinserted.Thislocationcanbeeitherthenameofa titledimension,aspecificcelllocation,oranamedrangeinthetarget worksheet,dependingonwhatyouselectedforTarget Type. EntertheTarget Objectasfollows:

Using the TM1 Action Button to Build Worksheet Applications

7-41

Using Advanced Navigation and Mapping Options

Table of Contents

Index

IfTarget TypeissettoSUBNM,thenyouneedtospecifythenameofthe titledimensioninthetargetworksheet. IfTarget TypeissettoNamed Range,thenyouneedtospecifythenameof therangeinthetargetworksheet. IfTarget TypeissettoRange,thenyouneedtospecifythecelllocationin thetargetworksheet. YoucanenteravaluefortheTarget Objectinoneoftwoways: directlyenteravalueforthelocationoftheTarget Object inthetarget worksheet,or useanExcelreferencetoretrievethelocationfortheTarget Object froma cellinthesourceworksheet. Directly Entering a Location for the Target Object Toidentifyalocationinthetargetworksheet,enterthevaluedirectlyintothe Target Objectfieldwithoutthe=symbol. Forexample,enterC3toidentifythelocationoftheTarget Object as thecell C3ofthetargetworksheet.

Target worksheet

7-42

TM1 Developers Guide

Using Advanced Navigation and Mapping Options

Table of Contents

Index

Using an Excel Reference to Retrieve the Location for the Target Object ToreferenceacellinthesourceworksheetthatcontainsalocationfortheTarget Object,includethe=symbol. Forexample,thecellA1inthesourceworksheetmightcontainthevalueC3to representthecelllocationfortheTarget Objectinthetargetworksheet.

Source worksheet

Target worksheet

Procedure 5 Setting Subset and Alias EnteravaluefortheSubsetandAliasfieldswhenTarget Typeissetto SUBNM. Repeatalloftheabovestepstocreatemoremappingconfigurations.

Using the TM1 Action Button to Build Worksheet Applications

7-43

Using Advanced Navigation and Mapping Options

Table of Contents

Index

Example of Mapping a Source Value to a Target Cell


Thisexampleshowsthemappingofahardcodedvaluetoonecellinthe targetworksheet.

Source worksheet

Target worksheet

Navigation

7-44

TM1 Developers Guide

Using Advanced Navigation and Mapping Options

Table of Contents

Index

Example of Mapping a Source SUBNM to a Target Cell


YoucanspecifyaSUBNMtitledimensioninthesourceworksheettomaptoa correspondingSUBNM,namedrange,orrange(cell)inthetargetworksheet. Forexample,thefollowingfigureshowstheS Series 2.0 L Wagontitle elementbeinginsertedinthecellB2inthetargetworksheetasaformatted caption.

Source worksheet

Target worksheet

Navigation

Using the TM1 Action Button to Build Worksheet Applications

7-45

Using Advanced Navigation and Mapping Options

Table of Contents

Index

Example of Mapping the Selected DBRW to the Target Worksheet


Inthisexample,therowandcolumntitledimensionsfortheselectedDBRW cellaredisplayedinthetargetworksheet.

Source worksheet

Target worksheet

Navigation

7-46

TM1 Developers Guide

Modifying an Existing Action Button

Table of Contents

Index

Modifying an Existing Action Button


AfteranActionbuttonisinserted,youcanedititsproperties,size,and locationasdescribedinthefollowingsections.

Editing the Caption, Background Image, and Properties of an Existing Action Button
ToeditthepropertiesofanActionbutton,rightclickonthebuttonandselect anoptionfromthemenu.

Therightclickmenuprovidesthefollowingmainoptions:
Using the TM1 Action Button to Build Worksheet Applications 7-47

Modifying an Existing Action Button

Table of Contents

Index

CaptionOpenstheButton Captiondialogtoeditthebuttonscaption. Background ImageOpensafileselectiondialogsoyoucanbrowseand selectanimagetouseasthebackgroundofthebutton. PropertiesOpenstheAction Button Propertiesdialogwhereyou configuretheactionstotakeplacewhenauserclicksthebutton.

Moving and Resizing an Existing Action Button


AfteryouclickawayfromanewActionbutton,thebuttonbecomesenabled andisnolongerindesignmode.Ifyouwanttoresizeormovethebutton,you mustturnondesignmodeinExcelasfollows: TomoveorresizeanActionbutton: 1. InExcel,clickViewToolbarsControl Toolbox. TheExcelControl Toolboxopens.

2. ClicktheDesign Mode

button.

ThetextlabelsdisappearontheActionbuttonsinthecurrentworksheet. 3. ClickontheActionbuttonthatyouwanttomoveorresize. Handlesappearonthebuttonindicatingitcanberesizedandmoved. Toresizethebutton,clickanddraganyofthehandles. Tomovethebutton,clickanddragthebuttontoanewlocation.


7-48 TM1 Developers Guide

Modifying an Existing Action Button

Table of Contents

Index

Action button can be resized and moved

Design mode enabled in Excel

4. ExitdesignmodebyclickingontheDesign Mode

button.

ThehandlesontheActionbuttondisappearandthebuttonreturnsto activemode.
Action button is active Design mode disabled in Excel

Using the TM1 Action Button to Build Worksheet Applications

7-49

Modifying an Existing Action Button

Table of Contents

Index

7-50

TM1 Developers Guide

Table of Contents

Index

8 Developing Custom Web Applications with the URL API


Thischapterdiscussesthefollowingtopics: URLAPIOverview BasicURLAPISyntax BasicURLAPIConcepts AccessingtheWebsheetObject AccessingtheCubeviewerObject SettingEventCallbackFunctionsforCubeviewerandWebsheetObjects AccessingtheNavigationTreeObject

Developing Custom Web Applications with the URL API

8-1

URL API Overview

Table of Contents

Index

URL API Overview


InadditiontousingTM1Webasastandaloneapplication,webprogrammers andTM1applicationdeveloperscanusetheTM1WebURLapplication programminginterface(API)toincorporateTM1Webobjectsintocustomweb applications,portals,anddashboards.

My TM1 Dashboard

ThisfunctionalityisprovidedbycreatingURLquerystringsthatdisplayand accessthefollowingTM1Webobjects: Websheet Cubeviewer NavigationTree


8-2 TM1 Developers Guide

Basic URL API Syntax

Table of Contents

Index

Basic URL API Syntax


TheURLAPIisprovidedthroughtheTM1WebMain.aspxhandlerfile.You createaURLquerystringusingTM1specificparametersandthenpassthe completedURLtotheTM1Webserver.TheURLAPIcanopenanddisplay TM1Websheet,Cubeviewer,andNavigationTreeobjects.Youcanalsousethe URLAPItoapplyvariousactionsontheseobjects.
Web page URL

http://mywebserver/TM1Web/TM1WebMain.aspx?action=OpenObject&type=Cubeviewer&value=SalesCube
Protocol Domain name Path Query string

Base URL
UsethefollowingbaseURLtobeginbuildingaURLAPIcall: http://<HostName>/TM1Web/TM1WebMain.aspx whereHostNamecanbethedomainnameorIPaddressofthewebsiteor computerhostingtheTM1Webserver. Forexample,iftheTM1Webserverisrunningonaremotecomputercalled mywebserver,usethenameofthatsystemfortheHostNameasfollows: http://mywebserver/TM1Web/TM1WebMain.aspx

Developing Custom Web Applications with the URL API

8-3

Basic URL API Syntax

Table of Contents

Index

Parameters
Parametersdefinewhichobjectyouwanttoaccessandwhatyouwanttodo withthatobject.YoubuildacompleteURLstringbyaddingparameterstothe baseURLasfollows.
http://mywebserver/TM1Web/TM1WebMain.aspx?parameter1=<value>&parameter2=<value>&parameter3=<value>
Base URL Parameters

Forexample,thefollowingURLopenstheTM1Cubeviewerobjectand displaystheSalesCubeview. http://mywebserver/TM1Web/ TM1WebMain.aspx?action=OpenObject&type=Cubeviewer&value=SalesCube

ObjectId Parameter
EachURLaddressthatopensanTM1WebobjectreturnsaURLwiththe ObjectIdparameterandvalueembeddedinitasauniquereferencetothe specificobjectthatyouopened.YoucanusetheObjectIdparameterinanew URLtoperformadditionalactionsonthesame object.
http://mywebserver/TM1Web/TM1WebSheet.aspx?ObjectId=id_value
Object ID

FordetailsonusingtheObjectIdparameter,seeOperatingonanExisting TM1WebObjectwiththeObjectIdParameter.

8-4

TM1 Developers Guide

Basic URL API Syntax

Table of Contents

Index

Using URL Escape Characters


WerecommendusingURLescapecharacterswhencreatingURLsthatcontain spacesorotherspecialcharacters. SomecommonexamplesofURLescapecharactersinclude: Character Space $ % & Escape Character %20 %24 %25 %26

Forexample,whenincludingaviewnameinyourURLthatcontainsspaces, suchasMy Sales View,usethefollowingformat:


?action=OpenObject&type=Cubeviewer&value=SalesCube$$My%20Sales%20View

Escape characters

Developing Custom Web Applications with the URL API

8-5

Basic URL API Concepts

Table of Contents

Index

Basic URL API Concepts


ThissectiondescribesthebasicconceptsofusingtheURLAPI: SettingAdminHostNameandTM1WebServerNameParameters ManagingUserLoginandLogout UsingtheActionParameter UsingtheOpenObjectParametertoOpenanTM1WebObject OperatingonanExistingTM1WebObjectwiththeObjectIdParameter

Setting Admin Host Name and TM1 Web Server Name Parameters
YoucansettheAdminHostandTM1servernameintheURLquerystringby usingtheAdminHostandTM1Serverparametersasfollows: &AdminHost=<value>&TM1Server=<value> ThesevaluesareoptionalintheURL,butmustbeprovidedtoTM1ineither theweb.configfileortheURLstring.Ifthesevaluesarenotfound,thenTM1 willprompttheuserforthisinformationwithaminipopupwindow. TM1looksforAdminHostandTM1servernameinthefollowingorder: IftheAdminHostandTM1ServerparametersaresetintheURL,theywill overridethevaluesintheweb.configfile. IfthesevaluesareabsentintheURLquerystring,TM1Webwilltryto determineiftheyaresetintheweb.configfile. IftheAdminHostandTM1ServerparametersareabsentfromtheURL stringandalsonotintheweb.configfile,thentheentryfieldsforAdmin HostandTM1Serverwillbedisplayedfortheuserinaminiloginform.
8-6 TM1 Developers Guide

Basic URL API Concepts

Table of Contents

Index

Managing User Login and Logout


UsersmustlogintotheTM1serverwhenusingtheURLAPItoviewTM1Web objects.Youcanmanagetheuserloginprocessinanyofthefollowingways: IntegratedLoginUseMicrosoftWindowsnetworkauthenticationto controlaccesstoTM1data.Formoredetails,seetheTM1OperationsGuide. IncludeinURLSpecifylogininformationintheURLwhenaccessing TM1Webobjects.TheURLmustincludevaluesforAdminHost,TM1Server, UserName,andPassword. NOTE: SpecifyingapasswordwithinURLisnotsecure. MiniLoginPopupIfall,orsome,ofthelogininformationhasnotbeen providedinanyotherway,thenaminipopupwindowdisplaystoprompt theusertologinbeforetheTM1Webobjectscanbedisplayed.

CustomLoginPageYoucancreateyourowncustomloginpagebyusing theTM1loginhandlerfile,TM1WebLoginHandler.aspx,toprocesslogin requeststhrougheitheraURLGEToraformPOSTmethod.Foreither

Developing Custom Web Applications with the URL API

8-7

Basic URL API Concepts

Table of Contents

Index

method,youmustprovidevaluesforAdminHost,TM1Server,UserName, andPasswordtotheTM1WebLoginHandler.aspxfile. AnexampleofacustomloginusingtheTM1WebLoginHandler.aspxfile andtheformPostmethodisshownbelow.

Afterloggingin,youcanredirecttheusertoadifferentURLbyaddingthe redirectparametertotheloginURLasfollows: redirect=newUrl wherenewURLcanbeanyvalidURLtonavigatetoafterloggingin.For example: redirect=myStartPage.html Ifaloginerroroccurs,TM1insertstheerrormessageintothereturnedURL inthefollowingformat: error=error_message whereerror_messagedescribestheerrorthatoccurred.

8-8

TM1 Developers Guide

Basic URL API Concepts

Table of Contents

Index

Logging Out Tologout,usethefollowingURLcomponent: action=Logout Ifyouincludetheredirectparameter,theuserwillberedirectedtoaspecified URLafterloggingout.Usethefollowingformattospecifyavalueforthe redirectparameter: action=Logout&redirect=newURL wherenewURLcanbeanyvalidURLfortheusertoberedirectedtoafter loggingout.

Using the Action Parameter


TheactionparameterspecifieswhattypeofactiontorunonanTM1Web object.UsetheactionparameterintheURLquerystringasfollows: action=<TypeOfAction> whereTypeOfAction canbeoneofthefollowingvalues: Action Close Description Closesanexistingobject. Example:action=Close Logout LogstheuseroutfromthecurrentTM1serversession. Example:action=Logout

Developing Custom Web Applications with the URL API

8-9

Basic URL API Concepts

Table of Contents

Index

Action OpenObject

Description OpensaTM1Webobject. Example:action=OpenObject ForanoverviewofusingtheOpenObjectaction,seeUsing theOpenObjectParametertoOpenanTM1WebObject.

Recalc

RecalculatesanexistingWebsheetorCubeviewerobject. Example:action=Recalc

Reload

ReloadstheCubeviewerobjectonly. Example:action=Reload

Save

SaveschangesmadetothedatavaluesinaWebsheetor Cubeviewerobject. Example:action=Save NOTE:Thesavecommanddoesnotsavethedimension layoutoftheview.Onlythechangeddatavaluesaresaved toTM1.Forexample,ifyourearrangethedimensionsinthe viewandthenusetheSaveaction,thenewsettingsforthe viewlayoutarenotsaved.

8-10

TM1 Developers Guide

Basic URL API Concepts

Table of Contents

Index

Using the OpenObject Parameter to Open an TM1 Web Object


ToopenanddisplayanTM1Webobject,usetheaction=OpenObjectcommand andtheTypeparameterinthefollowinggeneralformat: action=OpenObject&type=object_type whereobject_typecanbeWebsheet,Cubeviewer,orNavigationTree. Dependingontheobjecttype,additionaloptionsandparametersarerequired asdescribedbelow. Opening Websheet and Cubeviewer objects YoucanusetheOpenObjectcommandtoopenWebsheetandCubeviewer objectsinanyofthefollowingways: TM1ObjectPathOpensanobjectusingthenameandlocationofthe objectasusedinternallybyTM1. Fordetails,seeUsingtheTM1ObjectPathtoOpenaWebsheetObject andUsingtheTM1ObjectPathtoOpenaCubeviewerObject. ApplicationOrganizerPathAllowsyoutousethevisualpathinTM1s NavigationpanetospecifytheWebsheetorcubeviewyouwanttoopen. Fordetails,seeUsingtheApplicationOrganizerPathtoOpenaWebsheet ObjectandUsingtheApplicationOrganizerPathtoOpenaCubeviewer Object. XMLTreeNodeIDOpensanobjectusingtheuniqueIDoftheobject fromtheXMLversionoftheNavigationTreeobject. FordetailsseeUsingXMLTreeNodeIDstoOpenWebsheetand CubeviewerObjects.

Developing Custom Web Applications with the URL API

8-11

Basic URL API Concepts

Table of Contents

Index

Youcanalsosetthetitleselectionandotherdisplaypropertiesinthesame URLwhenusingtheOpenObjectcommand. Opening the Navigation Tree object ToopentheNavigationTreeobject,setthetypeparametertoNavigationTree. action=OpenObject&type=NavigationTree Formoredetails,seeAccessingtheNavigationTreeObject.

Operating on an Existing TM1 Web Object with the ObjectId Parameter


UsetheObjectIdparameterinanewURLwhenyouwanttoperformactions onanTM1Webobjectthatisalreadyopened.TheObjectId=object_id parameterandvalueidentifytheobjectonwhichtheoperationneedstotake place. AfteranTM1Webobjectisopenedusingtheaction=OpenObjectcommand, theObjectIdisembeddedintothereturnedURLinthefollowingformat: ObjectId=id_value whereid_valueisauniquenumberthatyoucanusetoreferencethespecific TM1object. Forexample,openingaCubeviewerobjectreturnstheObjectId inaURL similartothis: http://mywebserver/TM1Web/TM1WebCubeviewer.aspx?ObjectId=83 Aftertheobjectisinitiallyopenedinthewebpagedocument,youcanobtain theObjectId valueprogrammaticallybyparsingthroughthereturnedURL.

8-12

TM1 Developers Guide

Basic URL API Concepts

Table of Contents

Index

AddtheObjectId=object_idvaluepairtothenewURLthatyousubmitwhen performinganactiononaspecificTM1Webobject. Forexample,torecalculatethissamecube,createaURLthatincludesthe ObjectId forthecubealongwiththerecalcactionasfollows: http://mywebserver/TM1Web/TM1WebCubeviewer.aspx?ObjectId=83&action=recalc NOTE: IftheObjectIdparameterismissingfromtheURLthatyousubmit, TM1performstheactiononthecurrentlyactiveobject.

Developing Custom Web Applications with the URL API

8-13

Accessing the Websheet Object

Table of Contents

Index

Accessing the Websheet Object


AWebsheetisaMicrosoftExcelspreadsheetfilewithTM1datathatyoucan viewinaWebbrowser.YoucanusetheURLAPItodisplayaWebsheetas describedinthissection.

Websheet object

8-14

TM1 Developers Guide

Accessing the Websheet Object

Table of Contents

Index

Opening a Websheet Object


UseoneofthefollowingwaystoidentifytheWebsheetyouwanttoopen. TM1Objectpath TM1ApplicationOrganizerpath XMLTreeNodeID Using the TM1 Object Path to Open a Websheet Object ToopenaWebsheetobjectusingtheTM1objectpath,useoneofthefollowing formats,dependingonwhethertheWebsheetexistsasareferencedExcelfile outsideofTM1,orasaninternalExcelfilethatwasuploadedtotheTM1 server: ToopenaWebsheetthatexistsasareferencedExcelfile,outsideofTM1: &action=OpenObject&type=Websheet&value=WebsheetPath whereWebsheetPathisthelocationandnameoftheexternalExcelfile. Thiscanbeeitherapathforalocalfile,oraUNCpathforafilelocatedona network. Forexample: &action=OpenObject&type=Websheet&value=C:\Samples\classic_slice.xls or &action=OpenObject&type=Websheet&value=//MySystem/Samples/classic_slice.xls ToopenaWebsheetobjectthatwasuploadedtotheTM1server: 1. InServerExplorer,usethePropertiespanetofindtheTM1assignedname fortheuploadedExcelfile.
Developing Custom Web Applications with the URL API 8-15

Accessing the Websheet Object

Table of Contents

Index

User assigned name for an uploaded Excel file

TM1 assigned name of an uploaded Excel file

2. SetthevalueparameterintheURLusingthefollowingformat: &action=OpenObject&type=Websheet&value=TM1://ServerName/blob/PUBLIC/ .\}Externals\TM1_Filename where: ServerNameistheTM1severnamewheretheExcelfileislocated. TM1_FilenameisthenamethatTM1assignedtotheuploadedExcelfile. Forexample: &action=OpenObject&type=Websheet&value=TM1://sdata/blob/PUBLIC/ .\}Externals\Report_2006.xls_20070123212746.xls

8-16

TM1 Developers Guide

Accessing the Websheet Object

Table of Contents

Index

Using the Application Organizer Path to Open a Websheet Object YoucanusethelocationpathtoaWebsheetobjectintheTM1Application Organizertoopentheobjectasfollows. 1. InServerExplorer,expandtheApplicationtreetolocatetheWebsheetyou wanttoopen.

2. Buildastringthatrepresentsthepathtotheobject.Startthepathwith Applications/andseparateanysubfolderswiththeslash / symbol. Forexample:Applications/My Reports/Report_2005.xls 3. SetthevalueparameterinyourURLtotheApplicationpathyouassem bled. action=OpenObject&type=Websheet&value=Applications/My Reports/Report_2005.xls Using an XML Tree Node ID to Open a Websheet Object UsetheOpenObjectcommandwiththeTreeNodeIDvalue,obtainedfromthe XMLversionoftheNavigationTreeobject,toopenaWebsheetobjectas follows: action=OpenObject&type=Websheet&value=TreeNodeID Fordetails,seeUsingXMLTreeNodeIDstoOpenWebsheetandCubeviewer Objects.
Developing Custom Web Applications with the URL API 8-17

Accessing the Websheet Object

Table of Contents

Index

Selecting Title Elements for a Websheet Object


YoucansetthetitleelementsforaWebsheetobjectusingthetitle_S#-R#-C# parameterforanycellthatcontainsaSUBNMfunction. Addthetitle_S#-R#-C#parametertoyourURLusingthefollowingformat: title_S#-R#-C#=element where: S#-R#-C#definesthesheetnumber,rownumberandcolumnnumberfor thelocationoftheSUBNMcellintheWebsheet.Replacethe#symbolswith yourvaluesforsheet,row,andcolumnnumber. elementisthestringvalueforthenameofthenewtitleelementyouwant toselect. Ifyouwanttoselectthenewtitleelementbyelementindex,insteadofelement name,includetheUseIndexparameterintheURLasfollows: title_S#-R#-C#=element&UseIndex=yes Or title_S#-R#-C#=element&UseIndex=1

Applying Actions to a Websheet Object


FordetailsonusingtheactionparameterwiththeWebsheetobject,seeUsing theActionParameter.

8-18

TM1 Developers Guide

Accessing the Websheet Object

Table of Contents

Index

Setting Display Properties for the Websheet Object


YoucansetthefollowingdisplaypropertiesfortheWebsheetobject. Action HideToolbar Description Turnsthetoolbaronoroff.Defaultison. SetHideToolbar=yesor1toturnoffthetoolbar. SetHideToolbar=noor0toturnonthetoolbar. AutoRecalc Turnsautomaticrecalculationonoroff.Defaultisoff. SetAutoRecalc=off,no,or0toturnoffautomatic recalculation. SetAutoRecalc=on,yes,or1toturnonautomatic recalculation. HideTabs Turnsthedisplayofthetabsonoroff.Bydefault,TM1usesthe systempropertytodetermineiftabsareshownornot. SetHideTabs=yesor1toturnofftabs. SetHideTabs=noor0toturnontabs.

Developing Custom Web Applications with the URL API

8-19

Accessing the Cubeviewer Object

Table of Contents

Index

Accessing the Cubeviewer Object


TheCubeviewerobjectdisplaysaTM1cubeviewinacustomwebpage.

Cubeviewer object

Opening a Cubeviewer Object


Useoneofthefollowingwaystoidentifythecubeviewyouwanttoopen. TM1Objectpath TM1ApplicationOrganizerpath XMLTreeNodeID
8-20 TM1 Developers Guide

Accessing the Cubeviewer Object

Table of Contents

Index

Using the TM1 Object Path to Open a Cubeviewer Object UsethefollowingformattoopenaCubeviewerobjectwiththeTM1object path: action=OpenObject&type=Cubeviewer&value=CubeName$$ViewName$$Status action=OpenObject&type=Cubeviewer&value=CubeName$$ViewName$$Status where: CubeNameisthenameofcubetowhichtheviewbelongs. ViewNameisthenameofcubeview. Statusisthepublicorprivatestatusofthecubeview. NOTE: YoumustincludeavalueofeitherPUBLICorPRIVATEtocorrectly identifythespecificcubeviewthatyouwanttoopen. Forexample: action=OpenObject&type=Cubeviewer&value=SalesCube$$Price$$Public Using the Application Organizer Path to Open a Cubeviewer Object YoucanusethelocationpathtoacubeviewobjectintheTM1Application Organizertoopentheobjectasfollows.

Developing Custom Web Applications with the URL API

8-21

Accessing the Cubeviewer Object

Table of Contents

Index

1. InServerExplorer,expandtheApplicationtreetolocatethecubeviewyou wanttoopen.

2. Buildastringthatrepresentsthepathtotheobject.Startthepathwith Applications/andseparateanysubfolderswiththeslash / symbol. Forexample:Applications/My Reports/Price 3. SetthevalueparameterinyourURLtotheApplicationpathyouassem bled. action=OpenObject&type=Websheet&value=Applications/My Reports/Price Using an XML Tree Node ID to Open a Cubeviewer Object UsetheOpenObjectcommandwiththeTreeNodeIDvalue,obtainedfromthe XMLversionoftheNavigationTreeobject,toopenaCubeviewerobjectas follows: action=OpenObject&type=Cubeviewer&value=TreeNodeID Fordetails,seeUsingXMLTreeNodeIDstoOpenWebsheetandCubeviewer Objects.

8-22

TM1 Developers Guide

Accessing the Cubeviewer Object

Table of Contents

Index

Setting Display Properties for the Cubeviewer Object


YoucansetthefollowingdisplaypropertiesfortheCubeviewerobject: Action HideToolbar Description Turnsthetoolbaronoroff.Defaultison. SetHideToolbar=yesor1toturnoffthetoolbar. SetHideToolbar=noor0toturnonthetoolbar. AutoRecalc Turnsautomaticrecalculationonoroff.Defaultisoff. SetAutoRecalc=off,no,or0toturnoffautomatic recalculation. SetAutoRecalc=on,yes,or1toturnonautomatic recalculation. HideTabs Turnsthedisplayofthetabsonoroff.Bydefault,TM1usesthe systempropertytodetermineiftabsareshownornot. SetHideTabs=yesor1toturnofftabs. SetHideTabs=noor0toturnontabs. HideTitlebar Turnsthetitlebaronoroff.Defaultsettingison. SetHideTitlebar=yesor1toturnoffthetitlebar. SetHideTitlebar=noor0toturnonthetitlebar. ThissettingappliestotheCubeviewerobjectonly.

Developing Custom Web Applications with the URL API

8-23

Accessing the Cubeviewer Object

Table of Contents

Index

Selecting Title Elements for the Cubeviewer Object


YoucansetthetitleelementsinaCubeviewerobjectbyaddingthetitle parametertoyourURLusingthefollowingformat: &title_DimensionName=element where: DimensionNameisthenameofthetitledimensionthatyouwanttochange. elementisthestringvalueforthenameofthenewtitleelementyouwant toselect. Ifyouwanttoselectthenewtitleelementbyelementindex,insteadofelement name,includetheUseIndexparameterintheURLasfollows: &title_DimensionName=element&UseIndex=yes Or &title_DimensionName=element&UseIndex=1

Applying Actions to a Cubeviewer Object


FordetailsonusingtheactionparameterwiththeCubeviewerobject,see UsingtheActionParameter.

Displaying Charts with the Cubeviewer Object


SimilartoTM1Web,theCubeviewerobjectcandisplayTM1dataingridonly, chartonly,orcombinationgridandchartmode.Usetheparametersdescribed inthissectiontocontrolchartdisplayoptions,suchascharttype,colors,and size.

8-24

TM1 Developers Guide

Accessing the Cubeviewer Object

Table of Contents

Index

Setting Basic Chart Options TheCubeviewerobjecthasthefollowingbasicchartoptions: Number ChartOnly GridOnly GridAndChart ChartSize Color Palette DisplaystheCubeviewerobjectinchartonlymodebysetting ChartOnly=yes or1. DisplaystheCubeviewerobjectingridonlymodebysetting GridOnly=yes or1. DisplaystheCubeviewerobjectwithbothagridandchartby settingGridAndChart=yesor1. Usethisparametertosetthedisplaysizeofachart. Format:ChartSize=width,height wherethevaluesforwidthandheightareinpixels. 3DView Turn3Dviewofthechartonandoff. Turn3Dviewonbysetting3DView=yesor1. Turn3Dviewoffbysetting3DView=noor0. ShowLegend Whenchartisdisplayed. TurnlegendonbysettingShowLegend=yesor1. TurnlegendoffbysettingShowLegend=noor0.

Developing Custom Web Applications with the URL API

8-25

Accessing the Cubeviewer Object

Table of Contents

Index

Selecting Chart Type SetthetypeofchartyouwanttodisplaybyusingtheChartTypeparameterin followingformat: ChartType=i whereicanbethenumericvalueforoneofthefollowingdefinedcharttypes: Value 0 1 2 3 4 5 6 7 8 9 10 Chart Type Point Bubble Line Spline Stepline Fastline Bar Stackedbar Stackedbar100 Column Stackedcolumn

8-26

TM1 Developers Guide

Accessing the Cubeviewer Object

Table of Contents

Index

Value 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Chart Type Stackedcolumn100 Area Splinearea Stackedarea Stackedarea100 Pie Doughnut Stock Candlestick Range Splinerange Gantt Rangecolumn Radar Polor

Developing Custom Web Applications with the URL API

8-27

Accessing the Cubeviewer Object

Table of Contents

Index

Value 26 27 28 Setting Chart Color

Chart Type Boxplot Funnel Pyramid

SetthecolorpaletteforachartbyusingtheColorPaletteparameterasfollows: ColorPalette=i whereicanbethenumericvalueforoneofthefollowingdefinedcolor palettes: Number 1 2 3 4 5 6 Color Palette Default LightSteelBlue EarthTones GrayScale SemiTransparent ExcelLike

8-28

TM1 Developers Guide

Setting Event Callback Functions for Cubeviewer and Websheet Objects

Table of Contents

Index

Number 7 8 9 10 11

Color Palette LightBeige Berry Chocolate Fire Greenblue

Setting Event Callback Functions for Cubeviewer and Websheet Objects


YoucancaptureatitleelementchangeeventinaWebsheetorCubeviewer objectbyusingtheTitleChangeCallbackparameterintheinitialURLandthen creatingyourownJavaScriptcallbackfunctiontohandlethecallbackevent. ForaWebsheet,youcancapturethetitlechangeeventonaSUBNMcell. ForaCubeviewer,youcancapturethechangeofatitledimension.

Enabling a Callback Function for Websheet and Cubeviewer Objects


Theoverallstepsforenablingacallbackfunctionare: 1. AddtheTitleChangeCallbackparametertotheinitialURLthatopensthe WebsheetorCubeviewerobject.Useoneofthefollowinggeneralformats:

Developing Custom Web Applications with the URL API

8-29

Setting Event Callback Functions for Cubeviewer and Websheet Objects

Table of Contents

Index

ForWebsheetobjectsonly,setcallbackforaspecifictitledimensionby SUBNMcelllocation. &TitleChangeCallback_Sheet-Row-Column=JSFunction(jsFunctionSignature) ForWebsheetandCubeviewerobjects,setcallbackforaspecifictitle dimensionbydimensionname. &TItleChangeCallback_DimensionName=JSFunction(jsFunctionSignature) ForWebsheetandCubeviewerobjects,setaglobalcallbackfunctionthat appliestoalltitledimensions. &TitleChangeCallback=jsFunctionName(jsFunctionSignature) 2. CreateyourownJavaScriptcallbackfunctiontohandlethecallbackevent, usingthesamefunctionsignaturethatyouprovidedintheURL.Forexam ple: function jsFunctionName(jsFunctionSignature) { // add code here to handle the callback event} Setting a Callback Function for a Specific Title Dimension Youcansetacallbackfunctionforaspecifictitledimensionbyspecifyingthe dimensionsSUBNMcelllocationordimensionname. Setting a Callback Function for Websheet Objects Only YoucanusetheTitleChangeCallback_S#-R#-C#parameterinyourURLtoset acallbackfunctionforaspecificdimensionbasedontheSUBNMcell dimensionssheet,row,columnintheWebsheet. Usethefollowingformattospecifyatitledimensionbysheet,row,column locationinaWebsheet:
8-30 TM1 Developers Guide

Setting Event Callback Functions for Cubeviewer and Websheet Objects

Table of Contents

Index

&TitleChangeCallback_S#-R#-C# =JSFunction(arg1, $dimName$, $subsetName$, $elemName$, arg2) where: S#-R#-C#isthesheet,row,andcolumnnumbersofthecellintheWebsheet thatcontainstheSUBNMfunction.Replacethe#symbolswithyourvalues forsheet,row,andcolumnnumber. jsFunctionisthenameofyourownJavaScriptfunctionthatwillhandlethe callbackevent.Addcodeforthisfunctioninyourwebpage,usingthesame functionsignaturethatyouprovideintheURL. arg1, arg2 ...representsotheruserdefinedargumentsinyourcallback function. Ifyouinclude$dimName$,$subsetName$,$elemName$,inthecallback function,theseargumentswilldynamicallybereplacedwiththestringvalue ofthedimension,subset,andelementthattheuserselected. $dimName$isthenameofthetitledimensionthattheuserselected. $subsetName$isthenameofthesubsetforthetitledimension. $elemName$istheelementnamethattheuserselected. Setting a Callback Function for Websheet and Cubeviewer Objects UsetheTItleChangeCallback_DimensionNameparametertospecifyacallback functionforaspecifictitledimensionbasedonthenameofthedimension. &TItleChangeCallback_DimensionName=JSFunction(arg1, $dimName$, $subsetName$, $elemName$, arg2 ) where:

Developing Custom Web Applications with the URL API

8-31

Setting Event Callback Functions for Cubeviewer and Websheet Objects

Table of Contents

Index

DimensionNameisthenameofthetitledimensionintheWebsheetor Cubeviewerobjectthatwilltriggerthecallbackevent. jsFunctionisthenameofyourownJavaScriptfunctionthatwillhandlethe callbackevent.Addcodeforthisfunctioninyourwebpage,usingthesame functionsignaturethatyouprovideintheURL. arg1, arg2 ...representsotheruserdefinedargumentsinyourcallback function. Ifyouinclude$dimName$,$subsetName$,$elemName$,inthecallback function,theseargumentswilldynamicallybereplacedwiththestringvalue ofthedimension,subset,andelementthattheuserselected. $dimName$isthenameofthetitledimensionthattheuserselected. $subsetName$isthenameofthesubsetforthetitledimension. $elemName$istheelementnamethattheuserselected.

Setting a Global Callback Function for All Title Dimensions


TocapturechangeeventsforalltitledimensioninaWebsheetorCubeviewer object,usetheTitleChangeCallbackparameterwithoutspecifyingaspecific titledimension.IfatitledimensionorSUBNMcelllocationisnotspecifiedin theURL,thenthecallbackfunctionwillcapturechangeeventsforallSUBNM cellsinaWebsheetobject,oralltitledimensionsinaCubeviewerobject. NOTE: Acallbackfunctionwithoutatargettitledimensioncanbesuperseded byusingasubsequentTitleChangeCallback commandthatdoesspecifyatitle dimension.Forexample,TitleChangeCallback_DimensionNameor TitleChangeCallback_Sheet-Row-Column. UsethefollowingURLformattosetacallbackfunctionforalltitledimensions:

8-32

TM1 Developers Guide

Accessing the Navigation Tree Object

Table of Contents

Index

&TItleChangeCallback=JSFunction(arg1, $dimName$, $subsetName$, $elemName$, arg2) where: jsFunctionisthenameofyourownJavaScriptfunctionthatwillhandlethe callbackevent. arg1, arg2 ...representsotheruserdefinedargumentsinyourcallback function. Ifyouinclude$dimName$,$subsetName$,$elemName$,inthecallback function,theseargumentswilldynamicallybereplacedwiththestringvalue ofthedimension,subset,andelementthattheuserselected. $dimName$isthenameofthetitledimensionthattheuserselected. $subsetName$isthenameofthesubsetforthetitledimension. $elemName$istheelementnamethattheuserselected. Addcodeforyourcallbackfunctionusingthesamefunctionsignaturethat youprovidedintheURL.

Accessing the Navigation Tree Object


InTM1Web,thenavigationpanecontainsanorganizedlistofTM1 applications,Websheets,cubes,andviewsthatareavailableforaspecificuser.

Developing Custom Web Applications with the URL API

8-33

Accessing the Navigation Tree Object

Table of Contents

Index

Youcanincorporatethissamenavigationlistintoyouowncustomwebpage usingtheNavigationTreeobject.

Navigation Tree object

YoucanaccesstheNavigationTreeobjectintwodifferentmodes: HTMLmodeDisplaystheNavigationTreeobjectasseeninTM1Web. Thisisthedefaultmode.Allowsuserstointeractwiththetreeifyou provideyourowncallbackfunctions. XMLmodeReturnsadataonlyversionoftheNavigationTreeobject,in XMLformat,soyoucanusethehierarchyanddataasneeded.

8-34

TM1 Developers Guide

Accessing the Navigation Tree Object

Table of Contents

Index

Opening the Navigation Tree Object


TheNavigationTreeobjectisaccessedinthesamewayasCubeviewerand WebsheetobjectsthroughtheTM1WebMain.aspxhandlerfileusingthe action=OpenObjectparameter. ToopentheNavigationTreeobject,usethefollowingformat: action=OpenObject&type=NavigationTree TheNavigationTreeobjectopensinthedefaultHTMLmode,butyoucan specifyeitherHTMLorXMLmodebyusingtheContentType parameter. &ContentType=mode wherethevalueformodecanbeeitherhtmlorxml. Forexample: ToopentheNavigationTreeobjectinHTMLmode: http://mywebserver/TM1Web/ TM1WebMain.aspx?action=OpenObject&type=NavigationTree&ContentType=html ToopentheNavigationTreeobjectinXMLmode: http://mywebserver/TM1Web/ TM1WebMain.aspx?action=OpenObject&type=NavigationTree&ContentType=xml Afterauserhasloggedin,theNavigationTreecanalsobeaccesseddirectly throughthefollowinghandlers: TM1WebNavigationTree.aspxforHTMLmode TM1WebNavigationTreeXml.aspxforXMLmode

Developing Custom Web Applications with the URL API

8-35

Accessing the Navigation Tree Object

Table of Contents

Index

Using the Navigation Tree Object in HTML Mode


WhenusingtheNavigationTreeobjectinHTMLmode,youcancontrolthe displayofthetoolbarandalsoprovideyourowncallbackfunctionstoallow userstointeractwiththeTM1objectsdisplayedinthetree. Displaying the Navigation Tree Toolbar WhenviewingtheNavigationTreeobjectinHTMLmode,youcandisplayor hidetheobjectstoolbarbysettingtheHideToolbarparameter. AddthefollowinglinetothebaseURL: &HideToolbar=x wherexcanbe: yesor1tohidetheTM1titlebar noor0todisplaytheTM1titlebar
Toolbar displayed Toolbar hidden

8-36

TM1 Developers Guide

Accessing the Navigation Tree Object

Table of Contents

Index

Setting a Callback Function for the Navigation Tree Object Ifyouwantinformationonindividualobjectnodestobeexposedwhenauser clicksonthem,youneedtosetacallbackfunctionfortheNavigationTree object.Youcanusethereturnedinformationthatissenttothecallback functiontoperformadditionalactionsontheselectedobject.Forexample,the returnedXMLTreeNodeIDcouldbeusedtoopentheobject. YouenableacallbackbyaddingtheCallbackparametertothebaseURLand thenwritingcodeforacallbackfunctioninyourwebpage. 1. UsethefollowingformattoaddtheCallbackparameterandthenameof yourcallbackfunctiontothebaseURL: &Callback=name_of_callback_function Forexample: &Callback=MyCallBackFunction 2. Writeyourcallbackfunctioninthewebpagetohandlethefollowing returnedvariables: MyCallBackFunction(id, type, isPrivate, name, description, source) Thereturnedvariablesprovidethefollowinginformationaboutthe selectedobjectnode: iduniqueidoftheselectednode typeobjecttypeoftheselectedobject(WebsheetorCubeviewer) isPrivatewhethertheselectedobjectisaprivateorpublicobject namenameoftheselectedobject

Developing Custom Web Applications with the URL API

8-37

Accessing the Navigation Tree Object

Table of Contents

Index

descriptiondescriptionoftheselectedobject sourcesourceoftheselectedobject,ifany Forexample,thefollowingURLandJavaScriptfunctionshowasampleof howtocaptureuserinteractionwiththeNavigationTreeobject. ThefollowingURLopenstheNavigationTreeobjectandsetsthecallback parametertoafunctioncalledhandleNavTreeOpenObject: http://localhost/TM1Web/TM1WebMain.aspx? action=OpenObject&AdminHost=&TM1Server=sdata&type=navigationtree&ContentType= html&Callback=handleNavTreeOpenObject ThefollowingJavaScriptfunctionwouldhandlethecallbackevent: function handleNavTreeOpenObject(id, type, isPrivate, name, description, source) { alert('id=' + id + ';type=' + type + ';isPrivate=' + isPrivate + ';name=' + name + ';description=' + description + ';source=' + source); } Inthisexample,whentheuserclicksonanobjectintheNavigationTree,the callbackfunctiondisplaysamessageboxshowingthereturnedinformation abouttheselectedobject.

8-38

TM1 Developers Guide

Accessing the Navigation Tree Object

Table of Contents

Index

Using the Navigation Tree Object in XML Mode


InXMLmode,theNavigationTreeobjectissentbackasaUTF8encoded XMLdocument.ThereturnedXMLdocumentcontainsthehierarchyofthe Applicationfolders,Websheets,cubes,andviewsstoredintheTM1serverto whichyouareconnected. UsethefollowingURLformattoretrievetheNavigationTreeobjectasXML: http://<HostName>/TM1Web/ TM1WebMain.aspx?action=OpenObject&type=NavigationTree&ContentType=xml ThereturnedXMLdataisstructuredinthefollowingoverallformat:

The<NavigationTree>isthetoplevelnodereturned. The<Application>nodecontainsapplicationfoldersandreferencesthatcan displayinTM1Web. The<Server>nodecontainscubesandviewsthatcandisplayinTM1Web. NOTE: The<Administration>nodeisnotusedwiththeURLAPI.


Developing Custom Web Applications with the URL API 8-39

Accessing the Navigation Tree Object

Table of Contents

Index

XML Application Node Forexample,anexpanded<Application>nodelookslikethis:

8-40

TM1 Developers Guide

Accessing the Navigation Tree Object

Table of Contents

Index

XML Server Node Anexampleofanexpanded<Server>nodelookslikethis:

Developing Custom Web Applications with the URL API

8-41

Accessing the Navigation Tree Object

Table of Contents

Index

Using XML Tree Node IDs to Open Websheet and Cubeviewer Objects YoucanuseanobjectsTreeNodeIDfromtheXMLdatatoopenaWebsheetor Cubeviewerobject. 1. ObtaintheTreeNodeIDfromthereturnedXMLdatafortheobjectyou wanttoopen. Forexample,tn_8istheTreeNodeIDforthePriceviewinthefollowing XMLsample.
Tree Node ID

2. UsetheTreeNodeIDstringvaluewiththeOpenObjectcommandinyour URLasfollows: action=OpenObject&type=Cubeviewer&value=TreeNodeID Forexample,setvalue=tn_8todisplaythePriceviewinaCubeviewer objectasfollows: action=OpenObject&type=Cubeviewer&value=tn_8

8-42

TM1 Developers Guide

Table of Contents

Index

A Supported Excel Functions TM1 Web


TM1WebsupportsmanyExcelspreadsheetfunctions.Thisappendixliststhe supportedExcelfunctionsbycategoryandinalphabeticalorder,anddescribes anydifferencesinperformancebetweentheExcelfunctionsandTM1Web functions.

A-1

Supported Functions

Table of Contents

Index

Supported Functions
Date and Time Functions
Function
DATE

Description Returnstheserialnumberofaparticulardate. number.

DATEVALUE Convertsadateintheformoftexttoaserial

DAY

Convertsaserialnumbertoadayofthe month. Calculatesthenumberofdaysbetweentwo datesbasedona360dayyear. Convertsaserialnumbertoanhour. Convertsaserialnumbertoaminute. Convertsaserialnumbertoamonth. Returnstheserialnumberofthecurrentdate andtime. Convertsaserialnumbertoasecond. Returnstheserialnumberofaparticulartime.

DAYS360

HOUR MINUTE MONTH NOW

SECOND TIME

A-2

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Function
TIMEVALUE

Description Convertsatimeintheformoftexttoaserial number. Returnstheserialnumberoftodaysdate. Convertsaserialnumbertoadayoftheweek. Convertsaserialnumbertoayear.

TODAY WEEKDAY YEAR

A-3

Supported Functions

Table of Contents

Index

Financial Functions
Function
DB

Description Returnsthedepreciationofanassetfora specifiedperiodusingthefixeddeclining balancemethod. Returnsthedepreciationofanassetfora specifiedperiodusingthedoubledeclining balancemethodorsomeothermethodyou specify. Returnsthefuturevalueofaninvestment. Returnstheinterestpaymentforan investmentforagivenperiod. Returnstheinternalrateofreturnforaseries ofcashflows. Calculatestheinterestpaidduringaspecific periodofaninvestment. Returnstheinternalrateofreturnwhere positiveandnegativecashflowsarefinanced atdifferentrates. Returnsthenumberofperiodsforan investment.

DDB

FV IPMT

IRR

ISPMT

MIRR

NPER

A-4

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Function
NPV

Description Returnsthenetpresentvalueofaninvestment basedonaseriesofperiodiccashflowsanda discountrate. Returnstheperiodicpaymentforanannuity. Returnsthepaymentontheprincipalforan investmentforagivenperiod. Returnsthepresentvalueofaninvestment. Returnstheinterestrateperperiodofan annuity. Returnsthestraightlinedepreciationofan assetforoneperiod. Returnsthesumofyearsdigitsdepreciation ofanassetforaspecifiedperiod.

PMT PPMT

PV RATE

SLN

SYD

A-5

Supported Functions

Table of Contents

Index

Information Functions
Function
ISERR

Description ReturnsTRUEifthevalueisanyerrorvalue except#N/A. ReturnsTRUEifthevalueisanyerrorvalue. ReturnsTRUEifthevalueisthe#N/Aerror value. Returnstheerrorvalue#N/A.

ISERROR ISNA

NA

Logical Functions
Function
AND FALSE IF NOT OR TRUE

Description ReturnsTRUEifallitsargumentsareTRUE. ReturnsthelogicalvalueFALSE. Specifiesalogicaltesttoperform. Reversesthelogicofitsargument. ReturnsTRUEifanyargumentisTRUE. ReturnsthelogicalvalueTRUE.

A-6

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Lookup and Reference Functions


Function
ADDRESS

Description Returnsareferenceastexttoasinglecellina worksheet. Choosesavaluefromalistofvalues. Returnsthecolumnnumberofareference. Returnsthenumberofcolumnsinareference. Looksinthetoprowofanarrayandreturns thevalueoftheindicatedcell. documentstoredonanetworkserver,an intranet,ortheInternet.

CHOOSE COLUMN COLUMNS HLOOKUP

HYPERLINK Createsashortcutorjumpthatopensa

INDEX

Usesanindextochooseavaluefroma referenceorarray. Looksupvaluesinavectororarray. Returnstherownumberofareference.

LOOKUP ROW

A-7

Supported Functions

Table of Contents

Index

ROWS VLOOKUP

Returnsthenumberofrowsinareference. Looksinthefirstcolumnofanarrayand movesacrosstherowtoreturnthevalueofa cell.

A-8

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Math and Trigonometric Functions


Function
ABS ACOS ACOSH

Description Returnstheabsolutevalueofanumber. Returnsthearccosineofanumber. Returnstheinversehyperboliccosineofa number. Returnsthearcsineofanumber. Returnstheinversehyperbolicsineofa number. Returnsthearctangentofanumber. Returnsthearctangentfromxandy coordinates. Returnstheinversehyperbolictangentofa number. Roundsanumbertothenearestintegerorto thenearestmultipleofsignificance. Returnsthenumberofcombinationsfora givennumberofobjects. Returnsthecosineofanumber.
A-9

ASIN ASINH

ATAN ATAN2

ATANH

CEILING

COMBIN

COS

Supported Functions

Table of Contents

Index

Function
COSH DEGREES EVEN

Description Returnsthehyperboliccosineofanumber. Convertsradianstodegrees. Roundsanumberuptothenearesteven integer. Returnseraisedtothepowerofagiven number. Returnsthefactorialofanumber. Roundsanumberdown,towardzero. Roundsanumberdowntothenearest integer. Returnsthenaturallogarithmofanumber. Returnsthelogarithmofanumbertoa specifiedbase. Returnsthebase10logarithmofanumber. Returnstheremainderfromdivision. Roundsanumberuptothenearestodd integer.

EXP

FACT FLOOR INT

LN LOG

LOG10 MOD ODD

A-10

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Function
PI POWER

Description Returnsthevalueofpi. Returnstheresultofanumberraisedtoa power. Multipliesitsarguments. Convertsdegreestoradians. Returnsarandomnumberbetween0and1. Convertsanarabicnumeraltoroman,as text. Roundsanumbertoaspecifiednumberof digits.

PRODUCT RADIANS RAND ROMAN

ROUND

ROUNDDOWN Roundsanumberdown,towardzero. ROUNDUP SIGN SIN SINH SQRT

Roundsanumberup,awayfromzero. Returnsthesignofanumber. Returnsthesineofthegivenangle. Returnsthehyperbolicsineofanumber. Returnsapositivesquareroot.

A-11

Supported Functions

Table of Contents

Index

Function
SUM TAN TANH

Description Addsitsarguments. Returnsthetangentofanumber. Returnsthehyperbolictangentofanumber.

A-12

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Statistical Functions
Function
AVEDEV

Description Returnstheaverageoftheabsolute deviationsofdatapointsfromtheirmean. Returnstheaverageofitsarguments. Returnstheaverageofitsarguments, includingnumbers,text,andlogicalvalues. Returnstheindividualtermbinomial distributionprobability. populationmean.

AVERAGE AVERAGEA

BINOMDIST

CONFIDENCE Returnstheconfidenceintervalfora

CORREL

Returnsthecorrelationcoefficientbetween twodatasets. Countshowmanynumbersareinthelistof arguments. Countshowmanyvaluesareinthelistof arguments. Returnscovariance,theaverageofthe productsofpaireddeviations. Returnsthesumofsquaresofdeviations.


A-13

COUNT

COUNTA

COVAR

DEVSQ

Supported Functions

Table of Contents

Index

Function
EXPONDIST FISHER FISHERINV

Description Returnstheexponentialdistribution. ReturnstheFishertransformation. ReturnstheinverseoftheFisher transformation. Returnsavaluealongalineartrend. Returnsthegeometricmean. Returnsvaluesalonganexponentialtrend. Returnstheharmonicmean. Returnstheinterceptofthelinearregression line. Returnsthekurtosisofadataset. Returnsthekthlargestvalueinadataset. Returnstheparametersofalineartrend. Returnstheparametersofanexponential trend. Returnsthemaximumvalueinalistof arguments.

FORECAST GEOMEAN GROWTH HARMEAN INTERCEPT

KURT LARGE LINEST LOGEST

MAX

A-14

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Function
MAXA

Description Returnsthemaximumvalueinalistof arguments,includingnumbers,text,and logicalvalues. Returnsthemedianofthegivennumbers. Returnstheminimumvalueinalistof arguments. Returnsthesmallestvalueinalistof arguments,includingnumbers,text,and logicalvalues. Returnsthemostcommonvalueinadata set. Returnsthenormalcumulativedistribution. Returnstheinverseofthenormal cumulativedistribution. Returnsthestandardnormalcumulative distribution. Returnstheinverseofthestandardnormal cumulativedistribution.

MEDIAN MIN

MINA

MODE

NORMDIST NORMINV

NORMSDIST

NORMSINV

A-15

Supported Functions

Table of Contents

Index

Function
PEARSON

Description ReturnsthePearsonproductmoment correlationcoefficient. Returnsthenumberofpermutationsfora givennumberofobjects. ReturnsthesquareofthePearsonproduct momentcorrelationcoefficient. Returnstheskewnessofadistribution. Returnstheslopeofthelinearregression line. Returnsthekthsmallestvalueinadataset. Returnsanormalizedvalue. Estimatesstandarddeviationbasedona sample. Estimatesstandarddeviationbasedona sample,includingnumbers,text,andlogical values. Calculatesstandarddeviationbasedonthe entirepopulation.

PERMUT

RSQ

SKEW SLOPE

SMALL STANDARDIZ E STDEV

STDEVA

STDEVP

A-16

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Function
STDEVPA

Description Calculatesstandarddeviationbasedonthe entirepopulation,includingnumbers,text, andlogicalvalues. Returnsthestandarderrorofthepredicted yvalueforeachxintheregression. Returnsvaluesalongalineartrend. Estimatesvariancebasedonasample. Estimatesvariancebasedonasample, includingnumbers,text,andlogicalvalues. Calculatesvariancebasedontheentire population. Calculatesvariancebasedontheentire population,includingnumbers,text,and logicalvalues. ReturnstheWeibulldistribution.

STEYX

TREND VAR VARA

VARP

VARPA

WEIBULL

A-17

Supported Functions

Table of Contents

Index

Text and Data Functions


Function
CHAR

Description Returnsthecharacterspecifiedbythecode number. Removesallnonprintablecharactersfrom text. Returnsanumericcodeforthefirst characterinatextstring.

CLEAN

CODE

CONCATENATE Joinsseveraltextitemsintoonetextitem. DOLLAR

Convertsanumbertotext,usingthe$ (dollar)currencyformat. Checkstoseeiftwotextvaluesare identical. Findsonetextvaluewithinanother(case sensitive). Formatsanumberastextwithafixed numberofdecimals. Returnstheleftmostcharactersfromatext value.

EXACT

FIND

FIXED

LEFT

A-18

TM1 Developers Guide

Supported Functions

Table of Contents

Index

Function
LEN

Description Returnsthenumberofcharactersinatext string. Convertstexttolowercase. Returnsaspecificnumberofcharacters fromatextstringstartingattheposition youspecify. Capitalizesthefirstletterineachwordofa textvalue. Replacescharacterswithintext. Repeatstextagivennumberoftimes. Returnstherightmostcharactersfroma textvalue. Findsonetextvaluewithinanother(not casesensitive). Substitutesnewtextforoldtextinatext string. Convertsitsargumentstotext. Formatsanumberandconvertsittotext.

LOWER MID

PROPER

REPLACE REPT RIGHT

SEARCH

SUBSTITUTE

T TEXT

A-19

Supported Functions

Table of Contents

Index

Function
TRIM UPPER VALUE

Description Removesspacesfromtext. Convertstexttouppercase. Convertsatextargumenttoanumber.

A-20

TM1 Developers Guide

Table of Contents

Index

B Unsupported Excel Functions - TM1 Web


TM1WebsupportsmanyExcelspreadsheetfunctions.Thisappendixliststhe Excelfunctions,bycategoryandinalphabeticalorder,thatarenotsupported inTM1Web.

B-1

Database and List Management Functions

Table of Contents

Index

Database and List Management Functions


Function
DAVERAGE

Description Returnstheaverageofselecteddatabase entries. Countsthecellsthatcontainnumbersina database. Countsnonblankcellsinadatabase. Extractsfromadatabaseasinglerecordthat matchesthespecifiedcriteria. Returnsthemaximumvaluefromselected databaseentries. Returnstheminimumvaluefromselected databaseentries. Multipliesthevaluesinaparticularfieldof recordsthatmatchthecriteriainadatabase. Estimatesthestandarddeviationbasedona sampleofselecteddatabaseentries. Calculatesthestandarddeviationbasedon theentirepopulationofselecteddatabase entries.

DCOUNT

DCOUNTA DGET

DMAX

DMIN

DPRODUCT

DSTDEV

DSTDEVP

B-2

TM1 Developers Guide

Date and Time Functions

Table of Contents

Index

Function
DSUM

Description Addsthenumbersinthefieldcolumnof recordsinthedatabasethatmatchthe criteria. Estimatesvariancebasedonasamplefrom selecteddatabaseentries. Calculatesvariancebasedontheentire populationofselecteddatabaseentries.

DVAR

DVARP

Date and Time Functions


Function
EDATE

Description Returnstheserialnumberofthedatethat istheindicatednumberofmonthsbefore orafterthestartdate. Returnstheserialnumberofthelastdayof themonthbeforeorafteraspecified numberofmonths. betweentwodates.

EOMONTH

NETWORKDAYS Returnsthenumberofwholeworkdays

B-3

Date and Time Functions

Table of Contents

Index

Function
WEEKNUM

Description Convertsaserialnumbertoanumber representingwheretheweekfalls numericallywithayear. Returnstheserialnumberofthedate beforeorafteraspecifiednumberof workdays. Returnstheyearfractionrepresentingthe numberofwholedaysbetweenstart_date andend_date.

WORKDAY

YEARFRAC

B-4

TM1 Developers Guide

Financial Functions

Table of Contents

Index

Financial Functions
Functions
ACCRINT

Description Returnstheaccruedinterestforasecurity thatpaysperiodicinterest. Returnstheaccruedinterestforasecurity thatpaysinterestatmaturity. Returnsthedepreciationforeach accountingperiodbyusingadepreciation coefficient. Returnsthedepreciationforeach accountingperiod. Returnsthenumberofdaysfromthe beginningofthecouponperiodtothe settlementdate. Returnsthenumberofdaysinthecoupon periodthatcontainsthesettlementdate. Returnsthenumberofdaysfromthe settlementdatetothenextcoupondate. Returnsthenextcoupondateafterthe settlementdate.

ACCRINTM

AMORDEGRC

AMORLINC

COUPDAYBS

COUPDAYS

COUPDAYSNC

COUPNCD

B-5

Financial Functions

Table of Contents

Index

Functions
COUPNUM

Description Returnsthenumberofcouponspayable betweenthesettlementdateandmaturity date. Returnsthepreviouscoupondatebefore thesettlementdate. Returnsthecumulativeinterestpaid betweentwoperiods. Returnsthecumulativeprincipalpaidona loanbetweentwoperiods. Returnsthediscountrateforasecurity. Convertsadollarprice,expressedasa fraction,intoadollarprice,expressedasa decimalnumber. Convertsadollarprice,expressedasa decimalnumber,intoadollarprice, expressedasafraction. Returnstheannualdurationofasecurity withperiodicinterestpayments. Returnstheeffectiveannualinterestrate.

COUPPCD

CUMIPMT

CUMPRINC

DISC DOLLARDE

DOLLARFR

DURATION

EFFECT

B-6

TM1 Developers Guide

Financial Functions

Table of Contents

Index

Functions
FVSCHEDULE

Description Returnsthefuturevalueofaninitial principalafterapplyingaseriesof compoundinterestrates. Returnstheinterestrateforafullyinvested security. ReturnstheMacauleymodifiedduration forasecuritywithanassumedparvalueof $100. Returnstheannualnominalinterestrate. Returnsthepriceper$100facevalueofa securitywithanoddfirstperiod. Returnstheyieldofasecuritywithanodd firstperiod. Returnsthepriceper$100facevalueofa securitywithanoddlastperiod. Returnstheyieldofasecuritywithanodd lastperiod. Returnsthepriceper$100facevalueofa securitythatpaysperiodicinterest.

INTRATE

MDURATION

NOMINAL ODDFPRICE

ODDFYIELD

ODDLPRICE

ODDLYIELD

PRICE

B-7

Financial Functions

Table of Contents

Index

Functions
PRICEDISC

Description Returnsthepriceper$100facevalueofa discountedsecurity. Returnsthepriceper$100facevalueofa securitythatpaysinterestatmaturity. Returnstheamountreceivedatmaturity forafullyinvestedsecurity. Returnsthebondequivalentyieldfora Treasurybill. Returnsthepriceper$100facevaluefora Treasurybill. ReturnstheyieldforaTreasurybill. Returnsthedepreciationofanassetfora specifiedorpartialperiodusinga decliningbalancemethod. Returnstheinternalrateofreturnfora scheduleofcashflowsthatisnot necessarilyperiodic. Returnsthenetpresentvaluefora scheduleofcashflowsthatisnot necessarilyperiodic.

PRICEMAT

RECEIVED

TBILLEQ

TBILLPRICE

TBILLYIELD VDB

XIRR

XNPV

B-8

TM1 Developers Guide

Financial Functions

Table of Contents

Index

Functions
YIELD

Description Returnstheyieldonasecuritythatpays periodicinterest. Returnstheannualyieldforadiscounted security;forexample,aTreasurybill. Returnstheannualyieldofasecuritythat paysinterestatmaturity.

YIELDDISC

YIELDMAT

B-9

Information Functions

Table of Contents

Index

Information Functions
Function
CELL

Description Returnsinformationabouttheformatting, location,orcontentsofacell. Returnsanumbercorrespondingtoan errortype. Returnsinformationaboutthecurrent operatingenvironment. ReturnsTRUEifthevalueisblank. ReturnsTRUEifthenumberiseven. ReturnsTRUEifthevalueisalogical value. ReturnsTRUEifthevalueisnottext. ReturnsTRUEifthevalueisanumber. ReturnsTRUEifthenumberisodd. ReturnsTRUEifthevalueisareference. ReturnsTRUEifthevalueistext.

ERROR.TYPE

INFO

ISBLANK ISEVEN ISLOGICAL

ISNONTEXT ISNUMBER ISODD ISREF ISTEXT

B-10

TM1 Developers Guide

Information Functions

Table of Contents

Index

Function
N TYPE

Description Returnsavalueconvertedtoanumber. Returnsanumberindicatingthedatatype ofavalue.

B-11

Lookup and Reference Functions

Table of Contents

Index

Lookup and Reference Functions


Function
AREAS INDIRECT MATCH OFFSET

Description Returnsthenumberofareasinareference. Returnsareferenceindicatedbyatextvalue. Looksupvaluesinareferenceorarray. Returnsareferenceoffsetfromagiven reference. Retrievesrealtimedatafromaprogramthat supportsCOMautomation. Returnsthetransposeofanarray.

RTD

TRANSPOSE

Math and Trigonometric Functions


Function
FACTDOUBLE GCD LCM

Description Returnsthedoublefactorialofanumber. Returnsthegreatestcommondivisor. Returnstheleastcommonmultiple.

B-12

TM1 Developers Guide

Math and Trigonometric Functions

Table of Contents

Index

Function
MDETERM MINVERSE MMULT MROUND

Description Returnsthematrixdeterminantofanarray. Returnsthematrixinverseofanarray. Returnsthematrixproductoftwoarrays. Returnsanumberroundedtothedesired multiple. Returnsthemultinomialofasetof numbers. Returnstheintegerportionofadivision. numbersyouspecify.

MULTINOMIAL

QUOTIENT

RANDBETWEEN Returnsarandomnumberbetweenthe

SERIESSUM

Returnsthesumofapowerseriesbasedon theformula. Returnsthesquarerootof(number*pi). Returnsasubtotalinalistordatabase. Addsthecellsspecifiedbyagivencriteria. Returnsthesumoftheproductsof correspondingarraycomponents.

SQRTPI SUBTOTAL SUMIF SUMPRODUCT

B-13

Math and Trigonometric Functions

Table of Contents

Index

Function
SUMSQ

Description Returnsthesumofthesquaresofthe arguments. Returnsthesumofthedifferenceof squaresofcorrespondingvaluesintwo arrays. Returnsthesumofthesumofsquaresof correspondingvaluesintwoarrays. Returnsthesumofsquaresofdifferences ofcorrespondingvaluesintwoarrays. Truncatesanumbertoaninteger.

SUMX2MY2

SUMX2PY2

SUMXMY2

TRUNC

B-14

TM1 Developers Guide

Statistical Functions

Table of Contents

Index

Statistical Functions
Function
BETADIST

Description Returnsthebetacumulativedistribution function. Returnstheinverseofthecumulative distributionfunctionforaspecifiedbeta distribution. Returnstheonetailedprobabilityofthe chisquareddistribution. Returnstheinverseoftheonetailed probabilityofthechisquareddistribution. Returnsthetestforindependence. Countsthenumberofblankcellswithina range. Countsthenumberofnonblankcells withinarangethatmeetthegivencriteria. Returnsthesmallestvalueforwhichthe cumulativebinomialdistributionisless thanorequaltoacriterionvalue. ReturnstheFprobabilitydistribution.
B-15

BETAINV

CHIDIST

CHIINV

CHITEST COUNTBLANK

COUNTIF

CRITBINOM

FDIST

Statistical Functions

Table of Contents

Index

Function
FINV

Description ReturnstheinverseoftheFprobability distribution. Returnsafrequencydistributionasa verticalarray. ReturnstheresultofanFtest. Returnsthegammadistribution. Returnstheinverseofthegamma cumulativedistribution. Returnsthenaturallogarithmofthe gammafunction,G(x).

FREQUENCY

FTEST GAMMADIST GAMMAINV

GAMMALN

HYPGEOMDIST Returnsthehypergeometricdistribution. LOGINV

Returnstheinverseofthelognormal distribution. distribution.

LOGNORMDIST Returnsthecumulativelognormal

NEGBINOMDIST Returnsthenegativebinomialdistribution. PERCENTILE

Returnsthekthpercentileofvaluesina range.

B-16

TM1 Developers Guide

Statistical Functions

Table of Contents

Index

Function

Description

PERCENTRANK Returnsthepercentagerankofavalueina

dataset.
POISSON PROB

ReturnsthePoissondistribution. Returnstheprobabilitythatvaluesina rangearebetweentwolimits. Returnsthequartileofadataset. Returnstherankofanumberinalistof numbers. ReturnstheStudentstdistribution. ReturnstheinverseoftheStudentst distribution. Returnsthemeanoftheinteriorofadata set. Returnstheprobabilityassociatedwitha Studentsttest. Returnstheonetailedprobabilityvalueof aztest.

QUARTILE RANK

TDIST TINV

TRIMMEAN

TTEST

ZTEST

B-17

Text and Data Functions

Table of Contents

Index

Text and Data Functions


Function
ASC

Description Changesfullwidth(doublebyte)English lettersorkatakanawithinacharacterstring tohalfwidth(singlebyte)characters. Convertsanumbertotext,usingthe(baht) currencyformat. Changeshalfwidth(singlebyte)English lettersorkatakanawithinacharacterstring tofullwidth(doublebyte)characters. Extractsthephonetic(furigana)characters fromatextstring.

BAHTTEXT

JIS

PHONETIC

B-18

TM1 Developers Guide

Table of Contents

Index
Symbols
% (percent sign) logical operator in rules 3-10 & (ampersand) logical operator in rules 3-10 / (forward slash) division operator in rules 3-7 \ (backslash) zero display division operator in rules 3-7 | (pipe) concatenation operator in rules 3-10 }Externals subdirectory Excel files 4-19 ~ (tilde) logical operator in rules 3-10 assigning to processes 6-22 consolidated elements 6-16 interactions 6-9 Lock 6-6 lock 6-4 none 6-8 read 6-5, 6-8 reserve 6-6 write 6-7 access rights replications 2-65 Action button adding to a worksheet 7-4 advanced navigation and mapping options 7-38 appearance properties 7-36 configuring 7-6 configuring process options 7-16 Match Title Elements option 7-27 modifying 7-47 moving and resizing 7-48 navigating to another worksheet 7-19 overview 7-2 Replace Current Workbook option 7-32 running a process 7-8

A
access privileges admin 6-3 assigning to chores 6-23 assigning to cubes 6-11 assigning to dimensions 6-19 assigning to elements 6-14

Index

Table of Contents

running a process and navigating to a worksheet 7-34 selecting a target worksheet 7-20 admin access privilege 6-3 aliases Dimension Editor 2-44 element attributes 2-11 samples 2-12 application admin access privilege 6-3 none access privilege 6-8 read access privilege 6-5 applications security privileges 6-24 applications See TM1 applications Area (rule target) 3-4 assigning security rights 6-2 asymmetrical cubes linking 3-41 attributes examples 2-12 format 2-13 overview 2-11 versus elements 2-17

B
bypassing rules statements 3-16

C
calculating averages

rules statements 3-39 cell-level security consolidations 6-26 leaf elements 6-26 security control cube 6-27 children adding to consolidated elements 2-27 chore none access privilege 6-8 read access privilege 6-5 chores security 6-23 circular references (rules) 3-23 Cognos TM1 9.1 SP3 1-ii comparison operators rules formulas 3-9 conditional logic rules formulas 3-8 consolidated element 6-16 consolidated elements adding children 2-27 defined 2-10 defining with dimension worksheets 2-52 deleting elements 2-33 consolidated values creating with weight factors 2-8 consolidation paths multiple within a single dimension 2-9 consolidations

TM1 Developers Guide

Table of Contents

versus rules 2-9 constants rules formulas 3-6 conventions documentation ii-xvi Copyright 1-ii Creating Cube dialog box 2-55 cube admin access privilege 6-3 assigning access privileges 6-11 lock access privilege 6-4 none access privilege 6-8 read access privilege 6-5 reserve access privilege 6-6 write access privilege 6-7 cube examples five-dimensional 2-4 four-dimensional 2-6 three-dimensional 2-2 cube properties assigning 2-57 load on demand 2-57 measures dimension 2-57 time dimension 2-57 cube references rules formulas 3-10 cube values DBS formulas 5-20 display formats 2-13

retrieving using DBR formulas 5-17 cubes as lookup tables 5-11 creating 2-55 creating with external data sources 2-54 creating with no data 2-54 DB rules function for sharing data 3-32 linking asymmetrical 3-41 loading on demand 2-62 locking 6-13 mirror 2-64 optimizing 2-58 ordering dimensions 2-54 releasing 6-13 reserving 6-13 security 6-18 selecting dimensions 2-3 source 2-64 unlocking 6-13

D
data rolling up 2-6 DB rules function 3-12 DBS formulas creating 5-20 overview 5-3 debugging rules checking FEEDERS 3-76

Index

Table of Contents

overview 3-65 tracing calculations 3-66 tracing FEEDERS 3-74 deleting consolidated elements 2-33 elements from dimensions 2-32 Excel file references from TM1 applications 4-34 object references from TM1 applications 4-34 dense dimensions 2-54 dialog boxes Creating Cube 2-55 dimension admin access privilege 6-3 assigning access privileges 6-19 lock access privilege 6-4 none access privilege 6-8 read access privilege 6-5 reserve access privilege 6-6 write access privilege 6-7 dimension consolidations overriding with rules 3-20 versus rules 2-9 Dimension Editor selecting elements 2-42 sorting elements 2-42 alphabetically 2-43 by hierarchy 2-44 by index 2-44 using aliases 2-44

dimension hierarchies creating with dimension worksheets 2-52 overview 2-6 sample 2-7 dimension worksheets creating 2-49 saving 2-53 dimensions adding elements 2-27 adding siblings 2-27 admin group 6-18 assigning access privileges 6-22, 6-23 creating 2-18 creating with Dimension Editor 2-20 deleting elements 2-32 dense 2-54 editing 2-26 locking 6-21 methods for creating 2-18 ordering in cubes 2-54 releasing 6-20 reserving 6-20 selecting in a cube 2-3 setting order of elements 2-34, 2-40 sparse 2-54 unlocking 6-21 display formats cube values 2-13 setting 2-14

TM1 Developers Guide

Table of Contents

documentation conventions ii-xvi set ii-xvi drill processes creating 3-46 deleting 3-53 editing 3-51 drilling down 2-7 drill-through creating assignment rules 3-54 data sources 3-49 example 3-57 drill-through processes creating 3-46 deleting 3-53 editing 3-51 saving 3-51

E
element admin access privilege 6-3 assigning access privileges 6-14 consolidated 6-16 lock access privilege 6-4 none access privilege 6-8 read access privilege 6-5 reserve access privilege 6-6 write access privilege 6-7 element order

setting from Server Explorer 2-40 setting in dimensions 2-34 Elements select all visible elements 2-28 elements adding siblings 2-27 adding to dimension 2-21, 2-27 changing position within hierarchy 2-28 consolidated 2-10 deleting consolidated 2-33 deleting from dimension 2-32 locking 6-17 numeric 2-10 order in dimensions 2-34 releasing 6-16 reserving 6-16 security 6-18 selecting in Dimension Editor 2-42 setting order in dimensions 2-40 sorting in Dimension Editor 2-42 string 2-11 types 2-10 unlocking 6-17 versus attributes 2-17 weight factors 2-8 Excel file references default action 4-28 deleting from TM1 applications 4-34 renaming 4-35

Index

Table of Contents

Excel files }Externals subdirectory 4-19 Excel spreadsheet functions A-1

hyperlinks opening uploaded application files 4-57

F
functions date and time A-2 DB 3-12, 3-34 financial A-4 IF 3-8 information A-6 logical A-6 lookup and reference A-7 math and trignometric A-9 statistical A-13 STET 3-16 supported Excel spreadsheet A-1 text and data A-18 unsupported financial B-5

I
IF function rules formulas 3-8 importing data processing worksheets 5-3

L
level 0 (dimension hierarchies) 2-7 linking asymmetrical cubes 3-41 loading cubes on demand 2-62 Lock access privilege 6-6 lock access privilege 6-4 logical operators rules formulas 3-10

M
mirror cubes 2-64 multidimensionality diagram 1-2 example 1-2, 1-4 overview 1-2 multiple consolidation paths 2-9

G
groups assigning security rights 6-2 groups dimension 6-27

H
hierarchy levels overview 2-7

N
naming conventions

TM1 Developers Guide

Table of Contents

TM1 objects 1-6 none access privilege 6-8 numeric constants rules formulas 3-6 numeric elements defined 2-10

processes security 6-21 public references in TM1 applications 4-41 TM1 applications 4-41

O
object references default actions 4-28 deleting from TM1 applications 4-34 renaming 4-35 OLAP 2-62 OLE DB 2-62 operators (rules) arithmetic 3-7 comparison 3-9 logical 3-10 optimizing cubes 2-58

R
ratios calculating using rules 3-24 read access privilege 6-5, 6-8 reference admin access privilege 6-3 none access privilege 6-8 read access privilege 6-5 references converting from private to public 4-41 converting from public to private 4-43 private 4-41, 4-43 public 4-41, 4-43 renaming TM1 application references 4-35 replications access rights required 2-65 advantages 2-63 cube relationships 2-64 mirror cube 2-64 server relationships 2-64 source cube 2-64 source server 2-64 target server 2-64

P
populating cubes DBS formulas 5-20 private references in TM1 applications 4-41 TM1 applications 4-41 process none access privilege 6-8 read access privilege 6-5

Index

Table of Contents

reserve access privilege 6-6 reserved characters TM1 object names 1-6 rolling up 2-7 rules debugging 3-65 deriving values 3-2 file names 3-2 overview 3-2 Rules Tracer 3-65 versus consolidations 2-9 rules formulas arithmetic operators 3-7 comparing expressions 3-9 comparsion operators 3-9 conditional logic 3-8 cube references 3-10 external cube references 3-12 internal cube references 3-11 logical operators 3-10 numeric constants 3-6 syntax 3-6 rules statements Area 3-3 arranging 3-13 bypassing 3-16 calculating averages 3-39 calculating ratios 3-24 circular references 3-23

consolidated and numeric elements 3-15 DB function 3-34 DB rules function for sharing cube data 3-32 Formula 3-3 guidelines 3-3 linking asymmetrical cubes 3-41 order of calculation 3-20 overriding dimension consolidations 3-20 precedence over dimension consolidations 3-20 restricting scope 3-16 restricting to simple values 3-37 sample 3-31 sample applications 3-24 specifying target 3-4 STET function 3-16 syntax 3-3, 3-31 Rules Tracer checking FEEDERS 3-76 complex example 3-68 overview 3-65 simple example 3-66 tracing calculations 3-66 tracing FEEDERS 3-74 rules worksheets creating 3-17 file names 3-17 overview 3-17 saving 3-19 using 3-18

TM1 Developers Guide

Table of Contents

S
security access privileges 6-3 applications 6-24 applying privileges to applications 6-24 applying privileges to TM1 applications 4-38 cell-level 6-26 chores 6-23 cube-level 6-11, 6-18 cubes cubes
security 6-11 dimension-level 6-18 element-level 6-14, 6-18 group 6-18 processes 6-21 references 6-24 security control cube 6-27 security control cube 6-27

security rights groups 6-2 interaction 6-9 server source 2-64 target 2-64 Server Explorer setting element order 2-40 suppressing display of selected objects 4-43 sharing data between cubes 3-32

siblings adding to dimensions 2-27 sorting elements alphabetically in Dimension Editor 2-43 by hierarchy in Dimension Editor 2-44 by index in Dimension 2-44 Dimension Editor 2-42 source cubes 2-64 source server 2-64 sparse dimensions 2-54 STET rules function 3-16 string elements defined 2-11 supported Excel functions ABS A-9 ACOS A-9 ACOSH A-9 ADDRESS A-7 AND A-6 ASIN A-9 ASINH A-9 ATAN A-9 ATAN2 A-9 ATANH A-9 AVEDEV A-13 AVERAGE A-13 AVERAGEA A-13 BINOMDIST A-13 CEILING A-9

Index

Table of Contents

CHAR A-18 CHOOSE A-7 CLEAN A-18 CODE A-18 COLUMN A-7 COLUMNS A-7 COMBIN A-9 CONCATENATE A-18 CONFIDENCE A-13 CORREL A-13 COS A-9 COSH A-10 COUNT A-13 COUNTA A-13 COVAR A-13 DATE A-2 DATEVALUE A-2 DAY A-2 DAYS360 A-2 DB A-4 DDB A-4 DEGREE A-10 DEVSQ A-13 DOLLAR A-18 EVEN A-10 EXACT A-18 EXP A-10 EXPONDIST A-14 FACT A-10

FALSE A-6 FIND A-18 FISHER A-14 FISHERINV A-14 FIXED A-18 FLOOR A-10 FORECAST A-14 FV A-4 GEOMEAN A-14 GROWTH A-14 HARMEAN A-14 HLOOKUP A-7 HOUR A-2 HYPERLINK A-7 IF A-6 INDEX A-7 INT A-10 INTERCEPT A-14 IPMT A-4 IRR A-4 ISERR A-6 ISERROR A-6 ISNA A-6 ISPMT A-4 KURT A-14 LARGE A-14 LEFT A-18 LEN A-19 LINEST A-14

10

TM1 Developers Guide

Table of Contents

LN A-10 LOG A-10 LOG10 A-10 LOGEST A-14 LOOKUP A-7 LOWER A-19 MAX A-14 MAXA A-15 MEDIAN A-15 MID A-19 MIN A-15 MINA A-15 MINUTE A-2 MIRR A-4 MOD A-10 MODE A-15 MONTH A-2 MORMINV A-15 NA A-6 NORMDIST A-15 NORMSDIST A-15 NORMSINV A-15 NOT A-6 NOW A-2 NPER A-4 NPV A-5 ODD A-10 OR A-6 PEARSON A-16

PERMUT A-16 PI A-11 PMT A-5 POWER A-11 PPMT A-5 PROPER A-19 PV A-5 RADIAN A-11 RAND A-11 RATE A-5 REPLACE A-19 REPT A-19 RIGHT A-19 ROMAN A-11 ROUND A-11 ROUNDDOWN A-11 ROUNDUP A-11 ROW A-7 ROWS A-8 RSQ A-16 SEARCH A-19 SECOND A-2 SIGN A-11 SIN A-11 SINH A-11 SKEW A-16 SLN A-5 SLOPE A-16 SMALL A-16

Index

11

Table of Contents

SQRT A-11 STANDARDIZE A-16 STDEV A-16 STDEVA A-16 STDEVP A-16 STDEVPA A-17 STEYX A-17 SUBSTITUTE A-19 SUM A-12 SYD A-5 T A-19 TAN A-12 TANH A-12 TEXT A-19 TIME A-2 TIMEVALUE A-3 TODAY A-3 TREND A-17 TRIM A-20 TRUE A-6 UPPER A-20 VALUE A-20 VAR A-17 VARA A-17 VARP A-17 VARPA A-17 VLOOKUP A-8 WEEKDAY A-3 WEIBULL A-17

YEAR A-3 syntax rules formulas 3-6

T
target server 2-64 TM1 applications documentation set ii-xvi naming conventions for objects 1-6 TM1 application references deleting Excel file 4-34 deleting object 4-34 file references 4-28 object references 4-28 privatizing public 4-43 publishing private 4-41 renaming 4-35 TM1 applications adding TM1 object references 4-12 converting from private to public 4-41 converting from public to private 4-42 creating 4-7 creating new TM1 objects 4-16 creating secondary-level 4-11 default actions 4-28 group 4-7 private 4-41, 4-42 privatizing public applications 4-42

12

TM1 Developers Guide

Table of Contents

public 4-41, 4-42 publishing 4-8, 4-41 publishing to TM1 Web 4-45 references to private subsets 4-14 references to private views 4-14 secondary-level 4-7 security privileges 4-5, 4-38 top-level 4-7 viewing logical groupings 4-43 TM1 objects suppressing display in Server Explorer 4-43 TM1 Web publishing TM1 applications 4-45 setting Websheet properties 4-48 TM1 Websheets setting properties 4-48

U
unsupported Excel functions ACCRINT B-5 ACCRINTM B-5 AMORDEGRC B-5 AMORLINC B-5 AREAS B-12 ASC B-18 BAHTTEXT B-18 BETADIST B-15 BETAINV B-15 CELL B-10

CHIDIST B-15 CHIINV B-15 CHITEST B-15 COUNTBLANK B-15 COUNTIF B-15 COUPDAYBS B-5 COUPDAYS B-5 COUPDAYSNC B-5 COUPNCD B-5 COUPNUM B-6 COUPPCD B-6 CRITBINOM B-15 CUMIPMT B-6 CUMPRINC B-6 DAVERAGE B-2 DCOUNT B-2 DCOUNTA B-2 DGET B-2 DISC B-6 DMAX B-2 DMIN B-2 DOLLARDE B-6 DOLLARFR B-6 DPRODUCT B-2 DSTDEV B-2 DSTDEVP B-2 DSUM B-3 DURATION B-6 DVAR B-3

Index

13

Table of Contents

DVARP B-3 EDATE B-3 EFFECT B-6 EOMONTH B-3 ERROR.TYPE B-10 FACTDOUBLE B-12 FDIST B-15 FINV B-16 FRENQUENCY B-16 FTEST B-16 FVSCHEDULE B-7 GAMMADIST B-16 GAMMAINV B-16 GAMMALN B-16 GCD B-12 HYPGEOMDIST B-16 INDIRECT B-12 INFO B-10 INTRATE B-7 ISBLANK B-10 ISEVEN B-10 ISLOGICAL B-10 ISNONTEXT B-10 ISNUMBER B-10 ISODD B-10 ISREF B-10 ISTEXT B-10 JIS B-18 LCM B-12

LOGINV B-16 LOGNORMDIST B-16 MATCH B-12 MDETERM B-13 MDURATION B-7 MINVERSE B-13 MMULT B-13 MROUND B-13 MULTINOMIAL B-13 N B-11 NEGBINOMDIST B-16 NETWORKDAYS B-3 NOMINAL B-7 ODDFPRICE B-7 ODDFYIELD B-7 ODDLPRICE B-7 ODDLYIELD B-7 OFFSET B-12 PERCENTILE B-16 PERCENTRANK B-17 PHONETIC B-18 POISSON B-17 PRICE B-7 PRICEDISC B-8 PRICEMAT B-8 PROB B-17 QUARTILE B-17 QUOTIENT B-13 RANDBETWEEN B-13

14

TM1 Developers Guide

Table of Contents

RANK B-17 RECEIVED B-8 RTD B-12 SERIESSUM B-13 SQRTPI B-13 SUBTOTAL B-13 SUMIF B-13 SUMPRODUCT B-13 SUMSQ B-14 SUMX2MY2 B-14 SUMX2PY2 B-14 SUMXMY2 B-14 TBILLEQ B-8 TBILLPRICE B-8 TBILLYIELD B-8 TDIST B-17 TINV B-17 TRANSPOSE B-12 TRIMMEAN B-17 TRUNC B-14 TTEST B-17 TYPE B-11 VDB B-8 WEEKNUM B-4 WORKDAY B-4 XIRR B-8 XNPV B-8 YEARFRAC B-4 YIELD B-9

YIELDDISC B-9 YIELDMAT B-9 ZTEST B-17

V
values deriving with rules 3-2

W
Websheets hyperlinks to uploaded application files 4-57 weight factors consolidations 2-8 windows Creating Cube 2-56 Dimension Editor 2-20 write access privilege 6-7

Index

15

Table of Contents

16

TM1 Developers Guide

You might also like