Creating and organizing workspaces. How to use Workbench.
Recently active
I like to read and write metadata from SDE to SDE total of 275 features after 65 features the proces stops suddenly. I get a message like this: "All features of feature type 'RT_NHPAD' will be ignored because the Geodatabase Writer does not have support for features with the geodb_type of 'geodb_metadata' ". Does anybody have a suggestion?
Hello everyone! I have one big problem. When I generate attributes dynamically in a workspace, I have to expose them in order for the shapefile writer to actually see and "write" them. I have been trying to look up solution to this for quite some time. There is the problem that the incoming source table is generated dynamically, so I have no idea what the attributes are going to be in advance. Manually setting up attribute exposer, or creating list to use in a schema is not possible. There are two files in the attachment, one with source csv data, one with attribute transformation I am using and shp folder with shapefiles. Desired output would be dynamically generated shapefile, where all attributes from the incoming csv file were present . So any ideas or help would be really welcome. Thank you and have a nice day, Radek
The default behavior for double-clicking an FMX file is to "install" the custom transformer. It seemed that for a while I had double-click set up to open the transformer for editing, rather than installing it, but now it's reverted back to installing with my latest FME (2015.1.2.0 (20150911 - Build 15538 - WIN64)). Can this behavior be changed? I never need the custom transformer installed because I keep them all in a shared directly. If I double-click it I'm always going to want to edit it. Additionally, because the default behavior is to "install" I can't open alternate versions from our version control system for editing because it always tries to "install" the version, rather than editing.
Hi everyone, I have set up a FME workspace that works fine and is scheduled to be started every day on FME server. It has a python startup script included that also works fine and has been tested. The trouble is that the scheduled job sometimes fails, telling that the python script has produced an error : Python Exception <NameError>: name 'ftplib' is not defined Error executing string `# -*- coding: utf-8 -*- The weird thing is that it happens sometimes, not every time. For now, when the process fails I just resubmit the job and it works almost everytime (it happened once that it fails again). The ftplib is definitly included in the python environment (I tried to start <<path to fme server>>\fme.exe python and then the utf8 thing followed by import ftplib, it works flawlessly). So I don't know where the issue can be, FME? FME Python? My script? Environment related issue? Thank you for your help. Anthonin
Is there a way to generate an output schema on the fly based on a transformer output ? Suppose I dynamically rename an attribute with today's date as a suffix. How can my writer's schema reflect this ever changing attribute name ?
Hello, I want to create a large number (100) of files with different filenames, depending on the name or attributes of the input files. In detail, I have one Reader, reading 100 XML-Files, processing them (extracting different attributes etc.), and I want to write the contents to 100 text-files, but each text-file should be named after one (different) attribute. Since User Parameters are not changeable through runtime and I have no Idea how to use attributes as parameterized filenames, I am stuck with this problem. Is there a way to achieve that? Thanks. (FME 2015 1.2.1 Win32) Best Regards, Ron
After switching fme workbench off have got such error. What can I do with it?
Hello, fellow FMEers. I'm very new to Python and to the PythonCaller, but we all need to start somewhere. I have wrestled with this problem basically all day and I still don't get it to work. I have a textstring "A=0,5m, B = Bredd 0 m, C= Reduktionstal". From this string I want to extract the value between "Bredd " and " m" - in this case it is 0, but in can be 10, it can be 10.2. I'm attaching an image of my progress so far... And the PythonCaller script so far: import fme import fmeobjects import re def FeatureProcessor(feature): substr = re.search('Bredd (.*) m', feature.getAttribute('text')) feature.setAttribute("substr", substr) I have often come across this problem and I really want to learn how to solve it. Pls help! Peter
I have a workspace that is run from a workspace runner, the final thing it does is fire off a soap message to a web service, as long as it gets a response it determines the workspace to have been a success. I want to look at the response and if it isn't what I was expecting I want the workbench to output through the failed port of the workspace runner. I am hoping there is some kind of flag on the workspace that I can change to cause it to output through the fail port? Any help much appreciated Regards Jim
I am running fme 2015 (64bit) on a virtual machine. The Hyper-V server works with dynamic memory management, this leads to nearly 80% memory "blocked" by the hypervisor. In theory, the hypervisor should unblock more memory to the virtual machine, when a process like FME needs more memory. But instead, the FME optimizes its memory before and this leads to FME.exe process running with a limit of 200 MB on a virtual machine with 8 GB RAM. This only occurs using FME 2015, I did not have this behaviour running FME 2014. May be the Resource Manager improvements in 2015 are a problem? UPDATE following @david_r 's suggestion, the fme.exe process gets more memory when using "FME_ENGINE_MEMORY_REDLINE 1", but a smaller value than 1 does not work to get more memory. Let's see what happens when the process hits the ceiling... UPDATE Our IT has risen the minimum RAM of the virtual machine to 4 GB, this seems to solve the problem. The FME process is now using more RAM w
I have a SQL script that does the job but it takes too long (over 20 hours). I am hoping FME can perform better. Script is below:- select Land_No, PropNum, Property_Address,b.SCHEME_CODE, b.ZONE_CODE, p.Geometry, p.SP_Geometry, ROW_NUMBER()OVER(PARTITIONby p.Land_No ORDERBY p.Land_No)AS Dup INTO CI_Plan_Zone from LandVic.dbo.PropParcelOwner p, [External].dbo.PS_Zone b where p.SP_Geometry.STIntersects(b.Geometry_SPA.STBuffer(-0.1))=1 regards Phil
I am using FME desktop and when the process completes I want to send out a email. I have that working but I also want to attach the log. I am not sure how to do that with the attachments parameters in the "PythonEmailer" Any help woudl be awesome.
Hi FME community, I am trying to build a custom transformer whose settings are controlled by an external (Excel) dataset. For this purpose, I want to add an Excel-reader that provides the values for the individual attributes. However, the columns of the Excel file are treated as attributes instead of parameters. Is it somehow possible to interpret the attributes of the Excel Reader as individual parameters? The solution with a seperate workbench containing a workspace runner (who has the Excel Reader as an input) works but is rather cumbersome. Greetings, André
Dear I have two polygon shapfile one capture in 2010 from sat image and the other one capture after 2014 from aerial photo the idea is some time more than one polygon fill or intersect with 2014 polygon so my target is to select the polygon from 2010 intersect with polygon 2014 with max area only (that mean select one polygon ) polygon with the max area , see the picture and you will know what I am talking about ... the system will calculate the area and select the polygon with max area (for example the below pic show the polygon number 3 because it has the max area , .... Thanks Eng.Najd Hanahnah
Hello, I have a workbench that creates a line from a source point file then uses a spike remover to remove erroneous points from the line. For the removed points I want to reassign them their original attribute from the source point file. I know the original attributes are stored in a list by the point connector, but I don't know how to assign the correct attribute to the correct point (using list manipulators I only seem to be able to assign ALL the original attributes to the point). How can I assign the original point attribute to the flagged point? I have included a screen grab of (one of my many attempts) my workbench and some example excel data. In the example data PT30 is excluded from the line and output as expected, but I can't output it with "PT30" as the ID attribute. Thanks!
Simple setup: A large number of Line features (millions) needs to be overlaid with a set of Area features (25000). So a simple LineOnAreaOverlayer is used. This process is very slow and I am running into memory problems even with FMEx64. I have an attribute on the Line features that can group them into about 250 groups. So a case for parallel processing I thought (with which I have limited experience). My problem is with the Areas. I want to process each group Line features with the same set of Area features. So I want to re-use the same set of Area futures for every batch after initial input. I cannot seem to think of a good idea to accomplish this. Even with a Custom Transformer. The Area Features do not have the group attribute and for various reasons each batch of Line features must be intersected with all Area features. The only (fairly inelegant) solution that I could come up with is to cross join the Area Features with the list of groups using a FeatureMerger but that also
How to aggregate a matrix of attribute values into a single row
I am using a dynamic reader (WFS) that will have multiple datasets with different attributes going through it. Using a dynamic writer , I want to be able to use a wildcard in Attributes to Remove to remove any attribute that has the suffix : xsi_nil. I have been trying to use variations on ' *xsi_nil ' but it doesn't seem to like wildcards , or have I just not hit on the correct syntax? Thx
I am looking to run a python shutdown script and need some help getting started. i am very new to FME and also new to python. My goal is to use database updater tool and then have a email sent out when the database is updated. I wanted the script to first update the database and use the python emailer to email me it is complete. Only issue I found is the databases updater has no out so I cant email once done. So was told about a python shutdown script that could handle that and was curious how to do it. Any help would be great. Thank you.
I have a large text file produced on a Unix system containing bank records for around 27,000 entries. The sample file attached shows a small snippet of how the file is structured - which is all on a single line. Each entry contains a 31 digit number. In a text editor I simply do a regex search for [0-9]{31} and replace the matches with the matched text plus a line feed character in front of it. Thus the text file gets restructured as per the screen dump with one record per line. Is there a way of achieving this in FME? The regex stuff seems a bit clunky. I worked out that the stringsearcher transformer will only pick up the first occurrence of a match. A transformer from the Store is available called RegularExpressionMatcher is available which finds all occurrences and sticks them into a list. Where I go from there is what I could do with some help with please. Thanks James
I have an Id field in a table & need to add the max id + 1 to a new set of features with the same field name
Has anyone used a transformer or knows how to split a line that crosses the International Date Line. The problem I have is an area that one point is W179° and the next point is 179°. Anyone know of a solution.
There used to be a functionality that you could add a constant on the workbench and connect it to a field in the writer and it would be added as a value to that field. Has that been replaced by a transformer? If so, what?
Could you please lemme know which transformers come under aggregate tranformers?
Hi Looking at the FME online help for lists, I want to create this type of list in PythonCaller and use it in Workbench as a list: somelist{0}.length = 7.3 somelist{0}.kind = ’paved’ somelist{1}.length = 8.4 somelist{1}.kind = ’smooth’ somelist{1}.lanes = 2 somelist{2}.length = 1.1 somelist{2}.kind = ’rough’ I've created a simple list (element with an index) but struggling using fmeobjects and other libraries in the PythonCaller to create and set this complex list. Anyhelp from the Python Jedi out there? Thanks