Using transformers to modify data.
Recently active
Hi all, I am designing an automated proces to transform a File Geodatabase into a GML that is validated by an XSD. The validation fails, because the gml_id is part of the geometry trait of the feature, where this shouldn't be the case. When temporarily turning the validate output parameter off, the result looks like this: The red line in the picture above indicates the gml_id I'm talking about. For the XSD validation to work, the gml_id in the geometry needs to be removed. When checking the attributes of the point feature, I see that the gml_id clearly is a geometry trait of this feature. See the picture below: With this information, I made the assumption that with a GeometryPropertyRemover, this gml_id could easily be removed, leaving me with only the coordinate system, the dimensions and the actual geometry. I used a GeometryPropertyRemover with the following settings. Note that my client uses FME 2018: After running the workspace, the FME Data Inspector shows that the gml_id
I am trying to use the BIM360 Docs Connector transformer and it is throwing an error related to a Python library. The error is "No module named 'fmepy_autodesk_bim360docs'". I had originally setup a custom Python interpreter environment using Anaconda so I originally thought it might be that. However, I changed the environment back in FME to Python 3.X (I tried 3.6, 3.7, and 3.8) but no luck. I did check the FME python install location for this file with no luck. Has anyone seen this before?
Hi everyone, I have a question about my thesis.I have a point layer witch including data about the traffic(speed, cars number ect..). And I have a road layer. I don’t know how to connect the the point layer to the line as the closest segment of the line get the datas from the closest pont…I have gps points that indicate the speed of a car, I want to sum them around 50 meters averages them. which transformer offers and how it would be worth usingThanks in advance
Hi, I think I found a super obscure bug in StringSearcher. In my workspace I want to use Regex queries based on different conditions, e.g. if a string matches RegEx A use RegEx B in StringSearcher. This logic does work in general but for one specific query I get the Error: "Expression Evaluation Failure: 'This FME edition does not recognize the `' function." Oddly the query works fine when I test it in the RegEx Editor. It also works if I don't use a condition or if I use a different query inside the condition. Is this a bug or am I missing something? Attached an example workspace that illustrates the issue. Thank you for your help!
Hi everyone, is there a way to parse input in text user parameter before running a Serverapp? Let's say I only want to accept letters (A-Z,a-z) as input in text parameter and notify the user immediately if any number (0-9) is used. I'm cerain that this check can be done at workspace excecution, but that would already be to late as all the given values for user parameters can't be kept and must be re-entered at a necessary rerun. Thanks for your answers!
I think I've used QGIS to its limits and as far as I know ArcGIS don't have any tool different that might be of help for me. Since I've heard about it a a lot yet never used it, I thought FME might have more options to do what I need. If I can do what I've got in my mind I am going to purchase the required license. Basically I've got a very large and complex polygon road network and my main target is to divide those polygons into smaller polygons with almost equal lengths. Also divide them vertically with a centreline if the width of the polygon is above a certain length. But complexity makes things really difficult. In two separate questions, more details on this issue are available on gis stackexchange. https://gis.stackexchange.com/questions/423160/how-to-subdivide-road-polygons-into-equal-distance-polygons-while-also-verticall https://gis.stackexchange.com/questions/423773/subdividing-very-complex-and-big-road-polygon-data-into-almost-equal-sized-piece
I have a set of labelpoints that I want to flip to make it readable from a viewpoint from the side in 3D. Is there a transformer that does the trick? Thanks
Hello,This is my first use of the Writer with Oracle, I only used SQLExecutor before. The problem is, all features are stored correctly, but I cannot get the Writer to store the geometry - it just remains empty. First I put the name of the table and have specified the spatial column like this:Secondly I basically enumerate all columns:It works, but no geometries are being stored in the "AREA" column. All features come with geometry, I see them cached in the Inspector. Thanks for any suggestions!
Hi! I'm validating the quality of the CityGML and CityJSON building datasets. I'm wondering what is the real difference between all self-intersection rules implemented in the FME's GeometryValidator. So shortly: Is the rule Self-Intersection in 2D same as the Self-Intersection under the OGC Valid and OGC Simple? I think I understand the difference between Ring Self-Intersection, Surface Self-Intersect and Shells Intersect at least. Still, I would be grateful for proper definitions of all these errors. The document of GeometryValidator is a little bit unclear in the case of these "sub-errors". Thank you a lot!
Hello, i have a point cloud data file in e57 format and i plan to reduce it by transform PointCloudSimplifier. There is my workspace.And it appears that warning "The workspace may run slower because features are being recorded on all output ports". The data is very large, more than 100GB, so i wish it cloud be processed faster.I'm not exactly sure what "recorded on all output ports" means, what should i do? Do i need to add a transform like AttributeManager between the Reader and PointCloudSimplifier or something else?Thank you in advance!
I'm trying to convert a 0/1 value in CSV file to a kleenean value in smallworld. With the AttributeBooleanConverter I get this error:Smallworld Translator Error: Failed to convert string No for field Business to a truth value With an AttributeMapper I get this:Smallworld Translator Error: Failed to convert string 1 for field Business to a truth value What is weird with the AttributeMapper , I have the new attribute mapped to the field for Smallworld and the "Business" field should not even be considered. What am I doing wrong?
When using SQL Executor or SQL Creator with a PostGIS reader on our Postgres datawarehouse I run into problems with spatial queries.Example given this query:select table1.name , table2.whatever , table1.geometryfrom table1join table2 on ST_Intersects(table1.geometry, table2.geometry)this works only if the two tables are of a different geometry type (e.g. Polygons and Points). If they are both Polygons, FME does not recognise the geometry anymore. The geometry field from the output features does have content but when connected to a GeometryFilter the type is 'Null'. There is a workaround, when using a 'with' statement, like so:with polygons as ( select * from table1 )select polygons.name , table2.whatever , polygons.geometryfrom polygonsjoin table2 on ST_Intersects (polygons.geometry, table2.geometry Then, FME does recognise the geometry and displays them correctly (geometry coming from 'polygons' and thus, from 'table1') Is there anything I can check on our Postgres envir
Hello,I would like to +1 a value into a field using the Counter Transformer and although the expression I have used works in the evaluator I keep getting a rejected output with INVALID_PARAMETER_COUNT_START.The output from the SQL Creator Transformer seems to output the correct number.Can you tell me what I'm missing? Thank you.
We noticed that a password was visible in the log file of FME Desktop. Is this normal? We still looking if this is also the case for FME Server. We think this is a security issue. See attachment for an example. We changed the password in PASWOORD. http://www.safe.com/support
I am currently converting DGN to SV G so that they can be used in ESRI ArcGISPro based Runtime Content. The DGN s that I am converting can be successfully viewed in a web browser, however once they are imported to ArcGISPro the text is not recognized. I was able to determine that ArcPro must have a ttf reference. I am not concerned with retaining the the current shx "font". I just want to overwrite that attribute with a font that is stock to the the Windows Library. I am an FME beginner and cant even expose the shx reference in the writer. Any assistance would be great.
I'm using the JSONFragmenter to choose a segment of a JSON file and am trying to expose the values from this segment as attributes. However, the JSONFragmenter just returns the values as separate objects, and the attributes are empty. I've tried without the "[*]" at the end of the JSON query, yielding just one object but still empty attributes. I've also tried using the JSONflattener on this segment and on the full JSON string, but it does not seem to do anything. It just returns the same attributes as on the input straight through. The parameters of the JSONFragmenter: The segment og JSON looks like this:{ "id": "8a463f67-99c2-4f6b-8703-d154de3dd7ef", "vejnavn": "Tietgensvej", "adresseringsvejnavn": "Tietgensvej", "husnr": 4, "supplerendebynavn": null, "postnr": 8600, "postnrnavn": "Silkeborg", "status": 1, "virkningstart": "2015-
I have a shapefile with roof shapes. Now I will convert them into faces. This works well for almost all. But some areas are not planar. So theses non planar areas I fixed in a step before with GeometryValidator and then I will use FaceReplacer. But now the same issue was found "Non-Planar Surfaces". I thought with Geometry Validator these areas are fixed? Can someone help me?
I am using the OffsetCurveGenerator for two line segments . One is red, the other turquoise on the picture. I am using an interpolation angle of 22.5, corner style : round. You can see the result for two different offsets for the left side on the picture, the one in green is 2, the blue one 1. Why is an offset of 1 generating two line segments which are continuous and not intersecting while an offset of 2 creates intersecting segments ? How can I create the result for an offset of 2 which looks like the one of offset 1? If it is not possible, how can I modify the current result of offset 2 to look like the one of 1 ?
I have been having trouble with a particular IFC. All I am trying to do is read it in but it keeps causing FME to crash with no expanation. At first I was trying to open it using FME Data Inspector, however the whole application would close - always at "caching 829 features". I have since tried to open each Object type separatley in FME Desktop and I have found that it is an element in the IfcWallStandardCase that is causing this problem but the only error I am getting is "Error running translation" so it is difficult to know where to go from here. Is there any reason why this might be happening?
Hi,I have a couple of questions regarding migration of GlobalID’s from a source table (reader is a SQL creator) to be written into an existing ESRI Geodatabase (ArcSDE Geodb) table (destination). 1st question:The destination table has the GlobalID field but all the values are zeros (see image below), does this seem correct? 2nd question:Do I need to expose the GlobalID attribute in the workflow and then attempt to copy those GlobalID’s from the source table to the destination table (using a writer) in the workflow or should the “Preserve Global: Yes” parameters ensure that the incoming GlobalID’s will be preserved from the source table and embedded into the destination table? I can run the FME script to run successfully however I cannot get the existing GlobalID’s from the source table to be written into the destination table, FYI each feature is linked by another attribute. I have tried copying using transformer and writers and I have also tried using the “Preserve GlobalID: Yes” by i
I am pulling the transformation metadata using the API call GET /transformations/jobs/completedand would like to trace each transformation back to a specific run/event of an automation. In other words, I just don't want to know which automation ran the transformation, but I also want to group those transformations by a specific date and time that the automation was triggered. In looking through the metadata provided, I am not seeing an obvious way to do that. Thanks
Can't wrap my head around the following reformatting problem. My data looks like this:Pointid substance1 substance2 substance3...1 value 2 3I have a lot of columns in the original data, almost 200 different substances. I would like to achieve the following structure (below) where Substances attribute contains all values of 200 substance columns and is exploded for each Pointid. So basically every Pointid is replicated for each substance and values column have the value of each substance. I've tried multiple combinations of transformers but without result. Pointid Substances values1 Substance1 value1 Substance2 ...1 Substance32 Substance12 Substance2...
Hello everyone, So I have a dataset and need to validate "Hour" format that is in OSM Opening Hours specification.https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification I found a web site that have a lot if implemetation formats.https://wiki.openstreetmap.org/wiki/Key:opening_hours#Implementation However, I am not good at programming that I am not sure how to put it in FME for my checking. It would be awesome if someone could give me a hand. Thank you so much! Zach
in the original some initial alread had periods, but i already removed them with a stringreplacer. Any leads on how to tackle this are welcome. Luuk
I have this xml fragment in an attribute called distr_formats and need to insert it in a specified location of an xml document (stored in another attribute):<gmd:distributionFormat> <gmd:MD_Format> <gmd:name> <gco:CharacterString>DWG</gco:CharacterString> </gmd:name> <gmd:version> <gco:CharacterString>r2013</gco:CharacterString> </gmd:version> <gmd:fileDecompressionTechnique> <gco:CharacterString>ZIP</gco:CharacterString> </gmd:fileDecompressionTechnique> </gmd:MD_Format></gmd:distributionFormat><gmd:distributionFormat> <gmd:MD_Format> <gmd:name> <gco:CharacterString>SHP</gco:CharacterString> </gmd:name> <gmd:version> <gco:CharacterString>-</gco:CharacterString> </gmd:version> <gmd:fileDecom