Build better products with our product team
Fabric Lakehouse fields come through with underscores instead of spaces, e.g. Company_Currency.Prepare instance fields might be identical but with spaces for readability, e.g. Company Currency.When smart synchronizing a table in a Fabric Lakehouse solution, it would be great if TDI would perceive spaces and underscores as being the same character so we can avoid all the manual field mappings.
It costs a lot of time setting all format options for date, datetime and currency columns/measures correctly. In most cases, you like to use the same formatting for all date, datimetime and currency columns/measures in the same Deliver instance.It would be way easier if we have a 'general/default formatting setting’ in the Deliver instances to set some default formats for currency, date, datetime and time. Or at least show the last used format at the top of the dropdown list, this will save a lot of time scrolling through all formatting options.
If a user connects to AX 2012 using a standard SQL connector and decides to switch to the Dynamics Finance provider, the switch is implemented as a cloning. This cloning does unfortunately not “remember” the selected tables and fields in the original data source … effectively preventing the provider switch in larger solutions.It would be nice with an option to retain all metadata (including keys, incremental rules, etc.) when cloning a data source … also when it’s a standard cloning and not a provider change.
Hi, It seems that it is not possible within TX Data Quality to use User Mapping on a User group level.Would be great to have this feature.P.S. If i am wrong, and it is possible to use user mapping on a group level, please let me know.Kind Regards,Devin
After upgrading TimeXtender (TDI/TIS) to the latest version, most of the times you have to individually open all instance to upgrade them to the latest versionIn a setup with 55 instances times 3 environments (dev/test/prod) this is serious time-consuming work. Opening, confirming, waiting until the instance is loaded, close it, next, repeat. This should be way simpler.E.g. a wizard where you can select the instances (include option ‘select all’) and instantly upgrade them. It may be a window within the Execution Service Config tool.
I have a situation where a v6221.1 MDW execution step initially failed. Because of the Retry configuration, the package ultimately succeed and the MDW execution log shows Succeeded = True, which is the desired behavior.But I received two email notifications from this execution; a Fail message after the initial Fail and a Success message after the final Success.Since TX knows that it will be retrying the step, I suggest we change the subject for the first email notification to be something like “Fail/Retrying” instead of just “Fail”. I get alarmed when I see “Fail” whereas I would only be on alert if I saw “Fail/Retrying” or something like that … and when I get alarmed, I immediately jump onto the customer’s box to see what’s happening.
In the current TimeXtender CSV Data source, the Header Setup only allows the first record to be marked as the header. In some cases, files may contain one or more redundant rows, before the actual data starts:<Row> 1 Some irrelevant data 2 FieldA FieldB FieldC 3 1 A ... 4 2 B ... 5 ... ... ... In those cases, you would want to skip the top X rows and mark row x+1 as the header.
Currently, using Fabric workspaces with special characters in it (i.e. a forward slash or a space) leads to errors.
Hi, could you add the option to either trust server certificate in the TX REST API connector or specify the certificate to be trusted from the server?This setting is available in the CData REST connector, and without it my client is unable to migrate from CData REST to Enhanced TX REST:
When you have a big project with a lot of tables, it would be much easier to have the option to search and/or sort tables in the 'All Steps' pane.If you need specific tables within the packages, it can take a long time to find them. A project perspective could also be an option. However, I think having a search and/or sort feature in the Execution Package window would make it much easier.
At the moment TimeXtender creates all Fabric Items in the root of the Workspace, leading to many objects (lakehouses, fabric sql instances, notebooks, etc.) being dumped in a hard-to-manage list. As Fabric workspaces now support folders, it would be great if artifacts could be created in folders.
With the increasing complexity of data landscapes and the rise of data mesh architectures, it would be highly beneficial to introduce license-wide keystores in TimeXtender. The idea is to create a centralized key store that can be accessed and used across different project instances within the same license.Currently, encryption keys or secrets are tied to individual instances. A license-wide keystore would allow for consistent and secure management of keys across the entire organization.This feature would improve: Security, by reducing redundant key management and promoting centralized governance. Efficiency, as teams wouldn't have to duplicate keystore configurations. Scalability, especially in data mesh setups where decentralized teams still rely on shared infrastructure. Data integration, by making it easier to link and work with data from different parts of the organization using the same keystore—enabling smoother cross-domain connectivity and unified access to encrypted resources.
Currently, the Storage Management task in the Ingest Server is very limited, especially regarding the ability to remove old versions or move them to cold storage.It would be very powerful if we could move data to cold storage or archive based on defined rules—such as data older than a certain number of years, months, weeks, and so on.
Hi,Please consider adding cURL compatibility to the TimeXtender REST connector. Many devs use Postman to test API’s and it is easy to export complex API calls in a cURL format.It would be amazing if it was possible to paste the cURL into TimeXtender’s REST connector. Best,Pontus Berglund
In the Business Units section, there is an option called “When Transfer Fails: Continue with Existing Data". If this option is enabled, and the table fails to load successfully, you will not receive an error or warning notification email.The only way to notice this issue is to manually check the logs or realize that the data hasn't been updated in the reports.It would be much better if users could receive an email notification in such cases.By the way, I’m missing the option to select the product area "TimeXtender Classic/V20.10." in this idea section.Of course, this is currently only supported in Business Units.
It is already possible to clone a table structure, but the lookups, data selection rules and database schema are not cloned.
Hi there,I’d really love a quick and easy way to see which tables are being executed in the execution queue. Let’s take this example, I’m executing six tables separately: I’d like to see in which order they are being executed and which ones finished successfully. I can see which table had an error if I choose View Error of course. I know about the execution log but I think this could be much simpler and user friendly by displaying it somewhere in the queue or with a button similar to View Error.
We have some large tables source tables that need to split up for further transformation. For instance, we have a large source table containing all corporate financial transactions, that need to be divided over several divisions. To achieve more efficiency in processing, we like TX (ingest/prepare) to support the partition functionality of Fabric.https://learn.microsoft.com/en-us/fabric/data-factory/tutorial-lakehouse-partition
Hi,it would be nice to have the worksheet name as a data column.Best regards,Peter
I’ve created a dynamic perspective based on an schema.If I try to create an execution package to execute all the tables in that perspective, it’s not possible.Is it a bug?
Hi team, In many projects, I need to integrate legacy historical data with current updates — essentially allowing TimeXtender to continue tracking Type 2 Slowly Changing Dimension (SCD) changes as if it had always managed the full history. Currently, this isn’t natively supported. To make it work, I have to either misuse incremental/history features, write custom scripts, or use a mix of both. In SQL, this problem isn’t that complex. But in TimeXtender, the logic becomes tricky when you're sourcing data from a pre-existing SCD-2 structure.Logically, you’d want to: Load everything initially as Type 1, Then filter for IsCurrent = 1, And apply your Type 2 fields accordingly. But this doesn't work cleanly in TimeXtender, since the natural/primary key definitions are different for full-history and current-only records. Scenario 1: Import Static History Once + Load Only IsCurrent Going ForwardInitial Run: Use Valid_From as part of the primary key. Map Valid_From and Valid_To from the source to SCD_From and SCD_To in TimeXtender. This seeds the full historical record set. After Initial Run: Switch to using only the BusinessKey as the primary key. Add a data selection rule like IsCurrent = 1, or point to a separate current-only source table. Now TimeXtender tracks changes using standard Type 1 and Type 2 logic on new data. This approach is straightforward and works well for historical seeding followed by real-time tracking. Scenario 2: Sync Ongoing SCD-2 Source (Still Changing Slowly)Initial Load: Use BusinessKey + Valid_From as the primary key. Subsequent Loads: Use only BusinessKey as the primary key. Then apply logic based on the Valid_From date (within BusinessKey): Case A – Valid_From <= last known SCD_From: Update Type 1 fields if values have changed. Insert a new Type 2 row if a Type 2 field has changed. Case B – Valid_From > last known SCD_From: Option 1: Order rows by Valid_From and map to SCD_From/SCD_To. Option 2: Take the most recent record only, and apply Type 1/2 change logic as needed. This scenario is more complex and requires careful handling of edge cases like overlapping dates or reissued statuses.Use Cases When the source system has incomplete SCD-2 tracking. Migrating from a legacy DWH that has historical data TimeXtender needs to continue. Blending multiple systems, where each handles history differently. Replacing a legacy system with built-up history by a new system that doesn’t track history.
Hi TimeXtender CommunityI’m exploring how TimeXtender integrates with Microsoft Fabric, specifically OneLake, for a project we’re planning. We’re looking at using Apache Iceberg as a table format for datasets stored in OneLake, with data in Parquet format. I’d like to understand if TimeXtender currently supports native read and write operations for Iceberg Parquet datasets in this environment. If this isn’t supported yet, are there plans to add native Iceberg support in future releases, and if so, is there a timeline for when this might be available?Any insights into how TimeXtender handles Iceberg datasets, or workarounds for integrating with them in Fabric, would be greatly appreciated. Thanks in advance for your help.
Is there any way to stop the Test connection when it’s hanging?
A common pattern in staging Data Areas is to rename fields when you are denormalising data. An example you may remember from TimeXtender Core Training is renaming the Name field in the ProductModel table to be ProductModelName as you do not have the table context if you start looking up data.In the Ingest instance we now have the Metadata manager to avoid needing to remap things if we have a name change between input (source naming) and output (Ingest structure). In the Prepare instance, this is not yet available. If I rename a field and change the mapping (move from ADLS Gen2 Ingest to Fabric Ingest for instance), a Smart Synchronize will not recognize that the ProductModelName field was originally the Name field. This means you will then need to expand the Mapping folder, highlight the mapping and drag the correct Name field from the rightmost column onto the ProductModelName field in your table.It would be much better if TDI kept track of source item name and target item name separately and used this information to make the Smart Synch smarter. This way it could know that the ProductModelName field was originally called Name in the original mapping, the new mapping also has a Name field and can therefore automatically be mapped. If there is doubt, the same kind of interface we are used to for other synchronisation resolutions can be used to show the user what TDI is going to do and indicate any areas where user input is required.
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.