Creating and organizing workspaces. How to use Workbench.
Recently active
Hi guys, I'm trying to read a WMS using a FeatureReader. Using an ordinary reader works just fine, however, creating a box and use it as input for a featurereader (same params etc) yields no result. Regards, Helmoet de Zwijger.
I have a bunch records that I'm aggregating. After this, I'm applying business rules and based on what's outputted, I'll know which of the original records I want to parse differently (i.e. not through aggregation, business rules set #2). I want to go back to the beginning of the workspace to allow these specific records to pass through in its original format. How do I do that?I'm thinking of aggregating the unique ids of the records I want, and use this value to test against the original records, like: ID in @Value(aggr_ids_to_keep), but then the record that has the aggr_ids_to_keep attribute will be its own record.Here's another way to look at what I mean. The recordset would be like {0:n,m} where 0:n are the original records and m is the one with aggr_ids_to_keep. In this scenario, how do I get m to compare against 0:n?
I am trying to find one or multiple ranges of values within a list in the most efficient way.My list-attribute looks like this: (1, 2, 3, 5, 6, 7, 9, 12,13,14,15,16).I would like to end up with the following result: (1-3, 5-7, 9,12-16).Is there an efficient way to do this without coding? Maybe using the variable setter?Since I am using only positive integers, my current way consists of adding 1 and substracting 1 to each value, then using mergers to find out, if the corresponding next value upwards or downwards exists, and then dividing my values into classes: - values that were not assigned the next upper or lower value --> keep as single value- values that were assigned upper only --> keep as lower value- values that were assigned lower only --> keep as upper value- values that have both --> ditch.
I have my parameter values in a SQLite table. I am able to access each value though a Python scripted parameter that opens the table and retrieves the value. However, this means that I have to open and close the SQL table one time for each parameter. Is there a way to make multiple parameters that can be read by the readers and transformers, perhaps in the Python startup script?
Hello,What is the best way to monitor the FME server "health"?If there are many of jobs being submitted I would like to know as soon as possible that the server will go down because of the overload. It would be great if I could get it from any logged information.
how could an app get data, via the notification feature of FME , without using the email notification i mean how could we push information to the other system and topic is triggered, any example.Thanks
Hi,Is it possible to call the s3Uploader transformer using a python shutdown script? My workflow currently uses a python shutdown script to convert the FME output data into a number of proprietary formats and now I would like to upload these proprietary files to AWS S3. I would preferred to do it all using a single work bench without install extra python modules(ie Boto3) Thanks
Hello everyone,I am trying to utilize tiler for parallel processing in FME Server environment. Workbench that has tiler transformers and parallel processing enabled, runs fine in FME Desktop environment. However, if i try to run the same workbench via FME Server, it throws the following error: Tiler_2_PointCloudTiler(PointCloudTilingFactory): The keyword TILE_ROW_ATTRIBUTE has incorrect arguments. The clause must look like: TILE_ROW_ATTRIBUTE <attribute name>, where <attribute name> is the name of a new attribute that will be added to output features Any help with this issue would be much appreciated. Thanks! Boris
Hi,I'm trying to find a transformer that's able to create a new attribute, check my data for different conditions based on values from multiple different attributes, and subsequently add to the value of the newly created attribute WHILE these conditions hold true. Something like an "overall score attribute".I put while in caps because with the attribute creator there are only "if" statements. I'm not a programmer, but I know that with if statements, as soon as one holds true, the scripts stops. That is what seems to happen with the attribute creator transformer that I have been using. I could be mistaken of course. Like I said, I'm not a programmer.However, I don't want that. I want the program to keep checking all conditions and adding to the "score attribute". How do I do that?So basically something like this: if/while attribute1 >= 10, add 1 to new overall score attributeif/while attribute 1 < 10, add 2 to new overall score att
Hi everyone,Here is my problem. I upgraded my FME Desktop from the 2014 version to the 2017.1 and I have an issue regarding a specific workbench.I use the FeatureReader transformer to read DWG files, and it works fine in FME 2014, but it doesn't in FME 2017.1. The execution is sucessfull but it seems that it reads only partially my DWG files (the output is not right), I have this error in the log : AutoCAD Reader: An error occurred for dataset '\\\\XXXXXX\\data_BD_Topo\\Topo\\1024500-6281500.DWG', in function AutoCAD2004Reader::read. Exception thrown: 'Invalid input' (Invalid input)MULTI_READER(R_2): Skipping to next ReaderI've tried to set a new FeatureReader from scratch, but I have the same problem...Any ideas ?? Thank you in advance,Fabien Laganne
We don't have FME Server but we need for to be able to call a workbench to run remotely from machines that may not have FME Desktop installed.I've been playing with WMI as below. It successfully calls notepad and arcgis pro however fme.exe will startup but disappear from the process list before the workbench executes. If i copy/paste my cmdline onto the servers command prompt the workbench executes fine.import wmiimport osSW_SHOWMINIMIZED = 1server = 'DC3FMEDESKTOP'username = r'TFS' + os.sep + 'richardw-admin'print usernamepassword = 'password'c = wmi.WMI(server,user=username,password=password)startup = c.Win32_ProcessStartup.new (ShowWindow=SW_SHOWMINIMIZED)cmdline = "fme.exe S:\GIS\ESRIData\Scripts\FME\Server\\testremote.fmw \ --SourceDataset_FILEGDB \"S:\GIS\ESRIData\Authoritative\Climate_and_Environment\Meteorology.gdb\""#cmdline = "fme.exe"#cmdline = "C:\Program Files\ArcGIS\Pro\\bin\ArcGISPro.exe"print cmdline# pid, result = c.Win32_Process.Create (# CommandLine="notepad.
Hello, I have a correct fmw (footprint-1xls.jpg) that read the 4 coordinates from a xls and generate a footprint with 4 vertex (reader, vertex creator.line builder, line closer and geometry coercer). My questions are:- I dont know why the writer can not be a kml, it should be a shape, but also is ok for me- I would like to make the process for many xls in the same folder, obtaining many shapes with 4 coordintes each one. I have test with workapace runner but it does not work correctly (workspRunner). Many thanks, I appreciate your support ;-)
I obtain features from an WFS using the WFS Reader within a FME 2015 Workspace on FME Server. From time to time the job hangs and blocks the Server Engine for hours, while usually the run is successfully done after 2 minutes or so. I suppose that the WFS connection gets lost or so.Is there a smart way to have FME Server cancel a job after a certain amount of time (timeout function) in order to prevent such jobs from blocking a whole engine? Either any parameter in the server / engine configuration or a smart kind of routine within the workspace (i tried a timestamp and compare bevor / after routine, this however does not prevent the workspace from hanging)?
Hi,I know that you can set new attribute names and new attribute values using a list attributes as such:attribute{0}.nameattribute{0}.fme_data_typeBut how do I set the value of this new attribute?Is it something like:attribute{0}.value?Thanks
Hi All,We are converting Oracle spatial(SDO Geometry) to ESRI SDE (ST Geometry) using FME. In my data, some feature classes having VARCHAR2(2000) attribute columns. Those feature classes I am not able to process. Once I change VARCHAR2(2000) to NCLOB it worked for me. But i need to completed process with VARCHAR2(2000) only. Could anyone can help on this?
I have a tester that lets a shape through when name equals London area, this is fine, but when I add in a user parameter nothing is going through the tester. The only thin I can see is that the user parameter is adding speech marks to the beginning and end of the text string, hence it is not being found. I have imported all of the options from the name field in the shape file.Any ideas how to solve this?
I'm posting this here rather than on the regular forums, since I'm not sure how Safe feels about publicly posting performance benchmarks.Having seen the recent webinar introducing FME 2018 and the sometimes amazing performance improvement over FME 2017, I thought I'd make a simple test case to see for myself.I wanted the test case to be as simple as possible but still reflect a pretty common use case that had several possible solutions, so I settled on checking if an attribute value is null, and if yes map it to some other (default) value.Possible ways to do this includeNullAttributeMapper, maybe the most obvious choiceTester + AttributeCreator, the "old-timer" wayAttributeCreator with conditional testing, somewhat more creativeHere are my findings, all timings are given as mean CPU time in seconds on my mid-range laptop using one million features.FME 2017FME 2018Percent changeNullAttributeMapper62s61s-1.6Tester + AttributeCreator73s49s-32.8AttributeCreator w/cond
The PythonCreator has been improved in FME 2017.1. The 'input' method has been added and the user can choose creating features before any reader via the 'input' method, creating features after any reader via the 'close' method.It's a good enhancement, but I noticed that the runtime order of the Creators on the 'close' method cannot be controlled. That is, PythonCreators don't appear in the Creators Run After Readers table in the Creator Runtime Order dialog.See also the attached demo: (FME 2017.1.2)import fmeobjectsclass FeatureCreator1(object): def __init__(self): pass def input(self,feature): newFeature = fmeobjects.FMEFeature() newFeature.setAttribute('_method', 'input') self.pyoutput(newFeature) def close(self): newFeature = fmeobjects.FMEFeature() newFeature.setAttribute('_method', 'close') self.pyoutput(newFeature)In addition, if the source dataset was empty (i.e. the reader feature type outputs no features), the order of
Hi, the problem is, that I can't manipulate the directory to output filename in FME Desktop for FME Server, like using ${FME-MF_DIR}. It's also not working if I use an own parameter.On FME Server there is always the file path of FME Desktop. It's only possible to manipulate the workspace file on FME Server by hand.Is this a bug in transformer HttpCaller or do you know another way to define an FME Server directory for output filename?I am using FME(R) 2017.1.2.0 (20171213 - Build 17722 - WIN64) and FME Server 2017.1.2 - Build 17722 - win64 Best regards,Matthias
I use PythonCaller to call ArcPy in my workspace, because the ArcPy can only be called by 32 bit FME, so I want to judge whether FME is 32 bit when workspace running.I am now using $(FME_HOME) according to the installation directory FME to judge it, I would like to ask whether there is a better way.
I am trying to write a KML with thumbnails of photos linked to specific point locations. I have managed to create the balloon containing the information I want, but I can't get the pin to appear. I've interrogated the resultant KML and have noticed that a point isn't being created as per the sample code from Google. If I add this information in with the correct coordinates, the pins show up as per the options I have set within the workbench.I have attached some screenshots of the parameters I'm using, any suggestions?Thanks
Hello,I am trying to connect a Oracle DB to FME but even if I did everything from this link it is not working.Does anybody have any idea what could be the problem?
Hi all,I would like to know the pro and cons of using a jobsubmitter instead of a httpcaller in terms of efficiency, parrallelism, ... and vice-versa.Thanks
Hi @mark_1spatialI'm using Template.DWG file to define the Linetype for the ROUTE feature, i will need to increase the width of the ROUTE based on the NO_OF_WAYS Attribute(Below is the table mapping). Please let me know how i could achieve this in FME Desktop 2016. In attached file i should have the ROUTE feature width to be increased to 0.8mm so that the 5 cables(4 Low Voltage Cables-Orange color, 1 High Voltage cable-Red color) should be shown as going inside the ROUTE. NO_OF_WAYS Width (meters on the ground) 1 0.3 2,3 0.55 4,5 0.8 6,7 1.05 8 1.3 Any help would be much appreciated. Regards, Anil Kumar K B