Creating and organizing workspaces. How to use Workbench.
Recently active
I have a workspace in FME Form 2021. It includes a writer for Automation. This writer creates the keys in the Automation I have created in FME Flow 2021. These keys are based on 4 Attributes I created and renamed in my workspace. When I change the attribute names, run the workspace, and upload it to FME Flow, they are reflected in the writer but are not written to the Automation I created that includes this workspace in FME Flow. The Automation still includes the old key names. ...but...after I run/upload the workspace as explained in the above paragraph, then delete the writer and re-add it into the workspace then run it/upload it again, this then it updates the keys in my Automation. Has anyone else encountered a situation like this?
Hello,I was hoping to get your input into how to speed up the following workflow:Read an Excel File with several sheets from a Network Share → Output each sheet to a different output port → Create a CSV file for each output port in a network share.I already have the above working, the problem is that CSV writer is taking a loooong time writing the files. My connection to the network is pretty good so it is not a matter of latency between my PC and the network share (at least I don’t think so).Does anyone have any idea on how to improve the writing speed of the CSV files or what to do improve the overall time it takes for the workflow to complete?.Thanks in advance.RZ.-
Hi forum, I’m trying to do something I successfully used many times before. But for some reason it’s not working this time. I’ve delved into it and done research but I can’t work it out. It’s a really simple thing. I just need to read in three csv files with identical schemas into one FeatureReader. I have a Creator, connected to a FeatureReader. In the FeatureReader I’ve selected CSV as the format. In Dataset I selected the three dots (…), browsed to the data source location and then selected the three files. So, now in Dataset I have this: "E:\FME temp source data\Scratch\TestPoints\one.csv","E:\FME temp source data\Scratch\TestPoints\three.csv","E:\FME temp source data\Scratch\TestPoints\two.csv" In FeatureReader I have ‘One per feature type’ selected in Output ports. But, when this is read in, only one output port is created in the FeatureRader. That one output port is called csv and it includes all the records from the three inputs in the one output. How do I force it to create
I’m trying to connect to our SAP Datasphere but can’t establish a working connection. The settings and parameters are similar to the ones i used with were i could get a connection. There is a Proxy Server involved.Any ideas what i have to do different to get working Database connection?Not shown in the screenshot is the parameter proxyPassword
I am trying to clip a ECW raster by a rectangle polygon but the inside output is incomplete. Only a small slice of the ECW is in the output as you can see below.Is there something I am doing wrong? FME 2023.2Thank you for your help
I have a large Workspace that processes multiple .dwg files along with a single Excel and .dbf file to generate one Excel file with multiple sheets. This works fine when I have feature caching on, but obviously takes a long time. When I try to run it without feature caching, the feature output is a fraction of what it should be, but still gets data from all the multiple dwg files selected, as opposed to grabbing from one file. The only thing that comes to mind is that without feature caching, it does not wait until all features are processed. So, what am I missing? Is there a ‘WaitUntilAllFeaturesAreProcessed’ transformer or setting? Or, should my approach be some flavor of batch processing? I haven’t seen anything in this forum that matches my situation. Any insight is appreciated. Thanks,-Loren
Hey ya'll, I've been playing around with deployment parameters in Flow and Form but I have been wondering if it's possible to use an existing deployment parameter in Form, without a database connection that has the same credentials? So for example accesing database X through deployment parameters without having database X defined in your local database connections. I've tried to but to no avail.
Hello,Hope for your advice how to implement my idea.I have an FME workbench that is triggered by web application. In case workbench failed, I need to update a record in PostgreSQL database. I wander how I can implement this, because if process already failed, how I can run SQLexecutor transformer after that?I thought about Automation, but what would be the trigger in this case? I don’t see anything suitable in the list. Taking into account that I don’t need to run workbench by trigger, since it is triggered by user in web application.The main need is to let application know that FME workbench has failed. There might be some obvious solution for this which I don’t know :)
Hello Forum, What is the best method for moving an entire folder (which includes subfolders, each containing files) from location A to location B? I’ve looked into File Copy, but that doesn’t seem to do the job. Well, I couldn’t see how it can told to do so. In addition there didn't appear to be a writing option (to set the destination location) within it. I’ve also look into the ‘Select Multiple Folders/Files option in FeatureReader. I can see that I can select an entire folder but it’s asking for a Format. Typically when using a FeatureReader, say for reading in a shapefile, I’d choose ESRI Shapefile. But this is different. Here I’m picking an entire folder with contents. So, what ‘format’ would I choose, if indeed this is the right approach? I’m keen to get this sorted as I need to place a schedule on to it through FME Flow. Thanks,Stuart
Hello,I am trying to write several files in NetCDF format with FeatureWritter; but after writing the first one it gives me this error: NetCDF writer: Failed to define variable. The error was 'NetCDF: String match to name in use' If anyone has experienced this and can help me First of all, Thanks
When I open an “old” FME workspace in FME 2024 I get the following confusing dialog:attributes unsupportedIt is related to a Bufferer and what I want to do is use fme_geometry in a subsequent Tester to find out if the feature has become a donut.So I wondered if “fme_geometry” is deprecated, but it doesn’t seem so.What is this all about ? What are disabled attributes ? If I leave them enabled: why can I do so ? Who disables the attribute ?I use FME for 20 years now and I am completely confused.
Hi, I am trying to publish a file to a certain folder once per month by using FME workbench. Currently, the file is generated daily with the filename format of YYYYMMDD. And in the destination folder, there is a single file for each month, e.g. 20240101, 20240203, 20240302, etc. For example, if I run the workbench and generate the file on 20240601, the file should be published to the destination folder as there was no existing files in the folder with YYYYMM=202406. However, when I run the workbench again on 20240602, the file should not be published to the destination folder, as there is already one for 202406. Any help would be appreciated.
Hi all,I can’t seem to get the Offsetter to properly take this geometry - it keeps rejecting (properties below).I broke out this to another workbench and it worked find with a simple solid - just wondering what is happening here as I can’t seem to figure it out. The geom. disappears after the offset.Any clues as to what is happening?Thanks!
I am on Form 20240521, build 24219 on Windows 10 and I am getting the error stated in the title. Following the discussion in I checked my path. FME is in the path and the path currently has a length of 1652 characters.The plugin directory exists and there are 62 directories and 400 files inside…The error warning shows up several times, two times in relation to two different FeatureReaders (version 14) .FeatureReader 1:format: shapefile error: Error prepending 'C:\Program Files\FME_23781\plugins' to path environment variable.FeatureReader 2:format: geopackage error: Error prepending 'C:\Program Files\FME_23781\plugins\gdal' to path environment variable.The next time the error shows up is in relation to a FeatureWriter:format: Esri Geodatabase (File Geodb) error: Error prepending 'C:\Program Files\FME_23781\plugins\..' to path environment variable.Any suggestion on how to deal with this, apart from what was mentioned in then earlier thread?
I need to create unique Ids for a point feature class. Also, when a new point is added to the class I need to the unique Id created automatically when the workspace is run. I have created a workspace that includes the File Geodatabase Point Feature Class Reader then the Counter Transformer to create a new field named _count and a new field in AttributeManager named Facility_ID. All the unique Ids will be formatted as follows: BLDG-000000001, BLDG-000000002, etc…When a new Building Point is added to the Feature Class, the Facility_ID field will automatically be populated with a unique ID in sequence increments of 1; example if the highest unique id in the feature class is BLDG-000000109, then when a new building is added it’s unique id will be BLDG-000000110. What else do I need to do? any assistance is much appreciated.
We have FME Flow (Windows 2024.0.1) installed in an EC2 instance in a VPC. The DynamoDB reader uses the public endpoint: dynamodb.<region>.amazonaws.com.Can this be modified to use a VPC endpoint?For example: vpce-0a06cf963f9d04a28-3wilx6xm.dynamodb.us-west-2.vpce.amazonaws.com We need to do this for all AWS endpoints, S3 and SQS.Thank you,Kathy
I am currently working on updating and maintaining a workbench from a previous colleague and am having a little trouble with adapting to a certain aspect of the output schema that we need to follow. The shapefile that we are reading from has multiple very close together lines representing the different vertices of a kerb feature, anywhere from 2-5 lines. Without manually removing the excess lines, is there any way to only keep the lines that would represent the back-of-kerb, or rearmost line.
Hi FME'ers,I wanted to write up a brief guide to connecting transformers (and other objects) on the FME canvas, and rather than making a full blog post out of it as I've done before, I thought I'd experiment by posting it in the forums here.So here's a quick guide to the shortcuts for connecting transformers. I'm hoping that it covers any techniques you might not be aware of. Guide to Connecting TransformersMethod 1: Drag and ReleaseI'm sure you all know this method, but here it is anyway:You drag a connection from one port and drop it at a second port.Method 2: Quick Add with InsertHere we have a connection between a reader and writer feature type. The workspace author wishes to place a transformer between them. Rather than place and then connect the transformer in a number of steps, the author can do it in one by pre-selecting the connection:In other words, whatever is selected when you use Quick Add, that's where the transformer is placed.Method 3: Drag-a
The Swedish DOT offers extensive road data as Open Data. It is packaged in an ESRI Personal Database (mdb) with 120+ tables. I want to dynamically load all of the data into Postgis for local storage.However, quite many fields, scattered in the database structure, are of the type CHAR with a width of 2147483647 (sic!). Of course, no post contains that many characters, and FME tries to convert these fields to VARCHAR with the same width. This breaks the translation with the message that the type VARCHAR cannot exceed 10485760 characters.So in short, I need a way to filter and catch all tables with fields of the type CHAR, with a width of 2147483647 and alter the width to either the actual content of the field, or a static value that does not truncate what's in there.Regards, Mats.E
Hi, I have a JSON return form a HTTPCaller with schema info. An example of the return looks like this:{ "name": "Administration", "properties" : { "Id" : { "type" : "number", "required" : true, "description" : "The given Id for the object" }, "GeoType" : { "type" : "string", "required" : true, "description" : "The type of object" },The json continues here with more schema info.I want to turn the information into a table like this: I have 82 other JSON returns with the same layout but other “name” values and exposing them all takes to much time. I have tried to use JSON transfromers but so far no succes.Is there a more dynamic solution to transforming the return to my desired solution?Thanks in advance,Sander
Hi, I’m working on a script that takes building footprints and outputs different lines inside them (crosses, diagonals, centerlines) depending on the type of building. I have achieved good results for square buildings and buildings that only require a centerline. See picture below.But when it comes to buildings with more complicated shapes it doesn’t work as well. Some buildings turn out acceptable, like these ones below:But some shapes turn out pretty bad, like the ones below: I’d rather that they would look something like this:I guess I would have to make the buildings into separate polygons to achieve these results, if it’s even achieveable. Does anyone have any ideas? I’ll attach a copy of my script
We have a polygon dataset with roads and we need to find the roads than are less than 13 meters turning radius. We kan also create centerline dataset with the polygon. We imagine that someone out there has done this before. We need this datasett to find which roads the fire trucks will have problems to drive.
Hi! I am transforming data from different sources. The data travels at different speeds through their own workflows and end up at my Excel Writer at different points in time. This in itself is not the problem. It’s because I have specified a Fanout function in the name of the file all the data/features are being written to that the problem appears. The Fanout contains hours and minutes, the name of the file begins with:“@Timestamp(^Y).@Timestamp(^m).@Timestamp(^d)_kl.@Timestamp(^H).@Timestamp(^M)...“ Since the data gets to the Writer roughly a minute a part I end up with two written files with only part of the results in them. The two files get different names with only a digit’s difference. For example:File 1: “2024.05.30_kl.12:55...”File 2: “2024.05.30_kl.12:56...” I can obviously solve the problem by removing the hour and minutes from the Fanout in the file’s name. But I would really prefer to keep it. I have been looking for something to pause and sync the data before putting it t
I have a flow based around a main SQLExecutor that runs of different levels of aggregation depending on the input parameters, and the most conveinient and efficient way of doing that is to add or remove parts from my SQL query based on said parameters. While the problem looks simple on its face, I have not been able to find a good solution for that.As evidenced by the following thread, FME doesn’t have a function for this kind of conditional string substitution. The best it has is the ternary operator.However, said ternary operator is only supported in the Math Editor, not the Text Editor that SQLExecutor uses. The next best thing I have found is to use the @Evaluate function to give me access to Tcl’s ternary operator, provided I can express these sections of my query in a way that is valid in TCL.select @Evaluate("$(WHOLE_DAY)==YES ? {date_trunc('day', period_start_time, 'America/Toronto') as period_start_day,} : {}") @Evaluate("$(COMPUTE_HOURLY)==YES ? {date_trunc('hour', peri
We have a SQL .bak file which serves as a template for a database schema. Normally this .bak is restored manually via MSSQL, where the name of the database is specified.The goal is to be able to dynamically create a database on a known server, where the name of the database is derived from processing within the FME workspace.Is there a script that can be run from a SQLExecutor in FME to make this possible?