2 Login to Clarity Please logon go your current DEVELOPMENT environment. If you do not have access to a DEV environment use our RegoU environment:User Name = ruserxx (01-15)Password = niku2000
3 Course Overview Administration Overview Objects Lookups OBS/Security PortletsProcessesSupport ItemsExercisesAppendixSettingsGeneralProject ManagementResources/RolesDatamart and time slicesFinancial Setup
4 Administration overview Administration tasks can be broken down into “one-time” and on-going tasks“One-time” tasks are initial settings that are created at the time Clarity is set up and then evaluated annually or as needed“One time” tasks include setup of new objects and attributesOn-going tasks include regular administrative tasks that are needed such as posting, updating time periods, regular reporting, etc.
5 Clarity StudioClarity Studio is the interface used to create and deploy portals, dashboards, menus and objects that can be configured or customized to match the needs of the organization.Your organization must have a Clarity Studio license to use this functionality.The user must have “Administration-Studio” access assigned as well as rights to create/edit Objects, Portlets and Pages.
6 Objects - OverviewObjects are the major functional components of Clarity.Objects define the attributes (fields), subpages (links), page layout, and views that make up your configured instance of CA Clarity PPM pages.In addition to stock objects that are delivered with the system, custom objects can be created as needed by the organization.Use the default objects or create custom objects and subobjects to manage information for your specific business needs.Once the Object is created, add attributes, links and actions and setup the views.
7 Objects – Overview cont. Each object has four distinct pieces that can be configured:PropertiesAttributesLinksViewsThings to remember:There are reserved words that cannot be used in naming the Object.Attributes cannot be deletedCA recommends not adding more than 100 custom attributes to a single custom object as it may impact performance.
8 The Investment objectThe Investment object allows you to define object attributes that will be used across multiple objects.This streamlines the creation process and insures consistency across objectsAttributes may be re-labeled on the shared objects if needed (although the field ID remains the same).Attributes defined at the investment level are available to all stock objects but do not have to be used.Updates to Investment attributes need to be made at the Investment level
9 Objects - Types Stock Objects Custom Objects Primary standard objects: ProjectTaskTeamResourceCompanyApplicationCustom ObjectsThere are two kinds of custom objects:Master objectsSub-objects
10 Objects - AttributesAttributes are the fields on any object that store information.The attributes of each object are available on the Attribute screen within the object.Many attributes are delivered out-of-the-box but an unlimited amount of additional attributes can be created as needed using Clarity Studio.Once created, attributes can be organized and placed on views and portlets and used for reporting. (Example: “Start Date” is an attribute of the project object.)
11 Objects – Attribute Data Types When creating a new attribute, the procedure used depends on the data type selected. These are the data types available for creating attributes.StringLarge StringNumberFormulaMoneyBooleanDateLookupMulti-Valued lookupAttachmentTime-varyingURL (Links to actual data)Virtual fields (Not actual data)
12 Objects – Calculated Fields Calculated attributes can be created to display a read only value that is calculated dynamically.Values are calculated from existing system values and are calculated when the page is accessed and not stored in the database.The resulting value showing the results of the calculation can only be one of the following data types, depending on the function.Number: This data type is used for a calculated attribute that requires a number value such as a sum or an average of several numbers.String: This data type is used for a calculated attribute that requires the concatenation of two or more values, for example, the value of the attribute "created_by" and the constant "2007." An example of the value produced by the concatenation is "ssmith 2007.“Date: This data type is used to calculate dates using basic arithmetic or to provide the current date.
13 Objects – Calculated Fields cont. The following attribute types cannot be used with calculated attributes.FormulaTime-varyingAttachmentLong StringMulti-Value LookupsVirtualNote: Source fields for a calculated attribute cannot be deleted from the system.Values are calculated when the page is accessed and not stored in the database.
14 Objects - LookupsA lookup is a field in which the user can select from a drop down or pull down list of predefined choices.The choices can be static values entered by an administrator or dynamic values returned from querying the database.Lookups can be displayed as a value or an iconLookup TypeDescriptionStatic ListUse this type of lookup when working with a standard set of values. Static list lookups are often used as pull-down lists for fields, reports, and custom forms.Static Dependent ListsUse this type of lookup to create a hierarchy of lookups and values. Items that appear on the second and subsequent lists depend upon choices previously made by the user. For example, if the user selects "USA" from a country browse list, then a state list may appear from which the user can select an appropriate stateDynamic QueriesUse this type of lookup to capture data from the Clarity database in real time to populate the drop-down or browse lists. (Using NSQL) These lookups provide the most up-to-date values possible and are often used inside browse windows.Note: You can nest a static lookup inside a dynamic query lookup. You cannot nest a static dependent lookup inside a dynamic query lookup.
15 Static Dependent lookups vs. Parameterized Lookups A static dependent lookup is a single field with a structured hierarchy. Users select the highest level and drill down to the lower level value. A parameterized lookup is two separate lookups that have been joined with a formula. These are defined as two separate fields and can be updated individually. Once the formula has linked the fields, the value of the primary lookup can control the available values in the secondary lookup. They can also be reported on separately. The Project type/Project category field in Clarity is a sample of a parameterized lookup.
16 Objects – Views Object views control what users see in the interface. The views can have attributes added or removed from them to enhance the user experience.Views can also be hidden from or shown in view based on display conditions such as security or a specific lookup value being chosenThere are three types of views.CreateThis is what the user sees when a new entry in the Object is createdEditThis is what the user sees when accessing a record in the object that has already been created such as accessing a projectListThis is the view that a user sees when first entering the object such as clicking on the Projects link on the Home menu.
17 Page security and conditions Use the Sub-page properties to select “Secure” to add options to make the page viewable to only assigned usersUse the Display conditions to make a page visible only if other conditions are met (e.g. only show this page if Planned Cost is greater than $100k)
18 Audit Trail Consider using the audit trail vs. required fields Audit trail retains list ofWho made the changeOriginal ValueNew ValueDate of change
19 Organizational Breakdown Structure (OBS) An Organizational Breakdown Structure (OBS) is a company defined hierarchical structure used to categorize projects and resources used for reporting and filtering from both a visual and functional perspective.Created from Admin Main MenuAdministration>Resource Organization and Access>OBSMany OBSs can be created as are needed for the organization, but there is a limit of five that can be attached to a data mart.There can be multiple OBSs with security enabled.If the OBS is security enabled, ALL users in the system should be added to that OBS.
20 Organizational Breakdown Structure (OBS) Components to considerOBS TypeLevelsDetermined by the needs of the business.May have a single Corporate OBS or create several OBS structures to organize and report data as needed.Examples of Common CriteriaGeographical locationResource roles and or order of authorityProject size, type, initiativeProducts
21 Organizational Breakdown Structure (OBS) OBS CreationAdministration>OBSClick NewName OBS (this is what will display to users)Create unique id. Ex: xx_ex_obsChoose Parent Level. Click Save and Return.Maintaining OBSUse caution when deleting OBS legs as reporting may be affected.Edit OBS legs that are being replaced if historical data is not neededAdd new OBS legs to existing structure
22 OBS – Quick CreateQuick Create allows you to quickly add multiple OBS values with the same parent
23 Security Rights Based Model Studio Based Inherent rights: (Automatically granted by the system)Instance rights: used for specific objects (i.e. projects, resources)Global rights: providing access to all specified functions of ClarityGroups: access rights based on membership in a group for users who share common responsibilities (Role Based)Organizational Breakdown Structure (OBS): User access assigned to objects in Clarity (i.e. projects, resources) that are linked to a parent-child hierarchyStudio BasedConditional views: views that are displayed when a preset condition is metSecure sub-objects/pages: Sub-objects and sub-pages can be set up with security access rights.Process-flow driven security (locking fields): Process workflows can be set to lock data fields for read-only
24 Security – Rights Based Inherent RightsAutomatically applied when user is first added to Clarity or the user name is associated with a particular field on an object.Two KindsRevocableResource – Enter Time (for themselves)IrrevocableUser Favorites Menu – EditInstance RightsProvide access to specific instance of particular object type.Can be assigned to an individual or groupShould be used minimally as they are difficult to manage and administerInherent example, once you are designated the Resource Manager of a resource and your name is populated on a field called “Resource Manager” in the resource profile, additional rights are automatically granted to you for that resource.Instance – Time Approval
25 Security – Rights Based Global RightsProvide broad access to objects of a particular type and enables users to access a general area of the application to perform a specific function or to all instances of an objectThese rights override any other associated instance or OBS level rightsRecommended where possible for performance reasonsGroupsDefined as a set of users who perform a similar set of functions or “role based”Contains a collection or combination of rights that are applicable to each member of that group.A single resource may be associated with any number of groupsMay contain a collection of Instance, OBS and Global level rightsEasy way to assign multiple rights to several people at onceEasy to administer
26 Security – Studio Based Conditional ViewsDisplay conditions can be built for an object as a way to limit visibility to a view by an individual user or to a group.Securing Subobjects (Subpages)Applying page level security hides the page from unauthorized users.Creating a secure sub-page allows it to be invisible to those who do not need to see it.Demo conditional view on subpageConditions to view or edit a sub-page can be built based upon the value of a field or the user’s affiliation with an OBS, Group, Partition or Global access rights.Display conditions are set for a view in the studio tool.Securing Sub ObjectsSub-pages can be marked as a “secure” page creating view global rights, edit global rights and instance rights for that sub-page.(Example: A status report sub-page if marked “secure” shows only to the project manager and whoever else he authorizes to view or edit that page. It is invisible to all others who do not have view or edit access to that sub-page.)
27 Security Implicit vs. Explicit Pre-requisites Some rights are useless without another right (example: does no good to give someone the rights to create Security Groups if they can’t get to the Admin side of the system)Therefore the other right has to be givenSometimes Clarity will automatically (implicitly) give the pre-requisite Rights [will not show in list of rights in the UI]Example: Give someone “Administration – Authorization” to manage rights of other users and groups and they will get Administration access but doesn’t show in list of rightsSometimes Clarity will NOT automatically give the pre-requisite right and you must Explicitly grant it for the original right to mean anythingExample: “Administration – Partition Models” – means nothing unless you manually also give “Administration Access”
29 Security – Special Rights Collaborator Manager rightsDoesn’t show in security model screens. Only the current Collaboration Manager can make someone else a Collaboration ManagerIncident SecurityIn order to gain access to incidents, incident categories must be created within the administration section (Data Incidents). Next, a person/group/OBS can be given rights to manage or select the incident category.Sub-page SecurityThe first step is to mark a sub-page as “secure”. This action will create two rights within the security administration section – “edit” and “view” for that subpage. These rights can then be given to a person/group/OBS.
30 Security – Special Rights Field Level SecurityRead Only FieldA field can be made read-only. This is useful when it is populated by a process or auto-numberedLocked FieldA field can be locked or unlocked by the process at certain point(s) in the object lifecycle.Calculated FieldThe editable field can be put on a secure subpage, then a calculated field (based on the editable field) can be displayed on the main subpage – having the appearance of being read-onlyDependent Lookup FieldThis is only available in later versions, but it is possible to have one lookup field display values based on the value of another lookup field on the same object. This will need to be done with query based lookups.
31 Steps to Implement a Security Model Try to have people receive their rights only onceIf a person gets security through OBS rights and group rights or through multiple groups, it will slow down performance in some pages/viewsDo not use single instance rights where security groups make senseMinimize security maintenanceArchitect security in such a way that when new people are added or people change groups or roles that changing their rights take a minimum amount of effortDetermine OBS structure early onEven if the OBS structure remains at a high level, 2-3 levels, having those levels agreed upon will make changes easier if other levels are required in the futureUnderstanding what each right meansThe definition of each rightUnderstand licensing implications of different rights
32 Steps to Implement a Security Model Define Security RolesNot same as Primary Role or their Security GroupsTheoretical, not in the systemExample: Timesheet user is not a Primary Role and it may mean membershipPick a philosophy (will discuss later)Do it on paper first (your security model design)Can use OOTB groups as suggestions or material to brain chew on but you will likely not use them.Set up the model in ClarityCan be done concurrent with other implementation codingCreate dummy dataCreate dummy users – one per “role” (not same as a group)Look at dummy users in Licensing PortletsChallenge any discrepancies to published PDF’sDo the math of license implications of your current designLog in as dummy user and Test and simulateCan you see what you should in that role?Can you NOT see what you shouldn’t see (often neglected in test scripts)
33 Security Exposure Philosophies Underlying PhilosophiesOpen by default, restrict only when neededClosed by default, open only when absolutely neededBlendedOpen by default for everything but Financial information (pay grades, rates, etc) which should be fully closedChoice of philosophyOften driven by standards and compliance (SOX)Otherwise – blended approach works best. Closed by default creates overhead for the Support team that isn’t proven to be necessary. Also causes system to have to run more logic to determine access.This means Global rights but within the limits of their licensing (no need to give timesheet users the rights to manage projects if they don’t)Auditing versus SecurityIf someone is just worried that someone else will alter a field and no one will know who did, then consider auditingToo much auditing can cause performance issues on some versions of Clarity
34 Security - Licensing Implications Licensing PortletsAudit them periodically and compare results to licensing PDF’s to validate what the portlet seems to be saying
35 Portlets and Portlet Pages- Overview Portlets are snapshots into CA Clarity PPM data and can consist of grids, graphs, or snippets of HTML.You select data to display in the Portlet.While Portlets do not replace CA Clarity PPM reports, they can be considered as mini-reports.Portlets obtain information and business intelligence from CA Clarity PPM, from other databases within the enterprise, and from external sources available in HTML, such as business news and network status information.Each portal page is comprised of a set of Portlets—small windows of information presented as graphs, tables, or web page snippets—that appear automatically on the desktops of CA Clarity PPM users with the appropriate access privileges.Users can further personalize their portal pages by deciding which Portlets to show or hide and where to show them on the page.
36 Portlets - Types Chart Portlets Grid Portlets HTML Portlets Provide graphic views into CA Clarity PPM data, such as pie and line charts.Grid PortletsAre lists or tables of data that can be filtered on-the-fly.HTML PortletsFormatted in HTML, these Portlets grab web page content and plug it into a CA Clarity PPM page. Data can be extracted from other internal or external web sites.Filter PortletsUsed to apply a common filter to all Portlets on a page.Interactive PortletsDisplay visually-rich, real-time CA Clarity PPM information using imported Xcelsius visualizationsYou can create and publish portals across the enterprise.
37 Data Administration Processes Administration>Data Administration>ProcessesProcesses automate repetitive steps that you would otherwise perform manually though the user interface.To accurately reproduce a user action, the process impersonates the process initiator to perform the process steps.A process includes a series of steps that result in an end.Each step performs a single or multiple actions that moves the process toward its completion.All processes have a start and a finish step. Processes use pre and post conditions to connect the steps.Clarity provides stock processes that you can use to:Approve documentsApprove timesheetsApprove ideasImplement scenarios
38 Data Administration Process Steps The Process Steps provide the foundation for the Clarity Processes.Start and End steps are always required and are automatically created even if you do not explicitly define them.You can add and define intermediate steps.Each step can consist of multiple actions that must be performed by an assigned Clarity User or the CA Clarity PMO.
39 Data Administration Process Logic The Process logic is defined as the Pre-Condition or Post-Condition of each step.When defining a pre-condition to a step, you can use attributes from multiple objects added to the process. For example, you can create pre-conditions that:Check the status of action itemsCheck between object attribute valuesWait for a sub-process to complete before joining the master process After defining the pre-conditions that trigger a step, you must define post-conditions that connect this step to the next step or the end step.When defining a post-condition, for example, you can create post-conditions that:Check between object attributes values (except for MVL attributes)Wait for a sub-process to complete before joining the master
40 Data Administration Process Actions Process actions can be defined as: Manual ActionsSystem ActionsRun a JobCreate Sub-processesUse a custom GEL Script
41 Data Administration Creating a Process Design Draw it out Create ProcessAssociate ObjectStepsPRE-CONDITIONACTIONPOST-CONDITIONValidate / Activate
42 Data AdministrationExample Process (Lock Fields and Set Status)
43 Common Support Issues Check for Transaction Posting Issues Processes in Error and TroubleshootingAdd Time Reporting PeriodModifying Time SlicesUsing a Custom Object to track Work RequestsUsing RegoXchange portlets
44 Questions Phone Email Website We hope that you found this session informative and worthwhile. Our primary goal was to increase your understanding of the topic and CA PPM in general.There were many concepts covered during the session, if you would like to contact any presenter with questions, please reach out to us.Thank you for attending regoUniversity 2015!PhoneWebsite
45 Hands On ExercisesExercise 1: Create New Object Exercise 2: Create Subpage in Object Exercise 3: Create Lookup Exercise 4: Create Attributes in Object (all types), edit field sizes and make fields required both on field and view Exercise 5: Modify Create, Edit and List views Exercise 5: Create/Modify Security Group for New Object and New Subpage Exercise 6: Create Grid Portlet based on new Object Exercise 7: Add new Grid Portlet to Portlet Page Exercise 8: Create workflow to trigger action item on new Object
46 Appendix Settings General Project Management Resources/Roles Datamart and time slicesFinancial Setup
47 General Settings System Options These features support the definition of general Clarity configurationsInvalid Login Limit, Timeout Limits, Change Password Requirements, etc.Navigation: Administration Tab>System Options>General SettingsSite LinksCreate site links that appear on the General page for quick access to websites outside of ClarityDownloadsDownload MSP Connector and other available integrations
49 Project Management Settings General SettingsNavigation: Administration>Project Management>SettingsTimesheet OptionsAdministration>Project Management>Timesheet OptionsRecommended settingsIndirect Time should be disabled.Charge Code and Input Type Code should be removed.7 days before and 7 days after is the default setting for Clarity to identify task assignments to populate on the timesheet. Consider increasing the window (i.e. 14 before and 14 after) if the project schedules are not updated regularly.Timesheet columns sequence is Notes Icon, Investment, Phase Description, Daily Actuals, Total, ETC
50 Project Management Settings Time Reporting PeriodsAdministration>Project Management>Time Reporting PeriodsIn this section, the Application Administrator can create and manage the time reporting periods.Weekly time reporting periods are used.Set the start date to the company standard. This is usually Saturday, Sunday or Monday.Time periods should be opened or closed based on COMPANY accounting rules. When a month is closed out, and no more entries are allowed, then those periods should also be closed in Clarity.
51 Project Management Settings Charge CodesAdministration>Project Management>Charge CodesCharge Code is one of the project financial fields not requiring the Financials Module to be enabled.Allows a COMPANY to define an additional financial dimension for projects. Charge Code is also available as an element in the rate/cost matrices and can be used to determine the rates and costs to be applied to financial transactions.Input Type CodeAdministration>Project Management>Input Type CodeIs one of the Resource financial fieldsAllows the end user to define an additional financial dimension for resources.Input Type Code is also available as an element in the rate/cost matrices and can be used to determine the rates and costs to be applied to financial transactions.Each resource may be assigned an Input Type Code value within the Resource General Properties page.
52 Charge Code and Cost type In version 13.3(?), the Cost type field was introducedCost type values are Capital and OperatingFor those using Charge code for that, there is a job to update the Cost type automaticallyThere are a few considerationsCost type is not available on Debit rules or Credit rules for ChargebacksCost type is not an available field on the Transaction Entry screenCost type is not available on the timesheet and cannot be changed at the assignment level
53 Project Management Settings Base CalendarsAdministration>Project Management>Base CalendarsApplication Administrator can set up the base calendars, which reflect standard holidays where a resource is located or track otherwise unavailable work days.Organization resources use the calendar as their base calendar. Exception calendars may be selected and assigned to those applicable resources.Resources may also select non work days such as vacation on their own calendars
54 Resources/RolesA Resource is a person or object (such as a piece of equipment or material) that is used to perform a task or capture a non-labor expense.A Role is a generic description of a function performed by a named resource. (i.e. Developer, Business Analyst, Project Manager)Used for planning and scheduling work effort to be replaced by named resources when the work commences.Four types of resources or roles in ClarityLabor: This type designates the performance of work by a named resource or a role.Equipment: This type refers to any type of machinery used to perform a job. For example, a tractor is a piece of equipment, as are computers, printers, and fork-lifts.Material: Any type of material used to perform a job, such as training guides, chemicals, or fuel.Expense: This type identifies the costs that are associated with a resource or a role. It can also be used to identify any non-labor costs.NOTE: Roles are assigned to projects to help identify task work effort and timelines. Named Resources eventually replace roles in order to perform the work and complete the tasks.
55 Resources/Roles Resource Creation Steps to Create User Profile Application side: contains information regarding resource that will be necessary when they are staffed to projects and enter timeAdmin side: holds information regarding resource that will be necessary when logging into application and using Clarity. Referred to as User ProfileChanges in either side flows through to the otherSteps to Create User ProfileAdministration>Organization and Access>ResourcesClick New ButtonEnter user information on Properties page.Click Save and Return
56 Resources/Roles Update Resource added on Admin Side Home>Resource Management>ResourcesClick on name of resourceEnter Values for all required fieldsClick Save and ReturnFinancially Enable a ResourceAccess Resource from Home side using above stepsClick on Properties tab, select Financial drop downFill in required fieldsSelect Financially Active Checkbox.
57 Resources/Roles Create a new Labor Role Financially Enable a Role Home>Resource Management>ResourcesChange Is Role Filter to yes in filter options and click Filter to display existing rolesClick NewSelect Role on Select Resource Type page that displays.Select Labor for Resource Type. Click NextPopulate Required fields. Click SaveFinancially Enable a RoleSelect role using Is Role filter as shown in Create a RoleClick on Properties>FinancialCheck Financially Active box and populate Transaction Class and Resource ClassClick Save and Return
58 Resources/Roles Create a new Non-Labor Role Financially Enable a Role Home>Resource Management>ResourcesChange Is Role Filter to yes in filter options and click Filter to display existing rolesClick NewSelect Role on Select Resource Type page that displays.Select Equipment, Material or Expense for Resource Type. Click NextPopulate Required fields. Click SaveFinancially Enable a RoleSelect role using Is Role filter as shown in Create a RoleClick on Properties>FinancialCheck Financially Active box and populate Financial Department, Financial Location, Transaction Class and Resource Class.Click Save and Return
59 Data Administration Adding a New Slice So we are putting in the Rego Adoption Metrics.One of the metrics looks at hard booking versus the overall allocation.Since we cannot get the hard booking amount easily from the database, we need to add a slice.Log in as an admin and go to Administration / Time slices.Click on the New button
60 Data Administration Adding a New Slice Name the slice something meaningful.We want the slice to roll over each month so we set the roll over interval.We want to start the slice on 1/1/2014 so we set that as the start.We don’t care about the middle of the month, we just want the month total so we set the slice period to Monthly.We want to be able to look ahead 12 months for hard allocation so we set the number of periods to 12.For the Item, scroll down and look for Hard Allocation.Click Save and Return
61 Data Administration New Slice Last run date will be blank until the Time Slicing job runs.After you save, the slice will appear in the time slices screen.Notice that the expiration and Last Run have not filled in yet because the time slicing job needs to run.Depending on what item you picked, it could take anywhere from minutes, to hours, to even an entire weekend to populate.
62 Data Administration New Slice Last Run date is populated which means data is available.When the time slicing job is done, the last run date will be populated.This is your indication that the tables have been populated and can now be used in portlets and queries.
63 Data Administration Types of Slices There are five DAILY out of the box slices.These slices are used to populate the datamart and some reporting tables.These should NEVER have their names changed.# Slice Name1 DAILYRESOURCEAVAILCURVE2 DAILYRESOURCEACTCURVE3 DAILYRESOURCEESTCURVE10 DAILYRESOURCEALLOCCURVE11 DAILYRESOURCEBASECURVEThere are different types of slices.These are the five main daily out of the box slices.These slices populate the datamart and reporting tables. If your slice falls off for one of these, they fall off of the datamart as well.
64 Data Administration Types of Slices There are four MONTHLY out of the box slices.These slices are not used to populate the datamart but are used in reporting.# Slice Name4 MONTHLYRESOURCEACTCURVE5 MONTHLYRESOURCEESTCURVE6 MONTHLYRESOURCEALLOCCURVE7 MONTHLYRESOURCEAVAILCURVEThese are four out of the box MONTHLY slices.These are not used to populate the datamart but are used in some reporting and out of the box portlets.
65 Data Administration Internal Slices There are internal slices that cannot be seen or modified via the browser.These slices are used in Team Detail and Resource Planning time scaled views.These slices are slices and built instantly as soon as data is saved in the UI.Internal slices require the initial Datamart settings to be set up before they can be populated.There are also hidden internal slices that cannot be modified using the browser.These are typically used for quick data display like on the resource planning pages.These slices are slices on the fly when the data is save therefore they do not rely on the time slicing job.These slices have limitations and are most of the reasons why sometimes you get an error scrolling through a time scaled portlet.On fresh installations, the datamart needs to be set up before these internal slices begin to get populated.Internal slices or Instaslices have the following limitations: Internal time slice range is as follows:28 Daily - One week in the past, the current day and 3 weeks in the future16 Weekly - 2 weeks in the past, the current week and 13 weeks in the future36 Monthly - 4 quarters in the past, the current quarter and 7 quarters in the futureYear, Quarter and Monthly periods all use monthly slicesWeekly period uses weekly slices . Daily period uses daily slices
66 Data Administration Best Practices/Datamart Slices Since the daily slices populate the datamart, keep your daily slices to a minimum.Use monthly or weekly slices if possible.Try to avoid using daily dates in portlets.The Datamart Job should be ran nightly.Do not run during the day.Since all of the slices are stored in one table, there are some things to keep in mind.Keep the daily slices to a minimum. Most slices are stored at the assignment level. So a single resource can create tons of records.One way to help is in the queries to use monthly or weekly slices.Depending on the client and how much data there is, the datamart job can be a beast. The datamart job should be scheduled nightly off hours. If you have a client that runs it during the day, it might be a good idea to find out why.
67 Data Administration Best Practices/Time Slices Actuals : Keep your daily slices to a minimum.ETCs : There is no need for ETCs in the past. Suggestion is to keep the From date as the start of the current month.Baselines : If the client does not use baselines, set the number of periods to 0. The logical configuration for Baseline slice data should start at the beginning of actuals and extend through estimates.Availability : Align the From Date to the same From date as actuals and set the number of periods to cover the range.For Actuals, keep your daily slices to a minimum. Use Monthly and Weekly if you need more reporting periods.There's no need for ETCs in the past so keep the slice from date as the start of the current month.If the client does not use baselines, you can set the number of periods to 0. This will help to speed things up. But remember to change it back if needed.Availability, allocation, and other similar items should mimic the same dates as your actuals. This way you know that if you pull actuals you can get the other metric.
68 Data Administration Suggested Approach for Time Slice Records One year in the past:ActualsTimesheetsOne year in the past and 2 years in the future:BaselinesVariancesAllocationsTwo years in the future:EstimatesAvailabilityNOTE: Timeslices must not be removed, but they may be modified.Editing a Timeslice causes its data to be removed from the DataMart, and then reloaded based on the new definition.Click on the Timeslice ID to edit the Timeslice.Click on the New button to add a Timeslice. Save all changes.Note: If there is a large volume of data, 1 or more years’ worth, you should schedule the changing of Time Slice records outside of the normal work day. It may take one or more hours for the Time Slice records to refresh.
69 Data Administration Your Data Options Clarity has three main places where data is stored:Core Clarity Tables (Real Time)ResourcesInvestmentsDatamart (Nightly)NBI_PRT_FACTSTime Slices (Near Real Time)PRJ_BLB_SLICESPRJ_BLB_SLICEREQUESTSFirst, lets talk a little about where data is stored at. Data in clarity is stored in three main areas.The core clarity tables, which consists of the main objects like resources or investments. These tables are updated in real time. A PM hits save, the data shows up.The Datamart is a collection of tables that have various time data rolled up so it can be accessed easily using a sql script. The datamart is typically refreshed each night by the Datamart Extraction and Datamart Rollup jobs.Finally, what we are all here for, the Time Slices. The slices are refreshed on a regular basis using the Time Slicing job.
70 Data Administration Datamart settings The Datamart provides point in time flat file report tables.There are five (5) sections to Datamart settingsDatamart Currency: All financial data in the Datamart is stored in one currency. To set up the Datamart, you need to specify the single currency for the Datamart. Only one currency can be used for reportingDatamart Entity: Relates to Financial Attributes. Only one Entity can be used.Customization of Datamart Extraction: Certain Datamart tables can be excluded from the Datamart extraction job if these tables are not needed for reporting.Project Organizational Structure Mapping: Setting the default Project OBS enables these OBS structures to act as a catch-all in the Datamart for Projects that have not been associated with an OBS. In order to change these settings, the Datamart must be refreshed.Resource Organizational Structure Mapping: Setting the default Resource OBS enables these OBS structures to act as a catch-all in the Datamart for Resources that have not been associated with an OBS. In order to change these settings, the Datamart must be refreshed.
71 Data Administration Datamart settings The values used in the Datamart Settings page are shared by all users.Only one Entity and Currency value are defined. They cannot be changed once the first Datamart job runs.It is recommended to turn on (check) all three Datamart Extraction customization fields.It is recommended to add all appropriate Project and Resource OBS structures for downloading.A default OBS for each OBS type in the Datamart settings must be specified in order for it to be used in the Datamart extraction.There can be up to five OBS structures attached to a Datamart.Note: The presence of the New Button on this screen means there is one or more additional OBS structures that can be attached.
72 BLOB: Binary Large Object Data AdministrationTime SlicesAdministration>Data Administration>Time SlicesClarity enables you to run both prepared and ad hoc reports from its database.A BLOB, or Binary Large Object, is a data type in the database that can store large amounts of data. In Clarity, BLOBs are used to store time-scaled data in a single field in the database. A time slice is the readable portion of the table that contains data that is derived from the sliced BLOB.Because most reporting tools cannot read these objects, Clarity cracks them with a “Time Slice” job and stores the obtained data in a flat table for easy retrieval for reporting. Allows Niku to group data into weeks, months, quarters, etc for more efficient queries.Clarity DatabaseWhat is a Time slice and what is a BLOB?Blobs are never deleted!Because of how they are written to tables, BLOBs cannot be read by reporting tools. It is necessary to parse out this data into a readable format.The Time Slicing Job extracts the BLOB data into a readable table based upon the criteria you set in the time slice request. These tables can be utilized in reports and portlets.In the slice requests you determine which objects are time-sliced, the size of the slice, and interval when the slice request rolls-over.The slice request is the “window” of time that is visible for reporting.Where are BLOBs being used?BLOBs are used in a number of places within Clarity.Any place you enter values that are assigned to time.ActualsAllocationsEstimatesAvailabilityBaselinesSome data is stored as values directly on the database.WIP TransactionsBLOB: Binary Large Object
73 Portlets, Reports, Dashboards… Data AdministrationTime Slice OverviewTime Slice TablesClarity DatabaseDailyWeeklyBi-WeeklyMonthlyQuarterlyYearly…moreTimeslice jobPortlets, Reports, Dashboards…Once the data has been saved. The time slicing job takes the blob data and transforms it into readable data in tables that we can then use in portlets and reports.That’s the overall picture, now we get into the details.Images obtained from CA documentation
74 Data AdministrationTime Slices are found under Administration / Time SlicesTo see the list of time slices, you go to administration and then Time Slices from the menu.You can see the ID that is used in queries, the name of the slice, how often it rolls over, The starting date, number of periods, and what is being sliced.
75 Last time the time slice job processed a particular slice request. Data AdministrationTimeslice AdministrationItem What is being slicedROLLOVER INTERVALFrequency with which Clarity updates the From Date and shifts the time slice range.EXPIRATION This is the next rollover date.SLICE PERIODSpecifies the period to use for each time slice request.If you picture all of your time on a tape measure, each inch could be a month, and each foot would be a year. If we have a time slice that has two years of allocations, you would only see 2 feet at once. No matter where you moved that window on the tape measure, you still have 2 years worth of data. Nothing before and nothing after.This goes into the slice settings in detail. They are out of logical order on the screen so I will try to explain.The Time slice is the name of the slice. This is a text field that we can configure if we add a new slice. The goal is to name it somewhat meaningful.The Item is what time scaled value we want. This one is pulling baseline assignment cost.The from date is the starting date of your imaginary window of data.The slice period is the summary level of the slice. You can have Daily, Monthly, Weekly, Quarterly, and Annually. If you selected a monthly slice, the entire time for the month for that item would be summed up. You would not be able to see days inside of the month such as “give me the cost for the 10th thought the 20th. Daily will allow you to get that granular of data but it has drawbacks which we will talk about later on.The number of periods is how many total periods (based on your period definition) to calculate and store. If you picked monthly, you can do 12 to get a years worth, some slices require more. It comes down to what the client needs for reporting.The rollover interval is how often does that window shift… And the expiration is the date that the window will shift, or roll over.The last run date is the date the slice was last updated. We will cover more on that when we troubleshoot slices.The expiration is when the window shifts.The last run date is important to look at. If a client is telling you that last weeks time is not showing in a portlet, one of the things to look at is the last run date. Since the time slicing job runs so often, if this is blank or days old – You’ve got a problem. Usually stopping and starting the time slicing job fixes it.Now lets create a slice so we can see how it works.FROM DATEThis is beginning date in your Slice Request’s range.NUMBER OF PERIODS Specify the number of periods you would like reported.LAST RUN DATELast time the time slice job processed a particular slice request.Images obtained from CA documentation
76 Data Administration Time Slice Setup 1/1/14 This is a slice I made for illustration purposes.It is a quarterly allocation slice. It starts on 1/1/2014 and is set to quarterly. We want 4 periods of data to make up a year.The rollover is set to quarterly.If we queried the database or ran a portlet right now, it would only show allocation data for 2014 grouped and separated by quarter. No data would show for 2015 or 2013.Since the rollover is set to quarterly, it calculated the rollover date of 4/1/14.Slice RangeQtrJan-14Feb-14Mar-14Apr-14May-14Jun-14Jul-14Aug-14Sep-14Oct-14Nov-14Dec-14Jan-15Feb-15Mar-15Apr-15May-15Jun-15Jul-15Aug-15Sep-15Oct-15Nov-15Dec-15Jan-16Feb-16
77 Data Administration Time Slice Setup 1/1/14 Rollover Fast forward to April 1st and the slice rolls over.We still have 4 quarters, but it has shifted a quarter into 2015.If we tried to query the first quarter of 2014 using this slice, no data would be returned.Note that the from and expiration date changed. The expiration date has moved to July 1st, the next time the slice will shift.Slice RangeQtrJan-14Feb-14Mar-14Apr-14May-14Jun-14Jul-14Aug-14Sep-14Oct-14Nov-14Dec-14Jan-15Feb-15Mar-15Apr-15May-15Jun-15Jul-15Aug-15Sep-15Oct-15Nov-15Dec-15Jan-16Feb-16
78 Data Administration Time Slice Troubeshooting Is the Time Slicing running?FrequencyNon-Prod EnvironmentsMake sure the reporting periods are reasonableDo people really need that much data?Start Dates Correct?Quarterly dates correct.Weekly dates correct – in line with time reporting periods.Is the slice value needed?Custom SlicesBaseline SlicesWhen troubleshooting the slices, the first thing to look at is the last run date. If its been an hour since the last time the slice was updated, you could have an issue going on. Either a slice is stuck or there is some other job blocking things.Check the frequency of the slicing job. In non-prod environments where there’s not a lot of activity, you can get away with running it less often if needed.For performance reasons, question why someone would need 5 years of daily slices? Could they not live with Monthly slices?Two of the most common issues are around the from dates. Quarterly slices need to be right. If you have a client that has custom quarters, you can configure that too.Make sure the weekly slices align with the time reporting periods. Otherwise you will eventually get someone who worked a Saturday looking at a portlet where the data doesn’t match another portlet.Look to see if there are custom slices. Usually you can tell by the name or ID number. Sometimes an egger admin will add a little bit of everything not knowing what they are for.
79 Data Administration Other Time Slice Considerations Resetting a slice.Do not touch the slice!Do not do it during business hours!Datamart ramifications.Know what portlets use slices.There are other things to think about when maintaining slices.Any time you change a slice, it will reset it. Resetting means that the time slicing job will rebuild all of the data for that slice from the beginning of the start date on. During this rebuilding time, users will not have access to the data. Updates to slices need to be tested and thought out ahead of time and planned for accordingly.Remember that the slices drive the Datamart tables. Many people think that the datamart and time slices are separate.It is also a good idea to know which portlets use slices and which use the datamart. Majority of the xchange portlets go off of the slices but you always want to make sure so you can communicate how current the data is.
80 Data Administration Reports and Jobs Access Report and Job Definitions: Admin>Data Administration>Reports and JobsInactivate and Reactivate Reports or JobsRun Reports and Jobs: Home>Personal>Reports and JobsAdd reports to Overview Page for quicker accessHome>Personal>Reports and JobsSelect desired report, click Add to My Reports ButtonLaunch Clarity ReportClick Report NameSelect Parameters including scheduling. Click Submit
81 Financials Best Practices Keep Things as Simple as Possible Spend Time on the Full ArchitectureClarity is Cash Based – No concept of P&L / DepreciationClarity is NOT the Company Financial System of Record; Clarity will never match general ledger 100%Clarity is a MANAGEMENT tool – enough information to make decisionsStart with required outputs, how do you need to classify financial data; involve finance team
82 Financials - EntitiesFinancial OBS Department (Object and OBS) Location (Object and OBS) – Linked to a Department Defaults Default Financial Plans Fiscal Periods Used within datamart jobs Used on Financial Plans-Cost Plans and Budgets Currencies Home Currency Billing Currency Exchange RatesBest PracticeOne Entity if PossibleOnly use Department and Location if needed for rates, otherwise – just one of eachIn order to use Clarity Financials, an Entity and OBS to hold Locations and an OBS to hold Departments needs to be created so that they can be associated to appropriate objects.All Investments should be linked to an Entity and Department regardless of the need for financial processing.Location is only needed for Financials.Both the Location OBS and the Department OBS must be associated to the Entity.Create a Location OBS (1 level), to hold locations and associate to appropriate objects.Create a Department OBS (1 level), to hold departments and associate to appropriate objects.Location/Department OBSEntityLocationDepartment
83 Financials - Classifications Resource Classes Internal / External Specialized Resources Company Classes Default to Corp Lines of Business Work In Process (WIP) Classes Default Investment Classes Transaction Classes Labor Equipment Material ExpenseBest PracticeDefault where possibleAlign Transaction Class to Financial Reporting Needs.
84 Financials – Other Attributes Input Type Code on Resource Record (required for processing)BillableNon-BillableCost Type on Project ObjectCapitalOperatingCharge Code on Investments (required for processing)ExpenseRoles on Resource RecordAvailable to Rate MatrixBest PracticeDetermine Charge Code usage vs. Cost TypeRoles – Understand difference between Primary and Assignment Roles
85 Financials - Rate Matrix Define Columns to Derive Rates Exact Rates Aggregate Rates Non-Labor $1 Defaults End DatingBest PracticeDetermine Charge Code usage vs. Cost Type
88 Financials - Tasks Tasks Must Have Charge Code to Process Financially: Project LevelSummary LevelTaskCost Type: Used for Portfolio Alignment in 13.3
89 Financial PlansCost Plans: Three ways to create a Cost Plan Manual New From Investment Team New from Task Assignments Choose the Classes to display in your Cost Plan. The Cost Plan populates the Planned Costs field at the project level Actual costs will pull into the cost plan for variance comparison by time period.Best PracticeSet Cost Plan Update Policy, how cost plans are to be created.Default Cost Plans to show key financial metrics
90 Financial PlansBudget Plans:A cost plan becomes a budget plan when the cost plan of record is submitted for approval and approvedSame structure and view as a cost plan – a saved/static version.Benefit Plans:Once you create a benefit plan – Clarity will make the planned cost fields read only.The Benefit Plan populates Planned Benefit at the project level.If the Benefit Plan is attached to the Budget, it populates Budgeted Benefit at the project level.Realized Benefits-manual entryBest PracticeAlign Budget and Baseline processes
91 Financial Jobs Summary Post TimesheetsPost Transactions to FinancialReview Invalids (fix)Post to WIPImport Financial ActualsOtherSlicingInvestment AllocationUpdate Hierarchy DataBest PracticeBe a part of RegoXchange to get our Post to WIP Job.Communicate Posting Schedule
92 Financials - Actual Costs - Timesheets Base SetupDetermine Posting CadenceAdjustment Postings?Approval PolicyAuto-approval?Timesheet Adjustment PolicyNumber of Open Time PeriodsBest PracticeWhatever your posting and processing cadence is, make sure it is well communicated. Postings modify project dates and financials, therefore important to have a transparent and predictable schedule
93 Financials - Actual Costs – Manual Transactions In the create entry section on the application side, you must first create a voucherVouchers can be “Expense” types or “Other”Within the voucher, you can create multiple transactionsTransactions must have a date, investment, task, charge code, resource id, transaction class, input type code, and the various costs and amountsRun Post Transactions to FinancialRun the Post to WIPRun import financial actuals jobAfterwards, check the admin side for invalid transactionsIf there are some, fix the needed fields and repostRun the investment allocation job (adjust the investment list fields)Best PracticeHave Rego build a better interface for entering these costs, or have us build application integration from your financial system of record.