Using readers and writers to extract and load data.
Recently active
Hallo everyone,I copied and upgraded an ArcGIS Dimension Feature Class (File GDB) using ArcPy.However, when trying to read it in FME 2024 (FeatureReader / File Geodatabase Reader), I get this error:Unable to convert row to 'DimensionFeature'FME can see the schema, but fails when reading the features.Does FME support reading Dimension Feature Classes, or is there a known workaround?Thanks.
I have a COG with a scale factor (excerpt from GDALInfo)Band 1 Block=1024x1024 Type=Int32, ColorInterp=Gray Min=-50313.000 Max=57304.000 Minimum=-50313.000, Maximum=57304.000, Mean=4745.177, StdDev=7550.452 NoData Value=-32767 Offset: 0, Scale:0.1How do I apply this scale factor in FME? If I clip the input and create a new tif, the scale factor is dropped and the values are 10 times the expected.In this particular case I can just scale the value back down, but in general, is there a way to retrieve the scale factor and apply it?
Hello Team,I have an Excel template with a single worksheet that includes predefined colours, formatting, etc.In version 2025.0, I’m trying to write my results into this template, but I want to output multiple worksheets within the same workbook using the same template. I’ve tried several approaches (both dynamic and manual), but they either fail or behave unexpectedly.What I’m seeing is that only the first worksheet shows the designed template but no results, while the subsequent worksheets contain the results but lose the template formatting. Even when I set Remove Template Sheet if Unchanged to Yes, the first worksheet (the template sheet) is still present with no results filled in.Does anyone know whether this is achievable in version 2025.0? If so, how should it be configured in the Excel Writer?Kind regardsThanks!
Hi,I am using the Matcher transformer to find pairs of features with the same attribute value.Now I want to create a new attribute rel_obj that stores the ObjectID of the other feature in the matched pair as in the image. What is the best way to implement this in FME?Thanks
Hi, I want to import the WFS service from Digitaal Vlaanderen, specifically the address registry, but my FME only imports a maximum of 10,000 features.I had found that it was possible via paging, but apparently that is no longer supported, or at least I can’t find it. It should then be done via loops, but I’m stuck. I found that it should be possible using an HTTP caller and JSON fragmenter, but I’m already stuck with my HTTP caller. Could someone help me set this up correctly? The URL is https://geo.api.vlaanderen.be/Adressenregister/wfs?REQUEST=GetCapabilities&SERVICE=WFS
I have attempted to use the NeighborFinder transformer to achieve a one-to-many join; however, it is not producing the expected results.In my case, the base dataset contains values such as 30,511 and 55,867, and my expectation is to match all records where the base value is greater than 30,511.Since NeighborFinder does not seem suitable for this requirement, could you please suggest an alternative transformer or approach to achieve this condition-based matching?Thank you.
Hi FME gurus. I am trying to extract values from a list to populate columns with the associated values in the fields. In my list (called _columns) I have a caption field which has the name of the column I want to create and the date value I want to populate into the field so the example I have in the screenshot I want to look like this: Application ID Last Inspection Next Inspn Due 648343 2025-06-23 2026-06-16 15456.. 2025…. 2026…. The list exploding only brings out the name of the original column ‘caption’ but I am looking to use the values in the list itself to build the attributes and populate the values. There are records with more than 2 elements in the list and I still will need to figure out how to expose the attributes (schema scanner?) once it is done but this is the first step. Any suggestions would be amazing, Thank you.Michael.
When using ArcGIS Feature Service (reader, writer, featurereader, featurewriter) I am only able to reference items using Folder and then featureservice name + itemid (in paranthesis after the name). Is it possible to directly refer to a service using only itemid?(for my case the data is hosted on my institution’s AGOL)
I’m creating a workspace that reads 7-8 tables from a file geodatabase and then writes them into tables in a SQL database. One of the tables is sometimes present and sometimes missing (that is expected). I need to create a workflow where when the table is present we write the data into the SQL table and when it is not present we just truncate that same table in the SQL database. I currently have a gdb reader connected to a tester that passes when fme_feature_type Like MSAG_To_RCL_Synchronization. This works when the table is there but when it’s missing the reader just closes and gives the message “The table name 'MSAG_To_RCL_Synchronization' could not be found in the Geodatabase as either a feature class or a table” and closes before any input gets to the tester. Any ideas on how to conditionally test if a table exist or not and then either write the data or truncate a SQL table.
I have the exact same issue as is described here: That topic is closed, so I'm starting a new one over here. I got the error “Check the geometry of such feature is valid and is not too small for the resolution”, while updating a feature. I use FME Form and Flow 2025.1.2 and ArcGIS Pro 3.3.1 with ArcGIS Enterprise 11.3.At first I also thought the issue only occurred in FME Flow, not in FME Form. But now I'm checking the issue again and it is also in Form.In my case I use the ChangeDetector to check if the feature exists and if so if it is changed. If it existed and is changed, I'm also using the Update Mode in a FeatureWriter. I tested with not updating the spatial column, but that didn't make any difference. I still got the error. And I am positive the geometry didn't even change: setting the ChangeDetector to only check geometry sends the feature to the Unchanged port.I don't really understand the solution in the other topic, but it seems I have to delete some data. But that sort of d
Hello everyone,I am having difficulty correctly assigning a spatial reference to GOES satellite imagery (Band 13) stored in NetCDF (.nc) format when working with FME Flow 4.0 / FME Workbench.Environment•Product: FME Flow 4.0•Workbench: Yes•Data type: GOES satellite imagery (ABI sensor)•Band: Band 13 (Infrared – Brightness Temperature) Full Disk•Format: NetCDF (.nc)•Satellite: GOES (GOES‑16/18/19 – ABI)Problem descriptionThe NetCDF file opens correctly in FME, and the raster data for Band 13 is read without errors. However, no coordinate system is automatically assigned, and I am unable to manually define the correct projection in a way that allows proper georeferencing.I understand that GOES ABI imagery does not use a traditional map projection (such as EPSG:4326, Mercator, or UTM). Instead, the data is provided in the so‑called ABI Fixed Grid / Geostationary projection, where pixel positions are defined by scan angles (x, y) and navigation parameters.The NetCDF file contains metadata
I know I’m using an older version but upgrading is not an option. I was using a background map that is no longer supported so trying other ones. I have a Bing API key but get this error when attempting to display the background:“(1):Python Exception <IndexError>: list index out of rangeAn error has occurred. Check the logfile above for details(2):Python Exception <IndexError>: list index out of rangeAn error has occurred. Check the logfile above for details”And I can’t find anything in the log file about it. This error message is listed as a known error for later versions of FME Desktop and Flow, but not for 2022.Can anyone offer any advice or assistance in getting a simple background map to work?
Hi, I have a query that reads data from a view. When I run the workspace that executes the query locally, it executes.If I then set the workspace to FMEflow, the query no longer works. Local and FMEflow use the same Oracle client version.The error message is meaningless: SQLCreator_11_<Rejected>: Termination Message: 'SQLCreator_11 output a <Rejected> feature. To continue translation when features are rejected, change 'Workspace Parameters' > Translation > 'Rejected Feature Handling' to 'Continue Translation''The query does an select with a group by on a view. The same query runs in SQLdeveloper without errors.The only strange thing i see is when i skip the 'group by' that there are fields with the value "<Missing>" Normally i see Null.
Hello, I’m trying to convert decimal coordinates into a DMS format with hemisphere indication. Example : 1.4861803 ; 43.5713123 Target format : 1°29’10.2491” E ; 43°34’16.7243” NIn my workflow, i used DMSCalculator transformer to split the coordinates into degrees, minutes and seconds. This part works correctly.However, I am now stuck when trying to reconstruct the final formatted string. Does anyone know the best approach to rebuild this format ?Thanks advanced,
I’m writing data from FME into an existing Excel sheet (XLSX writer) that is later edited by others in Google Sheets. Some columns are manually updated after the file is generated.When the workspace runs again, FME starts writing at Start Row = 2, which overwrites the existing rows and removes those manual edits.Is there a recommended way to append new rows to the bottom of an existing worksheet in FME while preserving existing rows and user edits? I saw a somewhat similar question in a different post, but didn’t know if there was an easier way?
I am working on a project creating building footprints from a lidar point cloud. However, the original lidar point cloud being used has some portions of buildings classified with “unassigned” values which has created incomplete building footprints. Are there any suggestions how I could identify these “unassigned” building values to fix the building footprint?
Hello,I am trying to convert decimal coordinates into a DMS format with hemisphere indication.Example:Decimal format:1.4861803 ; 43.5713123Target format:1°29'10.2491" E ; 43°34'16.7243" NIn my workflow, I used the DMSCalculator transformer to split the coordinates into degrees, minutes and seconds. This part works correctly.However, I am now stuck when trying to reconstruct the final formatted string. I am not sure what is the best way to: concatenate degrees, minutes and seconds into a single formatted value add the correct hemisphere suffix (E/W for longitude and N/S for latitude) My goal is to automatically produce a final attribute formatted like:1°29'10.2491" Eand43°34'16.7243" NDoes anyone know the best approach in FME to rebuild this format after using the DMSCalculator?Thanks in advance for your help.
I am loading a small raster/tiff into CesiumJS via ion for a limited area of interest, which works, but I am getting a sharp “cliff” between this raster and the surrounding Cesium-terrain (I assume it is the Ellipsoid, it sits at roughly 35m above MSL). My initial idea was to see if I can “lift” the surrounding terrain up to the level of my custom raster-tif, but I guess that’s not possible, so my second idea is to expand my raster to continue outward at a set height (say 80m) for a few hundred meters instead to better mask the impression of the vertical cliff, and maybe have it ramp downhill until it meets the default terrain. However, I have no idea how to do this in FME, and ChatGPT is hallucinating around FME as per usual :)Does anyone have an idea of a solution for this? Ultimately, I just want something nicer than the sharp cliff a la Grand Canyon into something that is not too distracting for users. I’ll include a screenshot of my Cesium-app the way it looks in the browser, as w
I have JSON response from an API that looks a bit like this (tidied up for the purpose of showing here):{ "member": [ { "id": "OBF-123", "fieldspec": [ { "assetattrid": "FIELD01", "assetattribute": [ { "datatype": "NUMERIC", "description": "Length" } ], "numvalue": 13.4 }, { "assetattrid": "FIELD02", "assetattribute": [ { "datatype": "ALN", "description": "Fruit type" } ], "alnvalue": "Banana" }, { "assetattrid": "FIELD03", "assetattribute": [ { "datatype": "ALN", "description": "Class" } ], "alnvalue": "N" } ] }, { "id": "OBF-124", "fieldspec": [ { "assetattrid": "FIELD02", "assetattribute": [ { "datatype": "ALN", "description": "Fruit type" } ], "alnvalue": "Apple" }, { "assetattrid": "FIELD01", "assetattribute": [ { "datatype": "NUMERIC", "description": "Length" }
Hi.I'm looking for a way to compute the average while excluding outliers. This average is based on 5 attribute values for each record. To expand, i am QCing pole counts within permits. Each permit is a record. There are a bit over 10k records. I have 5 attributes, with pole counts, each coming from a different source.Example:permit a, pole counts = 1, 4, 5, 28, 6permit b, pole counts = 2, 10, 14, 80, 12Manually, for permit a, i'd exclude 1 and 28 and my avg would be 5. For permit b, i'd exclude 2 and 80 and my avg would be 12. The final goal for this exercise is to pick the value closest to the average computed without outliers. Pls help. Thank you.
I’m reading Survey123 results into FME where one question allows multiple selections. The answers come through as a comma-delimited string (e.g. Need_PD,Need_TMA,Frozen).I want to validate the responses against a known list of allowed values (CSV/XLSX), so that: each selected value is validated individually any invalid or new value (even if it hasn’t appeared yet) is flagged I don’t need to handle every possible combination of selections I understand that Tester “Cached Values” only shows existing data values and that Survey123/ArcGIS domains aren’t directly usable here.What is the recommended transformer pattern to: split the multi-select field so I can edit testers for looking for certain selected options and not others
This is really strange—I’ve never seen this behavior before.After saving and closing my workbench, all other FMW files in the same folder disappeared automatically.At first, I thought I was imagining things, but other users have reported similar issues before. [Post link]Version: 2024.2.1 (Build 24801)OS: Windows 11 24H2 (26100.2894)The only change I can recall is that I recently uninstalled all old FME versions, but that shouldn’t somehow trigger file deletion, right?
I have a list of points which I want to connect to lines. But one line should contain only points with a specific value in a field. At the end I want to have multiple lines in one feature class. How can I do that?
I have a source SDE Geodatabase reader and destination File Geodatabase writer, both with the exact same attributed relationship classe schemas. The File Geodatabase being written to is blank (I’m using a template) and I don’t need to re-establish any relationships, I want to write the records exactly as they appear in the SDE Geodatabase, to the File Geodatabase. I’ve read in feature types using Ignore relationships, making them type geodb_table, and the destination feature types are also geodb_table (though obviously both are in fact attributed relationship classes).FME (2024.1.1.1) seems to want to recognize the writer feature types as relationship classes, no matter how I define them. I don’t want to have to establish the whole geodb_rel_origin_oid and geodb_rel_destination_oid values since I know what they should be already from the source (and there is no common attribute between the two source relationship class tables anyways). Is there a way to force read and write attributed
a file like the following.I am reading it using a Text Reader dataset in XML format.I would like to use XML Fragment / XML Flattener to extract the Name attribute and its value, but I always get no result from the XML Fragment.I am not sure what the reason is. Could someone please help me?Thanks in advance.FME 2021<processXMLRequest ><field ><name>text1</name><value>value1</value></field><field ><name>text2</name><value>value2</value></field><field ><name>text3</name><value>value3</value></field><field ><name>text4</name><value>value4</value></field><field ><name>text5</name><value>value5</value></field><field ><name>text6</name><value>value6</value></field><field ><name>text7</name><value>value7</value></field><field ><na