A space to discuss FME Form
Recently active
I try to find a text ending with a newline. Using the inbuilt regular expression editor (with the regex #! <DATASET\n) shows a result so the regex looks correct to me:StringSearcher unfortunately doesn’t find the line: (see attached workbench)Where are things going wrong?
Most efficient way to read folders of excel and constrain by a date range. each excel has the date field. Hi,I have a folder structure based on YEAR folders which contain MONTH folders which contain WEEK excel files. The WEEK excel files may contain date ranges which may go outside the month range of days.After reading all the necessary excels I only want data of a whole month of days - e.g. so all the days in January 2025 say.What would be the most efficient way to do this? For example there could be days at the start of January 2025 in the folder 2024, folder December.i’m not too familiar with where clause before and after and whether they would apply to excel data.Would inline sql be an efficient way?Or, as in my example, will I have to read in December 2024, January 2025 and February 2025 before filtering to make sure i have all the days of January? Thanks for any advice.
We require support to establish a structured version management and governance process for FME workspaces (.fmw files) using Azure DevOps (ADO).Currently, FME files are updated manually, which creates challenges around version control, traceability, rollback, and collaborative development. We would like guidance and support on leveraging ADO repositories and pipelines to manage FME files effectively.The objective is to: Maintain version history of FME workspaces Enable controlled check-in/check-out and collaboration Support rollback and auditability Align with enterprise DevOps and SDLC standards Please advise on best practices, recommended repository structure, branching strategy, and CI/CD considerations (if applicable) for managing FME files in ADO.
Hi,I have a very simple workbench that is cliping a gpkg containing mulitple layer. I am struggling with writinng them back to one gpkg using dynamic schema. it fails every single time
I already have a support case open for this, but I’m curious if anybody else is having credential issues with the AzureFileStorageConnector (Azure Storage package 4.2.1) in FME 2025?I’m getting the error message: AzureFileStorageConnector: Connection 'xxx Azure Storage' does not exist. Check connection parameter and connection definitions in FME options and try again.Creating a new web connection does not solve this issue.
Good morning.After an upgrade from FME 2024 to FME 2025.1, there is a workspace using the SharepointOnlineConnector that is throwing this error:176 2025-12-18 07:15:19 | Message Type: fme::internal::_v0::py::Exception 177 2025-12-18 07:15:19 | Python Exception <ValueError>: unknown locale: en-US 178 2025-12-18 07:15:19 | PythonFactory failed to load python symbol `fmepy_microsoft_sharepoint.connector.SharepointOnlineConnector'. An outdated FME packaged transformer may be in use. Please check Utilities > FME Options > FME Packages to confirm that all FME Packages are up to date Other workspaces using the same connector are working fine.I have tried to do a clean removal following these steps: https://support.safe.com/hc/en-us/articles/31697273147533-Introduction-to-FME-Packages#h_01JDX0A9AV157VR7QHVRZ7G03WBut the error persists. The package in FME Form and Flow is updated to the last version available: safe.microsoft-sharepoint [1.9.1].As the locale error happens be
!--startfragment>I want to find the deltas from A(users are editing) & B(for analysis) environments and want to update the deltas in B environment on daily basis. My workspace created as below ESRI feature class from A as rader and same feature class from B as readers, thenNoFeaturesTester - If the database disconnected or any reason to unable to read the sources, it will terminate the process through "NoInput" port from both A & B readers, thenChangeDetector - This will finds the DELTAS from A & B and will update B feature class based on GLOBALID Configured 22 feature classes as above in one workspace. Want to execute this process one after feature class after one feature class, like FeatureClass1 -- Reader A > Reder B > NoFeaturesTester A > NoFeaturesTester B > ChangeDetector > Writer, thenFeatureClass2 -- Reader A > Reder B > NoFeaturesTester A > NoFeaturesTester B > ChangeDetector > Writer, thenFeatureClass3 -- Reader A > Reder B &g
Hey all, I currently have a workflow in place to pull a list of files from an SFTP server, download the latest file, and rename it with a .csv extension (the files do not have extensions by default). This process works fine, my problem is when I try to pass this value onto the systemcaller transformer, it seems to just run the workspace in the systemcaller without reading the updated file, which is problematic. I am taking the _downloaded_file_path from the FTPCaller, and adding “.csv” to it, so that it reads the file. (There is a separate transformer which replaces the file with a file of the same name to add .csv). In the workspace logs, it looks like SystemCaller is interpreting this literally as Filename + ‘.csv’ and that file does not exist. Code to run the workspace has this in it: -SourceDataset_CSV2_4 "@Value(_csv_path)" --FME_LAUNCH_VIEWER_APP "YES" Couple of perhaps dumb questions… does the SourceDataset_CSV2_4 need to be changed to _1 or something? Or is there an issue wi
Hello everyoneIn 2025.1 FME Form I can use the Civil 3d reader, to read extended data from a dwg file just fine. Within the reader I just have to make sure the option for “Civil 3D and CAD entities” is on and leave the other settings as default.The challenge comes on writing extended data. I can write ‘object data’ just fine but I cannot figure out how to write ‘extended data’. The picture below shows where I want to be able to write data to within the Civil 3D interface, from FME. Any insights would be valuable.Thank you
Hi! I’m trying to read dwg files containing AEC objects and have found that the Civil 3D reader should be the one to use for this purpose. With this reader, I manage to read features but they are just a proxy of the correct objects that I’m trying to read.Is there an automated solution for this in FME (some parameter that I’m missing?) or do I have to save the model in a separate dwg file as described in this post (8 years ago) before I can read all objects correctly in FME?Thanks!
I have a process in FME and I want to send an email with the Emailer transformer at the end. I've already written in the email body the data I want to appear in the email, but the problem is that I want to send it in plain text format and not in HTML. The Emailer transformer always wraps my text in HTML, even though I already changed it to FME's format; it seems that every time I exit the transformer to run the process, it doesn't save the text settings in the transformer. Does anyone know how to change this?
Hi,I have 79 single-band rasters, each a step in a time series, with Int8 values that reprepresent a risk class. I want to get the max value for each cell and use a RasterMosaicker to achieve that. Then I use a RasterToPolygonCoercer to convert to polygons for further analysis. My problem is that converting the raster from the RasterMosaicker is extremely slow and performance demanding compared to converting the individual raster I have before the mosaicker (the timesteps are converted in a matter of seconds whereas the mosaicked raster takes in the range of an hour or more). This is an example of my workspace:Why is it so much slower to convert the mosaicked raster? As far as I can see they have the same properties and dimensions. It does have more data but not by much and still most of the cells are nodata. Is there a faster way to achieve the same thing or am I missing something? Thanks!
Hi all,I have a workflow in FME where I need to iteratively buffer a feature and check for neighbours, until no neighbour is found.The logic I want is roughly this: Buffer the feature by 10 m Use NeighborFinder to check if any neighbour exists If a neighbour is found, increase the buffer by 5 m Check again with NeighborFinder Repeat (increase buffer by 5 m each time) Stop when no neighbour is found and output that feature So the buffer distance sequence would be something like:10 m → 15 m → 20 m → 25 m → … until no neighbour exists What is the recommended way in FME to build this kind of iterative / looping buffer logic? Thanks in advance!
I am reading the feature classes and tables from an Oracle Reader, and many of those are not having any records, the tables are empty. But I want all of those in my ESRI FGDB output which I am using in the Feature Writer dynamically. How to achieve this? Any leads?
I’ve been struggling with the File Geodatabase Open API FeatureWriter in FME. When I create a new file geodatabase from scratch, everything runs successfully. However, when I switch the FeatureWriter to Drop and Create, I encounter random failures with the error:Geodatabase Error (-2147467259): General function failureHere’s my setup:The workbench consists of a series of Oracle SQLExecutors that read each table, followed by a FeatureWriter to convert the data into feature classes in the file geodatabase. I originally used a dynamic workspace, but after seeing this error (and reading advice to limit the number of features processed dynamically), I changed the design so each table is processed in series. The failures occur at different FeatureWriters each time, so it’s not tied to a specific table. I tried using Truncate instead of Drop and Create (since truncating is better for avoiding file locks), but it was very slow, so I abandoned that approach. As a workaround, I check for lock fi
I have images taken by a camera mounted on a vehicle, with GPS (4326) coordinates recorded every millisecond. I also have a road reference dataset in a shapefile (epsg :2154) and I need to match my millisecond-spaced images (and their GPS coordinates) to this road reference. There will obviously be some discrepancies between the GPS measurements and the reference dataset, but how can I best align the GPS data with the road reference? What is the best method to do this?If you’d like, I can also help you rephrase it more formally or technically.Thank you
My scope currently is to produce an excel output using FME ensuring the template is being leveraged to populate the values in this columns. Some of these columns have formulas which have been coded in FME as AK.formula if the column AK has formula. However when I convert the FME produced Excel to XML and investigated this, the formula seems to be converting “ into &quot. However I get to know about this only when I checked XML since Excel exactly imprints the formula as coded in FME. What is the best way to resolve this issue?
Hi, The workbench to convert the File geodatabase to CAD was working until the FME/ArcGIS upgrade. The workbench is now not writing many line features with the following warning The following feature is not valid because its entity type of 'fme_no_map' and its geometry type of 'IFMELine' do not match. The geometry failed to be converted to match the type, so the feature will be skipped. Warning : Attribute(string; UTF-8) : `autocad_entity' has value `fme_no_map' FME version : FME(R) 2025.0.0.0 (20250228 - Build 25208 - WIN64) How can this be fixed? ThanksSresree
I have a raster broken up into a grid of raster cells using RasterTiler. I want to rotate each cell X degrees (not the whole raster) in place. I do *not* want to rotate around the upper left corner. I need the cell to rotate and remain in the exact location.As I understand it, my process is using the following transformers:RasterCellOriginSetter: Set to 0.5,0.5 (the center) Rotator: Set Rotation Angle to X. RasterRotationApplier: Interpolation Type = Bilinear.When I do this, the cells are rotated around the upper-left corner rather than the centroid.Do I have the correct transformers & settings for this application?
I need to take hundreds of thousands of connected 3D faces in DWG files and write them to separate IFC files, where each IFC file contains a single surface made up of the multiple 3D faces in each DWG.I have a working solution to accomplish this without merging the surfaces but it is very resource heavy and creates large IFC files, about 10x as large as the DWGs. Using SurfaceModeller accomplishes what I want, however the resulting TINsurface is extrapolated along the entire circumference of the combined features which creates geometry that doesn’t exist in my source data. How can I merge the surfaces without changing them?My workspace:
On FME Flow we added a Network Based Resource. In FME Flow, I can see that the system path of this Network Based Resource is characterized with a parameter, e.g. '$(My_Network_Based_Resource)'. I had some trouble on using that parameter in a workspace with FME Form Workbench. FME Form is not aware that this parameter exists, and upon using it in e.g. a path reader.Is there any way that you can expose additional FME Flow parameters to FME Form Workbench? As a workaround I was able to use a ParameterFetcher, and then feeding in the attribute value of the Network Based Resource into the FeatureReader, but that seems not ideal. Also, the ParameterFetcher does show a Red Cogwheel, because it is not aware of the parameter. Another alternative is probably to create an additional 'FileURL' type of parameter, and set the (default) value for that parameter to '$(My_Network_Based_Resource)'. However, also here it seems that you are then forced to make the FileURL parameter
Hello Forum, I have two polygon datasets read into a FME Form workspace: Dataset 1: Super Output Area (SOAs): This is where the entire authority area is divided into 165 SOAs. No part of our authority area is not covered by a SOA. Dataset 2: Air Quality Focus Areas (AQFAs): These are specific areas for a particular purpose. Only selected parts of the authority area are covered by an AQFA. Datasets 1 and 2 are entirely different and do not share boundaries or nest etc. If that happens anywhere it is entirely coincidental. I need to know what percentage of each SOA intersects (overlaps) with an AQFA area. Some SOAs are going to be fully outside an AQFA. Some SOAs will be partially within an AQFA. Some SOAs will be fully within an AQFA. I want to know what percentage of each SOAs is within an AQFA. The results would be added as a new attribute to the SOA dataset as a percentage value (0-100). I know that using AreaOnAreaOverlayer I can chop up the SOAs where they intersect with AQFAs. Bu
EDIT - Solved, see comment below regarding using the term “Bearer”.Hi,I am delving into the world of Flow Hosted. I am undertaking a Proof of Concept to discover the pros and cons. Concept: I’ve bult a Flow app (note: Flow, not Flow Hosted) to drop a random file into an Azure BLOb storage. I then have a workbench to monitor the BLOb, and when a new file is detected I want to start my currently “paused” Flow Hosted Instance to fire-up and inspect the newly arrived data and report back to say it has found it!It seems that my best approach is to use HTTPCaller in my workbench to use the PUT method and the details copied across from here: FME Flow Hosted API (I can launch the instance from the API page so I know it works using PUT/instances/{instance_id}/action/start) but I am struggling to get the HTTPCaller configured so that it will start the paused instance.I need some help configuring this transformer please. This is how I have it set up, the Request URL features the api.fmecloud link
With the new spatial definition option in the FeatureWriter, it appears that Attribute Definition cannot be reverted to Automatic after first setting the Spatial Definition? In my case the format is set to PostGIS. Is this expected behavior? Am currently running FME Form 2025.1.1.0, Build 25623.
Hi Folks,For reading and writing ArcGIS Online feature services we are transitioning to the newer Esri ArcGIS Feature Service format in FME Flow 2024.2 from the soon to be deprecated Esri ArcGIS Online (AGOL) Feature Service (at least according to this article)My problem is that now the reader seems to read dates as Epoch time in milliseconds! Obviously this can be worked around but it is quite painful to fix up the many workspaces we have which used the older reader and read dates as YYYYMMDD etc. especially when writing back to AGOL where the dates have to be back in YYYYMMDD.Any thoughts?