none
A duplicate attribute key has been found when processing

    Question

  • Hi

    When I process one of my dimensions it fails and I get the following error:

    Errors in the OLAP storage engine: A duplicate attribute key has been found when processing: Table: 'Customers', Column: 'DisplayName', Value: 'Stephen Grant'. The attribute is 'Display Name'.

    I don't know if this is significant, but the attribute to which it is making reference was added through BIDS 2008 (the cube was originally created with BIDS 2005). 

    There are no duplicates of 'Stephen Grant' in the DisplayName column. Not that it should matter if there were as this attribute has a cardinality of Many, with an rigid attribute relationship directly to the dimension's key attribute. The Key column for the Display Name attribute simply refers back to the same (DisplayName) column in the table.

    If I delete this record, or even just update the DisplayName field from 'Stephen Grant' to something else, the dimension processes just fine. I can't work out what it is about this record that is stopping the dimension from being able to process.

    Can anyone help me figure out what's going on?

    Julia.

    P.S. I am using SSAS 2008 on Windows Server 2008
    Thursday, September 18, 2008 12:51 PM

Answers

  • I've had the same situation.

    In the end the solution was setting the TRIM to NONE on the key field. And leave the rest of the settings as set by AS2008. I can't think of an explenation.

    Key field was a WCHAR(250) with lots of strange tokens.

    The other sugestions in this thread didn't help me any further.

    regards,
    Jeroen

    • Proposed as answer by reddy421 Monday, November 16, 2009 6:54 PM
    • Marked as answer by JuliaJulia Wednesday, April 7, 2010 12:13 PM
    Tuesday, October 13, 2009 6:41 AM

All replies

  • Try setting MemberNamesUnique properties to FALSE for Displayname attribute.

    • Proposed as answer by Mathew_John_SSAS Tuesday, August 4, 2009 6:38 AM
    • Unproposed as answer by JuliaJulia Thursday, September 3, 2009 10:34 AM
    Thursday, September 18, 2008 1:12 PM
    Answerer
  • Thanks for the suggestion. The MemberNamesUnique property is set to False, so it must be something else.
    Thursday, September 18, 2008 1:47 PM
  • You might face this situation even if any other level has duplicate members, its worth checking.

    Thursday, September 18, 2008 2:01 PM
    Answerer
  • This attribute isn't part of a hierarchy the only attribute relationship it has is between itself and the key attribute for the dimension (CustomerKey), which is rigid. Inicidentally, there are no duplicates in the CustomerKey column either.

    Julia.
    Thursday, September 18, 2008 2:05 PM
  •  

    Okay here is how you fix it and simple.

     

    When editing the dimension.

     

    For example a "date" dimension.

     

    You need a unique key, so you have defined a "column".  This column for example Month is not unique so we need to tie in a year and/or quarter.

     

    Since 1 isnt unique... 1 can happen in 2007, 2008, 2009 etc.

     

    but 2008:1 is...

     

    To create this Key

    in the "dimension structure" screen.

     

    Click on the item you included in the hierarchy. highlight and bring up its properties.

     

    Go down to "key columns" and click the ...

     

    for example if i was "fixing" quarter I would bring up quarter props from the left attribute box, and add "year".

     

    This get me a unique value.  You can tag "year" into all yours and bam your unique or you can add year,quarter for month etc etc.

     

    Defind the "name column" right under it and your done.

    • Proposed as answer by _arun_ Thursday, January 21, 2010 12:00 AM
    • Unproposed as answer by JuliaJulia Thursday, April 29, 2010 8:55 AM
    • Proposed as answer by Mattewes Friday, February 22, 2013 1:39 PM
    Friday, October 17, 2008 7:05 PM
  •  

    i know.. i have the same problem in 2008.. i do not have it in 2005

    if u have 25 attributes.. it is a pain to go to each column and change the key column and select name column..

    why was this changed in 2008 ?

    Tuesday, October 21, 2008 9:21 PM
  •  Krishna Kalidas wrote:

     

    i know.. i have the same problem in 2008.. i do not have it in 2005

    if u have 25 attributes.. it is a pain to go to each column and change the key column and select name column..

    why was this changed in 2008 ?

    The way these properties work has not been changed in 2008. For the same dimension the key and name columns should be configured identically in 2005 and 2008.

     

    There have been some changes in the designers and wizards in 2008, so a given dimension may be structured differently. In 2005 it was a lot easier to simply ignore attribute relationships, the 2008 designers help you to build these and this can impact how you configure your keys.

    Wednesday, October 22, 2008 12:20 AM
    Moderator
  • Hi Mikes2nd

     

    Thanks for the suggestion. I don't think this will fix my problem, but it's definitely good information for others.

     

    My attribute is not part of a hierarchy, so uniqueness within the hierarchy is not an issue in the same way that it is with a date or time dimension. Instead it only has one attribute relationship and that is with the dimension key. So in the same way that you would not expect a category attribute to be unique for every member, it should not be a problem if the attribute I have created is not unique.

     

    Although... the final twist is that actually the values of this attribute that are causing me problems *are* unique in the underlying data so I really cannot understand why this is happening. In fact, I never did solve this issue - instead I just removed the attribute and did without it.

     

    Julia.

     

    Wednesday, October 22, 2008 2:30 PM
  •  

    Hi Julia,

     

    have you tried re-creating that dimension from scratch? I mean, it has only 2 attributes.

     

    Ideas-suggestions on failures so far:

    - you set too little size of this field so for example another "Stephen Gr" + something exists (size = 10, i.e.) -> check size

    - you process-update this dimension all time long and once before an uppercased/lowercased/modified "Stephen Grant" entered into it, so you have a collision with 2 Stephen Grants, on already in dimension, the other appears during process-update; that is if you have CI database -> process full

    - your key and name-columns properties do not match -> remove namecolumn selection, put (none), use only keycolumn and sort by key (property for sorting)

    - you have some invalid character inside that "Stephen Grant" -> change property of keycolumn in InvalidXMLCharacter or enter it manually in your DW table

     

    My candidates are 3 or 1.

     

    Reply if any of this works.

     

    Regards,

     

     

    Tomislav Piasevoli

    Business Intelligence Specialist

    http://www.softpro.hr

    Wednesday, October 22, 2008 8:57 PM
    Answerer
  • Hi,

     

    Do you already find an appropriate explanation for the upper issue? I have actually the same question.

     

    With the dimension deisgner, I have created a simple Customer dimension:

       - Customer_id

       - Customer name

     

    I have two customers with the same surname: weissflog.

     

    When I want to process the dimension, I always get the error of duplicate key. I can't remember it was a problem with SSAS 2005. If I create a composite key with the customer code, I can process the dimension, which is logical. As Krishna is writing down, I'm not expecting to create a composite key each time that a column may have duplicate values.

     

    What has changed here? Is there a sustainable, developer-friendly solution?

     

    Thanks in advance.

    Lohic

     

    Sunday, October 26, 2008 2:27 PM
  •  

    Hi Lohic,

     

    I suppose you have only 1 attribute where ID is the key and Name is the name. Or not? Have you got 2 attributes, one for ID, the other for name? Your error says duplicate key, not name, so if you have only 1 attribute, you should check on ID rather than name (surname). But if you have 2 attributes (why not just one?), then check on which attribute this error appears. And please give more details on your dimension design (attributes, their key/names/values), relations, which one is set as key, etc.

     

    What does it say in Name - only surname?

     

    I'm missing feedback from other users, Julia for example.

     

    Regards,

     

     

    Tomislav Piasevoli

    Business Intelligence Specialist

    http://www.softpro.hr

     

    Monday, October 27, 2008 2:27 AM
    Answerer
  • Please check your key column for NULL-values. AS2008 will report the "duplicate key"-error if you have any NULL-values.

     

     

    /Thomas

    • Proposed as answer by foxjazz2 Friday, January 13, 2012 10:27 PM
    Monday, November 17, 2008 9:45 AM
  • If you have NULL values, you may need to change the null processing for the attribute.  In the dimension editor, select your problem attribute.  In the properties window, under the key column property is "Null Processing".  By default it's set to "Automatic".  Change it to "Unknown Member" and you should be all set.
    Thursday, December 11, 2008 7:20 PM
  • Hi Tomislav and the other,

    Thanks for the reply. I'm back on the SSAS 2008 front and I still experience some difficulties on duplicate keys. I'm using the SCD type in SSAS 2008. But I found some data problems so I will first take a deeper look at this before writing any further.

    Happy new year to everybody.

    Let's OLAP in 2009!

    Gr,
    Lohic Beneyzet

     


    Sr. Business Intelligence Consultant
    Thursday, January 1, 2009 2:38 PM
  • Hi Julia,
    HERE ARE FEW QUESTIONS About your design (dimension )
    What is leaf-level attribute in your dimension.
    Is there any null values,How you are handling null?

    Thanks

    D
    Thursday, January 1, 2009 10:02 PM
  • Hi JuliaJulia,

    I had exactly the same experience with SSAS 2008... Date dimension and just added the attribute holiday flag
    As jsaidoo says: I solved it by filling up my NULL values.

    Hope this helps.

    Kind regards,
    Tom
    Tom De Cort - BI Consultant
    Thursday, February 12, 2009 6:17 PM
  • A quick way to diagnose the exact values and relationships that are problems is to run a BIDS Helper Dimension Health Check:
    http://www.codeplex.com/bidshelper/Wiki/View.aspx?title=Dimension%20Health%20Check&referringTitle=Home

    Just an FYI.


    http://artisconsulting.com/Blog/GregGalloway
    • Proposed as answer by Adam,Gilmore Monday, May 5, 2014 6:10 AM
    Thursday, February 12, 2009 8:56 PM
    Moderator
  • I can still get this message when I pass this checker?
    Tom
    Wednesday, February 25, 2009 1:21 AM
  • that is just a way to diagnose, not to correct your dimension.
    You have to take care of your dimension and fact table.Dimension members should be unique always.
    Fact tables values should not be NULL/empty otherwise you will have same error.
    You should handle this during ETL process while you are loading the fact table,At the end when u r just just loading the data inside the
    fact table you should use Null/Empty handler(before destination).
    There you can use derive columns and use conditions like
     ( ISNULL(Dime_Key1) ? -1 :Dime_Key1) || ( Dime_Key1==" " ? -1 :Dime_Key1)


    Dibyant S U padhyay
    Wednesday, February 25, 2009 1:54 AM
  • Tom, what do you mean when you say, "I can still get this message when I pass this checker?"

    Do you mean that you ran BIDS Helper Dimension Health Check, and it gave no warnings. Then you processed your dimension and got an error? What error?
    http://artisconsulting.com/Blog/GregGalloway
    Wednesday, February 25, 2009 4:48 PM
    Moderator
  • Try checking the dimension's ErrorConfiguration property.  It is likely set to (custom).  If you change it to (default), this may solve your problem.  My guess is that the KeyDuplicate property within the ErrorConfiguration settings is set to ReportAndStop.  When you change ErrorConfiguration to (default), the KeyDuplicate property gets set to IgnoreError.  This was the default setting for 2005, but for some reason when you create a new dimension in 2008, the ErrorConfiguration property is set to (custom) instead of (default).

    Hope this helps,

    Harlan Smith

    • Proposed as answer by mo1 Wednesday, November 25, 2009 8:02 PM
    • Unproposed as answer by JuliaJulia Thursday, April 29, 2010 8:55 AM
    • Proposed as answer by Morgan Thomas Thursday, December 8, 2011 10:10 AM
    Tuesday, April 14, 2009 5:03 PM
  • I have a similar case, but the dimension processes fine on its own.  When i process the whole database, however, (sequential order, as only have standard 08) the dimension errors with the duplicate key errror.

    Any one know why that should be?

    Thanks


    Guy
    Wednesday, June 10, 2009 8:25 AM
  • I had the same problem (also on a flag) which was resolved by populating the nulls. It doesn't appear to be an issue on other types of field, only booleans.
    Tuesday, August 18, 2009 4:43 PM
  • Hi JuliaJulia!
    Did you manage to resolve the issue you were having?
    I am having the exact same problem. I have tried all the suggestions in the posts and nothing seem to work. The only way to get the dimention to process is to chanage the attribute value to somthingelse. 
    I am wondering if there is an explanation for this!

    Regards,
    Yasir 

    Friday, August 28, 2009 12:47 PM
  • I experienced this problem tonight. Here are the steps I took to resolve the problem.
    1) Change the underlying view so that the value of that column is always '1'
    2) Deploy and reprocess the database
    3) Revert the underlying view to show real data..... add isnull() function as nessesary
    4) Deploy and reprocess the database

    • Proposed as answer by b_blase Friday, October 2, 2009 12:19 PM
    • Unproposed as answer by JuliaJulia Wednesday, April 7, 2010 12:10 PM
    Wednesday, September 9, 2009 2:51 AM
  • I've had the same situation.

    In the end the solution was setting the TRIM to NONE on the key field. And leave the rest of the settings as set by AS2008. I can't think of an explenation.

    Key field was a WCHAR(250) with lots of strange tokens.

    The other sugestions in this thread didn't help me any further.

    regards,
    Jeroen

    • Proposed as answer by reddy421 Monday, November 16, 2009 6:54 PM
    • Marked as answer by JuliaJulia Wednesday, April 7, 2010 12:13 PM
    Tuesday, October 13, 2009 6:41 AM
  • This worked for me. We recently upgraded to SSAS 2008 and needed to add a few new dimensions. Kept coming up with this error even when we had no duplicates and the dimension passed the BIDS Helper Dimension Health Check without any errors/warnings. Switching the ErrorConfiguration property from Custom to Default resolved the issue. Thanks Harlan.

    Mohit Agarwal
    Wednesday, November 25, 2009 8:49 PM
  • Jeroen,

    You can find the explanation here: http://wschampheleer.wordpress.com/2009/12/20/degenerate-dimensions-in-ssas/

    Regards,

    Willem
    Sunday, December 20, 2009 12:44 PM
  • Hi

    I ran into this same problem, and for my situation, the error was occuring on a name column.  Fortunately, SSAS identified the row that errored out (let's say John Doe for this example).  I searched for name = 'John Doe', and SQL came back with one row.  I searched for name LIKE '%John Doe%', and SQL came back with 2 rows.  I then assumed the problem was an RTRIM or LTRIM issue, but trimming the name column didn't solve the problem.  I then looked for other "hidden" characters and found a tab CHAR(9) hidden at the end of the 'John Doe' name.  I removed the tab character using the sql REPLACE function, and fixed my ETL process to remove all CHAR(9) from the name column for all future data loads, reprocessed the cube, and it processed without issues.  Yeah!!
    Monday, March 8, 2010 7:05 PM
  • Hello there,

    Does anybody has the complete resolution for duplicate entries data. I am showing the data below .

     

    RegionName BranchName LoanOfficerFullName
    PRIME - TEAM NORTHEASTERN CALIFORNIA ALONA  HAYES
    PRIME - TEAM WESTERN RENO-DAMONTE RANCH VINCENT LOTITO
    PRIME - TEAM WARTON NEWARK (Chicago) CHRISTOPHER CLIFTON
    PRIME - TEAM WARTON GRAND HAVEN (West Michigan) SEAN  FOLEY
    PRIME - TEAM SALMANS LAWTON (Amarillo) THOMAS  STEARNS
    PRIME - TEAM BARTON CALIFORNIA ALONA  HAYES
    PRIME - TEAM ROBINSON LAS VEGAS ANGELA DEATON
    PRIME - TEAM ROBINSON LAS VEGAS HERMAN  VANDER VELDT
    PRIME - TEAM ROBINSON LAS VEGAS DAWN ROBINSON
    PRIME - TEAM ROBINSON LAS VEGAS MICHAEL  BIRK

     

     Here i have the Hierachies in order LoanOfficerFullName-->BranchName-->RegionName. Loan Officer is the lowest level. I had created another column and make that unique entries so that I could make the unique column as the Key and the hierachies i have linked with the key column value. The issue

    is that i am getting the expected result in OLAP  from data side. But the data is not getting aggregated like Team Barton is coming twice though for the Dimension I make IsAggregatable property to True. If anybody can help me I will aprecciate. If any other clarification need I can provide.

    Saturday, March 27, 2010 6:00 AM
  • Hello there,

    Does anybody has the complete resolution for duplicate entries data. I am showing the data below .

     

    RegionName BranchName LoanOfficerFullName
    PRIME - TEAM NORTHEASTERN CALIFORNIA ALONA  HAYES
    PRIME - TEAM WESTERN RENO-DAMONTE RANCH VINCENT LOTITO
    PRIME - TEAM WARTON NEWARK (Chicago) CHRISTOPHER CLIFTON
    PRIME - TEAM WARTON GRAND HAVEN (West Michigan) SEAN  FOLEY
    PRIME - TEAM SALMANS LAWTON (Amarillo) THOMAS  STEARNS
    PRIME - TEAM BARTON CALIFORNIA ALONA  HAYES
    PRIME - TEAM ROBINSON LAS VEGAS ANGELA DEATON
    PRIME - TEAM ROBINSON LAS VEGAS HERMAN  VANDER VELDT
    PRIME - TEAM ROBINSON LAS VEGAS DAWN ROBINSON
    PRIME - TEAM ROBINSON LAS VEGAS MICHAEL  BIRK

     

     Here i have the Hierachies in order LoanOfficerFullName-->BranchName-->RegionName. Loan Officer is the lowest level. I had created another column and make that unique entries so that I could make the unique column as the Key and the hierachies i have linked with the key column value. The issue

    is that i am getting the expected result in OLAP  from data side. But the data is not getting aggregated like Team Barton is coming twice though for the Dimension I make IsAggregatable property to True. If anybody can help me I will aprecciate. If any other clarification need I can provide.

    Saturday, March 27, 2010 6:01 AM
  • Hi,

     

    The duplicate key error should come from this data if you dont set the keycolumn for the dimension attribute correctly. You see that California is the second level and it has multiple parent in the upper level. it is not allowed in ssas. You can see the following post to have an idea about setting the keycolumn though the post explains it using a Period Dimension.

    http://blog.programmingsolution.net/ssas-2008/period-dimension-time-dimension-creation-with-year-month-day-hierarchy/

    If you have already resolved the duplicate key error, then probably you are getting multiple members of california which probably you dont want. In this case you will have to use many-to-many dimension usage and you will need to design your cube in that way, if you want to get a single member for california and still not getting the duplicate key error.

     


    Maeenul
    My Programming Site
    My Blog
    • Proposed as answer by Saikat Saha Wednesday, April 14, 2010 10:51 AM
    • Unproposed as answer by JuliaJulia Thursday, April 29, 2010 8:56 AM
    • Proposed as answer by Brett Gerhardi Monday, December 6, 2010 2:15 PM
    Sunday, March 28, 2010 10:52 AM
  • This was great advice.  It worked.
    • Proposed as answer by FlexV Sunday, April 18, 2010 8:59 PM
    • Unproposed as answer by JuliaJulia Thursday, April 29, 2010 8:56 AM
    Tuesday, April 6, 2010 5:18 PM
  • Replace NULLS Values worked for me. 

    Thanks all people share comments.


    machag01
    Sunday, April 18, 2010 9:00 PM
  • Replacing NULL values fixed the issue for me.
    Thursday, May 27, 2010 1:26 PM
  • This did the trick for me, using a collection of attributes defined a unique value and solved the problem....thanks!
    • Proposed as answer by Palash Aich Tuesday, September 14, 2010 11:12 AM
    Wednesday, June 2, 2010 7:05 AM
  • Right click the dimension and go to properties of it. Set the ErrorConfiguration to default. It worked for me.

     

    Thanks,

    Palash

    Tuesday, September 14, 2010 11:14 AM
  • I got the same error due to case sensitive sql database. I had to change collation in properties of dimension to case sensitive too.

    Jitka

    Wednesday, November 3, 2010 9:40 AM
  • Like those above, I too am pulling my hair out with this issue.   I have managed to fix a few cases by setting NullProcessing to "Preserve", some by changing the ProcessingGroup and some (i.e. dates) by changing the Datasize property.

    I have one dimension however that absolutely refuses to build and points to duplication in a particular attribute.   As it turns out, this attribute is a foreign key to an audit table and is used in every single dimension.   It is set up exactly the same as every other dimension but no other dimension has a duplication issue with this column.   It is an integer so no funny characters and it comes from a mandatory field.   So basically at this point the only choice I see is to turn off the duplication check, but not so keen to do that as I would rather understand what the actual problem is.

    Tuesday, November 23, 2010 4:05 AM
  • Ok, this is bizarre.   I looked at the SQL being generated for this attribute and sure enough there were duplicates being produced because of a join to another table that has nothing to do with the dimension.   It appears that it is trying to make the join to the audit table via this intermediate table even though there is a direct relationship in the dsv (I even dropped and recreated it).

    I can get it to build by using default attribute relationships having a direct relationship between the table PK and the FK attribute in question but this will not apply any join so I get all audit values in the dimension even though most are not related.   However, if I try to relate the foreign table attributes to the FK attribute from the main table instead (which is what I have done for every other dimension) then the intermediate table reappears in the SQL!     

     

    Tuesday, November 23, 2010 4:45 AM
  • This was being caused in my case due to CRLF (char(13)char(10))  characters being in the attribute key field which when removing them caused a duplicate. E.g. I had one value as X and one as X<cr><lf>.

    I guess that somewhere in the processing logic it is determining the unique list of attributes (which consider X and X<cr><lf> as different) and then later combining them due to removing the crlf and then hitting duplicate detection.

    InvalidXmlCharacters didn't make any difference to this in any setting or changing Trimming (although I'm not sure that I tried every combination). I'm not sure if Trimming affects crlf's or just spaces.

    But in any case I would suggest it is better to ensure that the data model only has crlf's when useful which I suppose in reality in a DW is never (except maybe notes fields) - so strip them as early as you can in the Transform stage of the ETL processes.

    Those people suggesting removing error checking (on the whole dimension) for these duplicates are just setting themselves up for a whole world of pain later on. I wouldn't do it unless I had a sure way not forget to go back later and fix before committing the development to a production system. But maybe thats just me.

    Hope this saves someone some time with this cryptic error.

    • Proposed as answer by RuneCF Thursday, November 27, 2014 11:19 AM
    Monday, December 6, 2010 4:21 PM
  • Hi, Even I'm facing smae problem with AS 2008. I have deployed the Adventureworks 2008 solution successfully but when I try the same dimension using custom solution I get below error

    Errors in the OLAP storage engine: A duplicate attribute key has been found when processing: Table: 'dbo_DimGeography', Column: 'City', Value: 'Augsburg'. The attribute is 'City'.

     I have double checked custom solution and Adventure works 2008 Geography properties and found them same.

    Any help?


    - JL
    Wednesday, December 29, 2010 2:03 PM
  • The problem is resolved by adding multiple keys (collection) under key column. This is how it is implemented in Adventure works 2008 also.
    - JL
    Wednesday, December 29, 2010 2:09 PM
  • Just found my answer to similar issue:

    You get “A duplicate attribute key has been found when processing ..” error message when processing a dimension: http://support.microsoft.com/kb/2002757

    Thursday, January 6, 2011 8:44 PM
  • I have another suggestion for myriad of possible causes.

    Convert the column datatype from nvarchar() to nchar()

    I believe it can be caused by variable byte characters and differences between SQL's distinct function & Analysis Services' distinct function.

    > http://msdn.microsoft.com/en-us/library/ms186939.aspx 

    > The data entered can be 0 characters in length.

     

    Wednesday, March 2, 2011 2:24 AM
  • I inherited a Dimension that had an 'Unknown' row, with all columns set to NULL. jsaidoo's answer above solved the problem for me.

    "In the dimension editor, select your problem attribute.  In the properties window, under the key column property is "Null Processing".  By default it's set to "Automatic".  Change it to "Unknown Member" and you should be all set."

    This error message is misleading. If you have an attribute like Category, when many rows in your dimension share the same category, then the value of category will not be unique, and SSAS generally handles this fine. The error Message should be something like "Null Attribute Key Found, Change NULL processing to set NULLS as Unknown".



    • Edited by Adam,Gilmore Friday, November 25, 2011 1:35 AM spelling mistake
    Friday, November 25, 2011 1:35 AM
  • Updated Link is here: http://programmingsolution.net/post/Period-Dimension-Time-Dimension-Creation-with-Year-Month-Day-Hierarchy.aspx
    Brian Davis
    Tuesday, December 27, 2011 4:32 PM
  • Satya-

    I'm very skeptical that changing the OrderBy property resolves this error. Would you mind changing it back and seeing if the error reappears? I certainly could be wrong, but from how I understand attribute ordering works, I can't see how this would solve the problem.

    Until we can reconfirm this, I'm going to unpropose your post as the answer, so other people don't go down the wrong path.


    http://artisconsulting.com/Blogs/GregGalloway

    Saturday, August 18, 2012 8:00 PM
    Moderator
  • The problem you are experiencing may be due to the following:

    (1) You need to set the UnknownMember property of the dimension to Visible or Hidden in order to enable the unknown member. (You probably have NULL values in the column).

    (2) You then need to set the NullProcessing property of the attribute that is causing the error to UnknownMember. You have to fully expand the KeyColumns property of the attribute in order to see this property.

    (3) You may optionally set the UnknownMemberName property of the dimension too.

    Note that (1) is a dimension property, and (2) is an attribute property.

    Charles Kangai, MCT

    author of Learning Tree course 139: http://www.learningtree.co.uk/courses/139/sql-server-analysis-services/

    Wednesday, May 22, 2013 12:03 PM
  • run this in sql find your douplicate for example ID... used it as my dimension key

     Select id,count(*) as how_many
    from [RC_Dailer_WH].[dbo].[RC_call_logs]
    group by id
    having count(*) > 1

    replaced the duplicate in my DB and cube processed proper :-)

    Friday, February 7, 2014 8:38 AM
  • I had the same error. The Attribute I was having a problem with existed in a hierarchy. The BIDS Health Checker reported that my hierarchy was invalid because there was a many to many relationship between the attribute showing the error, and the next attribute in the hierarchy. Essentially the data was broken, and there was no true hierarchical relationship between the attributes. My only choice was to remove the hierarchy, as it didn't make sense. 

    Adam Gilmore - Dimodelo Solutions - dimodelo.com


    Monday, May 5, 2014 6:13 AM
  • Go down to "key columns" and click the ...

     

    for example if i was "fixing" quarter I would bring up quarter props from the left attribute box, and add "year".

     

    This get me a unique value.  You can tag "year" into all yours and bam your unique or you can add year,quarter for month etc etc.

     

    Defind the "name column" right under it and your done.

    Can you please share a pictorial representation of this or a reference link.

    Friday, September 8, 2017 11:36 AM
  • Hi 

    amazing how many people have this problem , I browsed through but no one has a solution actually. many good guesses but nope

    so guys here is the solution to this freaky shit. it is still actual as i am using sql 2017 with bids 2015 and it is still there. 

    i had the same type of error while processing a dimension with a fact type of relation. not sure if the last is important. the problem was hard to spot but eventually when ssas processing fails you will see  the value and the column that is causing the problem. Strangely the root error is on the bottom of all the errors but this is typical "microsoft logic", upside down. :)  

    try to select distinct  data on that column and on that value using like '%your value%' syntax. 

    you will see exact same values in the select what should not be shown as you use distinct. most probably you have hidden chars in your values . SSAS has a problem in this situation. you need to go back to data and remove all hidden chars.  

    hoho , processing just finished as i was typing so  i confirm this solves the issue with double keys. :) tada!

    use this function if you like

    create FUNCTION PLANSIS_STRING_CLEAN 
    (
    -- Add the parameters for the function here
    @String varchar(max) 
    )
    RETURNS varchar(max) 
    AS
    BEGIN
    -- Declare the return variable here
    DECLARE  @ResultVar varchar(max) 

    -- Add the T-SQL statements to compute the return value here
    SELECT @ResultVar = LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(@String, CHAR(10), ''), CHAR(13), ''), CHAR(9), ''),CHAR(160), '')))

    -- Return the result of the function
    RETURN @ResultVar 

    END
    GO


    From Project Techcenter





    Monday, March 18, 2019 8:17 PM