Shape the future of FME with your ideas
Exciting Updates to the Ideas Page! Learn more about the recent changes we’ve made to bring more transparency, ease of use, and a clearer view of how your ideas are progressing.
Open ideas have been reviewed by our Customer Success team and are open for commenting and voting.
Currently, we can only set the default layer color in the DWG Writer using a color index. Various CAD standards also work with layer colors based on RGB values. I would like to see this expanded so that it can be set using both color index and RGB values.This will avoid having to create templates with thousand of layers manually (extensive cad standard).
Often, I’m dealing with large amounts of spatial features, but only need the non-geometry attributes. Reading in a national dataset of small polygons must add a lot of time to the process. Reading it all in and then removing geometry is a small saving, but not much. Could we have a ‘no geoms’ option in Feature Reader/Reader?
I've been working with data virtualization for a few projects now. I like the possibilities, but I think it still needs some improvements to make it easier to use the functionality:There seems to be only one way of linking a data virtualization workspace to an endpoint. And it seems to be a 1:1 relation. I think it should be much more flexible which workspaces can be linked to an endpoint. You're really bound to one way of working. It would be great if you can just create a normal workspace in Form, add an endpoint from there, and link it to the virtualization API endpoint afterwards. When testing with feature caching enabled, it asks for the input json every time again. It is not obligatory to add this input (since it uses the cache), but I do not understand why you keep getting the screen. I would expect that it works the same as a parameter. As soon as it is set (and you don’t change it) it is kept in memory without showing the pop-up every time again. If I'm correct it is not possible to change the namespace of an API after creating it. This is no issue if you just started, but for maintenance in the future this is really something which should be possible.
I often filter duplicates immediately before counting via a StatisticsCalculator. This led me to think that a ‘count unique values’ setting in the StatisticsCalculator could save a preceding DuplicateFilter each time, so that’s the idea.
Similar to the Regex Editor, I’d like an interactive window for creating and fine-tuning JSON queries.Bonus points for a live view of the query output using cached attributes.
Currently, FME Flow supports database connections via JDBC, but authentication typically relies on static credentials such as username and password. In modern cloud environments like Azure, using Managed Identity is a best practice for secure, secretless authentication.This idea proposes adding support for Azure Managed Identity including System Assigned and User Assigned identities for JDBC connections to databases such as Azure SQL Database, Azure Synapse, and other services that support token-based authentication.Why is this important?Eliminate hardcoded credentials: Reduces security risks and simplifies credential management. Cloud-native security: Aligns with Azure best practices and enterprise compliance requirements. Automatic token refresh: Improves reliability and reduces operational overhead. Flexibility: Support for both System Assigned and User Assigned identities allows organizations to choose the right approach for their architecture.How it could work:FME Flow detects it is running in Azure and uses the assigned Managed Identity. When establishing a JDBC connection, FME Flow retrieves an OAuth 2.0 access token from the Azure Instance Metadata Service (IMDS). The token is injected into the JDBC connection string or passed as a driver property (depending on the database/JDBC driver). Configuration options in FME Flow to select: Authentication mode: Managed Identity Identity type: System Assigned or specify a User Assigned identity (via client ID) Use Case Example: An organization runs FME Flow on an Azure VM with a User Assigned Managed Identity that has access to multiple Azure SQL Databases. Instead of storing credentials in FME Flow, the system automatically retrieves tokens for secure, passwordless connections. Security NecessityStoring static credentials in FME Flow or any application introduces significant risks:Credentials can be leaked through logs, backups, or misconfigurations. Manual rotation of passwords is error-prone and often neglected. Compliance frameworks (ISO, SOC, GDPR) increasingly require secretless authentication methods.By leveraging Azure Managed Identity, FME Flow can achieve zero-secret architecture, reducing attack surfaces and aligning with modern security standards.
The Esri ArcGIS Connector hub package includes the ArcGISBranchVersionManager transformer which currently supports List, Post and Reconcile actions.This idea is to support querying version differences using the version management Differences API endpoint, including resultType and async parameter options.The use case is to find edits that are to be propagated to an external (to ArcGIS) system in an efficient delta transaction. Usually it will be the default version state at two moments that will be queried, as it is the default version that will be propagated to the external system.In the legacy traditional version reading scenario, an SDE reader could extract differences with a Baseline Historical Date and Time constraint, this idea is an equivalency issue for branch versioned data.
Sometimes you only realize after a while that you need some followup action after a writer. This results in deleting the writer and inserting all the necessary information into a new FeatureWriter.I think it would be helpful if you could convert a normal Reader or Writer to a FeatureReader/ FeatureWriter.
For my current use case - a workspace app - I do not want users to see either option highlighted in the attached image and only wish to allow them to drag/drop or upload from their own machine. I attempted to try multiple file paths and uncheck the ‘Allow URL Path’ option within Form’s user parameter manager, which had no effect on the URL/path option showing, and see no option to disable browsing resources which has been asked about in the past:For simple file uploads by users not needing to provide a URL or browse Flow resources, I think disabling both should be possible.
Would it be possible to get the feature merger to be able to merge 3 or more tables/data streams rather than two, in cases where the tables are joining on a single consistent attribute? Up to now I've just added in sequential feature mergers in situations like the one I have now, where I have 3 tables to merge together. Thinking possibly on the ridiculous side, but if somehow one ended up with 20 tables with a single consistent key to link them wouldn't it be great to just use one transformer.
I occasionally get timeouts or 503 errors from ArcGIS Online (AGOL) Feature service, if I instead would implement this using HttpCaller (and using the rest api) I have much more possibility to tune for increased resilience using featres such as editing timeouts, specify number of retries and even parallel processing.It would be great if we could specify these in the FeatureReader/Reader as well!
As of FME Desktop 2022.1.1.0 build 22623 I cannot see a way to change editing options or specify the ArcGIS Server folder (not the Portal folder) that a feature service is published to (on federated ArcGIS Enterprise 10.8.1). These would be good options to specify when publishing; I am aware that editing options can be changed in the Portal item's settings page but it would be good to set these up front if possible.
Hi,It would be great to have the possibility to enable those GDB functions in FME Form for a GDB writer.Attachments (automatic creation of the relation and the _ATTACH table) Global IDs Editor trackingThis tutorial is well made but way too long !https://support.safe.com/hc/en-us/articles/25407508005645-Writing-ArcGIS-Geodatabase-AttachmentsThank you!
Allow for the python caller to use Python Virtual EnvironmentsComms around it were had a couple of years ago, but nothing seems to have progressed - https://community.safe.com/s/question/0D54Q000080hOlhSAE/is-there-a-way-to-use-a-python-virtual-environment
I work with time series data a lot, and to keep some slack with regards to “race conditions” across my own flows and other upstream jobs, I tend to use rather generous time windows and “full rerun at the end of the day” configurations to ensure I don’t leave any time gaps in the data destination. That means a lot of the features being inserted at the end will have already been inserted by a previous run and will raise a conflict error if there’s some sort of primary key constraint (or create duplicate entries if these constraints are not enforced).This sort of scenario is what UPSERT is for, but UPSERT causes existing rows to be updated by design. The problem is that several databases, such as Postgres and Snowflake don’t handle large amounts of rows being updated frequently very well, since the “updated row” is actually just a duplicate of the old row with its fields updated, while the “replaced row” is just hidden and actually deleted later by a separate process.Given I know any rows already present in the DB would be identical to the ones I’m inserting, I would much rather skip inserting any conflicting rows instead of causing unneeded churn by “updating” them with the same data. Standard SQL handles this with MERGE INTO … WHEN NOT MATCHED THEN INSERT, but there are also non-standard ways like Postgres’ INSERT INTO … ON CONFLICT DO NOTHING. The only workaround I have at this time is inserting all my features into a temporary table and using an SQLExecutor to write that data to its final destination (something not helped by not being able to use actual temporary tables in FME). Being able to set the FeatureWriter to write new features and ignore conflicts from the get go would be a lot more conveinient for me.Related question/community post:
May be terribly niche, but I’ve just come across a situation where having a ‘counter’ that assigns sequential letters in alphabetical order starting at C through to J would have been useful. If it’s of use to anyone else, maybe the Counter could count letters...or gets a cousin called the Alphabetiser?
It would be great to have a direct integration in FME Form to do git commits, etc. in the GUI itself. It could be in the form of a developer command line/powershell or even as a built-in git integration much like what we have with FME Flow. As it stands today, I do this indirectly through Visual Studio. I essentially save my .fmw files in a Visual Studio project, and do all the version control through there. I would love it if I could bypass that altogether.
With libraries like DuckDB in your Python environment, as is the case where you either have ArcGIS Pro or Enterprise on your FME machine, or you’re using ArcGIS Data Interoperability, then it is easy to retrieve potentially millions of features from an S3-API compliant object store or other web source in seconds, but it’s a bottleneck to send them on into the workspace one by one.I would like to see performance like reading CSV files brought to PythonCreator.There is a possibly related existing idea Introduce a Python Dataframe Creator/Transformer but I don’t want to confound using dataframes with this idea, which is fundamentally about performance.Dataframes might be how this idea is implemented, but my guess is that would be a heavy lift for Safe, another way might be a way to output an aggregate feature.
Supports the latest 3dtiles 1.1, supports both single-sided and double-sided models, supports with and without lighting, supports scaling of small models, supports models not deforming when coordinates are large, and supports adding texture images to models in PythonCaller,
Hi,As pointed at in : Please add a writer for on-disk mode.Thanks!
To understand the purpose of the workbench, we will have a look at the name of the workbench at first step. Secondly, we have to go through entire workbench from reader to writer to understand more and understand that all the changes are included or missed out.On the other side, SRS documents will be in another document (i.e., name.docx) file which we have to refer for better clarity.I would be better if workbench have minimum functionality of MSWord with allowing images from SRS documents to refer. This will help us to maintain the same vocabulary between SRS and Workbench. It will even help team members to coordinate in much better approach.It is advisable to place the document just beside Main tab as shown in screenshot. Thank you
The SpatialRelator has the option to output the cardinality of the intersections. It would be really useful to also have the optional functionality to output the actual geometry of the intersection.
Its not obvious but it would be nice to make it easier to see.Without clicking on the value cell, it looks like a single value parameter. When I click on the cell, I see both the drop down and the ellipsis menu. Since there is a default value for MIME_TYPE, user would just populate the drop down and can easily ignore the mime-type. A further enhancement to this would be to make mime_type configured to an Attribute Value choice similar to “value”. If this is available, then I can add a MimeTypeFinder transformer in my workflow to populate the Mime-type parameter of the Multipart Upload.The use case for this would be when using the AddAttachments REST API and a feature with multiple attachments of different mime types supported by the destination format, eg, AGOL and Portal format writers.
You can download subfolders of /Logs but not the entire /Logs folder.
Add option to hide "Browse Resources" button on FME Server App. It confuses some users and there aren't usually any files users need to access in the resources. We prefer to design the input parameters on our apps as simple as possible to avoid overwhelming users with too many input fields and options. Minimizing the upload functionality to only one one button will certainly make the input apps more compact and easy for users to use.
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.
Sorry, we're still checking this file's contents to make sure it's safe to download. Please try again in a few minutes.
OKSorry, our virus scanner detected that this file isn't safe to download.
OK