------ hi all, I’m using LDM to build relationship...
# gooddata-cloud
------ hi all, I’m using LDM to build relationships between datasets. I have a dataset with primary key is combined with some ids in our database. And this primary key is showing as “Records of ABC”. When my customer build reports in the Analyze tab, they see this attribute. I’ve searches the Attributes in the Manage, but I don’t know how to hide “Records of ABC”. Could you please help me?
Hi @Nam Phan, just to make sure - you posted to GoodData Cloud channel, but as far as I know the “Records of …” feature does not appear there and is rather part of the GoodData Platform edition. So I will assume you are using the GoodData Platform in my answer. The “Records of …” attribute is automatically generated for datasets which do not have a single column primary key (which seems to be your case). It is an attribute without any labels (that means it can not be used in insights to break values by it) . But it can be used in the MAQL to for example COUNT number of rows in their dataset (which would not be possible otherwise). I do not think the “Records of …” are actually displayed in the Analytical designer (unless someone manually hacked a label to it and turned it into “normal” attribute). But in the Manage section and in the metric editor, the “Records of.. ” are visible. If you are 100% sure your users are not going to use it, I would suggest this: • Rename the attribute to something more meaningful to your users • Move it to a custom folder (i.e. “technical fields”) to make it less intrusive • Or really hard-hide (deprecate) it: ◦ Please note that this is not officially supported operation and can potentially cause some troubles when working with LDM, if you are using LCM bricks, make sure to use the include_deprecated parameter, otherwise you might get errors. Also if you are using the LDMdiff API to compare data models, make sure to use the parameter to include deprecated objects. Once deprecated, it can be also difficult to get back to this object since most of the default APIs do not list deprecated objects. ◦ If you are sure you want to do it, you can hard-hide (deprecate) this attribute by going to the manage section, displaying the attribute detail and clicking on the red “Delete” button (make sure it is the attribute detail, not the dataset!). This will switch
deprecated = "1"
in its definition and this attribute stops displaying in various lists and APIs, including the manage section and metric editor.
hi @Michal Hauzírek, thanks for your reply. And yes, my question should be asked in the #gooddata-platform. Sorry about that. For “Records of …“, they are actually shown in the Analyze tab and my users ask us about them. I’ve tried to delete labels, but the platform require to have one label at least, so I cannot hide it. I’ll discuss with team about renaming the attributes so that user knows it shouldn’t be used to build the reports.
I see. In that case, do the Records of appear in the LDM modeller as well and does it require you to map some data column for them? Would you mind sharing a screenshot?
yes, it requires to map with a column in the database
here is screenshot
Oh, but on your screenshot, it does not seem like the “Records of …” attribute. Its name seems to be
. I tried to create a brand new dataset with compound key in my testing workspace and the “Records of …” attribute got created and I then checked where it is displayed: • it was not visible in the modeller (neither in detailed view or the dataset view) • it is not displayed in the Analyze tab • I was able to see it in the manage section • and I was able to see it in the metric editor so based on that, I am not sure if we are talking about the same thing. Maybe I misunderstood?
The “Records of…” is just name of attribute that we can change. in my case, I need to combine ids from my system, then create it as an attribute in LDM
here is actually attribute
Thanks, this really helped. Now I can see that these attributes are “standard” attributes (and as such are displaued in the Analyze) that are just coincidentally called “Records of” which also happens to be a way how the “non-standard” ones are called. OK so in that case - renaming or deprecating them would still work. And if you would not display the analyze tab to your end users directly, but ebedded in your application, there might be one more safe and official way how to hide those attributes - using the
parameter in the embedding URL as described here. (you would first need to add a tag to them).
the excludeObjectsWithTags works for me. Thanks for your help Michal
👍 1