07-05-2017 05:59 AM
I have 2 polygon vector layers.
The first one is a Parcel layer and the second one is a Cadastral municipality.
In Parcel layer there is attribute Cadastral_municipality_ID, but there is no atribute Cadastral_municipality_Name.
In Cadastral municipality layer there is both Cadastral_municipality_ID and Cadastral_municipality_Name attributes.
Is there any way in GeoMedia to update attributes in Parcel layer with Cadastral_municipality_Name from Cadastral municipality layer
07-05-2017 06:53 AM
Use a analytical merge query to match the parcels.
Then use the command to fill attributes (i guess, it's only available with GM Professional or Advanced, or even only Professional) to transfer the values.
07-10-2017 05:00 PM
GeoMedia offers a powerful Analysis command called Aggregation which is very useful for summarizing attributes from one feature set or query of detail items to another feature set or query of summary items. The most standard and common use of aggregation is to summarize from many detail items up to fewer summary features. For example you might aggregate information from points representing cities up to Country area polygons to sum the detail city population values; While the Aggregation command is easiest to use when aggregating from many details up to fewer summary features, you can (with certain limitations) use it in the opposite direction. That is to migrate information down from larger detail items to smaller summary features.. This however is NOT the easiest way to learn the command.
Here’s an example workflow that assumes that the parcels may overlap multiple municipality (MUNI) areas.
We can obtain a concatenated list of the MUNI names or we can use an extra query or 2 to LOOKUP the MUNI name of largest overlap.
Now we must relate the detail items to the summary items. This can be done spatially, using attribute relations similar to a join or both spatially and using attributes. In this case recall that each spatially intersected geometry has both parcel and MUNI attributes. So we can relate the parcel ID between the detail and summary items.
You can now use the LOOKUP function to lookup the MUNI name that has the largest spatial intersection area value. The syntax for LOOKUP is:
LOOKUP(what, where, result)
In this case we are dynamically calculating the where using the AREA(Detail.IntesectionGeometry), then finding the condition as the MAX value, and returning the result as the desired Detail MUNI Name.
Note: The examples here are based on English USA regional settings which uses a comma as a separator. You may need to use a semicolon depending on your regional settings.
You might also build other expressions such as a COUNT(*) to count the number of spatial intersections.
To concatenate a comma separated list try:
If you expect lists that exceed 255 characters then you may want to CAST the Detail.Name to memo.
Since the Aggregation query is summarized to the Parcels, you can use the Aggregation query itself as input to the Vector > Update > Update Attributes command. In Update Attributes, if you go into the Expression for the field to be updated, you should be able to simply select the previously calculated value from the list of available attributes.