Creating and organizing workspaces. How to use Workbench.
Recently active
Hi all.Is it possible to expose all attributes with a specific prefix with a transformer ?E.g. x_kjhkjhgk, x_iuyiuytiuyt and x_nmbvmnbvmnbvcAll attributes are read by FeatureReaders and renamed with a BulkAttributeRenamer.Or most I delve into doing some Python magic using the schema features and fmeobjects ??Cheers.
Hi.After installing the latest beta, all my 2024 and 2025 workbenches have lost all access to our shared server and database connections.How can I restore the access without compromising everything. Will a regenerate work ?The access still works in versions 2020 and 2022.Cheers.
In addition to the defaults “name” and “type”, I would like to add a third, custom member named “data_owner” at the start of a GeoJSON file I am creating using the GeoJSON Writer (see example below). Is there an easy way to do this - I can’t find anything in the writer parameters - or do I need to use the JSONTemplater or another transformer? (FME 2023.2.0.0){ "name": "gis_assets", "type": "FeatureCollection", "data_owner": "CompanyName", "features": [ { "type": "Feature", "geometry": { "type": "Point", etc.
I am attempting to find the file sizes for each Feature Class within a FGDB, both within a Feature Dataset and at the root of the FGDB. All research yields that the file size is not available via the PythonCaller and we are trying to isolate the FC filesize output via:PythonCaller > getFeatureClassSizeimport os def getFeatureClassSize(feature): fc_path = feature.getAttribute("FC_path") total_size = 0 # Common file extensions in a File Geodatabase valid_extensions = {'.gdbtable', '.gdbtablx', '.atx', '.spx', '.freelist', '.gbx', '.cat', '.gdbindexes'} if os.path.exists(fc_path): if os.path.isfile(fc_path): ext = os.path.splitext(fc_path)[1].lower() if ext in valid_extensions: total_size = os.path.getsize(fc_path) else: for dirpath, dirnames, filenames in os.walk(fc_path): for f in filenames: ext = os.path.splitext(f)[1].lower() if ext in valid_extension
Hi,Getting an error while publishing the workbench.Publish failed - FME Server encountered an error and reported the following message. The resource name must not contain any of the following characters: \ / : * ? " < > | & = ' + % #Regards, Dheeraj
So I’m configuring a service (an automation) which is triggered by an webhook. The automation will process data and then send the requester an email when the job is done.I want to add a little more feedback to the process for the end user. This is in part to reduce the amount or possible duplicate submissions - As I see it I have a couple of options:Send an email when the request comes in confirming that the request is being processed. Most likely this will be enough. (The user will already get a confirmation form the webapp where they submitted the request)Send an email after a certain amount of time (e.g., 15 mins) in case their job is taking a while or they are stuck in a queue. Try to detect duplicate submissions and send an email to the user that their duplicate request was cancelled.As I see it option 1 is the only one which doesn’t require an extra free engine to run another job. Am I missing something?Are there clever way to do either 2 or 3 without an additional engine?
Hi,I’m having a issue making a TIN properly in FME. Basically FME is interpolating points/vertexes that don’t actually exist in the original data. What I want to do is make a TIN that considers only the vertexes of the features I give to it (point/lines and breaklines). I do not want FME to make up data that does not exist.Does anyone know a way that I can do this?For example in this example this is one break line. It should only have two TIN vertices (the ends). No triangles should be created from any interpolated points However, when I look at the TIN for the same spot it has created 6 vertices I am using FME workbench/form 2023. I’ve been trying different settings for the SurfaceModeller and the TIN generator
NullAttributeMapper, AttributeCreator or otherWhat do people use to set default values for attributes?In the case that I have is a json document - in the case values are missing I need to set a default value. Ideally I’d use an NullAttributeMapper, however, there are upwards of 10 values I need to set and I don’t want to use 10 of these. The other option I see is an AttributeCreator/Manager with conditional values which is what I would normally do.
New to FME, have a client using FME and want to read and traverse through a MicroStation DGN file on a number of client machines. What’s the best way to achieve this?Does a license allow me to distribute a DLL for use on their clients?Is there a batch interface I can use?Steve @ Hexagon
Hello,FME workbench has a strong tendency to take longer and longer to perform editing tasks (NOT translation) the bigger the workspace gets.Disclaimer: My workspace contains over 2100 transformers and I am aware that editing transformer links upstream will cause FME to recalculate downstream. However, my frustration is due to the fact that even minor modifications to very small independent workflows in the workspace seem to trigger the same recalculation as the workbench becomes unresponsive for 5-15 seconds every time I do something. This even happens when i move a transformer without altering any workspace logic. It even happens when I move an unconnected transformer! Extremely debilitating to productivity.Is this a known issue / any optimization planned?Using FME Workbench on Windows x64 2016.1. Confirmed on multiple PCs.
Referring to this (closed) post: https://community.safe.com/ideas/httpcaller-to-specify-client-certificates-31782@LizAtSafe mentioned that the feature is released. I can find it nowhere in the documentation. Could someone point me to the right direction on how to authenticate at an API,using a certificate?
Hi I am using the schema scanner to extract the schema of data in both the original and revised datasets by comparing with a change detector. This is working fine and i can get everything into a single table from the insert output, however i want to be able to show delete and updated as separate tables within the email.Any ideas of the best way to do this?
I’m taking the opportunity to plug an idea I posted a while ago: I really want the ability to embed linked custom transformers via the command line / automatically. I have a bunch of projects which are just custom transformers - these custom transformers are often part of projects which I deliver to customers. It’s much easier for me to deliver a single workspace with the transformer embedded in the workplace rather than have them deal with linked custom transformers.But in my development I want to be able to reference/use the latest version of the transformer, this is especially true it the transformer is used in a tonne of different workspaces. I have an automated build process which will package up the workspace(s) along with documentation. But what I’m unable to do is to embed these transformers into the workspace - if I want to do that then I need to do it manually and it’s a pain.
I have a workspace and I want to turn it into a CutsomTransformer - as part of that process I want to rename a bunch of attributes to include a prefix (e.g., from a JSONFlattener) - This is mostly for readability.For example I have several attributes which are coming from a JSONFlattner - in the original I never added a prefix, however, now I want to prefix with something like “layer.” - so something like “extent” would become “layer.extent”. The issues is that when I add that prefix in then all the downstream transformers which use the properties break. Obviously going through and changing them would have taken me less time than writing this question but it’s certainly not the first time I’ve had this kind of issue.In similar situations in the past I’ve been lazy and have simply renamed the new attribute to the old value. There are quite a few situations where I think having this kind of functionality would do a lot to improve workspaces readability with little effort on the authors p
Edition: Data Interoperability, Fixed OEM LicenseVersion: FME(R) 2025.0.0.0 (20250228 - Build 25208 - WIN64)OS Locale Name: en_USOS Encoding: windows-1252Process Encoding: UTF-8FME API version: 4.0 20240722Home Folder: C:\Program Files\ArcGIS\Data Interoperability for ArcGIS Pro\Operating System: Microsoft Windows 11 64-bit (Build 26100)For clarity, I am working with FME Workbench provided by Esri in both the Data Interoperability extension for Pro - and Server. The server situation is worse at this point, so to start, I am just going to address the problems that I am seeing on my laptop.I am calling a number of different API endpoints with an HTTPCaller, manipulating the data, and then pushing (updating) the data in an ArcGIS Online (AGOL) Feature Service. When I was building this workflow, I was successful in writing changes to the Feature Service. I can step through transformers, check the cached data and then click on the ‘Run To This” to run the cached data from the previous tr
I’ve been a big of a hater of the Parameter Editor window for a while - I’ve always had it disabled in favor for more canvas space, plus I just like bigger windows to work with in general.Today though, while working in the PythonCaller, I really wanted to look at my log file - I always had to keep closing the editor to scroll though the log. Then I remembered about the Parameter Editor window and it made things waaay easier. I’m not sure I’ll keep it like this but for now I’m really liking it.
Hello everyone,I am having difficulty adding data to an existing DGN file.I have a CSV containing X, Y, Z and a Matricule.I want to add this data into a DGN that already contains points and predefined layers (levels).I just want to complete the DGN with my CSV data, putting the new elements into the correct layers.I find DGN handling in FME much harder compared to working with simple shapefile layers.I have managed to roughly merge my points, but the values do not go into the correct layers and they don’t take the original DGN styling.For example, I want the Z value from my CSV to go into the layer “CALC_PTTOPO_ALT”On paper I thought this would be simple, but I can’t find the solution.Can you help me, or tell me if there is an easier way?In the long run, I would just like to update my DGN regularly when I have new points.Thanks in advance,
This is a quick rough guide on how to print your workspace as a PDF. This should be a standard feature of FME, but it is not. Printing off a workbench is very useful when creating documentation about workbenches. I am surprised at the lengths I had to go to for this. Step 1:Follow this, or any other guide, on how to set up CUSTOM Paper Size for PDFs I recommend adding size: *Option: CUSTOMSIZE{*rcNameID: =USER_DEFINED_SIZE_DISPLAY*MinSize: PAIR(936000, 1332000)*MaxSize: PAIR(109728000, 164592000)*MaxPrintableWidth: 109728000}Then, printing the item requires another bit of jankyness to make this work: click landscape make sure there is only 1 page press fit to scree now it looks “ok” to print, but it isnt yet. hit the print button (mine is missing for some reason) select print to pdf hit preferences hit advanced choose your newly defined page size hit apply DO NOT PRINT YET. exit the window.Finally, hit the fit to page once again (step 3)Now, hit print again, and print your item to p
I have a json file that holds coordinates in the following format: How an I extract these coordinates to make the polygon that they form? I have tried reading the data through a text reader instead of a JSON reader and I have tried the JSONFragementor/JSONExtractor transformers but I can’t get the json query right, everything gets rejected.Any ideas?
Does anyone know how to delete an FME Flow connection in FME Form 2025+?FME Flow connections used to be configured in the FME Options dialog under the Web Connections tab but they are no longer there in FME 2025. Instead, they are now available from the main FME Form toolbar.Using the toolbar I can create a new connection, select and edit an existing connection, but I don’t see any option to delete an existing connection. Even the FME Form documentation does not provide any help.
I have a field Filename where the naming convention is usually 2025 May Report.xlsx or 2025 January Report.xlsx I have used the filenamepart extractor transformer to fetch the filename along with a string searcher transformer just to extract the year and month from the filename. Now I want to create an additional field where I can flip the year and month -→ Month Year. How can i build the regex to achieve this? Also I might be expecting different scenarios where January is written as Jan, JAN or january
I want to Create a choice User Parameter that will show column list details from database, This will enable me to select my choice column field that when I run the workflow, I will be able to get the output result for only the column in a fanout dataset.
I wonder if there’s a way for me to hack the web connection during run time to expose the AGOL Organization URL and token so I can use this URL downstream.The ArcGISOnline Connector returns these as format attributes but I have the extra overhead of running the right action item to expose them. Submitted an Idea related to this:
We currently have an .asp script that builds a url/uri based on a selected prefix and document ID.When the OK button is clicked, the url/uri is opened in a new browser tab.The server where the asp script is located is being retired so we need to come up with an alternative.The parameters are Plan Type and Plan Number.The parameters are used to generate a path to the document to open. Eg. \\sample.file.path\resources\SCIMsPlans\pm12345.pdfI have converted the ASP to Python and made a self contained executable that works well but staff are used to accessing the plan search via a web link. I thought a FME web app may be suitable for this.Can anyone point me to the correct transformers to use for this or even better, a sample workspace.In case it helps, below is a snippet from the python script that builds the file path and opens the document. # The Plan document ID number name = self.plan_input.text().strip() # If 'dp' is selected, use 'DP_DepositedPlans' to b
Hi,I get the following error when attempting to publish a workbench from FME form to FME Flow:User is not authorized.The specified user credentials were not authorized to perform this action. Ensure with your server administrator that your user credentials are authorized to perform this action.Publish Failed (Not Authorized) - Ensure that credentials are correct, and that user has sufficient privileges. I’m publishing using an account with superuser access. I’ve also managed to upload the workbench directly to a the folder using the FME Flow interfaceFME Form: 2025.0.1.0 (20250327 - Build 25220 - WIN64)FME Flow: FME Flow 2025.0.1