Using readers and writers to extract and load data.
Recently active
Hi there!I want to let you know, that I'm writing a new tutorial covering XML Filter Expressions in WFS Reader:https://olivers-expression-lab.gitbook.io/filter-expressions-in-fme/ The basics are done.Please let me know, if it works for you and escpecially if not! Best regardsOliver
Hey FME team,My coworkers and I are trying to figure out a tough polyline overlay issue. We are building a routable transport network for a city. We received 2 polyline datasets for the city’s road network. One dataset (Roadmap) contains geometry that we are licensed to modify the geometry for (as the original data were poorly connected and incomplete), and the second dataset (Carriageway) contains geometry that we are not able to use for the transport network but can use attributes for. Attributes include the number of lanes, whether the centrelines is in a urban or rural location, and the start and end measures for the carriageway feature. The link between the two polyline layers is a field called road_id, which forms a many:many relationship between the map layer and the carriageway. An example is shown below (3 Roadmap features, 5 Carriageway features):Roadmap (modified, x3)Carriageway (x5)Our issue is there is a slight offset between the modified Roadmap geometry and the Carriagew
I have Roads which are at the borders of municipalities (polygons). But for many of these road segments, the LEFT/RIGHT municipality fields values are wrong. I am looking to rectify that data. I have looked into using LeftRightSpatialCalculator and NeighborFinder transformers but they don’t seem to be helpful for identifying which municipalities are on the LEFT and RIGHT side of each segment. Please suggest, how do I accomplish this?
Hello , I got error from Python caller .i would like to get all paths from start node to end node then I have written this script but I got Ann error . could you please help me to fix this problem ?import fmeimport fmeobjectsimport networkx as nxclass FeatureProcessor(object): def __init__(self): self.graph = nx.DiGraph() self.start_end_pairs = [] def input(self, feature): start_node = feature.getAttribute('start_node') end_node = feature.getAttribute('end_node') arc_id = feature.getAttribute('arc_id') self.graph.add_edge(start_node, end_node, arc_id=arc_id) self.start_end_pairs.append((start_node, end_node)) def find_all_paths(self, start, end): return list(nx.all_simple_paths(self.graph, source=start, target=end)) def close(self): for start, end in self.start_end_pairs: all_paths = self.find_all_paths(start, end) for path in all_paths: feature = fmeobjects.FMEFeature()
Hello everyone, I’m currently working on a project where we have 3D mesh models (SLPK or 3DML) and I’m looking to convert these into point clouds. My goal is to use ArcGIS Pro with the Imagery Analyst Extension to extract and classify all tree points. We’ve had great success using the Tree Classification deep learning model with LiDAR data, and I’m curious if this approach could help us save costs by not needing to collect new LiDAR data when we already have 3D mesh models from the same year to convert 3D mesh to point cloud. Has anyone here had experience with this type of conversion? Any insights on the process, potential challenges, or tips would be greatly appreciated! Thank you in advance for your help!Best regards,Reno
Hello , I got error from Python caller .i would like to get all paths from start node to end node so I have written this script but I got an error . could you please help me to fix this problem ? import fmeimport fmeobjectsimport networkx as nx class FeatureProcessor(object): def __init__(self): self.graph = nx.DiGraph() self.start_end_pairs = [] def input(self, feature): start_node = feature.getAttribute('start_node') end_node = feature.getAttribute('end_node') arc_id = feature.getAttribute('arc_id') self.graph.add_edge(start_node, end_node, arc_id=arc_id) self.start_end_pairs.append((start_node, end_node)) def find_all_paths(self, start, end): return list(nx.all_simple_paths(self.graph, source=start, target=end)) def close(self): for start, end in self.start_end_pairs: all_paths = self.find_all_paths(start, end) for path in all_paths: feature = fmeobjects.FMEFeat
using the Autodesk AutoCAD Map 3D Object Data reader and setting the parameter to “Group by Entity” (this is so i can get all the objects with 1 reader). I have the autocad_map_odtable{} format attribute enabled. i then have a testfilter to get >0 to separate the features with od values. do i need to enable an extended data value to get the table? How do i get the OD table values for these features?spoiler. I already have the data.i ran the workbench but looked at the wrong output. by separating the data i already have the attributes on all features within the testfilter.
I have a set of records that read via SQLExecutor which includes a timestamp field (driver_date). This seems to be stored a “buffer” datatype. I don’t seem to be able to explode this field using the DateTimeExploder as it can’t autodetect the timestamp value as a date/time value. I’ve tried including a DateTimeConverter, but get the same result. Is there someway to convert the timestamp from “buffer” datatype to datetime?
Hi,I created new attributes in connection to a BIM project. Now I want to add these results back into my IFC file as a custom property set. I have been inspired by the 'AutoCAD to IFC Conversion Example', but my root IFC File is a little bit more complex then an AutoCAD DWG.I can write the attributes to the geometry, but, in my opinion, the result is on the false hierarchy level. The other custom property sets a stored as a geometry instance (Aggregate). So how can I write the property sets at the right place?For a better explanation, I add my Workspace and a screenshot from the transformation result. Thanks for your help!
Im begging for an answer about the question How can I convert a file 3dm (Rhino 7) into a file pln. (ARCHICAD)?
I am having trouble getting this converted to the right format. The times seem way off when I use the date time converter. This was a time stamp that was in a response message to a REST call that I got. Would anyone know how to prep these values + set up the date time converter correctly?“1722597785000” ← format of timestamp Thank you!
Hello , i have points and lines are topology connect together .i would like to find all paths possible in the network .i have used shortest path finder but it finds only the shortest path ,so i am looking for other solution to find all paths in the network between all points.i appreciate any help .Thanks in advance .FME 2021
I have a multiple choice question at first. Depending on the checked values I want to ask some follow-up questions. I only want these follow-up questions visible when the user checked that topic in the multiple choice question.Since I cannot use a condition on visibility like ‘contains’, I tried this by first using a scripted parameter.If the value is checked, return 1, else return 0.I then use this scripted parameter in the conditional visibility of the follow-up question(s).But.. this does not seem to work and affect the visibility.If I run the script, I can see the scripted parameter does work, it returns a 1 if needed and a 0 otherwise.But it does nothing for the visibility of the follow-up questions.Can this work? Or are the scripted parameters only calculated afterwards/during runtime and therefore cannot be used in conditional visibility of other parameters?I'm also seeing some new possibilties in 2024.1 (currently working in 2023.1) with the scripted selection. Would this solve
Something simple but can’t get it to work. I have a Field1 with two records. One record contains numbers as 205202021356 and the other record does not contain numbers as DAKLL. I have an attributeManager where I want to assign a value for the records that do not contain numbers and keep the value the same for the records that are numeric. In the AttribteManager transformer, this is what I have under the AttributeValue field 2 possible values:So if Field1 is not numeric, I want to assign NAIf it is numeric (contains numbers) then leave it with its original valueSample below are the records. I want to assign NA to record 2 and keep record 1 as is.Field1205202021356DAKLL When I run the workbench, it keeps assigning NA to both records, rather than to one record. Thank you.
Hi,I would like to convert an xlsm into xls so that I can then do a task chain. Is there a transformer or several that can help me ?Thank you for your help
Hi.I have a workbench equipped with several runners. I want to send myself an email upon completion of the workbench, detailing the duration each runner took. I implemented a DateTimeStamper at the Succeeded port for each workbench and attempted to merge this with the creation instance, but it failed to function as expected.I would like the result to include the duration each workbench ran and the total time upon process completion.Any help is greatly appreciated.
Hello experts,I need suggestions or some help on getting FME workbench to output 2 excel files based on a user parameter which the user will be asked to supply before the workbench begins to run.Both files will be the result of tracing a feeder (the user parameter) downstream from its origin at the feeder/hypernode point.The first file I am trying to output should contain something similar to the below.So up to column G is trace and H and I is result of spatial intersection. This is based on the above screenshot which shows the feeder extension (brown line). The hypernode is located at the zonesub (blue square) and then we want all reclosers (red and white circles) along the feeder to be captured and outputted as well as the fire polygon(s) the feeder intercepts.The second file I am trying to output should contain the ids of any spans/linear objects which follow downstream of the point object until the line comes to another point object (recloser) and then carry on with that device and
FME kullanarak cad dosyalarını gis dosyalarına nasıl dönüştürebilirim?
Hi folks, I’m trying to setup a writer to a MySQL database table with a calculated column. When importing the table from the data source, FME (correctly) ignores the calculated field, so when I look at the table’s attributes (screenshot below), the column is not listed. However, when I try to use the writer, the calculated field gets included in the generated SQL insert and so the write itself fails with an error that a calculated field can’t be written to:Error executing SQL query ('INSERT INTO `StageDate` (`Date`,`Year`,`MonthNumber`,`MonthName`,`Day`,`Weekday`,`WeekdayName`,`IsWeekend`,`AcademicYearCode`,`AcademicYearDescription`,`FiscalYearDescription`,`Checksum`) VALUES ('19000103','1900','1','January','3','3','Wednesday','0','1899','1899-1900','1899-1900',NULL),...: 'The value specified for generated column 'Checksum' in table 'StageDate' is not allowed.' Note the `Checksum` in the column list and the NULL at the end of the feature values. We use this same technique with an Oracl
Hello, A related question & answer to mine is here:However, in my case, the layer being updated will likely contain features already. In the DWG Writer, selecting to “Preserve Template File Model Space Data” will add data to the layer being updated, but of course will also preserve the existing features already present on that layer. This essentially is just adding more data to the desired layer (resulting in many duplicate features) - which I don’t want. I want to replace the features on that layer and preserve the features on the other layers. Because I want to preserve other layers as they exist already in the template, I can’t select to not “Preserve Template File Model Space Data” in the DWG Writer.What would be the best way to essentially replace the existing features in selected DWG layers?BTW, these layers are coming from an Enterprise Geodatabase.
Is it possible to write lines into IFC4x3 with FME and how to do that since IFC4x3 now supports lines?
Hi there,Today I noticed something peculiar when working with data from a PostgreSQL DB (that includes the PostGIS extension).Initially I used the PostgreSQL reader in an SQLExecutor to query for some specific data, and also included the geometry column 'standardized_location’ in the select statement.That seems to output the geometry column in a ‘Hex Encoded OGC Well Known Binary’ encoding. Using the GeometryReplacer I turned this back into a ~'fme geometry object’. If I then however filtered on the GeometryType, it shows up as a Polygon, where I knew in the PostGIS DB the standardized_location geometry column was defined with type ‘geometry(MultiPolygon, 4258)’.I then used the ST_AsEWKT(), ST_AsGML() and ST_AsGeoJSON() functions to return the geometry from the database in some different encodings. If I use the GeoJSON or GML encoding in the GeometryReplacer, the geometry does still show up as a MultiPolygon feature. Also the EWKT encoding depicted the geometry as 'MultiPolygon’.Furthe
Hello, I am struggling with conversion of several thousands of XML files (same scheme, but different attributes) in to single Excel/CSVThe tool works fine for single XML but not for multiple at once,The XML has nested levels so I am using xml_Id and xml_parent_id to navigate thru and join tohether with featurMerger tool.This is on the other hand the reason why I am struggling with the batch processing - since when multiple files are processed at once, the xml_parent_id is the same among files and the so data are ovewriting themself, or they are rejected in the feature merge with multi-reference error. Don’t you know if there os a way how to proceed? To run one by one, for example with Loop in ArcGIS works but it’s soooo slow. Thank you!
Hello, I’m trying to migrate data from a SQL Server 2016 spatial to a ArcSDE on SQL Server 2022. Using ArcGIS Pro 3.2 on same machine. I am using FeatureReader with schema and featureWriter with dynamic writer. I don’t get any errors but I get thousands of this warning:GEODATABASE_SDE Writer: Renamed user attribute 'attribute{109}.name' to 'attribute_109__name' based on format constraints for invalid characters, length, and caseIf this waring occure the feature with this schema will not be written to the database, so it should yield an error not warning. yield waring on FME version 2023.2yields none-traceable error in version 2024.1Anyway I can’t figure out what it means. Any clues?