Creating and organizing workspaces. How to use Workbench.
Recently active
Hello all, i got a simple workspace set up where i am using the FILECOPY writer to simply copy a set of photos and rename them according to a user parameter, i manually put in the date the photo was taken, the source and destination folder are also controlled by User Parameters and change every time, is there a way i can get FME to read the first file in the folder and extract the Date Stamp, every time i run the workspace, i know that i can import a dataset within User Parameters but this is not dynamic when i change the source folder. maybe WorkSpaceRunner could play a role?? many thanks for your help
Hello! For the following problem I used FME 2015.1. For an assignment regarding automatic map generation data is read and clipped according to certain map boxes, after which they should be written away, per map box, to PDF-files. I use for that purpose a User Parameter, set to Choice (Multiple), such that the map boxes can be selected for printing. If I check the writer, the layers need to be named according to a certain attribute, while the PDF-files should be named after the name of their map box. Until now I was not successful doing that. I could set the pathname and the file name according to [PATHNAME\\$(Name_of_the_User_Parameter).pdf . If I would do that for a User Parameter, the Choice (Multiple) type, the name would be the full list that is selected as map box, and not written away individually. Does anyone have a solution for this problem? Kind regards, Jochgem
Hi! I remember FME could set conditional values to published parameters, but I couldn't do it in FME 2015.1. I even found a workspace from 2013, which had a published parameter with a conditional value: I have no idea, how I did that. Has the function been changed somehow?
I cannot see how to make the WorkspaceRunner work. What is the input supposed to be? Was there ever an example in fmepedia? Instead of running multiple quick translator sessions interactively I want to automate running the workbenches in parallel. Now that there is a limit of 6 my workflow is disrupted because I have to watch to see if a workbench is finished before I start another. This is a big step backwards for me.
Hi, I would like to use Workspace Runner and Path Format Reader to batch process a large number of files. I have over 100 files of different formats and in different directories and would like to use the Dynamic Schema writer when reprojecting them. However I can't find an example anywhere on FME Pedia showing how to use this Workspace runner. If anyone could mock up a simple example of this it would be appreciated. Thanks
I have a couple of published parameters param1, and param2 and a private param (param3) which is concatenated from the published parameter : $(param1)-$(param2) if param1 is A and param2 is B I'm expecting param3 to be A-B instead, in the python shutdown script fme.macroValues['param3'] returns A-$(param2) any ideas on how to get it to fully resolved.
Hi All, I'm trying to amalgamate records from several tables into one with only 2 attributes - the ref (from the originating table) and the table name (created using the Feature Type Name from the originating table). However, when I try this the Tablename attribute contains the full path for the file not just the table name. Can anyone help me with this one? Thanks.
Since upgrading to FME Desktop 2015.1 and Server 2015.1 we've hit an error writing dynamic features to a file geodatabase: Unable to find the schema definition 'Scheduled_Ancient_Monuments' for feature with feature type name 'Scheduled_Ancient_Monuments'. Ensure the feature type name is correct and that its schema definition exists in the schema source We haven't changed anything between 2015.0 and 2015.1 and it worked fine previously. I've attached two images showing the Feature Type Properties as they look in 2015.0 and how they look in 2015.1. Thanks, Peter.
Hi, I was wondering could anyone help me with a problem that I am having with Oracle Geometry Validation. I initially got an Oracle Dmp file containin a polygon dataset which have a Tolerance of 0.0005 and Irish National Grid 29900, I have implemented the Oracle Geometry Validation with the Tolerance check of 0.0005 and all features have validated with no issues. The Oracle spatial dataset was then transformed into an ESRI SDE Feature Class within a Feature Dataset which uses the Irish National Grid spatial 29902 reference system with all the standard defaults used i.e. x,y tolerance 0.001 and x,y resolution 0.0001. All features loaded successfully into this feature class. The data was then exported to an Oracle dmp file and provided to another person who imported the data into their Oracle database and into their Database Schema. I was asked to analysis on the new schema so therefore the data was provided back to me as an Oracle dmp file, I implemented the Oracle Validation as
Hi guys, Lets say I'm reading in several shape files. They are called "Birds", "Dogs" etc.The 'fme_feature_type' has the same name. There is an Attribute with the name "Race" (containing e.g. 'Finch', 'Crow', 'Falcon' ...) I need a csv file with the field names set to the feature type and the races beneath it. It should look like this: Birds Dogs Fish Finch labradoodle ............ Crow dachshund ........ Falcon pit bull terrier .... much obliged
Hello, I am running a workspace, and have created a custom transformer similar to https://knowledge.safe.com/articles/Samples_and_Demos/Looping-with-Blocking-Transformers However, there is an error that comes up: Custom transformer 'JoinLoop' does not have a port named '' which is suitable for parameter 'LOOPBACK_INPUT_TAG' My parameters are Elevation and _iteration_count... I cannot figure out the Loopback issue.
Hello, I would check the veracity web link from a FME process.(I need to know that isnt a dead link. Do you know a FME transformer for it or if i have to develop an algorithm ? thanks Alexy
Hi World, I have a XLSX file with two sheets in it and I want to use each sheet as a template for two different sheet in two XLSX writers but the same XLSX destination file. I tried to do so and it is not working. My first sheet (writer) gets empty after the data is written into the second sheet (writer). It looks like the "Template Sheet" parameter isn't working. I chose my Template File but if I let the Template Sheet empty for the two writers, nothing changes. I've read in the doc : When you specify a Template File, you can select one of the sheets as the template sheet. Click the browse button to view the list. Where is that list?? I don't see any sheet list, I have to write it down by my own... Cheers!
Hello! How I can to take this attributes from autocad block? I need it for converting to postgis database. I don't see these attributes in FME inspector
I have a FME workbench here and at certain points the output of transformers is connected to two other transformers. So the workbench get seperated in several branches. I wonder in which sequence order the transformers are activated. This is important, because in the several branches editing is done on the same objects. Is it possible to steer this sequence order?
Hi, new to FME here I've got a basic workbench that reads all xlsx files of addresses in a folder, joins them with an existing table to geoencode it, and then outputs it to one of three Oracle Spatial Object writers depending on some other attributes. It processes fine if I run it through the workbench, but I'd like to batch deploy it, which raises some problems. I went through the batch deploy wizard, but when I run the autogenerated .bat file it stops after processing the first excel file with the message "The instruction at 0x107e183a referenced memory at 0x0000002c. The memory could not be read". But if I change the .bat file's contents from fme "D:\my_project_xlsxr2oracle8i.tcl to fme "D:\my_project_xlsxr2oracle8i.fmw" It works fine, just like running it through the application. These are the contents of the .tcl file set workspacename {D:/my_project_xlsxr2oracle8i.fmw} set destDirList {} set recreateSourceTree "no" set superBatchFileName [FME_TempFilename] set superBatchF
Good afternoon, I have this issue come up now and again and I'd like to be able to solve it. But I frequently get excel spreadsheets that neet to be mached to a Point Layer in SDE. Normally I take the geometry of the SDE layer and keep the attributes of the spreadsheet. I normally use the FeatureMerger transformer. My problem is sometimes the number I use to match on is sometimes odd in the spreadsheet such as having trailing zeros or just any number of extra characters (normally 8000+ rows). So question being is there a way to do a "Loose match" on the fields to come up with a match? Thanks!
Hi I am trying to convert shapefiles to DXF. I have a CAD template file (.DWT) which contain definitions for linetypes. However I need to specify a linetype based on an attribute. I am using the DWGStyler in FME. Is there any way to set a particular linetype based on the feature subtype.
I have a directory with several subdirectories and four tif-files in each of them. The 4 tif-files have to be merged and the name of the new file has to be the name of the subdirectory.tif. All those new files have to be output to the same, new directory. So my problems are (I tried different things without success): - how do I get the names of the subdirectories, so that I could use them as the new filenames? - how do I loop through those subdirectories? (I guess I could use a workspace-runner, but then I would have to get the names of the subdirectories first > could this be done with the Schema-Reader...?) Thanks in advance Vera
Hi, I have a Python Startup Script using cx_Oracle library, which calls an Oracle Procedure returning a count value. If the count is greater than 0 then I want to stop the Workspace running. Wondering how do I go about terminating the Workspace? Thanks! import cx_Oracle # Connect to Oracle and Query the table try: connection = cx_Oracle.connect('user/pwd@orcl') cursor = connection.cursor() result = cursor.var(cx_Oracle.NUMBER) cursor.callproc('check_valid_dataset', (101,result)) if result.getvalue() > 0.0: print 'Terminating: Some datasets are not available' cursor.close() connection.close() except: print 'ERROR - Python startup script could not connect to database'
Hi FMErs I have a .osm (OpeenStreetMap) file as a reader, then used ListExploder to get the attributes for each feature as it's saved as tags, k (=key), and v (=value) , FME read these tags as a list ,..so I managed to get the columns, but I'm now stuck in how can I convert every key (or k) of the feature, into an attribute, and match to its value (v), see snapshot.. For example, k=maxspeed is an attribute and v= 100 is its value. Note that every feature may have many k's, (i.e., name, lanes, oneway, maxspeed,..etc) Any idea? Appreciate it..
I have a workbench which writes to some Esri Geodatabase feature classes and need to run some arcpy commands on each target feature class before and after the workbench completes. At the moment I am hard coding the target feature class names in the python startup/shutdown script, but would really like to pick these up from the workbench by getting a list of writer feature type names. I'm thinking it must be possible to list the writer feature type names that are defined in the workspace using fmeobjects?
I wrote a script that calculates something with some attributes of a dataset and stores new attributes, something like ... for AttributeName in MyFMEObject.AllAttributeNames() if AttributeName[:6]!='LIST_' MyFMEObject.setAttribute("MAX_"+ParamAttributeName,-1) MyFMEObject.setAttribute("MIN_"+ParamAttributeName,1000000) for AttributeName in MyFMEObject.AllAttributeNames() if AttributeName[:6]=='LIST_' CalcMaxMin(AttributeName[-8:]) MyFMEObject.setAttribute("MAX_"+ParamAttributeName,-1) MyFMEObject.setAttribute("MIN_"+ParamAttributeName,1000000) MyFMEObject.removeAttribute(AttributeName) def CalcMaxMin(ParamObject, ParamAttributeName): localValue=ParamObject.getAttribute(ParamAttributeName) localMaxValue=ParamObject.getAttribute("MAX_"+ParamAttributeName) localMinValue=ParamObject.getAttribute("MIN_"+ParamAttributeName) if localValue<localMinValue: ParamObject.set
I'm using FME Professional 2015 and have been trying to set the global origin for the DGN V8 writer but it does not seem to work. From what I understand I should be able to set UOR X Global Origin and UOR Y Global Origin, but I've had no luck. Is there a trick to getting this to work - something I'm missing?
Hello, I believe this is a simple question, but I am still learning FME. I attached pictures to help show what I would like to do. I would like to merge/combine my features within my shapefile together. I would like each to be separate instead of an entire shapefile with only one feature, so I do not want to use the Aggregator transformer. Within my shapefile, I have this... which is actually two separate features. In this example, I would like to combine 5861 and 5862. I saw this post http://fmepedia.safe.com/CommunityAnswers?id=906a0000000d6OnAAI, so I also tried the LineJoiner transformer, but it did not work. I don't think it would be this simple, but here is what I did... Any advice/help will be great! For my end result, I would just like to have all these features merged together.