Shape the future of FME with your ideas
New and Open ideas are awaiting review or have been reviewed by our Product Management team, and are open for commenting and voting.
Good morning. As an FME Flow admin I have to review the job logs manually for several projects due to the fact that users have not added a notification topics when they publish the forms. This is a problem as most of the time, workspace authors don’t even know that jobs have failed unless they review the logs themselves. I am trying to anticipate this scenario and inform the workspace authors as soon as jobs fail. Can we make the advance parameters editable for a selected workspace in FME Flow--see attached picture-- otherwise users will need to republish the workspaces that don't have a topic. I know that I need to educate the workspace authors to add the topics when publishing instead of fixing thins on the back end. This would just make the job much easier.
When inspecting feature attributes in the Visual Preview, there is an under appreciated option to select Columns in the Table view.Large schema's such as Esri's UN model have so many columns, that if you select only a few columns, it can help you quickly identify issues in the values. For example with Dates, filtering for columns with names that include date, you can more easily inspect and find dates that maybe in different/inconsistent formats. I'm asking to add a Preset/Save button, that remembers a preset or last selection of columns.Attribute Table > preset save as my attribute selection list
It would be great to create reports through MS-Word Writer. The attributes can be populated in Word Document based on the tags (e.g. ${attribute}). Something like Survey123 Reporting Concept.
To get to know your current amount of Dynamic Engine / CPU Usage Credits you need to navigate to the Licensing Menu within the FME Server GUI. To see this, you need the proper permission that should not be granted to a lot of people. A possible way to make this information more accessible could be done via the REST API. Right now, there is no such endpoint. Accessing the credit amount via the REST API will give you the opportunity to automatically get the Credit amount and, for example, enables you to monitor the usage and reduction of you credits. This monitoring could be done via FME Server itself or by implementing the REST API request within a third-party application (like Grafana).
It would be nice if the RasterExpressionEvaluator would include math functions like @max(A[0],A[1],A[2]) similar to the expressionEvaluator
I would be good to have the ability to add new keyboard shortcuts for various menu and submenu items. At the moment most functions have shortcuts, but others do not including the "Update Reader..." and others which get used often.Having the ability for user to add new shortcuts and perhaps customize existing ones would be good for UI and better tailor the tool to the functions users use the most.
If a FeatureWriter is set to write dynamically, then the port which accepts the schema features should be a dedicated schema port, and not the main port that handles the features to be written.This is the design the FeatureReader transformer uses, and more recently the SQLCreator, to have a dedicated schema port. Dynamic writing can be done either by having a schema feature enter the writer before the features to be written, or by having each feature carry schema list attributes that describe how it should write. Potentially adding a schema port would make that second dynamic write pattern unviable, but we have tools now like the SchemaScanner to produce a schema feature for any workflows which would need to change from this.Also there are occasionally bugs where the writer tries to write out the schema feature, or schema attributes. Recently in 2023, a GDB writer will warn you that the schema attributes need to be renamed to follow GDB field name restrictions.It would be much more consistent design, and easier to teach how dynamic writing works if the FeatureWriter had a schema port to receive the schema. It only needs to appear when the write mode is set to dynamic.
Write in OBJ format, support adding id, add unique identifiers and groupings for each model
The obj reader looks to support obj "Groups" and "Objects" - it seems that these bring in an OBJ as an aggregate of mesh features.At the moment it seems like the only way to create something similar is to give the objects a unique appearance name so that the output OBJ separates the meshes. This seems a bit hacky to me.It also means that it's not really possible to perform a "round trip" with OBJ files which support this group/object feature. It would be nice to have this supported - either via format attributes or by geometry properties. Being able to do this would enable output objs to have more value in tools like blender where groups or objects can selected. A use case is in City Models - if Roofs and Walls for example could belong to separate groups then in blender it might be possible to apply materials to all Roofs or Walls. As it is at the moment the resulting obj will typically just be a single mesh.
Multi-leaders are a core AutoCAD annotation object. FME can explode MLeaders on read but cannot write back to DWG as Mleader. This blocks end-to-end DWG automation workflows that modify and write back DWG files.Adding MLeader write support would allow users to recreate and update leader geometry, text content, and annotations programmatically.Another object key object which needs writing support is the AcDbTable or AutoCAD Table.Supporting these two key objects would significantly improve holistic DWG editing and automation capabilities in FME.
In Autocad layer colors can be defined either by index or RGB.FME doesn't have a way of validating RGB layer colors. It looks like FME is doing a best guess using the color index here, but unlike with objects we don't have something like autocad_layer_true_color where we can find the exact RGB values.
During workspace testing I often use a lot of different parameter values. When I have a certain version ready for deployment or a next iteration, I would like to (re)set all the parameter values at once. This could be to the parameter default values or clear all values.My suggestion is to add to the Navigator pane:User Parameters (root)Published Parameters (sub)Private Parameters (sub)FME Server Parameters (sub)right mouse click options:Set all parameter values to DefaultClear all parameter values
I’m trying to download files from a SharePoint environment using the SharepointOnlineConnector transformer in FME. After a certain period, we hit the timeout criteria, and SharePoint becomes unavailable/unreachable.According to Microsoft’s documentation, there is a Retry-After header option that can be used to introduce a delay after each API call:https://learn.microsoft.com/en-us/sharepoint/dev/embedded/development/limits-calling#patterns-and-best-practicesHowever, I cannot find this option among the parameters of the SharepointOnlineConnector transformer:https://docs.safe.com/fme/html/FME-Form-Documentation/FME-Transformers/Transformers/sharepointonlineconnector-pkg.htmQuestion:Is it possible to extend the transformer with a header clause where we can set the Retry-After parameter? Or is there an alternative way to implement this behavior in FME?
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 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.
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.
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:
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,
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.