A space to discuss FME Form
Recently active
I am exporting a large dataset to Geopackages divided into municipality, county and nationwide datasets. Only for some of the largest ones I get errors like this: 2026-03-14 21:22:05|3087.0| 4.4|ERROR |OGCGEOPACKAGE writer: sqlite3_exec(DETACH DATABASE "temp_rtree_48b1c18db46d5df6f87d84127b4186ce") failed: database temp_rtree_48b1c18db46d5df6f87d84127b4186ce is lockedAs far as I can see, the produced geopackage works fine and the content is complete. But an additional file is left together with the zipped geopackage file.The full file name of the extra file is something like Basisdata_0301_Oslo_25832_FKB-Gronnstruktur_GPKG.gpkg.tmp_rtree_bunnsjikt.db. Have anyone else seen this? Could this be related to some kind of size limitation of the Geopackage/SQLite format? Are there any workaround or solution? The FME version is 2024.2.3.
I am using FME Form 2026.1. Using ChangeDetector. I have one point feature class (Reader name ends in _revised) where I moved a point to a different location but did not change any of the attributes. I output to the Writer and the change in the point location is not shown. I have Check Geometry checked in the ChangeDetector. I did not insert any new records, the only update was I moved a point. Any ideas as to why the point moved to the new location is not being written to the Writer? I have some screenshots from my workspace:ChangeDetector parameters: The Writer parameters:
Dear users,I`m quite new to FME. I use FME Form 2025.2.I try to convert a poylgon-Shapefile to dxf.I show you the model attached in an image: The shapefile “rasternetz” gets a Coordinatesystem (EPSG: 25832) and is changed from poylgon to line (via GeometryCoercer). If I transport that file to a NEW Shapefile (Writer) everything is fine (it is a line-shapefile then, has a coodinate system, all the 5367 objects are well shown in QGIS). But: It I use a DXF-Writer the file is created (I can successfully open it in AutoCad Map), but I CAN`T open it in QGIS. And it`s very very weird: QGIS says: “That dxf has no coordinate system” (eventhough I defined one in the FME-Writer). And if I set a coordinate system in QGIS manually to that dxf, eventhough no geometry is shown at all ?? Has anybody an idea? One weird thing is: It is not possible to set the dxf-geometry to “Line”? (Is has only the attribute “all”)…
I have a dwg file format exported from Autocad Architecture which contains 3D Wall type objects. I am using “Autocad Civil 3D Reader” in FME(2026.1) but I am having two issues:1. The geometry of the wall component (eg. hatches) is not being extracted by the reader. 2. Wall style properties are not being read (the wall geometry has properties like style or material). I have tried to expose them (style attribute and geometry) but I could not find them. Note: I don’t get any errors.Does anyone have suggestions how to deal with these issues?
I have an address feature class in a SQL Server 2022 Enterprise Geodatabase. Some records have been updated in the attribute table and new records have been added. I want to write these updates and additions to another Enterprise Geodatabase and a File Geodatabase. Would the recommended approach be to use a ChangeDetector before each Writer and then use Upsert in each Writer?OR Can I use Upsert in each Writer without using ChangeDetector? Currently, the way I do this is to Truncate Existing in the Writer for the Enterprise Geodatabase and the Writer for the File Geodatabase. But, this can take a long time to run. It seems more efficient to use Upsert.
Hello - a colleague has set up a table in an MS SQL Esri SDE and they are trying to use the FME Esri Geodatabase (ArcSDE Geodb) writer to truncate the table and insert new data.However, when the table was created (using ArcGIS Pro) they chose some long attribute names (e.g. 45 characters). This is now causing an issue as the FME ArcSDE writer enforces a 31 character limit for attribute names. This means that we cannot get the writer schema to match the schema of the database table.It seems that the FME Esri SDE writer is enforcing a character limit to attribute names that is stricter than the limits applied by the Esri SDE itself. Is there any way to override this limit on the FME writer? I think we could use an MS SQL writer to truncate and insert the data but would prefer to use the Esri SDE specific writer if at all possible.Thanks in advance.
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?
Unable to retrieve connection 'connection'. Error. It can't be recreated with edit connection context menu? How can be recreated with the same parameters, I already know those parameters, user password schema, host…. It can be asier to recreate if the edit connection menu, create a new one with the same name, and only fill the missing parameters kind, host, user, password, schema, etc… How this can be done I mean recreate the database connection with the same name?
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''
Hi.As most will know, Geopackages are notoriously sensitive to geometry topologies.I want to insert all polygons into a single layer/table, but the topology is tripping me up.I have a number of fairly simple polygons (fme_polygon and fme_donut) and a handfull og more complex polygons, e.g. large polygons with many holes. These latter polygons are stored in FME as fme_aggregate for some reason. The holes are all created by the Clipper transformer.I’ve successfully coerced my simple polygons into fme_aggregate’s, but when output to Geopackage, some of the geometries gets deleted and the feature is stored without its geometry. This typically happens to the unaltered geometries (i.e. the original fme_aggregate’s).I’ve checked that all the input geometries to Geopackage are valid and has @GeometryType() = fme_aggregate, so what’s tripping me up here ?Any insights are welcome.Cheers.Using 2025.1.1 for this.
Hi,Has anyone used the 12dxml reader before and know why it is so incredibly slow? Even for small files with caching turned off. If there was a way to speed it up that would be great.The actual reader isn’t so bad, it is ludicrously slow when you use the feature reader though. I can’t see whyThanks
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
Hello,I have a file with a .bag extension, and I would like to convert it into LAS format. Could you please assist me with this process?Thank you in advance for your support.
there is a feature service layer (i’m the owner) with a filter statement on it.when I view the layer’s properties on AGO, I can see the filter. When I add it to an arcpro project, I can see the filter in the definition query. Looking at the REST end point (the one that has the <organization>.maps.gis.com address), i see all records. When I add the layer into FME either by AGOL reader or feature Service reader, I only see the filtered records and I don’t know how to get all the records. AI is telling me to put 1=1 in the where statement to bypass, but it didnt.
Hello all!I have a question regarding accessing data in an Enterprise Geodatabase in a branch-versioned Feature Service scenario:Using FME’s Esri Geodatabase (ArcSDE Geodb) Reader, can I read branch-versioned feature classes directly from my Enterprise Geodatabase (SDE connection) now that I have published a branch-versioned Feature Service? If I point it to the “sde.DEFAULT” version, will it access the features correctly?I would like to perform some heavy geoprocessing tasks, and my Feature Service performance isn’t keeping up, so the Esri ArcGIS Connector is a no-go. My Enterprise Geodatabase, on the other hand, is robust and more than capable of handling these tasks (e.g., DatabaseJoiners, FeatureReaders, FeatureMergers, etc.). Thanks.
I'm quite new to CAD. I have an Oracle database with parcels. I would like to convert these to DGN (for users in Microstation) and DWG (for users in Autocad). The parcelnumbers should be a text field as the centroid of the parcels. I have only a licence for Microstation to test the DWG's over there before I can sent them to the users using Autocad. I can create and convert the parcels and texts to DGN. These work fine.When converting the parcels to DWG I can see the number of features (elements) in Microstation, but not the geometry itself.What should I do get the geometry right?
Hello all - grateful for some suggestions here - I’m being driven slowly mad…We are developing a ‘data portal’ style workbench running in FME2025.1, using a dynamic writer to deal with multiple input and output datasets and multiple possible output formats - the dataset and output format are specified by user parameters.The source datasets are point or polygon datasets stored in an MSSQL Esri SDE and output formats include all the usual GIS data formats.This is generally working well but one polygon dataset is failing to wite out. In this case the log reports the following:=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-Feature output statistics for `GENERIC' writer using keyword `GENERIC_1':=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Features Written Summary=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=============================================================
Hi FME Community,I came across this presentation from the 2017 FME User Conference on integrating GIS data into PSS®SINCAL:https://fme.safe.com/presentations/pss-sincal-network-modelling-from-gis-data-using-fme/From what I understand, the workflow relies on a custom FME process combined with a third-party DLL to generate and populate the SINCAL database schema.I’m currently exploring a similar use case (GIS → electrical network modeling in SINCAL), and I’d like to ask:Has anyone implemented a more recent workflow for integrating FME with PSS®SINCAL? Are there any newer approaches using FME (e.g., PythonCaller, APIs, CIM, etc.) instead of direct database writing? Is there any official or community-supported FME reader/writer for SINCAL available today?From what I’ve seen, recent SINCAL versions seem to favor API-based or CIM-based integration rather than direct database manipulation, but I’d be very interested to hear if anyone has practical experience using FME in this context.Thanks i
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?
I have line features . When two lines really intersect, I would like to create a new vertex at the intersection point .My requirement is:if two lines intersect, create a vertex on the lines at the intersection location if it does not exist the new vertex should get a Z value that is 1 meter lower than the other existing vertices of the lineFor example, if the line vertices have Z = 145, then the new intersection vertex should have Z = 144.Currently I am using Insector, and to filter out the nodes that share a node between consecutive lines, I cobination of coordinate extractor and FeatureJoiner. Afterwards, I extract all coordinates of the lines and join them again with the remaining points from Insector to identify the real intersecting points, as well as the intersecting points that do not exist as vertices on the line.Then I gave new z values to this vertex candidate but how can i insert them onto line while preservin their z values which is different than rest of the line
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