Skip to main content

About the project

We have individuals checking traps and bait stations (points) located on different properties (polygons).

 

Every time someone goes to visit a property they create a point record so we know who has been there and when.

 

Output requirements

We need to fill out a word document (template given to us by the client) for each property we visit.

 

What I thought I could do to automate this process currently being filled out manually by the team lead:

Set up an FME process using the property parcels (polygons) and trap and bait station records (points). Use a PointOnAreaOverlayer and add the important point data onto to the property addresses. Each property has one form (filled out with a list of visit dates and who was there).

What the date output looks like 

I watched this really useful webinar. It's gotten me far considering I've never worked with word in FME before, but I still have some questions.

https://www.youtube.com/watch?v=5H1BsmXCTrY 

 

Question

Sometimes there are multiple point records if multiple field operators visit the same property on the same day, but at different times. What transformer/parameter do I use to initially collect all dates from the trap and bait station points add this data as a new field so it is connected to the property address, but then refine it to only have unique dates (eg if 10 field operators visited the property on 26/09/2023 there will be 10 points, but we only want 26/09/2023 to appear once on the word document). I currently have a PointOnAreaOverlayer feeding into an Aggregator (which concatenates the dates). Should I be using the advanced parameters > list in PointOnAreaOverlayer and then a listexploder? duplicate remover? I read the Help, but didn't fully understand how to use lists for my scenario. I haven't worked with lists before.

PoinOnAreaOverlayerAggregatorflow overviewI hope my screenshots and explanation are helpful/make sense. I can't make a video of the workspace or share it because it has owner information in it.

Different possible solutions, but one way to do this is:

  • Point DateTime to Date using DateTimeConverter.
  • Merge PropertyId to Points using the PointOnAreaOverlayer.
  • Keep only unique PropertyId / Date combinations using the DuplicateFilter.
  • Merge and concatenate Points to one feature using the Aggregator.

Thank you @nielsgerrits​ . That's just what I needed!

 

To refine this further is there a way to order the dates from oldest to most recent?

 

This is what the output looks like now.

date misorder


Thank you @nielsgerrits​ . That's just what I needed!

 

To refine this further is there a way to order the dates from oldest to most recent?

 

This is what the output looks like now.

date misorder

This can be done using a Sorter, but you need to format the date to fme date first. After the sorting format the date as you need it.


This can be done using a Sorter, but you need to format the date to fme date first. After the sorting format the date as you need it.

Excellent. Thanks @nielsgerrits​ . That did the trick.


This can be done using a Sorter, but you need to format the date to fme date first. After the sorting format the date as you need it.

Cheers :)


Reply