A space to discuss FME Form
Recently active
I am doing an inventarisation of all our scripts. Each script has the workspace parameters completed. This information is ideal for the inventary. I have found a way to do this adding each .fmw script individually, but this is very time consuming so I am looking for a way to do so in bulk. I tried to use Directory reader to initially find all the .fmw scripts in a particular path, and this works, however I do not find a way now from this list how to extract info from inside the various files. I tried the FeatureReader transformer as I used this before to extract DWG files in bulk, but that does not seem to work for .fmw files.
Hello, I’m a beginner to FME and need help with how to exctract the images from a scanned pdf to fit with the OCR text I got from Tesseract. The idea is to create new pdf files from the scanned ones where you can copy the text and so on, and I also want to keep the original layout of the text and images. I have attached two images to illustrate what I mean. One is of the original scanned pdf and the other is my OCR extracted text and where I want to put the images. Also attached is my workspace. Thanks!
Hi, I have a workspace that writes a XLSX from a template. The source features come from Smallworld (there's also a very simple Excel spreadsheet that is joined in the process). I can run it in FME Desktop 2018 (32) + Smallworld 4.3 with no problem. But when I run it in FME Desktop 2021 (64) + Smallworld 5.2, the resulting XLSX seems to be corrupted. While starting Excel, I get a message: "We found a problem with some content in... <file name>. Do you want us to try to recover as much as we can? If you trust the source of this workbook, click Yes". After clicking Yes, Excel does its recovery thing, and tells me "Removed Feature: Named range from /xl/workbook.xml part (Workbook)". To rule out an Excel problem, I opened both output files (FME 2018 and FME 2021) in the same computer, and got the errors only in the FME 2021/Smallworld 5 file. I also see these warnings in the FME log when I run it in FME 2021 / Smallworld 5: Excel Reader: Found named range '
Hello,We are trying to manage changing attachments on a feature layer on ArcGIS Online using FME. We can successfully read, compare, and add attachments using a combination of HTTP Callers and Python Callers. However, we are having difficulties deleting attachments that are no longer relevant. The easy solution would be to delete the entire record but we are trying to avoid that.Has anyone had success at using the deleteAttachments POST request outlined in the ESRI’s api guide.https://developers.arcgis.com/rest/services-reference/enterprise/delete-attachments/Or has anyone found another way of managing attachments?Thanks,
Hello,I would like to export all the layers of a revit file to an ifc model.I used the ETL described here. Here are the layers of the input revit fileAnd the obtained layers of the output IFC file.The only layers that I'm getting rigth are:Architectural.DoorsArchitectural.RailingsArchitectural.RoofsArchitectural.StairsARchitectural.WallsThe other layers of the revit input file are missing in the output ifc file while I used the same logic to build them.What did I miss?
I’m trying to write a PDF, currently attached to a GIS point feature class, to a PDF file. Preference being that this would be an additional page to another. I currently have a FeatureReader accessing the Attribute Table for the feature class. I have tried using the Adobe PDF GeoSpatial Writer but I am not getting anything but a blank PDF document. Is there a transformer or set of transformers that handles this specific workflow? The Data attribute on the Attachments table contains the original PDF document’s information.Thank you all,
I would like to be able to update a Microsoft SharePoint term store and terms using FME. Has anyone done this using the httpcaller or any other method? Any advice would be greatly appreciated.
Hi All,I’m trying to write an existing ESRI GDB relationship 1:1. I have watched a few of the FME articles material here https://support.safe.com/hc/en-us/articles/25407490028813-Writing-Geodatabase-Relationship-Classes but can’t get it to work. Here is the scenario:I have created the relationship (1:1) manually in ArcPro as the relations can’t be created using FME. The relation is one to one and needs to be done by Title_Number field. I have also created the relevant fields after reading the article above, here is an screenshot of the AttributeCreator: Here is an screenshot of the relationship in ArcGIS:Also here is an screenshot of the FeatureWriter settings to write the relation in the template GDB: And finally the error in FME after trying to write the relation: Attempting to write a non-relationship feature to relationship class 'rel_NPS_CCOD'. Ensure the 'geodb_type' is set to a valid relationship class type Any idea how to make it to work?Thanks
Hi,Is there a hidden Zoom limit which can be changed in the Geometry Parameter setings which prevents users to zoomin further than a specific level like (z21 in Google)? Or is this a “feature” of the Leaflet source code behind the this function? I can understand the limit for Google Maps but when using our own custom WMTS layer we shouuldn’t be stoped by this limit. And no I cannot see any references to this in the online doco: https://support.safe.com/hc/en-us/articles/25407744364941-Using-the-Geometry-ParameterCheers,Baris
Using generic feature reader to access a JPEG via a URL, that is an attachment for an ArcGIS Portal feature layer and requires authentication: this works well when explicitly stating the URL as the Dataset as the reader has the option to network authenticate in this mode. However, when the URL is supplied within an attribute, the reader has no authentication option and so the self same JPEG as above will fail with the message : 2022-06-29 16:47:51| 0.1| 0.0|ERROR |JPEG reader: `\\AppData\\Local\\Temp\\1\\wbrun_1656380366772_18540\\fmetmp_4\\TempFS_1656478070812_2916\\4' exists but could not be opened. File contents may be invalid, or the file format may not be supported2022-06-29 16:47:51| 0.1| 0.0|ERROR |JPEG reader: Failed to open the dataset '\\AppData\\Local\\Temp\\1\\wbrun_1656380366772_18540\\fmetmp_4\\TempFS_1656478070812_2916\\4'. Please ensure source data is valid and correct reader is selected2022-06-29 16:47:51| 0.1| 0.0|ERROR |A fatal error has occurred. Check t
Hey all, I often receive multiple AutoCAD drawings which I need to convert to ArcGIS feature classes. I configured my reader as 'Single Merged Feature Type' to read all the features in one input port. At the end of my workflow I want to save the features by dividing them over the feature classes of the unique combination of autocad file name (fme_basename) and GIS geometry type. I tried to use the geometryfilter to filter on point, line & polygon features followed by a string concatenator to then create a new attribute that contains the combination of fme_basename and geometry (point, line, polygon). I then tried to use a fanout by setting the feature class or table name in the writer to the created attribute and ticked the dynamic schema option and set the fme_feature_type as schema definition name. The result is however not completely what I wanted because I end up with for example different feature classes for arcs and lines while in arcgis these are both considered lines. Exam
I have a filegb that I want to append a value from an oracle non-spatial dataset where the address and postcode match. But keep getting the error “The SQL query contains an expression or a global parameter so cannot be evaluated without a feature. Please run translation instead.” Any ideas please how I can resolve this?
Hello, Would anyone know if there is a way to use the Search Envelope by updating from a choice parameter? For example, I have these certain polygons that delimit the area I want to analyze:Every time I want to analyze an area I have to change the values of the X,Y parameter (min and max): To solve the problem, I created a choice that shows the area number on the Display but the values read are the bound coordinates. And I created hidden parameters called Xmin, Xmax, Ymin, Ymax, These parameters look at this choice in the following way: @GetWord($(Choice),0)Attributes read from parameters with the expression aboveBut even if the combination is a number, FME does not accept using this value in the search envelope, as it tries to read the entire written parameter. Below is the error log: Invalid search envelope specified: GEOTIFF_1_SEARCH_ENVELOPE keyword must be followed by four numeric values (minX minY maxX maxY). Got '@GetWord(-42 -20 -40.5 -19 454,0) @GetWord(-42 -20 -40.5 -19
Hello All, I hope you all are doing well. I am trying to figure this out - I have to align points on the lines without overlapping with each other. I have used Anchorsnapper(segment snapping..group by line global id). I have passed lines to anchors and points to candidates. The results have some overlapping points (using matcher). To disperse along the line, using sampler and offsetting by 5 ...and still some points are overlapped...so tried to -5 offset the points and then snap to line. I am still ending up with some overlapping points. Is there a better way to achieve this?Any help would be appreciated. Thanks,Naveen
Hi,Is it possible to change the skins of FME 2016?I installed FME 2016 and I would like to return to the classic skins (FME 2015 or 2014).It is not ugly, but it is not my style.It would be cool to have several skins for FME :- FME in DOS- FME dark- FME pink- FME comicsI like to program XML or JavaScript into a black background, I think my eyes would like it for FME too.Thanks.
Hi, and of course “HELP!” 😁I need to take some values in a column and create column names from them, taking the associated values with them.My starting table looks like this (note this is in Excel, but the table exists within an FME workflow, I am just showing it like this to make it easier to understand… hopefully!!!!!): Asset_ID is my unique identifier. You will see there are either 3 or 4 duplicates of that number.Column B “CHAR_TYPE_CD” has the values I want to turn into new column headings, combined with the existing column headings in C, D, and E.This is ultimately what I want it to look like: Note The values from the original Column B are transposed and combined with the previous column names. There are 4 individual attribute values in the original column B, namely:CM-ELCNT; CM-GRPNG; CM-VOLVL; and CM-VNOriginal column C “EFFDT” now becomes “EFFDT CM-ELCNT”Original column D “CHAR_VAL” now becomes “CHAR_VAL CM-ELCNT”Original column E “SRCH_CHAR_VAL” now becomes “SRCH_CHAR_VAL C
Hello everyone,I was wondering if there is an environment variable available for the R interpreter.If I look at the following post, there appears to be an environment variable for python, but not for R.It would be nice that the R interpreter would be able to look at a certain folder on the C disk for example and when there is different version of R, then the R interpreter would automatically change it.For now, I manually changed the interpreter, however ideally I would like during an update of R, that the R interpreter would automatically change the R interepreter.Does anyone know whether that is possible or might be possible in the near future?
Hi everyone!Curious if I could pick your brains on how to achieve the workflow:I am connecting to an asset via API as well as another separate GIS Feature Class in an EGDB. The workflow will start with a user editing the GIS Feature Class. When a user updates or creates a new record in the GIS Feature Class, I am pulling it into the Change Detector, and wanting to write to the API table only if the asset_id does not exist in the API table. The asset_id field in the GIS FC = unitid in the API Table, as the field has a different name than the same column has in the GIS Feature class.Here is how my workspace is looking now, with the top line connecting to my API as the original source in the Change Detector, and my GIS FC as the Revised source in the Change Detector. That’s one of the main prediciments here is that the data schemas are different as the original source is a Hansen API table whereby the fields have different schemas/naming conventions than the fields in the GIS FC (by desi
Curious if I could pick your brains on how to achieve the workflow:I am connecting to an asset via API as well as another separate GIS Feature Class in an EGDB. The workflow will start with a user editing the GIS Feature Class. When a user updates or creates a new record in the GRI_TEST1 Feature Class, I am pulling it into the Change Detector, and wanting to write to the API table only if the assetkey does not exist in the API table. The assetkey in the GIS FC = unitid in the API Table, as the field has a different name than the same column has in the GRI_TEST1 Feature class.Would I be going the right route here in using the PythonCaller to achieve this? Right now my writer is writing to a xlsx document and not the API table yet so I could test out the logic. # Import necessary modulesfrom fmeobjects import *# Function to check if asset key exists in feature classdef assetkey exists(assetkey, feature_class): # Implement the logic to query the GIS feature class # Assume 'feature_c
Hello,I am using the SQL Executor to read two tables from oracle using a join.I would like to use Oracle Spatial Object as Format to have the geometry included.This is my sql query:select a.nm, a.fid, b.mlpst, b.featfrom t_csm ajoin t_fl bon a.clss=b.clssBoth table a and b have a geometry (GEOM). When I use SQL Executor - Oracle Spatial Object, how can I know the geometry of which table will be used ? I want it to be the geometry of table b but I don’t how to specify it. The geometries of these two tables are not the same and my next transformer is the neighborfinder so it makes a big different if I use the geometry of table a or table b.Thanks for your help.
Hi All, I’m having a bit of headache to get my worflow working: I need to load some attribute data into a template GDB but for some reason fails becuase of the data type (I asume). Below some screenshots that explains the issue:ErrorValue 4510069419 can’t be written into table UPRN_Lookup_Monthyear_FulSupply Raw data valueFME reads value UPRN as unit64 data type see below: Template GDB in FMEFME reads the template GDB (in the FeatureWriter transformer) as Float Template GDB in ArcCatalogUPRN value is Float in the GDB template What value can’t be written?Thanks
Hi,I have 100 polygons that state the population within each polygon, I'm essentially trying to break it down 1 stage below where I have that population essentially scattered across the polygon boundary in the form of points to then get a rough estimation of the population in small selections (and not for the entire polygon) I saw a question asked very similar to what I need where I have the population value in a field and I would like to add that as an input into the RandomPointGenerator (however this transformer does not accept inputs (aside from the fixed value you state), and this does not seem to have been changed in the 5 years since raising this question). Someone had mentioned the use of workspace runner, but I am not sure how to incorporate that into what I'm trying to do.
Hi all,When using a FeatureReader, FeatureWriter, or any other transformers, I can’t seem to access the Coordinate System Gallery. However this doesn’t seem to impact readers or writers (when accessed through parameters anyway).Excel ReaderReprojector (note that Source Coordinate System does use the Coordinate System Gallery)I’m currently using FME via Data Interoperability through ArcGIS, is this a limitation of the extension? Or have I missed a setting to use the gallery in all cases?Cheers for any help.
The last few weeks I have been getting an error message whenever I try to frequently run my workspaces. Since I am testing transformers, and attempting to find the ones that create the most appropriate outputs for my task, which is converting a shapefile to match with a preset schema. If I run the full workbench and then change something because the output did not match what I needed, then run the workbench again. I get an error that says “Failed to write to file” with the file path pointing towards a .dbf filetype in my output folder. The only fix at the moment is completely closing FME and reopening. But doing this for every small iteration is not feasible long term.
I am using the HTTPCaller to interact with an API, for that I use the setting Multipart/ Form Data. This is the way another user got the Endpoint to work for them and I just always used it. This works pretty well, the API does what I want, the connection is stable, but there is one problem. Sometimes it takes a lot of time to configure the Multipart-part.For some jobs I need to configure dozens of parameters, this leads to a lot of typing, proofreading, etc. For this particular endpoint I don't just need to give parameters about the object I want to edit (some inspection), but also something like a table definition. The row (row_id) and the value, for each attribute of my dataset. Since this API endpoint doesn't like it when I send in null values as values, I need to run several configurations of the same HTTPCaller one that drops each variation of Null values in the dataset. Now I was wondering if I could somehow build the whole statement about the rows and their values with something