Discuss, learn, ask, suggest, share all things MDM and RDM π
Recently active
Β In large RDM implementations containing dozens of datasets and hundreds of business rules, choosing the appropriate Ataccama RDM capability improves consistency, reduces implementation effort, and makes solutions easier to maintain.Β Selecting the Right Validation MechanismΒ The first design decision is not how to write a validation, but which Ataccama RDM capability is best suited to implement the business requirement.Β Using Dataset ConfigurationΒ RequiredUse the Required property for mandatory attributes instead of validation expressions such as: column is not nullΒ GeneratedUse the Generated property for business key attributes that should remain unchanged after record creation.Β Β Using Custom Data Types (Domains)Β Reusable attribute constraints should be implemented as Project Data Types (Domains) rather than duplicating the same validation logic across multiple datasets.Β Β Typical examples include:Requirement Domain Example Configuration Data type Integer, Long, Float, B
Β An Ataccama RDM implementation starts with business requirements and results in an RDM configuration. Throughout the implementation, consultants produce numerous artefacts, including validation rules, migration plans, test cases and technical documentation. Although these artefacts serve different purposes, they all describe the same solution.Β Traditionally, creating and maintaining these artefacts requires navigating business requirements, XML configuration files and project documentation. Large Language Models (LLMs) can accelerate this process by generating implementation artefacts and analysing the completed configuration.The following sections demonstrate practical examples of how AI can support different stages of an Ataccama RDM implementation.Β AI Support Across the RDM Implementation Lifecycleβ Project stage Project task Input Coverage AI support 1β£ Design Validation Rule and Lookup Design Business requirements, data model, sample data, DQ rule templates Ful
Β CSV and TXT imports through the Ataccama RDM Web UI can complete with non-intuitive status messages, making it difficult to understand what happened or how to fix the input file.This article explains the most common import messages, what they mean, and where to find additional information to diagnose and resolve import issues.Β Β Import Completed SuccessfullyΒ Β Β Two common scenarios produce the same completion message. Scenario Message Meaning Records were created or updated βImportβ operation finished successfully. The import completed and changes were applied. Imported data is identical to existing records βImportβ operation finished successfully. The import completed successfully, but no changes were required because the imported data already matches the current data. Β Β Import Completed with WarningsΒ Β A warning indicates that the import completed, but some records could not be processed. Scenario Message
During data migration or bulk imports, validation issues are often spread across multiple RDM datasets. Although each dataset provides its own validation results, reviewing them individually requires switching between datasets and records, making it difficult to assess the overall quality of the imported data.A consolidated validation report provides a single view of validation issues across the implementation, allowing data stewards and developers to quickly identify affected datasets, records, attributes, and validation messages.Β Retrieving Validation ResultsΒ The report follows the same retrieval pattern for every dataset. The only dataset-specific elements are the dataset name and the business key displayed in the report.The query performs the following steps:Reads validation results from the validation table (<dataset>v). Β Β Shows validation results for both the published (<dataset>) and draft (<dataset>e) versions of the dataset. Returns only validation entries
Β Expression validations allow business-specific data quality rules to be implemented directly in Ataccama RDM without custom development.Each validation consists of two parts:Validation Expression β defines the business rule. Validation Message β explains why the value is invalid and how it can be corrected.Both components are equally important. A well-designed validation not only prevents invalid data from being entered but also helps business users understand and resolve data quality issues efficiently.Β Β Before Implementing a ValidationBefore implementing a validation, define the following:Item Description Business requirement The business rule to be enforced Target attribute The attribute being validated Validation expression The logical expression used to evaluate the rule Validation message The message displayed when the validation fails Step 1. Define the Validation RuleThe validation expression defines the condition that an attribute value must satisfy to be consi
Hello, I'm working on a MDM project and need help with workflow-governed record creation via the REST API.I have an integration where record creation requests come in from a third party application with the required record details.I pick up those details and use them to create a new master record in MDM via POST /api/rest/master/{viewName}/{typeName}Currently the record gets created and published immediately, completely bypassing the workflow.What I actually need is for this record creation to go through the workflow, meaning it should create a task in draft state with the actual record details, and then go through the configured approval workflow steps before being published.Is there a way to achieve this via the REST API? Any workarounds or approaches others have used for this would be really helpful.Β
Hello,I wanted some help in MDMΒ around publishing of master data records while creation in mdm if they have data quality issues. So if I create a record in the master layer of mdm and if any of the records have data quality issue that record should not be allowed to be published.So in this record there are 2 data quality issues. But I am still able to publish the record. So how can I prevent that. If there are data quality issues that record should not be allowed to publish. How can I achieve that please help me.Thank you.
We upgraded to 16.3.1 and are now looking at the new Admin Centre.It is great that it is now accessible via the MDM webapp and has a great look. It also has great new features like the Server Dashboard and the Runtime Parameters.However, the Orchestration holds all the functionalities the business users regularly use. Basically everything under βWorkflowsβ.This section is now further removed and looks very awkward. Especially in comparison to the slick new look of the rest. It is therefore harder to use which is not a great comfort. Given there are quite important commands that shouldnβt be done wrongly.Will you be looking to improve the look and usability and move it back to a more prominent location?
Hello,I have a question regardingΒ MDMΒ services. So there are different services that are already predefined in the services tab of the MDMΒ project and we can use them easilyΒ Β Some of the services are predefined and some are configurable. Now what I wanted to know is that is there a service which I can use to detect duplicates fromΒ the MDMΒ system. So basically if I send some record information in the soap call it should tell me based on the matching logic defined in the matching stepΒ that the sent record is matched with any record or not in the MDM. Is thatΒ possible? I did try the βProcess Matchβ part but that works differently and does not address the above use case.Thank you.
Hi Team,Good day! Iβm trying to bulk purge some instance records, the high level approach is deactivate the records (i.e. set eng_active to false) and run purge process to delete the deactivated record. To implement this approach i Have following queries:Can I directly set eng_active status for those identified instance records using βExecute SQLβ tool? To call purgeProcess from the plan, I use βSoap Callβ? how do i get the wsdl of all the native services. As Ataccama documents suggested I could locate them in Admin Center (InterfacesΒ >Β Services) , but when i click on show service info/show wsdl, it asks for credentials, but I login using Azure AD. Please let me know if there is any other simple approach I should consider.Thank you!
Hi Team,Could someone provide guidance on how to customize API responses in Ataccama MDM (version 15.4.1)?Our requirement is to conditionally exclude certain child records from the API response based on a relationship-type attribute. For example, a single party may have multiple identifiers such as SSN, TIN, ABC, etc. When a consumer application makes a GET API call, we need logic that checks whether an ABC-type identifier exists. If it does, the API should stop further processing and return the response accordingly (e.g., prioritizing or limiting the payload based on this condition).How can this kind of conditional filtering or response control be implementedβpreferably within Ataccama (configuration, query layer, or business rules), rather than handling it downstream?Β Regards,
Use Case: When clicking "Create" in MDM master record creation, I want certain fields to be pre-filled with default/placeholder values the moment the record detail view opens β before the user manually enters anything.Scenario (CDI Example): In our setup, some fields are common across both Customer Types. The goal is to have these shared fields auto-populated with sensible defaults as soon as the creation screen loads β improving data consistency and reducing manual effort.Β What I've tried / What I'm looking for:β Is there a Workflow Step triggered at record creation (not save) where default values can be injected? β Can a Plan File be used to define these default values at screen load? β Any supported configuration or workaround to achieve pre-population on the Create event?Β Screenshots attached for reference:Field layout on the record detail view Highlighted common fields across Customer TypesΒ Β
I am working on an Ataccama MDMΒ project and I am facing an issue with the Identify button not appearing in the UI, even though the matching step is configured.Β Β However, in the standard CDI example project, the Identify button is visible and working correctly.Β Β What configuration controls the visibility of the Identify button in the UI and are there additional steps required to enable Identify?
Our current implementation of MDM (15.4) consumes XML-based messages over JMS.Β Our organization is migrating from JMS in favor of Kafka and is standardizing on the protobuf format for messages.While weβre able to get a Kafka stream consumer to connect to a Kafka Confluent topicΒ and consumeΒ basic test messages, and itβs clear we can set a property to use the appropriate Kafka deserializer, there doesnβt seem to be a way to configure the Kafka stream source input to expect protobuf (only String or Avro).Β Also itβs not clear how we would refer to an object in our stream consumer component (which currently parses basic XML string input).Is there a resource out there that might shed some light on how aΒ Kafka with protobuf implementation might look?Β It seems likeΒ we might need to integrate a custom module or something along those lines into the stream consumer flow to help facilitate this, but weβre not sure where to start or if thereβs already a precedent for this.
Hi everyone,we are in the middle of our project where ataccama consumes business partner (customer and vendor) records from various source systems. We apply currently the consolidation style, but intend to switch to a coexistnece style later. So, when collecting many records from various source systems, we end up with a bunch of matching proposals who need to be reviewed by our Data Stewards in ataccama. Thatβs our setup.Iβm struggeling a lot with the quite limited functional approach ataccama is following when it comes to dealing with the matching proposals. In our case we only have a handful of columns which are displayed in that user interface. A lot of IDs, a summary column (which we cannot filter), and some other columns which are honestly of no use. I always try to put myself into the position of a Data Steward who is now faced with the task to resolve the matching proposals. And what the Data Steward finds is a user interface that is as far awayΒ from the term user-friendliness a
Tested on v13.8.1Steps overview:Download all components Install ONE Desktop Launch ONE Desktop and create the RDM Banking example project Place the files in the right structure Modify a bunch of files so they work on MacOS Configure the Mac permissions to run things Launch ONE Desktop and create the RDM Banking example project Launch them all (keycloak, postrgres), one by oneDownload: Builds (Latest versionsΒ here): RDM:Β Rdm-assembly-13.8.1-linux.zip (Linux) ONE Desktop:Β Ataccama-one-desktop-13.8.1-macos.dmg (MacOS) Plugins (Latest versionsΒ here, the official Postgres version for Linux missing for now): Postgres: https://drive.google.com/file/d/1Lho_9BQh78xRWR2QHAAGoQuERof-Rn-e/view?usp=sharing Keycloak:Β https://ataccama.s3.amazonaws.com/Frances/Ataccama-one-desktop-13.0.0-GA_keycloak_12_0_4_plugin.zip Your license (.plf file) Install ONE Desktop: Install One Desktop (Ataccama-one-desktop-13.8.1-macos.dmg (MacOS) Rename the application so that there are no spaces
Hello, I am working on a use case in RDM so the use case is that is it possible that can I split a record into two records such that the old record gets replaced by those new records for eg-Β How can I be able to achieve this?Thank you,
Looking step by step info. how to createΒ create virtual catalog item in local Β atacamma on desktop environment Version 14.5I am trying to create using local host urls.
Happy to share a quick update with the community on the progress weβve made with our on-premise AI agent integration into Ataccama ONE.Β Weβve now developed and tested four distinct use cases that support users across various data governance tasks. All of these are accessible through a lightweight chat-based interface that runs alongside the Ataccama UI, without modifying the core product.Hereβs a brief overview of whatβs working today:Data Quality InsightsThe agent detects data quality issues and provides root cause analysis with natural-language explanations. When needed, it also offers recommendations for resolving common problems, making DQ monitoring faster and more intuitive.AI-Assisted Data Catalog NavigationUsers can search and explore the Ataccama catalog using natural language. The agent retrieves relevant metadata and provides contextual recommendations, helping non-technical users find and understand data without needing to know the structure.Compliance & Sensitive Data
Hello Ataccamer,I have a question regarding the "onPublishHandler.plan" file. This file contains components and steps for on-publish synchronization for all the RDM tables, which results in numerous components corresponding to each RDM table. As the project progresses, the number of RDM tables keeps increasing, causing this file to continuously grow in complexity.I'd like to inquire whether it's possible to segregate these components based on projects example diff file for domain or any other way. Is there a way to create separate "onPublishHandler.plan" files for different project domains? This could help reduce confusion, especially when multiple developers are working simultaneously. Just a thought.Β ThanksΒ and regards,Ojaswini
I have to write DQ rules on a table that should execute through monitoring projects.Only data with max date should be evaluated or evaluation should happen for date that use adds dynamically. How to achieve this?
Hi All -Β Looking for design advice on tables that haveΒ relatedΒ data that isΒ notΒ required (as in the case in the βrelationshipβ where itβs parent-child and required).Take the following example: cost codes that can be related to different hierarchies of βgroupsβ: βdepartmentsβ, βproject groupsβ, βgovernance groupsβ.Β Each of the organizational groupings have their own relationship to cost code - but not all of them areΒ required to use cost code,Β which rules out using a parent-child relationship. Also, itβs not necessarily an Mn Relationship, because each βgroupβ (at whatever level) can only have 1 cost code, if itβs related at all.Additionally, we are not implementing any synchronization from our source systems due to security constraints - so things will be either manual or import by UI or plan if that makes a difference in terms of usage.Iβm thinking about creating a junction table to hold the related values - but that doesnβt seem ideal from a user/UI perspective, because then users w
Hi everyone,Iβm working on an MDM project where I need to configure reference data in such a way that it updates dynamically based on another attributeβs value.For example: I have an attribute Country and another attribute City.When a specific Country is selected, the city dropdown should automatically display only the cities associated with that country.Is there a way to achieve this kind of dependent reference data setup in Ataccama MDM?If yes, could someone guide me on how to configure it?Thanks in advance!For reference:Β Β
Β We want to hear from you!We value your feedback and want to answer any questions you might have about building a modern data strategy. Weβre collecting questions in advance for our upcoming webinar - drop yours below and join us live onΒ October 29Β to ask more during the session!Our Field CDO,Β Larry Hunt, will be sharing his playbook for turning data risk into ROI - from scaling trust and automation to connecting governance with business value.Β Ask your question hereΒ andΒ register for the webinar
Dear Fellow Users,I have a certain issue using the Matching step in workflow editor.I composed a Matching Function, and assigned it to a data field as Matching Rule.Now I want to use the result of the Matching Rule further in the next steps as value.Please see the attachment for exact presentation of the case.First attachment demonstrates how the Matching step is structured - the details in question are highlighted in green frames.Second attachment demonstrates the function applied, and the result I want to take as value to be processed further.Β Any solution is keenly welcome.Thank you, Laszlo
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.