Using transformers to modify data.
Recently active
Hi,Something looks to have changed on the ESRI side on how they are serving out the tiles for the basemap. Im getting alot of 301 blank tiles and have replicated it with Safe on live chat but ended up asking if there is anything else they can help with???? This looks to be a issue but i'm guessing ESRI will say update the library and it works but the functionality is coded into the transformer so should it be Safe? You dont need to do anything special, just add a esri leaflet and preview in browser. Could I ask if anyone else is also experiencing this? Thanks
Hi All, i am trying to create some statistcis (records counts) on 10 fields in a table. I dont want to use multipule filters if i can avoid it. I want to find out how many rows in the table have valid values such as ie Depth <> "-99, NULL, BLANK, 0) ie Invert <> "-99, NULL, BLANK, 0, 0.00) ie Diameter <> "-99, NULL, BLANK, 0,) The TestFilter looks promising except the test condtions are If, Else if, Else. I want the test conditions to be IF, IF, IF. ie currenlty the test filter allows IF Depth <> "-99, NULL, BLANK, 0) Else if Invert <> "-99, NULL, BLANK, 0, 0.00) Else Diameter <> "-99, NULL, BLANK, 0,) i would like it like IF Depth <> "-99, NULL, BLANK, 0) -- port these to statscalc IF Invert <> "-99, NULL, BLANK, 0, 0.00) -- port these to statscalc IF Diameter <> "-99, NULL, BLANK, 0,) -- port these to statscalc is there another way im missing ? Many Thanks Steve
I have run some stats on a dataset where features fall into a specific polygon and have the count and the category. I now need a list that I can bring together in a single concatenated value that is {count1, cat1, count2, cat2, count3, cat3} The problem is that the number of the categories varies from polygon to polygon. The approach so far is statistics calculator => list builder => list concatenator (using category) => list concatenator (using count) which gives me two lists, comma separated but need to being them together. with the resultDoes anyone have any suggestions on how to bring together?
I am using a statistics calculator for a max value and then use the counter to proces new features which receives the new value thats Counter start = @value()+1. However it keeps failing due to an INVALID_PARAMETER_COUNT_START. I can't figure out why it fails. I tried setting the scope to global or local but it just doesn't want to work. So does anyone have an idea on how to avoid the Counter and get the same result? My thanks in advance! - Zoë
I have a dataset that has been collated daily over the past year but a crucial attribute hasn't been collected which would have taken the submission date of the record and looked back to see if any matching records by Name over the last 10 days and then if true write a True or false into an attribute.Is there an easy way run/play back through the dataset by day and calculate the True\\False attribute and then add to the result, I need to consider all dates cumulatively so the first date I would be just records for that day then 2nd date would be the processed records and the records for the next date etc.It feels like it should be quite a simple thing to do but I can't get my head around it at the moment, any help would be much appreciated. Many Thanks Tom
Hi all, I'm trying to download a file from a secure url using MOVEIT platform. The URL for the file looks like: https://moveit.alleghenycounty.us/download?arg01=file859046970&arg02=124162592&arg03=b24db17e945a7f9aeee83c81d52cbc The site uses a secure login and I have username and password The first step in the workflow is to download a .xls file. Do I start the workflow with an HTTPCaller or do I need a reader first? Any help would be greatly appreciated! -Jason
Hi All, the attached screenshot explains a lot so might want to check that out first. My problem is that I have successfully set up a homemade 'file watcher' where we can drop various files into one folder to be sorted and moved to their correct folders. All this is doing is saving a lot of manual drag and drops but there's a lot of them so it's quite useful (if I can get it to work). As you can see in the screenshot, the first 4 files sorted just get copied back out and that works perfectly. The 5th, an xls file called 'covid vaccine data', needs to be read in and the records written back out as a csv before being copied elsewhere. You can see that I attempted to use a Feature Reader but the records come out blank so the writer at the end writes out 1,274 blank rows. Any idea how to make this work so I can get that file, read in the actual data, and write it back out? It feels like I'm close but it sure isn't working yet :) Thanks in advance,Ian
I'm trying to move address points from essentially rooftoop locations to the curbside of the address automatically (working with about 10,000 points) I've got the polygon parcel data, the address point data (contains which side of road the point is located on, but is the only layer I have with this information), and the road polyline. I thought the best way to set this up would be to move the address points within its containing parcel to the closet edge of the parcel it's contained in. However I think there would be quite a few scenarios where it wouldnt move the point to curbside and so I'm trying to figure out if that is the cleanest approach and how I could set that up, or if theres a better idea. I've added a picture of the layers I'm working with and how I want the points to appear. Ideally I'd want the points moved to where the end of where I've drawn out the red line would be the ideal goal, however if I were to move points to closest edge of par
I sometimes use a FeatureJoiner to correct data fed into the Left port. I use a StringConcatenator and JSONFragementer to generate the corrections, which are fed into the Right port. The FeatureJoiner's Join Mode is set to "Inner"; Join On specifies an Attribute from each feed that match each other 1:1; Attribute Conflict Resolution is set to "Use Right". What I find is that conflict resolution is NOT applied Feature-by-Feature; it's applied to the entire set of joined Features. So, if none of my correction Features correct a particular Attribute in the Left feed, all of the Left Attributes bearing that name are passed through intact. But if even one of my correction Features corrects a particular Left Attribute, the remaining correction Features will replace the value of their corresponding Left Attribute with "<missing>". To avoid this, I have to add that Left Attribute - corrected or not - to every Feature in the StringConcatenator; what a
I already came quite far with the following post (I hope and think) https://community.safe.com/s/question/0D54Q000080hHLnSAM/dgn-to-dwg-conversion especially with the post of lenaatsafe. I think there are probably two important main steps to do: 1) Create a template file which is needed for converting the shared cells to autocad block (in my case I try to make a template file based on a cell dgn library)2) the actual translation between the source data (a dgn file with cells) and a dwg writer. Based on her post, I think I managed to create a nautocad template file based on the dgn cell library. See below image in how I have created the template file. I think the template file has blocks, since next to the autocad_block_name that I have defined in the attributemanager, the autocad_block_number is added automatically added in output template dwg file (see image below) and for example 27 (as in the image below) for all the autocad lines that define water. However when I use this template
While reading data from Smallworld, FME translation is terminated abruptly by throwing error "Error running translation." in the translation log. Generally if there is any issue with source, data then FME writes an error, skips the record and move forward. But here in this case after the error translation is stopped with error message. If the data come out of reader, we would be able to handle it by some logic. However, in this case data is not coming out of reader. Are there any settings in FME such that we ignore such records and move forward? I have already tried setting Continue translation in Rejected Features handling. It dis not work. Any ideas on this are highly appreciated. Kindly help .. Thank youSiva Bulusu
Hi all,Just taking my first steps with FME. I am using the FTPCaller to download two .zip files that are provided on a weekly basis. When I specify an existing folder everything works fine. However, I'd actually like to download the .zips to a folder whose name is actually the date on which the download took place. However, when I try and incorporate this into the FTPCaller's 'Target File' path (e.g. C:\\Downloads\\@DateTimeFormat(@DateTimeNow(),%Y_%m_%d)\\@filename) the translation fails as the file is unable to be written.If the FTPCaller is unable to create a destination folder on the fly, how would I go about creating the folder?Any suggestions appreciated!Thanks!!
Hello, Could someone provide some information on how i would go about breaking apart a polygon based on the number of vertices the polygon has. It has to be similar to the ST_Subdivide postgis function. This function breaks the polygon into smaller polygons at right angles. @Takashi Iijima @davidmelanconasters
Hi Team, I have a large map which has a route on it, I have buffered the section to widen the path and would like to know how to snip the map section out. Also how to adjust wider or smaller on the buffered route.
Which i then replace with regexp.How can i have it just yield following result? "amount" : 10000 I'd like to have it solved inthe Templater rather then resorting to regexp clean-up. Tx in advance to all.
I'm doing a change detection on a date field from 2 sources. One source always includes time even if they are "000000". The other source appears to be strip those 0's. How can I add the hours minutes seconds to the records that are missing them? Do I need to filter for the records missing time values before adding the 0's. I will attach an image with the "J_NotifyDate" column missing time if they are 0's
Hi, I thought this would be easy but it's starting to look like it's not even possible. For each feature, I want to copy the contents of a list attribute from the previous adjacent feature (-1). It is possible to create a new attribute and copy an adjacent attribute this way, but since you cannot just create a "list" attribute in the AttributeManager, this doesn't seem possible. Is there a way to achieve this? I have also looked at the ListCopier, but it cannot access adjacent features since that functionality is only available in the AttributeManager. Is it possible to access adjacent features via Python? If that were possible, maybe Python could provide a solution to this problem. Thanks.
Hello,I am using Dissolver to remove common boundaries and create larger areas based by an attribute.Next step was to calculate the areas of areas from which I created the large ones - DONE (Accumulation -> Attributes to sum).Now I would like to create a list of some attributes from small areas and put them in another attribute separated by comma ( ex: name, id of old small area).Can we do this in Dissolver? Thanks!Nicu
Hi! I'm trying to connect points to each other using lines. The points are in two seperate postGIS datasets, but have an ID-value in common. So I would need help to join points based on a common field / attribute. Does anyone know how to do this? I have successfully done this in QGIS using the Hublines tool. https://docs.qgis.org/testing/en/docs/user_manual/processing_algs/qgis/vectoranalysis.html#qgishublines
Hello! I've been working on a project for a few weeks now and finally got a good enought network. Now I want to calculate the distance from every school to every adress point. This is to later create polygons from set distances. Is it possiable to do this in the same shortest path finder? I've been looking at list but can't figure out how to do it. Can anyone help me? I have attached my workbench and the data. Best regards Jesper
Hi there, I'm converting IFC to CityGML following the tutorial FME shared here: https://community.safe.com/s/article/bim-to-gis-intermediate-ifc-lod-300-to-lod-4-cityg. It is noticed that the representation of WallSurface is quite strange (red lines on the surface). May I know the reason and if there are any solution to make the wall surface shown as smooth surface like others? Thanks in advance!
I have an Edge line (like a polyline) and would look to trim some length in feet off the beginning of the line, with the rest of the line remaining intact as is. Is there a transformer that can do this?
I need to update a text file which contains the settings for an executable tool. It would be really useful if I could automate this in FME. The text file is saved in UTF-8 format and for example, lines two and three contain the variables for START_TIME and END_TIME: START_TIME=2005/01/01 00:00END_TIME=2007/12/31 23:59 How can FME be used to change the two dates, 2005/01/01 and 2007/12/31? Thank you, Rob
In a linked custom transformer, $(FME_MF_DIR) is resolved to the path of the folder of the installed custom transformer and not to the path of the workspace. My workspace is in C:\\workspacesbut $(FME_MF_DIR) is resolved to:\\\\filer25\\users\\uxxxxx\\FME\\TransformersI have to use a PythonCaller in the custom transformer to get the value resolved to the path of the workspace. In a PythonCaller, FME_MacroValues['FME_MF_DIR'] is resolved to the path of the workspace and not to the path of the linked custom transformer.Is this as designed, or is this a bug?