Using transformers to modify data.
Recently active
I was hoping someone who understands how FeatureHolder works can let me know if I can use it successfully to help with an issue I am having. I have some workspaces on flow that had been working as expected for well over a year but recently I have had two separate ones glitch on me in the span of a few weeks.I am not 100% sure what went wrong but from looking at the log, the portal feature service reader did not read in all of the records from the table. Looking through the log, I see a line that indicates the metadata fme is accessing lists the correct number of records in the table. However, the summary shows that for that run, it actually read in less than that number.I have not yet identified what caused the reader to behave this way in these two instances. My question is:If I put a feature holder right after the reader, will that solve this problem? Will it make the workspace wait until all of the records are read in? (i.e. the number read in matches the number it was given by the
I have a transformer that pulls data and returns something like this:All values in the _count column should be the same. How would I go about determining if there is more than one unique value?
I’m using an HTTPCaller to applyEdits using ESRI’s REST API. It includes sending along some JSON to add to a table in a feature service. The workspace runs successfully testing with 1 or 2 records in the JSON parameter, which is all sent with a single HTTP call, but fails when testing with 10 records. It looks like FME is truncating the HTTP string, which causes the request to fail. That’s what it looks like in the FME log anyway; the query string appears on two lines (see attached screenshot). If I try applyEdits in a web browser at the REST endpoint and paste the JSON in manually, I can add the data without issue. Is there a parameter or formatting change I need to make to keep FME from truncating the HTTP call? (FME Desktop/Form 2023.2.2.0, build 23764)
ArcSDE Writer is very slow, taking 1 hour to write approx 60000 records. The operations is set as UPDATE and the feature classes has index on the matching column. How do I improve the speed? The Simplify geometry and validate spatial index options are set as NO
I might be missing something really obvious, but is the version of the package installed displayed anywhere?I expected it to be listed here, but that’s displaying the latest package not what is installed
I have a folder of old aerial imagery tiles with .txg georeference file. Inside .txg file, there are coordinates of the four corner. I can manually copy those corner coordinates into the RasterGeoreferencer transformer, but is there any way to automate this process and mosaic all tiles into one raster?
This is the source table. The verblijfsbagid is a unique number of a building. Where the colum leegstand = J, i want a value in the colum leegstaand_maanden. The first empty row is 1 then 2 then 3 etc. I used diffrent transformers, like neigborfinder but it didnt work.Here under is the output that i want to see (red numbers):
Hi, We would like to be able to calculate the real world footprint of drone images to result as a trapezoid polygon. This should be possible with only the exifdata that we get from the custom transformer "exifReader" as far as I can tell. I found a python version here, but it requires additional installation of vector3d from the python script. Anyone got a solution to calculate drone image footprints?https://gist.github.com/luipir/dc33864b53cf6634f9cdd2bce712d3d9 The custom transformer FootprintCreator promises something similar but requires a CSV-file from the camera. Anyone got a suggestion/solution? It would be a neat transformer that I think a lot of people would benefit from. We have a couple of different DJI drones.
I used the FeatureReader to read all feature classes in a file geodatabase and dynamically update the same feature classes in a different geodatabase. Some of the feature classes use attribute domains with code values different than the descriptions. This causes failures in the update. For example, a feature class has an attribute Country defined as integer, and its domain Description is country names (text). Behaving like ArcGIS, the FeatureReader reads the Description text values and write to the destination feature class, which has the same Country defined as integer. The data type mismatch between the FeatureReader output and the destination caused the update to fail. As it is very typical in ArcGIS for a domain to have different code and descriptions values and therefore I would think FME should have been able to handle this gracefully, but I don’t see a workaround option with the FeatureReader. I am at FME Form 2022.2.2. I hope I don’t have to use those Customers or Hub GDB Domai
I have a RUN_DATE field in a File Geodatabase Feature Class Attribute Table. In this field is the current date (today’s date). I want to use a Tester after the DateTimeConverter Transformer to select only the values in the RUN_DATE field that are today’s date. I have tried this and get no passes, all failed. Is there a specific date format that needs to be used for the @DateTimeNow() function?Here are the parameters in the Tester (that is immediately after the DateTimeConverter Transformer: Here are the parameters in the DateTimeConverter Transformer: Here are the values in the attribute table (after the DateTimeConverter Transformer has been run) circled in red is today’s date: Here is a screenshot of my workspace:
How to get to the bottom of this error message?An error occurred while attempting to create an Esri Spatial Reference from an OGC Definition for the feature feature class 'wildlife_key_areas'. The error number from ArcObjects is: '-2147024809'. The error message from ArcObjects is: {The specified WKID (factory code) or WKT (definition string) is not a Projected Coordinate System.}GEODATABASE_SDE writer: An error has occurred. Check the logfile above for detailsThe Feature Information inspector on the incoming data stream says the item has a coordinate system and is happy to display it. The OGC WKT from that dialog is:PROJCS["NAD83 / Yukon Albers", GEOGCS["NAD83", DATUM["North_American_Datum_1983", SPHEROID["GRS 1980",6378137,298.257222101, AUTHORITY["EPSG","7019"]], AUTHORITY["EPSG","6269"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]],
I am trying to both add and update Equipment to CityWorks using the HTTPCaller - it seems to work fine except for custom fields. They do not seem to add or update with the equipment record. I am passing in the “Data” query string parameter with the following json data:{"EquipmentUid":"@Value(EQUIPMENTUID)","Description": "@Value(DESCRIPTION)","Manufacturer": "@Value(MAKE)","Model": "@Value(MODEL)","ForCheckout": "@Value(FORCHECKOUT)","RateType": "@Value(RATETYPE)","UnitCost": "@Value(HOURLY_RATE)", "CustomFields": { "FieldName": "DIVISION CATEGORY", "FieldValue": "@Value(DEPT_ID_DESC)" } } This does not work but is what I could gather from the internet as correct (for the custom fields)
Hello,I have encountered some issues with a workspace that I have not seen addressed previously in the forum. The issue concerns exporting to an SQL server database where the file format is interpreted as GeometryCollection when it is essentially only MultiPolygon at most.This is what my workflow has looked like. I have a workspace that retrieves line segments from an SQL server, which are then combined and the attributes processed. These lines are generalized and buffered to form areas. I then use Dissolver to merge overlapping areas with a Group By function based on a common ID (the field INSATSNR in my screenshot). However, there are several areas with the same ID that are located in different geographical locations and do not overlap. Therefore, I use an Aggregator with a Group By function on the same ID. This ensures that areas with the same ID are collected in one field in the attribute table—exactly as I want it.However, when I want to export the areas to another SQL database, t
Here is my code: import mathimport fmeobjectsFEET_PER_M = 3.28084TURN_THRESH_DEG = 5.0 # minimum angle to count as a turndef haversine_m(lat1, lon1, lat2, lon2): """Great-circle distance in meters.""" R = 6371000.0 phi1, phi2 = math.radians(lat1), math.radians(lat2) dphi = math.radians(lat2 - lat1) dl = math.radians(lon2 - lon1) a = math.sin(dphi/2)**2 + math.cos(phi1)*math.cos(phi2)*math.sin(dl/2)**2 c = 2 * math.atan2(math.sqrt(a), math.sqrt(1-a)) return R * cdef bearing_deg(lat1, lon1, lat2, lon2): """Bearing from (lat1, lon1) to (lat2, lon2) in degrees 0-360.""" phi1, phi2 = math.radians(lat1), math.radians(lat2) dl = math.radians(lon2 - lon1) y = math.sin(dl) * math.cos(phi2) x = math.cos(phi1) * math.sin(phi2) - math.sin(phi1) * math.cos(phi2) * math.cos(dl) brng = math.degrees(math.atan2(y, x)) return (brng + 360) % 360def signed_deflection(prev_bearing, next_bearing): """Smallest signed difference between bearings (-180..+180).""
Is there a resource/database somewhere that has a list of what FME release each version of a transformer was initially released/updated in? You can get it pretty easily for transformers on the Hub, but not for inbuilt transformers.I’ve had a dig through the various Python APIs and I haven’t come across anything (doesn’t mean something doesn’t exist mind you!).Each version of FME does come with the previous versions of the transformer, otherwise this would break the backwards compatibility of the software.
I have an excel file with 100 records (100 rows) with 5 columns. I have a process that will filter one record to update one column field called ‘Last Update’ in that particular record row. So The column ‘Last Update’ for that 1 record should be updated and the rest of the 99 records will remain the same. Keep in mind that the one record being updated, only one column is to be updated which is the Last Update column and the rest of the columns fields will remain the same. How can I configure the FeatureWriter?I currently have the following set in the FeatureWriter Parameters and in the configuration but this does nothing. The excel sheet looks the same as before with all 100 records the same and the one record that Im looking to update does not have the Last Update column updated. If I do an Insert, it updates that one record column ‘Last Update’ but the rest of the 99 records are deleted, which I don’t want. So the Insert is not working for my purpose.Thank you.
Hi all,I’ve successfully solved one issue of enumerating points along the lines (to define flow direction) using this post - Line to connect in order. | Community. Is it possible to enumerate segments of the line the same way using enumeration of points?
I'm getting a weird error at the very end of the log (after Translation was SUCCESSFUL) The dataset is LL-GDA2020 but at the end I get this, even after adding in a reprojector just in case and setting it to reproject from source to LL-GDA2020: +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Feature Type: `'Attribute(string: windows-1252): `fme_geometry' has value `fme_point'Attribute(string: windows-1252): `fme_type' has value `fme_point'Coordinate System: `_LL-WGS84_0'Geometry Type: IFMEPointCoordinate Dimension: 3(148.19125855756474,-32.732898266064595,0)===========================================================================Unknown coordinate system '_LL-WGS84_0' specified - aborting+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Feature Type: `'Attribute(string: windows-1252): `fme_geometry' has value `fme_point'Attribute(string: windows-1252): `fme_type' has value `fme_poin
I have seen some partial answers to this while searching but nothing definitive.Can someone explain the best way to install a transformer [package] manually on Windows? More specifically, the emailer package from FME Hub. We don’t have internet connection to FME Hub so would need to download the package and install it. Does it have to be installed for each profile or can the users share a location for the package?Thanks!
Hi ExpertsNeed your support and Guidance.I was having p scanned PDF and exported a page of the map which was of 1984 and I need to extract the Points with location details with size of each point size so that i can differentiate them based on that.Main challenge is how to georefence it and I have vector file for the province and Extent and 30 M grid i was able to secure that but How can i proceed to georeference and get the details.Kindly Guide and support.I have attached the Image file with GDB of it https://drive.google.com/file/d/1SZXkbyDlMxL_cE0FPsiHKuuECl7k6HrW/view?usp=sharingThanks
When I go to publish my workflow from form to flow I get this error: However when I go to run it on flow, I get an error saying that it doesn’t exist: 58 2025-9-23 12:18:08 | ArcGISFeatureServiceReader: Connection 'connectionname' does not exist. Check connection parameter and connection definitions in FME options and try again59 2025-9-23 12:18:08 | Python Exception <NamedConnectionNotFound>: FMEException: 1: ArcGISFeatureServiceReader: Connection 'connectionname' does not exist. Check connection parameter and connection definitions in FME options and try again60 2025-9-23 12:18:08 | An error has occurred. Check the logfile above for details61 2025-9-23 12:18:08 | The below feature caused the translation to be terminated77 2025-9-23 12:18:08 | FeatureReader_2_<Rejected> (TeeFactory): FeatureReader_2_<Rejected>: Termination Message: 'FeatureReader_2 output a <Rejected> feature. To continue translation when features are rejected, change 'Workspace Parameters' >
Hello FME brains trust. I have a situation where I need to run a regular update that takes a supplied point and looks up a corresponding lot and plan (cadastre) and add it as an attribute to the point. I am currently using the Point on Area overlay transformer, which works, but the updates are only one or two points, and our parcels layer has over 3 million features, which takes quite a bit of time to read and run.I am hoping that there might be an alternative that basically runs a spatial query on the server side and only brings in the intersecting parcels or any other options that might help me streamline this process.
can you think of a tester or tool in FME that can check for polygons in a dataset which are separate (not connected) but have to the same objectID Ie . fixing this issue below:thanks!
Hi Everyone, I have a java-based custom transformer built with the FME plugin SDK. I created an HTML help file for my custom transformer, and I would like to link it to the transformer, so it can be displayed in FME Form when I right-click on the transformer and click help. Where does the HTML file need to be placed, and where/how do tell the transformer about the help file? Do I need to add something to the .fmw or the .java file, or both? If so, do you have examples or documentation on what code needs to be added? Thank you for your time!
Hello,I would like to decimate my point cloud to keep one point every meter for example.I tried PointCloudSpatialThinner but i suggest it extrapolates the coordinates to fit the best to the original cloud point.The problem I have is I can’t change z-coordinates. Optimally I’d like to decimate my point cloud only on the x and y coordinates.Does someone have a solution ?Best regards,Gurvan