Using transformers to modify data.
Recently active
Hello, Following this example as a starting point: https://community.safe.com/s/article/how-to-read-all-feature-classes-from-multiple-esri I am able to convert all of the feature classes in a file GeoDatabase to shapefiles. In production, the workflow would actually import the feature classes into an Enterprise GeoDatabase, while reprojecting the geometry as well. After making the modification to the above example so that the output is directed to our EGDB and then running the workspace, the log indicates a successful connection, however it subsequently fails with a very unhelpful message, "Error running translation".Below is a screenshot of the workflow, modified to test for particular feature classes (as well as a disconnected reprojection step, as I'm not sure if simply placing it between the FeatureReader and Dynamic Writer would work, considering the dynamic nature of the workflow that would input to sources to the reprojector).And the EGDB writer properties and para
Hi,how can i order the nodes on a line.I put line segments into the topologybuilder to generate its topology. in the result i got an orderd line (see attachment) but unfortunatly the nodes are not really ordered (see second attachment).can somebody explain how can i get the right order of the nodes on the lines?thanks in advance
Hello everyone,I have to extract information from a web page that shows a map with a database connected to a list of projects in the area, could anyone tell me how to do it? Here you are a print screen of the web page
Workspace I meant: ttps://hub.safe.com/publishers/con-terra/templates/citygml-create-solitaryvegetationobject-with-implicit-representation#description
I'm an FME newbie and am trying to do the equivalent of a join in GIS, where I have a key field in my source data and a key field in my joining data. The issue here is that the fields in these layers are of different data types (source = int, join = char). I tried to use the featurejoiner for for this, but no joined attributes came across in the output. I'm assuming this is because they are of different data types. How can I get around this without having to write a new dataset that has the char attribute converted to int as an intermediary step? Is there a way around having to do this?
Hi all,I would like to: list feature classes/layers from a file geodatabase. Sort. Keep first N tables and drop the rest. All is good till dropping the tables . So my question is how to drop a list of tables in a File Geodatabase I looked at SQLExecutor and there is no option for Esri File geodatase. In the geodatabase writers you can only "Drop and Create" tables. This example seems promissing, except I would need to update the User Private Parameter with an sql of tables to drop, and it does not seem to be working in that direction : workspace variable => Published Private Parameter. Or does it?https://gis.stackexchange.com/questions/251542/how-to-delete-a-single-feature-class-from-a-geodatabase-using-fme Just to mention that in this example, if I hardcode the Published Private parameter with list of tables to drop it works"FME_SQL_DELIMITER ; DROP TABLE first_table; DROP TABLE second_table;" All suggestion are welcome and thanks in advance
I am looking for suggestions on how to create Response Areas based on a Road Network and Station Points. For example:DATA INPUTS:1) Greater Geographic Region Polygon - basically the greater region of interest.2) Road Network within Geographic Region - network has topology, along with speed and time cost attributes.3) Station locations - they may or may not fall exactly on the network. How can FME take the Greater Geographic Region and split it into sub regions; one region for each station based on the drive times out from the station. The result is a Station Response Area.
I am reading a CSV file. The data does not have a header record and in the Fields setup of the reader I select None for the field Names Line (default is 1.) The data preview shows the first record being read at that point. However, when I save the reader and preview the data it starts at the 2nd record.
I'd like to create a string attribute with a specific length. I'm using an Esri AGOL writer to create and write to a feature service. In AGOL, I want the Field length of this string to be 12. In a PythonCaller, I'm using: objText = '00123' feature.setAttribute("TextField_test", 'ABC' + objText) In AGOL, this creates a field of string type with a length of 254. In an AttributeCreator (before the PythonCaller), I created the 'TextField_test' attribute with a value of @string(12). This creates an attribute a value of '@string(12)' which is obviously not what I want (the python overwrites that value). In AGOL, this creates a field of string type with a length of 200. I understand that I could the User Attributes in the AGOL Writer to Manual and change the attribute to Width to 12, but I also have an Excel Writer and would have to set the Cell Width to 12 as well. During development, I'm adding and removing many attribute
I have a Geopackage with lots of tables and would like to speed things up by only reading the needed tables for later processing. The 'Where' field only applies to table content, I want to filter on table names. I would like to use a wildcard to import layers containing a certain string. ExampleIn a dataset all hydrographic layers might contain the string 'hydro'I would like to use sql to only import these layers by using something similar to 'LIKE %hydro%' edited by including an example Edit 2: I realise I made a huge, and embarrassing, typo. The file I am working with is a geopackage, not a gml... *facepalm*
Dear, I have a workspace that reads a in a postgis database with an SQLExecutor. It all runs smooth. However I want to make my workspace generic, so that it can use other input data from different databases/schemas in the future. That is why I put everything to read in user parameters. That being said I encountered the following problem. My workspace runs fine with the original data. However when I change the name of the schema of my input data, and I change it in the SQL executor accordingly, I get the following error: 'Error executing SQL command ('select version(), postgis_version()'): 'ERROR: function postgis_version() does not exist' When I try to read in the schema with the changed name with a PostgreSQL reader, it works just fine. However this is not desired, since my data contains geometry. Does somebody has any clue what can be the cause for this? Attached you can find the logfile and some screenshots. I tried running it both on the 2021 version of FME d
I am using NeighborFinder to find adjacent horizontal (or vertical) lines. I create a list and the transformer automatically supplies the angle value for each item. I want to remove any list item which does not have an angle value of 90 or 270.The ListElementFilter has been very helpful, but it seems to only filter one value at a time. I also tried AttributeManager to conditionally change the list{}_angle value to 90 when it finds 270, but no luck there.Would this be a Python situation?Any help is appreciated.
I like to use the PDF2TextReader_custom transformer to convert pdf files to text files in FME 2022. I downloaded the pdftotext application(v. 4.04) from XpdfReader and followed the installation instructions. Trying to run the transformer it gives the error 'Error opening pdf file'. Using the command-line executor of windows I'm able to convert the pdf to text(including a xpdfrc-configuration file in the same directory as the pdftotext-file, as advised by XpdfReader). My question, what can be wrong when I use the FME-transformer?
I have some data that I have run through the statistics transformer in the format shown below i.e. ID, Year, Count I want to create a chart but need to include the years that have a zero value in a five year period i.e. 2015 to 2019. How do I manipulate the data to add in the missing years with a zero value? Any assistance would be greatly appreciated.
I am trying to merge two TIF files using the RasterMosaicker, but for some reason all it writes is the first file, not the merged files. Can't figure out what I'm doing wrong. I have not uploaded the TIF files because they are 380MB each, but anyone wanting to test it can access them at https://drive.google.com/drive/folders/1T_lRY4zRAJDSOYRAaqic4bHLwoe4VGfT?usp=sharing.
I want to take the results of a SQL expression (SQL Executor) that returns a format like:POLYGON((2861292.56247401 15394288.32744411,2861296.63792518 15394295.48523819,2861287.86169601 15394300.48260353,2861283.78591676 15394293.32480944,2861292.56247401 15394288.32744411))and generate an fme polygon object without first writing the geometry json to a file. I have looked at FeatureReader and ESRI JSON reader. Looks like the variable passed is expected to be a file. The issue I have is the new ArcSDE Geodb reader reads Esri Annotation geometry as a point. The annotation geometry type is stored as polygon. I need to get the polygon like I had before with the Esri Legacy Reader.
is there a way to replicate sde. default database and store it in the folder? also for recurring backups or replication of the database would not be overwritten and saved into a different folder with a different name. Please let me know if I can accomplish this in FME. Thank you,Sarah
Hi,I'm looking to see if I can retrieve all tables with the same prefix and then save the table content with a dynamic writer in shape format. For this I start with a SQLCreator with the query:select TABLE_NAME GV_TABLEfrom colswhere TABLE_NAME like 'AB$_%' escape '$'and TABLE_NAME in( select object_name from user_objects where object_type = 'TABLE') The result is then picked up in a SQLExecutor:select *from @Value(GV_TABLE) Attributes to Expose is left empty in the SQLExecuter. The result of the SQLExecuter looks like empty records but if you look with Visual Preview the attributes per table are present. With a dynamic writer I try to write to a shape file per table. The writer does not write anything. So is it possible to make the attributes visible after the SQLexecuter? Attributeexposer does not have a *.* wildcard.
I am trying to read this wms-service/url using the featurereader (espg 3857): https://geoservices.knmi.nl/adaguc-server?DATASET=RADAR&SERVICE=WMS&&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&LAYERS=RAD_NL25_PCP_CM&WIDTH=1131&HEIGHT=489&CRS=EPSG%3A3857&BBOX=-199509.20245398767,6500000,1419509.2024539877,7200000&STYLES=radar%2Fnearest&FORMAT=image/png&TRANSPARENT=TRUE&&time=2022-01-05T14%3A40%3A00Z Somehow this gives me the wrong return, what's more: If I change the date/time the result stays the same, which should not happen Using the exact same url in the httpcaller and saving it as a .png gives me the proper result (but i dont want to be saving files). Any clue what i might be doing wrong?
Hi, Is it possible to supress certain warnings in the translation log?For example, when i use a Oracle spatial reader with 2 or more geometry columns I use the parameter "Spatial Column : GEOMETRY1". In the translation log I get: Column `GEOMETRY1' of table `A_TEST' has been chosen to hold the geometry. I would like to remove such warnings in from the log.
I am using the http-caller to upload attachments to a arcgis portal via the addAttachment in the Rest API. It works fine to upload but the image does not behave in the same way as when I make the post with postman. The attachment link in the portal downloads the image instead of showing it in the browser. This is not the case with Postman. Any help appreciated
Hey, I am trying to modify https://community.safe.com/s/article/data-distribution-fme-server-app the data distribution demo script. I am attempting to download 5 different shape files (points, polygons and lines) all with varying attributes. I have the script working and downloading with the exception of the attributes specific to each feature class. Every attribute is blown away. If I change the user attributes to automatic for the output feature class it sort of works except its merging all the attributes together and showing them in every feature class. Ideally I just want to download the 5 shapes and retain their unique attributes. Seems I can either output the shapes with no attributes or output the shapes with attributes from other feature classes merged into it. Right now im running them through their own clipper into a copy paste of the feature output which would mean doing that for every single layer i want to download. Just want to make sure theres no better way of doing this
Hello, Is there a way to automatically detect datatime fields from a reader reading many tables (at least 2k) and convert them to a different format?
Since our migration from FME Desktop+Server 2020 to the following versions, it is not possible to guarantee the order of execution for our readers. With the first reader and its transformer I want to download three zips. With the second reader I read those zips, extract them and export them to a database. With FME 2020 this worked fine. With FME 2021 and 2022 it seems that the reader order in the navigator pane is not recognized. Any idea? Thanks in advance!