Creating and organizing workspaces. How to use Workbench.
Recently active
I've got a shape file and a GDB feature class derived from that. 2 featureReaders with the same settings pointing at the 2 datasets, the shape file reader outputs a schema feature the GDB reader does not.Anyone know what's going on here? FME Desktop 2016.0
I have run the below query successfully on a spatial database in a standalone workspace:st_intersects(st_setsrid(st_geomfromtext('$(poly)'), 27700), geom)The poly parameter brings in the relevant wkt.When I run this query with the paramater passed through a master workspace it treats '$poly' as a string rather than a parameter. If i remove the single quotes the wkt comes through as expected, however the single quotes are part of the spatial query so the sql fails.Has anyone got any advice on how to get around this problem?Many Thanks,
Hi,I've always been struggling to wrap my head around how embedded custom transformers actually stitch into the general workflow. So this might very well be a no-brainer.If I want a transformer to have two dataflow (two input clauses), one with points/node and another with lines, and want the custom transformer to take certain point/node "names" to transfer to the line features into pre-existing attributes on it, how is this achieved ?I have "exposed" the three attributes (with seems common across all inputs !?), but I'm unsure whether the assigned values within the custom transformer ever make it out of it.Please enlighten me of the proper how-to :-)CheersLars I.
Had a hard time trying to let FME run out of memory, so I thought it would be faster to just ask around. My guess is no, right? Since it usually says "Warning: not all FMESessions that were created were destroyed before shutdown. This may cause instability" in the log...
Does FME Server use any of VB6/ASP/Web-plugins?
Hi,I am transforming a AutoCAD .DWG file containing lines, polygons, points and texts to a spatialite database. The translation is relatively easy, but i would like to output some internal fme attributes on top of the autocad attributes. With internal attributes, i mean the typical 'fme_color', 'fme_basename' or 'fme_feature_type' attributes that are visible inside FME Workbench and Inspector, but disappear when writing to a spatialite sl3 file. I also tried using an attribute exposer and creating new attributes that get the value of each internal attribute. None of these worked out. Does anyone have a suggestion how I can still use these internal attributes?
Hi all,I have a dgn file (let's say old_dgn) which is linked to an oracle database (let's say table_dgn).Because some centroids are missing, I created a new dgn file (let's say new_dgn) that contains all the existing features of the old file and also the new centroides.Now I would like to write a workspace that will:(1) detect the centroids without linkage with the oracle table table_dgn(2) create the linkage in case some centroids were found in step (1). This means update also the oracle table table_dgn.The oracle table table_dgn has a column mslink which corresponds to mslink1 of the file new_dgn.Any suggestions?
How do I specify a specific installation or version of FME to use in my batch file? This Knowledge Center article explains the syntax and use-cases, but 'fme' always gives me a version of FME I don't want! https://knowledge.safe.com/articles/1384/fme-batch-processing-methods-1.html
I have an address point with street name and street type fields likeName TypeMain streetPlesantavenueand so on. Also i have table with street coded values likeCodeNameType2345Main street4588PlesantavenueWhat i need to do is for each addreess point find name and type from second table and paste code value to the point attribute. What is the best way for this?
Is there a way to control the processing order so that the first part of processing, which creates a backup file, completes before the second part of processing starts. I don't want the second part to start processing on the file before the backup of that file can be created.
Hi,I am trying to re-use a python script (saved as .py file), so that i do not have to edit all my workspaces that contain this script in a private parameter.I tried to follow the steps in https://knowledge.safe.com/articles/976/how-can-i-modularize-my-python-code.htmlwhereby I included a couple of codes within the python startup script something like below:when I try referring the SetReader module in a private parameter, I get an error that says 'ImportError: No module named SetReader'Can I please get some help regarding re-using python scripts ?Thanks very muchimport sys sys.path.append(r'\\fmeserver\Functions') import SetReader
Hi,Im doing some test with elasticsearch and FME writer. I have a very simple workbench that reads (with directory reader) a folder with geojson files, read them with feature reader and dinamically writes to elasticsearch using the elasticsearch writer. The wb works pretty much ok on looping and sending all the jsons to elastic (on different types inside the same index), however it seems that the geometry field is lost when I write it to ES (although present in the geojson"features" : [ { "type" : "Feature", "geometry" : { "type" : "Point", "coordinates" : [ -0.8275947, 38.05902 ] }, "properties" : { "uwwCode" : "ES10030240001000E", "uwwName" : "BENEJUZAR", "uwwNUTS" : "ES521", "fme_basename" : "EDAR_Q2011", "SHAPE_GEOMETRY"
Basically, I am adding a 50m buffer to a facility point (first reader) then using a spatial filter to see where population points (second reader) fall within that buffer With those population points I caluclate the sum for overall population in the buffer and then run through a tester to see if it is greater than a value. If it fails it loops back to Expression Evaluator and adds 50m to the buffer. However it is looping the future population points originally selected within the buffer and creating new buffers for ALL OF THEM. NOT what I want.I created a Custom Transformer from Expression Evaluator through to Tester, then added a LOOP from the tester fail back to Expression Evaluator. The is the ONLY point I want to build a buffer around. It does not pass through after the first LOOP. What I would like to do is when the test fails, add another 50m to the buffer each time to that facility until the test passes. This is difficult when it only goes through the analysis once.Curren
I have to add unique attributes for fields like Tender Number, Project Number etc to all the feature in the database. The whole database having more than 100 features. Which transformer can help me the best. Now I am using AttributeManager, which for different sessions and different Tender set database i have to change the entire attributes in the AttributeManager.
Hi,I am trying add attribute value as prefix to joined attributes, but I have not succeeded. @bo had quite similar problem Add parameter as prefix... I have created attributes at main.Then I expose those attributes at custom transformerBut I cant get prefix when I add JoinerGoal is to have 1_REGISTRATIONDATE, 1_FORMERPARCELLOCUNITID and 2_REGISTRATIONDATE, 2_FORMERPARCELLOCUNITID on the second round and so on.
Currently I have:A polygon layer with a population attributeA point file containing facility locations. Facility A has a catchment area of x amount of people. What tools can I utilize that will allow me to create a catchment of those polygons that bring a sum of x? Which tool will work best for this scenario?Thanks very much,Justin
Hi,Simple question, there is Line feature that are multiple segments with direction (Blue and orange lines), each having individual Id. I would like to count the no. of black line touching per segment.Let me know if any further info is needed.Must be simple but, I'm stuck.Thanks in Advance,Sani.
I have existing FME scripts that run fine. I edit one, could be just a transformer or anything, and some, not all, of the sources and destinations sometimes change into published parameters. When I then have these scripts run, manually or through a scheduled task dos batch file, it won't run without the inputs. I don't want these to be published parameters, but they revert to them sometimes.
Hello World of Safe,as you see in the picture I uploaded, I want to summarize all the rows with the same value in the column "paaranzahl". Is that possible?Best regards, Felix
Hi thereI'm wondering if there is a way to start the same FME-workspace within a loop (input different parameters) and to ensure that the next iteration waits for the translation of the previous one to complete?I have a Python programm that basically looks like this:fcList = ['A', 'B'] # List of feature classesfor fc in fcList: process = subprocess.Popen(fme.exe workspace --featureClass 'fc') process.wait() The purpose of my FME workspace is to write some data into a database. The Python program starts this workspace with feature class 'A' in the first iteration. However, as soon as FME is initialized and starts the actual translation, the process seems to be done for Python and it begins with the second iteration. This causes the initialized workspace to stop and to re-inizialize with feature class 'B'. In the end, there is only the final class 'B' in my database.I have also tried for fc in fcList: log = subprocess.check_output(fme.exe Workspace --featureClass 'fc') while "TRANSLATIO
Hello world of Safe!A few transformers create objects with the following attribute tables 'Table 1' and 'Table 2'. The attribute 'ID' describes where A is B. I want to combine these tables like you see it in the picture under 'Goal'. First I thought I could merge them with the FeatureMerger, but after that the output just shows the four rows with the ids which exists in both tables.Important: The ids in Table 1 exist in Table 2 in every case. It is not a coincidence!Thank you for answers!Best regards,Felix
We have problems using 64-bit FME (2016.1) to read/write ArcSDE-base. There is ArcGIS 10.4.1 installed with 64-bit background geoprocessing (I can see the bin64 folder) that according to this article should be enough to access ESRI world via GEODATABASE_SDE reader. However when trying to connect with the SDE-base either with existing reader (that works with 32-bit FME) or new one, I got fatal error: Please ensure the connection parameters are correct (server=`Etaklevitus1', instance=`sde:postgresql:Etaklevitus1,5432', user=`levituum_admin', password=`***', database=`levituum', version=`SDE.DEFAULT') Is there somewhere I should look at?Best regards,Raivo AllaEstonian Land Board
Hi,I've added a Python script to be run in a workspace after the translation finishes. I.e. the "FME_END_PYTHON_ENC" tag in the FME file.I can see that it hasn't been run (by other means), but I can't find neither the above tag nor keywords from the script mentioned anywhere in the translation log file.How can I determine if the shutdown script has been run or not (if I can't determine it by other means) ?If it errs, I would like to see some error messages, so I can correct it.Cheers Lars I.
Hi,My current FME workbench uses an AttributeFilter to create separate output ports for distinct attribute values. Each of these output ports then connect to the same 'series of transformers'.Base on the input file that is passed to the Reader, the name and count of the attribute values is bound to change and I would import the attribute values in AttributeFilter everytime to take care of this change and then add or delete the 'series of transformers' according to the output ports of the AttributeFilter.In order to find an automated way to the above, I know I have to somehow loop through each of the Attribute values and pass it to the series of transformers repeatedly. The first thing I did is to create a custom transformer that takes care of the series of transformers and have also added a loop to it.Can someone suggest what could be the way that the attribute values could be fed to the custom transformer and also tell the workbench when to stop.Thank you !(Can python