Using transformers to modify data.
Recently active
Hi,I use a JSONTemplater to make a geojson with nested attributes. It works fine. The only thing I notice is that I have a number in real32 (1.21) and when it comes out of the JSONTemplater it has the value 1.2100000381469727. The extra decimals apear out of nowhere. How can I change these back to the original? Or can I use some kind of casting? I use FME 2023.2.5.Thank you
Under path parameters for the reader it no longer has "retrieve file properties" which means I can't access the create date of files breaking one my workbenches. I tried using the filepropertyextractor transformer but its just too slow for the amount of files I need to read. Is there a way to fix this?
Hello everyone,I was wondering if it's possible in the Pythoncaller to check based on an user parameter (for example “database”) whether the database is avaibable in the user's database connections (FME Options > Database connections). I was looking at Connections — Python FME API FME 2026.1 b26103 documentation, but I don't really get wiser which functions to use.
Hello,I have a workspace in FME Form that reads a large number of tables from a PostgreSQL database and writes them into another PostgreSQL database with the same schema structure but without data.Workspace designI use a FeatureWriter configured for PostgreSQL with the following settings: Table name is dynamic and taken from the incoming feature type: Table Name = fme_feature_type Attribute Definition = Automatic The destination database already contains the tables (same structure). Each feature is therefore written to the corresponding table in the destination database.Behaviour in FME 2023.2With FME Form 2023.2, this workflow works perfectly, even though the tables do not all have the same attributes.Behaviour in FME 2025.1.1When running the exact same workspace in FME Form 2025.1.1, I now get the following error:POSTGRES Writer: Cannot write to table 'enu_cad_caracteristique_constructive'. No valid columns providedWriter failed in write() callPOSTGRES writer: An error has o
I am trying to allocate civic numbers to parcels on either side of road (mostly curved). For this, I first need to sort the parcels (or parcel centrepoints) along the distance from the first vertex of the street, to help develop the sequential numbering. Parcels already have their nearest roads by neighbourfinder. And roads have their first vertex from the coordinateextractor. Both parcels and street segment run parallel here. Tried using Measure generator and extractor but I am getting NAN outputs. What other transformers can I use ?
Hi thereCan anyone offer guidance on how to remove three stray vertices which remain after using the Dissolver transformer, please?Many thanks.
Hi everyone,I have a set of N points that I would like to generalize as follows :Generate Voronoi diagram for the set ; Eliminate the point with the smallest Voronoi cell area ; Redo the same process (generate Voronoi diagram for the remaining points then eliminate the smallest one) until 30% of the points are eliminatedI have tried to implement the process in FME but got stuck on how to do it using a custom loop transformer and how to implement the 30% threshold that depends on the number of features entering the transformer.Any help is much appreciated.Many thanks.
Good day, I am currently using a LineCombiner with Attribute Accumulation > Accumulation Mode set to ‘Use Attributes From One Feature’.How does FME decide which feature's attributes are used? I couldn't find anything on this in the documentation.I used a counter (grouped by the attribute I want the lines to be combined on) before the LineCombiner to validate the outcome. I figured out in half of the cases it used the first feature, for the other half it used the last or some feature in between. How I can influence which feature to use ? I want it to use the first feature always as I sorted them according to some rules.
I have been trying to setup the GoogleGeminiConnector in my FME Workbench to able to prompt and use the Gemini 2.0 Flash model to get me the results.Since GoogleGeminiConnector is a FME Hub transformer, the documentation is not friendly for a first time user of Google Gemini.The GoogleGeminiConnector makes use of the Google Gemini Web Service available on the FME Hub, which again needs some configuration.There are several things to be configured from the Web Services in FME to Client ID/Secret, using the on the Google Console and other configurations, some within FME and some outside FME using the Google Console.Due to the documentation is bits and pieces, a FME user is required to jump between various help documents and web pages.It will be good if Safe can provide a single page workflow, that lists out the steps in the correct order to be followed to make the GoogleGeminiConnector to successfully work in FME Workbench.TxSRG
Hello, I’m trying to upload attachments from AGOL to AGOL using process described in the article How to Use the ArcGISAttachmentConnector, I’m on FME workbench 2026.1On small test this runs fine, but when I start testing actual production feature services, I get errorThe ArcGIS REST API returned an error: HTTP Error Code: 413 : '' Message Code . Further details: 'The page was not displayed because the request entity is too largeI have tried by lowering the number of records per request in the readers to 500 and 300 but it failed.Is there a workaround for this? I do read all the records in; none are filtered (as I’m new to FME I stuck to the article). Would skipping the empty attachment records help? I feel it’s case where the mov files were attached that the upload failed, but I’m not 100% sure.
Initially, I tried using Onedrive connector>Folder to overwrite a folder (with two parquet files) however onedrive doesn’t allow this if the folder already exists.I then tried to delete the folder first. I wasn’t able to do that. The connector seems to use the id and this changes each time I recreate the folder. I get an id doesn’t exist type error.I’ve also tried passing a string as the path. Still no luck.Has anyone been able to overwrite files or folders successfully?
I am experiencing issues connecting to the USPS (Post Office) API using the HTTPCaller transformer. My objective is to query the API to validate ZIP codes and compare the results against a dataset I have uploaded into FME. I would also like to identify and flag any discrepancies between the ZIP codes returned by the API and those in my source data. I’m completely lost where i got it wrong. HTTPCaller (HTTPFactory): An error occurred while accessing the URL 'https://apis.usps.com'The below feature caused the translation to be terminatedHTTPCaller_<Rejected> (TeeFactory): HTTPCaller_<Rejected>: Termination Message: 'HTTPCaller output a <Rejected> feature. To continue translation when features are rejected, change 'Workspace Parameters' > Translation > 'Rejected Feature Handling' to 'Continue Translation''
I have a raster with 0.25 m pixel size, I need to resampler to 0.5m and get align with another raster who it’s already in 0.5m pixel size. I tried many transformer but without succes, and fme helps transformer didn’t help me Any idea? thanks u!align
I have been using Topologybuilder to merge attributes from overlying features. This worked fine as long as empty cells where set to NULL. Now for some unknown reason this does not work any longer. Example of two overlying features:Feature 1: attributeA = NULLFeature 2: attributeA = 'valuesomething'The output used to be one feature with the value 'valuesomething', but now I get the value NULL in stead. Has the way the Topologybuilder works been changed? Does anyone have a workaround?
InlineQuerier documentation states: The InlineQuerier creates a temporary SQLite database, and creates a table for each input object that is connected to it. This is not always true. If an incoming flow is empty, the table is not created. This should be stated clearly in the documentation. I would prefer that the table is created anyway. The transformer will fail otherwise. Related question: InlineQuerier Fails When One Input Port Receives No Data in FME Form 2024.2.1 | CommunityEdit: Tested in FME 2025.1.3
This is one of those questions, where you think the answer should be straightforward yet eludes you, so hopefully somebody is able to help me out here.I have 20,000 property IDs in my workbench, and I need to get additional attributes from a large PostGIS database table that contains several million records. This should be a simple join on the property IDs, but the problem is that FME is feature-based whereas any database is table-based.If I put these 20,000 property IDs through a DatabaseJoiner, SQLExecutor or FeatureReader, it runs 20,000 individual queries rather than 1 single one, so is very slow and inefficient.The second option (suggested by AI) is to write my property IDs to a temp table in PostGIS, and then do an inner join on the temp table. I don’t like this option as it means writing into my source PostGIS database, which is not a good idea. And writing the data into a table is ‘expensive’.The third option would be to read all the properties from the PostGIS, and then do a F
Hi everyone,I’m currently facing an issue with CSV FeatureWriter transformer writing in a ZIP folder. We recently migrated from FME Workbench 2020 to 2025 and the behaviour of the writer changed in between.2020: when writing a CSV in a ZIP folder, the entire ZIP folder would be overwritten. Meaning that if it contained several files, only the newly written CSV would remain. 2025: when writing a CSV in a ZIP folder, only the specified CSV file in the folder is overwritten. Meaning that all the other files are still existing. I get the same result with FME2024.1.3.Main question here: Which FME version has the correct behaviour ? Case 1 or case 2?If it’s case 2, then it means that I will have to update all the workspaces in my infrastructure that are writing files in a ZIP folder, leading to a lot of extra work → I probably need to clean up the ZIP folder upstream through a SystemCaller or PythonCaller. Have you other options in mind?Please find enclosed a folder with relevant resources:s
Hi all,I’m validating polygons (DB tables) and currently using GeometryValidator and SpikeRemover in FME. I’m looking for a short, repeatable workflow that reliably flags:Self‑intersections / bow‑ties Holes outside shell / overlaps / tiny slivers Degenerate parts / zero‑area rings Duplicate vertices/nodesQuestions:Which transformers & order do you recommend for detect only polygon checks? Any tips on tolerances (min area/angle) that avoid false positives when paired with SpikeRemover?If you have a small sample workspace or parameter hints, I’d really appreciate it. Thanks!Sahan
Hello,to simplify/reproduce my problem: I added a User-Parameter on my Attribute-Remover: Which grants me a choice to select which to ignore, but (same as here Attribute Remover does not work with User Parameter | Community 8 years ago) it only removes the values and not the attributes, so when I write it into my database or even a new excel, it creates unneeded columns.Manually selecting attributes in the Attribute-Remover works fine, this only happens when using user parameter. Am I missing something or is there another way?P.S. I also tried AttributeKeeper with User-Parameter, but then they’re unexposed, so I would have to iterate via AttibuteExploder, which simply seems unnecessary complicated...
Hi, is there any way to see the full request that was sent by OpenAPICaller? I struggle with a PUT request to api.avima.app and the Avima support team would like to se my full request. Thanks
All I want to do is create a TIN from a point CSV. I have used the TINGenerator transformer, but the TIN that is created does not have any elevation. The geometry is 3D in the Inspector, but it does not show any height information. If I create a TIN in ArcGIS, it has the correct elevation. I will also post my workflow. Can anyone help me?
Hi All,Has anyone experienced issues with the AutodeskDocsConnector transformer when downloading Revit files from Autodesk Construction Cloud (ACC)?In my case, when the Revit files are downloaded via the transformer as part of an automation, the resulting files are noticeably larger in size and FME is unable to recognise them as valid Revit files, returning an error. However, when I download the same Revit files manually from ACC, the file size is smaller and the files are read correctly in FME without any issues.I would appreciate any insights or similar experiences, as well as suggestions on what might be causing this discrepancy.I’m using FME(R) 2024.2.4.0 (20250318 - Build 24831 - WIN64)Thanks :)
Hi I am using the OpenAIChatGPTConnecter in FME Form and entered all relevant details but receiving this error- Could not resolve hostname Obviously something network related, any further ideas? I cannot ping to the endpoint from command prompt.
Hello All Please any idea / guess how i could maintain the intensity in output and decimate E57 point cloud file. Below is my current workflow. This is my first time working with E57 filetype.
Hi FME Community,I'm currently working on a BIM/GIS integration project where I need to regularly update Revit files into a 3D GIS platform. The initial setup is already in place: I've created the 3D environment and published some Revit files to Portal for ArcGIS using ArcGIS Pro.Here’s the current workflow:Load the Revit file into ArcGIS Pro within a 3D scene. Share the scene to Portal. This results in three published items: a scene-hosted layer, a feature-hosted layer, and a web scene.Since the engineering team updates the Revit files weekly, I’m exploring ways to automate this process using FME Form and Flow. So far, I’ve considered two options:Option 1:Use PythonCaller to replace the Revit file in ArcGIS Pro and re-share the web scene to Portal. This would overwrite the existing scene-hosted layer, feature-hosted layer, and web scene. No additional GIS data would be generated.Option 2:Convert the Revit files to a geodatabase format (possibly using multipatch geometry?). Push the up