Creating and organizing workspaces. How to use Workbench.
Recently active
In FME Form 2023.2, we used a dynamic JSON writer setup that wrote a separate file per input SQL file. Each input could have a different schema, and the setup dynamically handled this just fine using: fme_feature_type set from fme_basename (filename sans .sql) JSON writer with Schema from Schema Feature This worked perfectly — each JSON file had its full dynamic schema.After upgrading to FME 2025.0, only the first JSON file is written with its full schema. All subsequent files contain only the subset of fields shared with the first file. Unique fields in later inputs are silently dropped.Example: A.sql has fields: ID, APR_KG B.sql has fields: ID, MAY_KG Result in 2025.0: A.json: includes ID, APR_KG B.json: includes only ID — MAY_KG is missing Nothing changed in the workspace. This appears to be a regression in how dynamic schemas are handled across multiple feature types or files in newer versions.Can Safe confirm whether this change is intentional?
Why does FME Flow (or FME Desktop) store files in the My Documents folder?Why not use AppData\Roaming or AppData\Local?
This is starting to annoy me - in 2024.2, whenever I create a bookmark around something, FME automatically zooms to it. Is this a setting that can be turned off?
Something I recently learned about with FME is that each HTTPCaller seems to equate to one session - there are most likely a lot of cases where this isn’t true but I had some weird issues recently where a series of calls working intermittently. The process was creating a document container and then uploading files into it and then closing the container. I used 3 separate HTTPCallers for this. When testing from FME desktop it worked sometimes and others it didn’t work. I spent a tonne of time trying to debug what was wrong in my POST. Finally it seemed like it was working, I published to Server and directly had issues again. Looking into the Debug logs I noticed that with each new instance of the HTTPCaller there was a new connection to the service BUT that connection was going to a different IP. The host was using a load balancer to handle API requests. Turns out my container was being created on one server and my follow up requests were hitting the other server.After I fed everything
I have a workbench which is calling data back for 8 reports via 8 different httpcallers. I can add a date parameter to the URL to call back one date at a time. I have 60 dates I need to individually grab the data for.How can I get it too complete the workbench, move on a day and run it again, and again...and so forth, through a list of dates?
*Aka Data Virtualization Transformers, but with the french touchSince I’ve been publishing a bunch of Data Virtualization custom transformers lately, I figured it was time to make a post about them—what they do and how to use them.FME Flow’s recent update introduced a cool new feature: Data Virtualization.https://community.safe.com/product-updates/introducing-fme-data-virtualization-38066?tid=38066&postid=86#post86This feature lets you build your own APIs using FME workspaces.To make that work, your features need to include certain attributes required by the Data Virtualization writer, such as: response.status_code response.body.content response.body.content_type response.body.content_file_path response.headers{}.name response.headers{}.value Data Virtualization Writer After manually setting these with an AttributeCreator a few times, I thought: why not create a tool to make this easier?So I made the DataVirtualizationResponseSetter !DataVirtualizationResponseSetterThis
Has anyone run into an using the OGC WFS Reader for a WFS hosted by QGIS Server where the coords are swapped? Before I go back to the provider with the observation “hey I think there’s a bug in how your service is being delivered” I’d like to check that it’s not a known issue etc. To use the service I had to do the following: Thanks for any ideas!
Hello, How do I add a datestamp to a file name in the Excel Writer? I tried adding @Value(_timestamp) to the Writer output and all I get is the file name Bldg_Pts_@Value(_timestamp) as the file name. No date.
Hi everyone,I need help, when i upload my shape file in fme which is in gaus kruger coordinate systemI want to change coordinate system into epsg 32634, and when i use coordinate system setter, it changes, but its not exactly how i need it to beSo i need to do something called transformation, and i need help with how to do that, if its posible to do transformation in FME?
Hello,I have a question regarding the implementation of dynamic attributes.I created a flow to turn a single attribute into text for the actual values of the column and row of an attribute; Following the pattern below: Original AttributeGoalAfter achieving this, the biggest problem is that these 'dynamic' name attributes come as unexposed attributes.Unexposed AttributesI could simply place an AttributeExposer and resolve this case, but the problem is that the flow will run in several different scenarios, and the values (A, B, C, F) will never be the same; they can vary to anything (G, H, T, Z, B, A, or K, LL, BN, XS, D).Therefore, I need the exposer to work automatically as well, but I couldn't make it receive @value(list_name); it literally exposes the value '@value(list_name)' as if it were an attribute with the name of the code. Thank you for your assistance!Best regards,
Hey all,My FME workbench stopped working and then crashed. Is there a way to recover my unsaved work? Thanks, David
I am using FME Form 2021. I have a workspace that includes a Directory and File Pathnames Reader and a File/Copy Writer. The workspace moves files from the specified Folder on one server to another Folder on a different server. It moves the files and runs no issues. But, after the files are moved to the destination folder, I need the files in the source folder deleted. Is there a way to do this with the Reader and Writer? Is there a parameter I need to change? (I know I can make a second workspace that has the FileDeleter and delete the files that way, but wondering if I there is another way) Here is a screen capture of the workspace:
Hi list.I have a master workspace in Workbench, which starts with a Creator calling two SQLExecutors, and eventually calls two WorkspaceRunners.Each SQLExecutor fetches a list of tables in a dataset, adding their feature count (numbers of rows).I specifically tell FME to process the smaller dataset (i.e. its SQLExecutor) first, but each “thread” also have a (blocking) Sorter transformer (sorting by feature count) before calling (its) WorkspaceRunner.It seems that the result from the two blocking Sorter transformers are processed by FME in the wrong order regardless of which order the features have arrived.How can I ensure that the Sorter for the smaller dataset (i.e. VAT above) executes first, before the Sorter for the larger dataset ?As is seen, I tried to rename the Sorters, so the smaller was alphabetically listed before the larger, but it didn’t change anything. The Logger logged the larger dataset first.
Hello Forum, I’m experimenting with using FME Form to create a PDF showing the result of a TestFilter query on a read-in feature (polygon dataset). I have this… Creator FeatureReader Reads in the polygon dataset TestFilter Finds a specified record in the source dataset by specifying an attribute and a value. This produces the required selection. PDF Styler PDF Page Formatter FeatureWriter Writes to type=Adobe Geospatial PDF NOT YET ADDED: I will eventually bring in base mapping and add titles etc. But I don’t need to get to that stage yet However, when I run the workspace this error is generated… ‘PDFPageFormatter_2 (PDFLayoutFactory): Invalid page object 'PDFStyled' parameters 'MINX;-117;MINY;803;WIDTH;112;HEIGHT;39;FIXED_ASPECT;Yes;CLIPPING_ENABLED;No'. All point positions must be a positive number’ I’ve looked in the settings of the PDFPageFormatter_2 transformer but I cannot see values such as MINX, MINY, WIDTH, HEIGHT, FIXED_ASPECT or CLIPPING_ENABLED. But the error is saying
I have a json which i am getting through http caller. This json contains data as well as schema details. The schema details are like this Column Name, ColumnIdentifier and Data is like this [{ColoumnIdentifier : Value}] Now i want to create new attributes based on schema details.I have looked into python caller but i think you cannot create new attributes. is there any transformer by which i can create new attributes using my json as an input?or a python function to create new attributes
Hi. I am using neighborFinder to align the points to the closest line segment. Points are connected to the Base, and lines are Candidates. I have also merged candidate Attributes. I am trying to join the Line segment from NeigborFinder with the original line dataset to get the closest line, but I am getting point geometry. is there a way to retrieve the line segment from the neighborFinder output? Thanks!
I am using the OGC WFS Reader to try and connect to my site in the TreePlotter App (cloud based app by PlanIT Geo). I have the API Key and other parameters. When I run the Reader, I get these errors (from log file). Does anyone have an idea on what could be causing this? (I followed the instructions from their website: https://support.treeplotter.com/knowledge-base/wfs/) 2025-04-28 16:32:25| 0.8| 0.0|ERROR |<ows:ExceptionReport version="2.0.0=" xmlns:ows="http://www.opengis.net/ows/1.1=" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance=" xmlns:planit="planit:https://pg-cloud.com/planit=" xmlns:wfs="http://www.opengis.net/wfs/2.0=" xmlns:gml="http://www.opengis.net/gml/3.2=" schemaLocation="http://www.opengis.net/ows/1.1 http://schemas.opengis.net/ows/1.1.0/owsAll.xsd="><Exception exceptionCode="CODE WILL GO HERE=" locator="FeatureInPolygon">="><ExceptionText>https://pg-cloud.com</ExceptionText></Exception></ows:ExceptionReport>2025-04-28 16:32
Hello everyone,I need help with polygons and multipolygons with my geometry, i read shape file if that is important1. Which transformer should i use, or how can i see if my geometry is polygon or multipolyon ?2. How can i change type from polygon to multipolygon, what should i use for that change?
I have a very basic workbench that includes one section reads from an SDE and writes to a hosted AGOL layer. It is set to truncate existing. The script writes all the polygons as expected but none of the attribution for the polygons comes through. I have confirmed the attributes are correctly named. I have tried removing and re-adding the hosted writer. Weirdly, the script also writes different data to a separate hosted layer and that functions fine. Has anyone else had this happen? Any ideas on solutions?
I can click on the desktop and add a transformer but when I double-click the title bar of the transformer, nothing happens. I can’t click and move a transformer either. I can edit a transformer in the left Navigator. I can’t add connectors between transformers.Reinstalled same version (2023.1.1.1) because that’s the version we use. Still same problem. I can run an existing workspace but the transformers seem to be unselectable.I don't have this problem when FME Workbench is on my laptop screen and not my external monitor. I've built dozens of workspaces on this external monitor without issue. Problem started last week. In Display Settings I extended the laptop display to the external monitor.>>>>It turns out if I change Display Settings to Show only on 2 and back to Extend Displays the FME workspace is fine.
Has anyone been using AI to write documentation for a workspace? I’ve found that some models are really good a looking over a codebase and putting together a readme for example. I’ve been experimenting with with workspaces and have also had pretty good results with copilot inside visual studio. would be great to have an AI Assist button inside the Help section in workbench.
I have a zipped File GDB that I have uploaded to AGOL using the ArcGISOnlineConnector. The next step is for me to update the data. See 2nd screencapture in red circle, “Update Data”. Is it possible to update data in AGOL using FME? if yes, what transformer do I need to use?
Hi, I am using FME(R) 2025.0.0.0 (20250228 - Build 25208 - WIN64).I was glad to see that with FME 2025 there is now the option to apply Compound Conditions to the User Parameter display.However, I believe there may be a bug in the Compound Condition Dialog settings for the User Parameters.Any type of compound condition triggers an “Invalid Parameter” response.Applying a Single Condition works fine.Thanks,Svea
I have a SharePoint Teams Channel that has Documents; a single zip file is the only document that I update. I am using FME Form 2021. I created a workspace using the Path Reader and SharePointOnlineConnector. It uploads a file to SharePointOnline and overwrites the file already there. I run the workspace with no errors. When I go into SharePoint Online, I check the file and the Date Modified does not change. The Date Modified should say “a few seconds ago” or have a timestamp. This is not a SharePoint List. Is there a way to modify the timestamp in SharePoint Online so that I know the file uploaded using FME was updated (overwritten) in SharePoint Online?
I am using FME Form 2021. I have completely re-written this post. What is the best approach to zip all Feature Classes in a File GDB without having each Feature Class show up individually in the workspace? I have 25+ Feature Classes and do not want them all to show up separately. Just want to zip up my File GDB. Sorry about the incorrect subject header.