A space to discuss FME Form
Recently active
I am updating a table in a database where I must insert, update or change value of one attribute of a record when it is deleted from source (ex: field ISDELETED is changed from N to Y when record is deleted). So in ChangeDetector I am connecting the destination table to "original" port, and new incoming data to revised port.The issue is that the attributes coming to "revised" don't have the same name like the ones from destination table, and I am using in my script a SchemaMapper tomap Source Fields to Destination fields (as the names can change and customer has access to the table used in SchemaMapper only).So because the attributes have different names, I don't think that the ChangeDetector will do it's job correctly. I attached a dummy script and dummy data to this issue.Can you give me some help here? Thanks.
I want to calculate the volume of ditches. It is do-able to determine the shore heights of these ditches, but it is not very precise. A better way would be to do a fill sink analysis. As far as I know FME has no way of doing this?
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 have a bunch of statistics that I want to add to a HTML report similar to the image below. Not all columns have the same number of rows nor is each column / row related across the table. So was thinking that if I could create a table and each cell contain a list or similar. Any suggestions would be very much appreciated Thanks Dean
I have an ArcGIS feature layer with two tables that I'd like to backup daily. I've created workspace with two readers and two writers. The Esri ArcGIS Online (AGOL) Feature Service Readers read from the two tables. The Esri Geodatabase (File Geodb) Writers write to the same geodatabase (.gdb) folder. This works great. For the GeoDB writer I'm using Insert for the feature operation to append rows onto the destination table. Since I'm writing to the same GeoDB folder, over time I don't think that this is not the same as creating a copy. I'd like to try to append the date to the file name such as fileName_220503 for today so that I have a new gdb folder. I'm not sure how to do that. Ideally, storing no more than 30 or 60 days of backups would be best. So, maybe appending a number (instead of a date) would be better. I plan to run this from the Windows Task Scheduler (which I have not used before). I'm not sure how to limit the number of backups to 30 or
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, Is it possible to make a Intersection and set that, work just if the two, or three pologon contains other by 90%. Thanks
Hi, I'm creating a workbench to make some audit on GIS files. First my workbench list all files that are into a directory (including subdirectories).Then, I filter theses files to keep only the one I want to audit, for exemple every shapefiles.Finaly I get the schema of every shapefile with the <schema> output of a FeatureReader. It works really great but if I have two files with the same name in two different subdirectories my problem comes : only 1 schema is kept.That's how FME works, it unions feature types with the same name. But in my case, I need to analyse the schema of every layer even if they have the same name. This is an audit so these file can have different schema even if they have the same name. I want to have an automatic workbench and not having to create one FeatureReader for each directory. Is there anyone with an idea on how to get the schema of two files with the same name in two different subdirectories ? Thank you
Is it possible to draw a 'centerline' for a polygon but on e.g. one third from the outer edge instead of half ways?
hi i have some features contain arabican numbers (۰۱۲۳۴۵۶۷۸۹), how to convert any arabic digit to english (0123456789)? for example all of ۱ converts to 1, or all of ۲ converts to 2 and so on thanks guys
Hello, I created a batch file and need to run it through a task schedular. The file gdb needs to change in this batch file on every run. I am not sure if is there a way to loop through a folder and select the current gdb from the folder. "C:\\Program Files\\FME\\fme.exe" "D:\\Workspace_features\\Country_NEW_APM updates_FeaturesOnly.fmw" TRANSACTION_TYPE_GEODATABASE_SDE "VERSIONING" VERSION_GEODATABASE_SDE "DBO.SarahS_APM_edits_Country_006" geodb "G:\\APM_DOWNLOADS\\Country\\Country_Bulk_2022-05-01_22-43-59\\Country_Bulk_2022-05-01_22-43-59.gdb"PAUSE Any advice and suggestion would be greatly appreciated! Thanks, Sarah
Hallo FME Community, I am trying to convert ArcSDE to DWG file. A DWG template is available for this, which must be applied to the points (See picture 1). in my file there is a column named autocad_block_name. this column defines which symbol in DWG template has to be applied to which point. one layer can contain two symbols. (See Picture 2) Other column is autocad_layer sets the name of the layer in writer. the DGW Template contains 250 layers and each layer contains a symbol. from these 250 symbols we only need 40 symbols. what problem is that my result contains all layers of DWG_Template and autocad_layer column. I want my result to only get the layers that are in my autocad_layer.
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 have a series of fillable PDFs that are used by stakeholders to apply for a permit. Another form in the series is used by stakeholders to report back on the activities of that licence. Can FME transfer the information in these forms into a used database
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
Hi everyone, I'm currently trying to decrease the size of different file consisting of line and polygon geojson. After reducing the number of attribute and the name to a minimum, I'm looking to reduce the coordinate lenght of the those file. I used the generalizer to decrease the number of coordinate being ouput by the line and polygon features. The other thing that would really help is to reduce the number precision or lenght of the number. I've tried to use the coordinaterounder transformer, but it those not remove the number itself. From what I've read, only a python caller could round element in a list. If I choose this way, would I have to use a jsontemplater to format my geojson. First, would it be possible to round the coordinate output directly in the geojson writer? Second, what would be the script to add in python caller. I'm very new to python.
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
I am not able to connect to a SFTP server from the application. I can putty into my FME server and connect to the SFTP server, but I am not able to connect from the FTP caller within a workbench. I am trying to connect using ssh in both scenarios, but from the workbench I get a "login denied" error.Version 2017.0
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