Using transformers to modify data.
Recently active
Hi all!I'm reading spatial data from a MapServer hosted in organizations ArcGIS Portal. The query is made with HTTPCaller, and the response is in EsriJSON (by default). I then extract the "geometry" part of the response json, as well as some other attributes from the response, with PythonCaller and replace the geometry with GeometryReplacer to FME Feature Geometry, so that I can perform other spatial tasks with FME later in the translation. However, I noticed that some polygons returned from the query contains holes inside of them, or they should contain (this is confirmed from the source data), but after the GeometryReplacer, the holes are not holes, but filled with a polygon, and the Geometry returned is a multiarea with polygon part of it on top of the polygon itself! This behaviour happens, when the Geometry source encoding is EsriJSON. The MapServer can be queried so, that the response format is in GeoJSON, and when I perfomed the same method with the GeoJSON encodi
I've created a workspace to call a lot of wms services - and I'm not getting the right response. When I copy the URL to a browser the %EF%BB%BF appears in my string - this I cannot se within FME. How can I fix this ?
Hi, I want to simplify some line geometries which may be single or multi part IF their coordinate count is greater than a fixed value. Is there a simple way that I can apply a generalisation based of max resultant coordinate count rather than a tolerance setting where the post generalisation coordinate count will not be know until until after the generalisation has been applied. In the latter situation if the count still exceeds my threshold the tolerance would have to be increased, and generalised once or multiple times? I was interested to know if I could go straight to my max value rather than having to create a looped process? I am using FME(R) 2022.2.3.0 (20230131 - Build 22789 - WIN64) Ultimately I want to create a WKT Geom encode which does not exceed a fixed string length. For this I know that each line should have no more than ~1250 vertices, so I want to simplify the line to this number if the coordinate count exceeds this. Regards, Rob
So essentially the lines are the boundary of this polygon. I have tried spatial relator which only sometimes gives me a 1 to many join on every other line, I tried neighborfinder but I can get the attributes to copy over. I have specified merged attributes but it doesn't seem to be working. Not sure what I am doing wrong and help will be appreciated. The images show what I would like to achieve in FME.
Hi everyone.I am trying to obtain a csv file with some information about several raster files. One of the attributes I need to get is the number of pixels with a determined value (in my case I need, among others, two attributes for each raster: the number of pixels with value=0 and with value=255). Is there any transformer for that?Thanks!
I have some Autocad data where the objects are constructed as 3D solids, like this:The 3D data is nice for many uses, but I would also like to extract a simplified version for our GIS databases. The Surface Footprint Replacer will generate a nice polygon, but will also remove the elevation and return 2D data. Is there a way to get a footprint that retains the elevations of the "top face" of the solid? I most cases this face is flat, but in some cases, like ducts and pipes, this is not the case.
When I am trying to open GPKG file, I am receiving the following error: Workspace generation failed. Parameter file was C:\\Users\\MITINA~1.UPW\\AppData\\Local\\Temp\\FME_1695313458867_14324. I have tried reinstalling the software.
I have a workspace writes data from one ArcGIS database to another. I used the drop and create option on tthe tableI get the error , [DDL operations are not allowed across database boundaries.]} My question is how can ArcGIS allow you to drop a table but not create it again? This was very inconvenient. Is there anyway to stop FME from droping the table if it does not have the permission to create a new table?Best regards,Kicki M My error message:Geodatabase Writer: Dropping table/feature class `DBO.GVF_GEOM_TMP'Geodatabase Writer: Creating feature class `DBO.GVF_GEOM_TMP' in feature dataset 'gdbhmag.DBO.hmag'An error occurred while attempting to create the feature class 'DBO.GVF_GEOM_TMP'. The error number from ArcObjects is: '-2147220989'. The error message from ArcObjects is: {The operation is not supported by this implementation. [DDL operations are not allowed across database boundaries.]}GEODATABASE_SDE writer: A fatal error has occurred. Check the
I have two data sets - one is a 'main' dataset and the other is a 'lookup' dataset containing further information. In my main dataset I have a columns called 'Visibility' and 'road_condition' that contain a range of values from 1-13. There are over 4000 rows in the dataset. In my lookup dataset, I have 'code' and 'Column' columns that contain further information relating to each record in the main dataset. See screenshots of the data below. Is there a way to create new columns in the main dataset called 'Visibility_Info' and 'Road_Condition_Info' that merges the data from the main and lookup datasets together without filtering each of the values in the 'Column' column individually before passing the data through to a FeatureMerger?
I need to write a couple of 100 tables from postgis into several geopackage files. This should be a pretty simple job? But the workbench fail OGCGEOPACKAGE writer: OGCGEOPACKAGE writer: For feature type 'd_y_n', primary key attribute 'id' has unsupported type 'mediumint'. Primary key must have type 'int' This is related to https://community.safe.com/s/question/0D54Q00009SAyLQSA1/geopackage-dynamic-writer-error-unsupported-type-mediumint?t=1669103461721 and a follow up https://community.safe.com/s/question/0D54Q00009w0K1ZSAU/ogcgeopackage-writer-primary-key-attribute-id-has-unsupported-type-mediumint?t=1694607976804 "It seems like FME is trying to write a 32b integer when its expecting a 64b integer" Is there a solution to this problem? I need something stable to run in a production environment, this job will run nightly. I can easily script what I want to achieve using ogr2ogr (append several postgis tables into one or several gpkg)Simple exam
I am having problems using the FME Define custom Coordinate System Tool (demos-safe-software.fmecloud.com/fmedatastreaming/Coordsys/Start.fmw).I want to make the ITRF2014 coordinate system that is in ESRI available in FME. I have used this ESRI WKT file from ITRF2014 - EPSG:9000 :GEOGCS["ITRF2014", DATUM["International_Terrestrial_Reference_Frame_2014", SPHEROID["GRS_1980",6378137.0,298.257222101]], PRIMEM["Greenwich",0.0], UNIT["Degree",0.0174532925199433]]However, when I test the new coordsys files I get errors. Any help in tracking down what I am doing wrong would be greatly appreciated.
Hello Forum, I notice that when FME Form convert a dataset from one format (e.g.: .tab) to geopackage it adds a field called 'id'. So, two questions: 1) Do geopackage files always have, and have to have, an id field?2) Or is there a way of asking FME Form to not create one/delete it? It doesn’t seem possible via an AttributeManager or in the Writer’s User Attributes. I've noticed that, separately, if I read in the created geopackage I can then use an AttributeManager to remove the id field and then publish again. But there are two problems with this… 1) It's a faff. I'd rather not read in, write out, read in, and write out again. But..2) even after removing the id field via an AttributeManager, the id field always appears in the output geopackage file. This makes me wonder if an id field must always exist in geopackage files. I've also noticed that when creating geojson files FME seems to create a ‘fill’ field and a ‘stroke’ field, which I can't remove. Is
Hello,Has anyone faced issues while trying to read DGN files (V7 or V8) in FME 2022? My current version is FME(R) 2022.2.5.0 (20230329 - Build 22795 - WIN64). Below an screenshot of the error:I have tried to changed the reading parameters but still unable to read it. Also I have loaded the same DGN onto FME 2020 and works fine.Can this be a bug in the 2022 version?
I am trying to read a parquet file with the "FeatureReader" transformer and I have no problems doing so. However, the three columns that I have in my parquet file, which are datetimes [ns], do not appear in the parquet. If I use an "Attribute Exposer" I can't get them either, they seem to come as "missing". Any alternative in this regard?
I'm trying to copy metadata from SDE (Test) to SDE (Prod) environment. Any help would be greatly appreciated.
Hi,I need to write to several feature classes with the same schema but different prefixes to the names e.g. FAIL_wPressureMain. I am using an XML workspace schema only as template to define the output ( has subtype and domains). In the schema there is wPressureMain. The writer creates a feature class wPressureMain with everything correct but when I output a prefixed name e.g. FAIL_ the the subtype is not respected (haven't checked domains yet). I am presuming at the moment that somehow the new name does not match the schema 'name' wPressureMain and hence thinks it's something new and just writes out the data with the new name , loosing the subtype definition? Is there a way to fix this or is this correct behaviour? Or something broken in my script?I could create a schema for FAIL_wPressureMain and all my other classes and prefixes likewise, the result would empty feature class output, creating a different problem of deleting empty stuff ... python script ... Shouldn&#
The project number attribute from the TPL Corridors and Concepts layer did not exist in the target TDE Projects layer. However, I created a separate workspace that added in the field of TPL_Project_Number field into the TDE Projects layer already, so the target TDE Projects layer has the field in the table. This is my current workspace.This is how the attribute manager configuration is:The issue I am experiencing is that the script is inserting new records with just the tpl_project_number into the target TDE Projects layer, but I want these tpl_project_numbers inputted into the target TDE Projects layer for only the TDE Projects and TPL Corridors and Concepts polygons that overlap one another into the existing corresponding records, and not new ones altogether if that makes sense. Is there another transformer that would enbale me to do this or is there a transformer I am missing here?
How can I fix the texture that the 3D-tiles writer puts out? When converting from obj(including .png and .mlt) to 3D tiles, the writer makes the texture very dark when they are being viewed in Cesium. There is no problem converting to kmz, the textures is perfect there but we need to use 3D-tiles for its streaming capabilities. KMZ: 3D-Tiles: I have read multiple posts on FME forum and on Cesium forum:including this idea: https://community.safe.com/s/bridea/a0r4Q00000Hbqi5QAB/options-to-choose-and-set-gltf-appearance-settings-in-cesium-3d-tiles-writer https://community.cesium.com/t/how-to-set-lighting-for-cessium-3d-tile/5140 https://community.safe.com/s/question/0D54Q00009cNpu2SAC/i-want-to-create-textured-models-to-cesium-3d-tiles-from-obj-files And more posts. Does anyone have an idea how to fix this issue? Right now I use this, this helps to fix a transparent issue I faced before.Here is the .mlt from the obj if it helps:newmtl SolidKa 1.0 1.0 1.0Kd 1.0 1.0 1.0Ks 0.0 0.0 0.0d 1.0N
I'm trying to setup a workspace that allows the user to choose what attributes to keep in the final spreadsheet. But AttributeKeeper seems to work wrong when passing User Parameters in the "Attributes to Keep" box. I've created a User Parameter of the type "Attribute Name" that allows to select multiple attributes, and I've setup AttributeKeeper to use this parameter. I'm facing the following:1- When selecting only one attribute: Schema gets lost, but the attribute is still retrievable by exposing it.2- When selecting more than one attribute: Both schema and attributes get lost.3- Noticed that AttributeKeeper has a comma delimiter when multiple attributes are selected, while "Attribute Name" User Parameters use a blank space as a delimiter. So I've created a third parameter of the type "Text" with the value "a1,a2" (where a1 and a2 are the attributes), to see if this makes any difference. This again results in no sch
I am trying to test a bunch of IFC files containing different sets of IFC classes like IfcBeam, IfcColumn, IfcReinforcingBar etc. When I change the filepath in a user parameter, FeatureReader changes accordingly as per the presence of IFC classes in that respective IFC file(Refer images), resulting in breaking links with the next transformers. I also created a dummy IFC file manually adding in all the IFC classes which are there in all the IFC files I have till now. But this is not a reliable solution as future might hold some other classes as well. Kindly try to suggest me a reliable solution I am surely missing at the moment.
Hello! I have a workspace selecting a feature then passing its geometry into a different workspace for analysis: However, I receive these messages and the second workspace doesn't run:WorkspaceRunner_CleanerUpperOfBatchesInitiator (CreationFactory): Created 1 featuresWorkspaceRunner_CleanerUpperOfBatchesDoWeNeedToDoIt (TestFactory): Tested 1 input feature(s) -- 0 feature(s) passed and 1 feature(s) failedWorkspaceRunner_CleanerUpperOfBatchesRunner (TestFactory): Tested 0 input feature(s) -- 0 feature(s) passed and 0 feature(s) failed Here is the Geometry Extractor: Here is the WorkspaceRunner: Troubleshooting: When I removed the geometry as a parameter for the second workspace, the WorkspaceRunner succeeded. If I copy the GeoJSON text directly into the analysis boundary box, WorkspaceRunner succeeds as well. I would love some guidance on this! Thank you!
AreaGapAndOverlapCleaner has turned on itself, see examples below. The changes occur within tolerances, but the transformer should only be modifying gaps between neighbouring polygons, not itself? I have checked incoming features with the GeometryValidator but can not find anything wrong with them.What is going on here? Before AreaGapAndOverlapCleaner (this is a river) After (AreaGapAndOverlapCleaner thinks there is a drought and has turned the river into puddles) Before and after combined Another example: Here AreaGapAndOverlapCleaner (light brown) has attacked corners and bends. See the tip of the left area, and the small slivers in the bend on the far right have been introduced by the transformer.
By referring to the article Creating a Custom Format and section Using the Custom Format Wizard, I have created a custom format along with few (Published) user parameters.However, when consumed the custom format via Workspace Resources of a new FME workbench, user parameters those were created in the custom format were not appearing. Did I miss anything here? I was expected to see the user parameters that I have created in custom format. Enclosed the .FDS that I have created. FME 2022.1.0.0 (20220704 - Build 22618 - WIN64) @david_r @Mark Stoakes @debbiatsafe @chrisatsafe
Hi, I'm following the FME Basic course, here exercise Flood Risk Project within the module Use Conditional Value. In the course text the Inspector result is shown in the picture attached here ("... Inspector according to exercise").However, in my FME the outcome is different (see "... Inspector"): other names and 3 items instead of 5 items.I checked the conditional values used in the AttributeManager several times, it is exact the same as in the course text (see "... Conditional Value" Any thoughts?