{"id":3473,"date":"2023-04-12T15:33:22","date_gmt":"2023-04-12T15:33:22","guid":{"rendered":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/"},"modified":"2026-01-20T16:27:45","modified_gmt":"2026-01-20T16:27:45","slug":"ibm-planning-analytics-advanced-attribute-manipulation-part-3","status":"publish","type":"post","link":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/","title":{"rendered":"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3"},"content":{"rendered":"<p>This article is Part 3 of a series called Advanced Attribute Manipulation. You can find Part 1 which describes a few functions used to check if attributes exists and how to check their type <a href=\"https:\/\/quebit.com\/askquebit\/?post_type=ibm&amp;p=2284&amp;preview=true\">HERE<\/a>. And Part 2 about useful functions that looping through an attribute dimension and perform tasks with a subset <a href=\"https:\/\/quebit.com\/askquebit\/?post_type=ibm&amp;p=2289&amp;preview=true\">HERE<\/a>.<\/p>\n<p>Our topic for Part 3 of the series is to describe a way to populate data into attributes. Populating attribute values from a data source is a common task needed\/done in PA. The challenge sometimes comes when our data source contains duplicate alias values.<\/p>\n<p>Say we have the following sample data source in .txt format where two elements (10400 and 10500) have the same would-be alias value (i.e., a duplication of alias for two different elements).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2299 alignnone\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP1-min.jpg\" alt=\"\" width=\"377\" height=\"253\" \/><\/p>\n<p>If we only use the CELLPUTS function by itself in the data tab of a TI process to populate an alias attribute, like this:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-full wp-image-2295\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP2-min.jpg\" alt=\"\" width=\"771\" height=\"67\" \/><\/p>\n<p><em>\u00a0<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>we would get an error for that TI process.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2296 alignnone\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP3-min.jpg\" alt=\"\" width=\"624\" height=\"135\" \/><\/p>\n<p><span style=\"color: #ff0000;\"><strong><em>A note on errors when loading duplicate alias values:<\/em><\/strong><\/span> these errors are sometimes random in PA. The error above says <strong>Cell type is consolidated<\/strong>, but that\u2019s not the issue, the issue is a duplicate alias name. Sometimes you also que the error \u201cNot a number\u201d.<\/p>\n<p>So, to avoid getting this error we can setup the loading of the alias with two conditional statements<\/p>\n<ol>\n<li>We use the CELLGETS function to check if the element for which we are we are trying to populate an alias is blank<\/li>\n<li>We use the DIMX function to check if the alias does not exist elsewhere in the dimension<\/li>\n<\/ol>\n<p>If these conditions are true then the alias will be populated using the CELLPUTS function, if not, the source element will be output to text for further review using the ASCIIOUTPUT function.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2297 alignnone\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP4-min.jpg\" alt=\"\" width=\"516\" height=\"237\" \/><\/p>\n<p>In our example, the output file will contain the line below because, given the ordering in the source file, it\u2019s the last element which has the duplicate alias.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2298 alignnone\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP5-min.jpg\" alt=\"\" width=\"409\" height=\"139\" \/><\/p>\n<p>This method can be used to trap errors and audit source data when we try to populate alias element names to a dimension element.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This article is Part 3 of a series called Advanced Attribute Manipulation. You can find Part 1 which describes a few functions used to check if attributes exists and how to check their type HERE. And Part 2 about useful functions that looping through an attribute dimension and perform tasks with a subset HERE. Our&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[24],"tags":[38,36,51],"class_list":["post-3473","post","type-post","status-publish","format-standard","hentry","category-ibm","tag-how-tos","tag-planning-analytics","tag-planning-analytics-how-tos"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3 - QueBIT<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3 - QueBIT\" \/>\n<meta property=\"og:description\" content=\"This article is Part 3 of a series called Advanced Attribute Manipulation. You can find Part 1 which describes a few functions used to check if attributes exists and how to check their type HERE. And Part 2 about useful functions that looping through an attribute dimension and perform tasks with a subset HERE. Our&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/\" \/>\n<meta property=\"og:site_name\" content=\"QueBIT\" \/>\n<meta property=\"article:published_time\" content=\"2023-04-12T15:33:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-20T16:27:45+00:00\" \/>\n<meta name=\"author\" content=\"agoddard\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"agoddard\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/\"},\"author\":{\"name\":\"agoddard\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#\\\/schema\\\/person\\\/e52d72da0fd2f5f70d189343fe4f5084\"},\"headline\":\"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3\",\"datePublished\":\"2023-04-12T15:33:22+00:00\",\"dateModified\":\"2026-01-20T16:27:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/\"},\"wordCount\":361,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/TRAP1-min.jpg\",\"keywords\":[\"How To\u2019s\",\"Planning Analytics\",\"Planning Analytics How To's\"],\"articleSection\":[\"IBM\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/\",\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/\",\"name\":\"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3 - QueBIT\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/TRAP1-min.jpg\",\"datePublished\":\"2023-04-12T15:33:22+00:00\",\"dateModified\":\"2026-01-20T16:27:45+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#\\\/schema\\\/person\\\/e52d72da0fd2f5f70d189343fe4f5084\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#primaryimage\",\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/TRAP1-min.jpg\",\"contentUrl\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/TRAP1-min.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#website\",\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/\",\"name\":\"QueBIT\",\"description\":\"QueBIT\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#\\\/schema\\\/person\\\/e52d72da0fd2f5f70d189343fe4f5084\",\"name\":\"agoddard\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g\",\"caption\":\"agoddard\"},\"sameAs\":[\"https:\\\/\\\/quebit.com\\\/askquebit\"],\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/author\\\/agoddard\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3 - QueBIT","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/","og_locale":"en_US","og_type":"article","og_title":"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3 - QueBIT","og_description":"This article is Part 3 of a series called Advanced Attribute Manipulation. You can find Part 1 which describes a few functions used to check if attributes exists and how to check their type HERE. And Part 2 about useful functions that looping through an attribute dimension and perform tasks with a subset HERE. Our&hellip;","og_url":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/","og_site_name":"QueBIT","article_published_time":"2023-04-12T15:33:22+00:00","article_modified_time":"2026-01-20T16:27:45+00:00","author":"agoddard","twitter_card":"summary_large_image","twitter_misc":{"Written by":"agoddard","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#article","isPartOf":{"@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/"},"author":{"name":"agoddard","@id":"https:\/\/quebit.com\/askquebit\/#\/schema\/person\/e52d72da0fd2f5f70d189343fe4f5084"},"headline":"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3","datePublished":"2023-04-12T15:33:22+00:00","dateModified":"2026-01-20T16:27:45+00:00","mainEntityOfPage":{"@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/"},"wordCount":361,"commentCount":0,"image":{"@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#primaryimage"},"thumbnailUrl":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP1-min.jpg","keywords":["How To\u2019s","Planning Analytics","Planning Analytics How To's"],"articleSection":["IBM"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/","url":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/","name":"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3 - QueBIT","isPartOf":{"@id":"https:\/\/quebit.com\/askquebit\/#website"},"primaryImageOfPage":{"@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#primaryimage"},"image":{"@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#primaryimage"},"thumbnailUrl":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP1-min.jpg","datePublished":"2023-04-12T15:33:22+00:00","dateModified":"2026-01-20T16:27:45+00:00","author":{"@id":"https:\/\/quebit.com\/askquebit\/#\/schema\/person\/e52d72da0fd2f5f70d189343fe4f5084"},"breadcrumb":{"@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#primaryimage","url":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP1-min.jpg","contentUrl":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2022\/06\/TRAP1-min.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/quebit.com\/askquebit\/ibm-planning-analytics-advanced-attribute-manipulation-part-3\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/quebit.com\/askquebit\/"},{"@type":"ListItem","position":2,"name":"How Do I Perform Advanced Attribute Manipulation in IBM Planning Analytics? \u2014 Part 3"}]},{"@type":"WebSite","@id":"https:\/\/quebit.com\/askquebit\/#website","url":"https:\/\/quebit.com\/askquebit\/","name":"QueBIT","description":"QueBIT","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/quebit.com\/askquebit\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/quebit.com\/askquebit\/#\/schema\/person\/e52d72da0fd2f5f70d189343fe4f5084","name":"agoddard","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g","caption":"agoddard"},"sameAs":["https:\/\/quebit.com\/askquebit"],"url":"https:\/\/quebit.com\/askquebit\/author\/agoddard\/"}]}},"_links":{"self":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts\/3473","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/comments?post=3473"}],"version-history":[{"count":2,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts\/3473\/revisions"}],"predecessor-version":[{"id":5098,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts\/3473\/revisions\/5098"}],"wp:attachment":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/media?parent=3473"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/categories?post=3473"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/tags?post=3473"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}