Using transformers to modify data.
Recently active
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
I have an HTTP caller using a GET Request, to access an API site using a Web Connection for authentication. I am trying to find a way for it to return (either within the JSON response body or otherwise) the access token which is generated when the process runsI have Accept and Content Type as my headers. I have tried: Storing the cookies doing grant_type = client_credentials in the Query String Parameters. Creating a list for the Headers (no token content within that)In the setting for my web connection, I have this:But I am not returning anything called ‘access_token’ in the response body. To be clear, my process works as intended, but due to new constraints we need to store the access token that is generated every time to store it to use downstream
I have a workbench that takes data from Oracle, merges it with a few other tables, runs it through a schema scanner and then tries to output to a file geodatabase.The file geodatabase has the merged table created but it only contains the schema definition not the data. The output from the schema scanner shows the points in the graphics display. These are the transformers that scan and output Here is the Feature Writer The summary is showing the feature count There is some disconnect between the schema scanner and my output and was hoping someone might be able to see what I am doing wrong. The workbench is attached. Any assistance would be greatly appreciated.
I am not sure why I am struggling with this one… I have tried quite a few options. What I would like to do is:Pull Alignment file from an XML (this has the starting value as an attribute, end value can be calculated by start value + line length) Set Start and End Measures Kick out an m-enabled polyline that is geometrically calibratedI have the workbench set up to pull this in, using a geometry coercer to make sure it is a line, then I have been trying the measure generator and measure setters to get these values to stick with no luck.
HiI am encountering a critical issue when using the ArcGIS Online Feature Service Writer (within a FeatureWriter transformer) in a dynamic workspace.When a specific column contains data that AGOL deems "invalid HTML" (e.g., strings containing <, >, or specific URL parameters), the translation fails with a Fatal Error. Instead of rejecting only the problematic feature or failing just that specific layer, the entire FME Engine stops, preventing the rest of the workspace from processing other layers. I have a custom Transformer that read, process and write individual layer. this custom transformer has a group by set to unique layer id.Current Configuration:Writer: ESRI Feature Service Writer (Dynamic).Transformer: FeatureWriterError Message: ArcGIS Online Feature Service Writer: 'column_name' has invalid HTML content.What I Need Help With:Error Handling: How can I configure the FeatureWriter or the AGOL ESRI Feature Service writer to "ignore" or "skip" features with invalid HTML con
I would like to use gdalinfo to read the metadata/header for a folder of rasterfiles to get the extent and of each file. Ggalinfo can read this without loading the raster itself. This greatly speeds up the process.Can we use the gdal implementation of FME to do this and if so how? The goal is to also have this working on FME Flow.Example of gdalinfo output:gdalinfo "C:\path\to\file\1.img"Driver: HFA/Erdas Imagine Images (.img)Files: C:\path\to\file\1.imgSize is 200, 130Origin = (209000.000000000000000,529000.000000000000000)Pixel Size = (100.000000000000000,-100.000000000000000)Metadata: DataType=GenericCorner Coordinates:Upper Left ( 209000.000, 529000.000)Lower Left ( 209000.000, 516000.000)Upper Right ( 229000.000, 529000.000)Lower Right ( 229000.000, 516000.000)Center ( 219000.000, 522500.000)Band 1 Block=64x64 Type=Float32, ColorInterp=Undefined Description = Layer_1 Min=-54.770 Max=-21.170 Minimum=-54.770, Maximum=-21.170, Mean=-40.290, StdDev=6.935 NoData V
Hi, I have many LAS tiles with gps_time component. Gps time values are in standard GPS Time : ex 363439432.1942503 I would like to display the minimum and maximum times in DD/MM/YYYY HH:MM:SS format. I can use the PointCloudStatisticsCalculator to get the minimum and maximum values, but I can't work out how to convert 363439432.1942503 to the required format. Any idea? Thanks u !
Hi everyone,I am working in FME and would like to orient the flow direction of a gas network.Data: main supply lines service lines connected to gas connections Destination points – representing the gas service connection locations Objective:My goal is to ensure that all Service lines are oriented towards the Gas Service connection points.If a line is digitized in the opposite direction, it should be automatically reversed.Additionally, some lines connected to Service Connection points are split into multiple segments. I need all connected segments to have a consistent direction towards the same Service Connection points .What I tried: I used the NetworkFlowOrientor transformer I applied a Anchoredsnapper beforehand to ensure that each Service connections point lies exactly on the endpoint of the corresponding Service lines Problem: The NetworkFlowOrientor returns no output Questions: What is the correct workflow to ensure that all Service line segments are consistently orien
Good day,I have a table with a couple of records.I would like to keep one record per category and this record should be the record which has the less attributes with a null (missing) value (I highlighted them in green on the screenshot.). How can I automatically calculate which record per category I should keep?
Hi all.I just experimented with a small workflow, that scans a folder for files, and attempts to read those files using the generic format.I tried with CSV and DGN, and both worked well.I then tried with Geopackage, and then it blew up.First because FME’s guess using the extension was wrong, so I had to parametricize the format used.Then it blew up with an internal error message (“Too many recursive macro substitutions”):2026-03-03 15:14:24| 2.6| 0.0|WARN |UniversalReader -- readSchema resulted in 0 schema features being returned2026-03-03 15:14:24| 2.6| 0.0|ERROR |Too many recursive macro substitutions -- line currently is: `SOURCE_READER GENERIC REAL_FORMAT "$(REAL_FORMAT)" EXPOSED_ATTRS "$($(FORMAT_SHORT_NAME)_EXPOSE_FORMAT_ATTRS)"'2026-03-03 15:14:24| 2.6| 0.0|ERROR |class stk::ex::UString<0> __cdecl tabrdr::ClassicTableReader::macroSubstitute(const class stk::ex::UString<0> &,int)(C:\code\fme\foundation\framework\engine\tabrdr\tabrd
Hi everybody, I have a similar issue to the one the creator of this thread has: The difference is that I'm dealing with donuts. The workaround from Takashi (buffer issue location → dissolve → aggregate) doesn’t work with donuts. The reason why this doesn't work is explained here: The GeometryValidator reports self-intersections in the wrong place for donuts. If I buffer the issue location, part of the donut that doesn’t need to be buffered gets buffered, and the actual issue location remains a problem. I also tried the GeometryValidator repair function, but this didn’t work either. Attached is an example workflow which uses some public data that I use in the real workflow. You can download this data here (to big to attach): https://daten.gdz.bkg.bund.de/produkte/vg/vg250_ebenen_0101/aktuell/vg250_01-01.utm32s.shape.ebenen.zipThe workflow shows one example of the problem and my current workaround. Unfortunately, I can’t share the real workflow. In the real workflow, however, many geome
I have a donut geometry (see WKT below) which I am trying to validate. Using the GeometryValidator only looking for self intersections I get an error on the start/end point of the outer ring: Error report:Coordinates from the inspector: I would expect this to not be reported as a self intersection since polygons normally require intersection at exactly that point. Why is FME reporting this? I have tried using both FME Desktop 2021.2 and 2022 beta. Geometry WKT: POLYGON Z ((558000 6142955.0838 0,558000 6142917.0404 0,557997.11 6142919.37 0,557989.1699999999 6142921.13 0,557985.12 6142922 0,557980.8300000001 6142923.23 0,557976.28 6142926.07 0,557969.0900000001 6142930.65 0,557964.65 6142933.45 0,557957.52 6142934.96 0,557954.37 6142937.05 0,557952.6699999999 6142938.1 0,557951.45 6142938.28 0,557950.3 6142937.8 0,557949 6142936.3 0,557948.13 6142930.34 0,557949.23 6142924.47 0,557953.26 6142917.84 0,557961.4 6142913.23 0,557968.81 6142907.49 0,557974.75 6142903.11 0,557980.95 6142900.5
Hello everyone,I am seeking confirmation on whether GeometryValidator supports 3D geometry validation (such as solids, meshes, point clouds, etc.) in version 2025.0I noticed that GeometryValidator includes an issue type called “Self-Intersection in 2D”, which suggests that this one specifically built for 2D geometry. However, I would like to understand whether the other issue types - such as Missing Vertex Normals, Missing Texture Coordinates, Invalid Solid Boundaries, Invalid Solid Voids, Contains Non-Planar Surfaces, Invalid Area Orientation, Surface Orientation, and others - are applicable to and capable of validating 3D data.Could you please clarify which of these validations support 3D geometries?Thanks in advanced!