Select to view content in your preferred language

Option to set Relationship classes to Simple

701
1
09-02-2021 09:57 AM
DougBrowning
MVP Esteemed Contributor

After some testing I am pretty sure that 123 is setting the relationship classes it create to Composite.  Am I correct?  If so can we get an option to make them Simple?

I ask because we could use it to get around the calculations from Drafts issue.  

To review a Composite relationship class will "manage" the data.  Mainly if you delete a parent it will also delete the children.  This does seem to be honored in AGOL when editing hosted services.

A Simple class is considered "unmanaged" but that is not really true.  What Simple does is if you delete a parent all the children keys turn to Null.  (No idea why they would do that.  The big issue here is if you delete a few parents at once you can now not pull the children back apart.  Highly annoying BTW.)  The funny thing here is that AGOL is NOT honoring this rule like it does for Composite.  No idea if this is a bug or what.  Anyone seen anything about this?  Anyone know why AGOL is diff than SDE?

Since Simple in AGOL does not null keys we are able to merge children more easily.  

So can we can an option to set this for 123?

As a side note

I use this trick to get around this management.  If you are not using the globalid for the relate (which you really should not) I first calculate the key field of the parent to the word Delete.  Then replicate if you have one.  Then delete the parents - this way when it goes looking for children with the key delete it finds none and all good.  The just replace the parents.

If you do use globalid (using built in 123 classes for example) then I instead change the children parentglobalid field to a value like delete.   Then when I delete the parent it cannot find any children and leaves it alone.  Then when I replace the parent I can fix the parentglobalids to the new parent.  Of course the hard part here is having a way to tell the children apart.  Need to delete one parent at a time or have a second field to hold some info that allows you to piece it back together.  This is why I always have my own key field in my data that I pass down to all my repeats.   Saves my butt on the reg.

Hope that helps someone.

Any finally can we please, pretty please, get the relationship names fixed.  I have posted about this a few times over the years.  It would a easy fix not sure the issue here.

Here is the example.  The first 3 columns are 123 relationships classes.  The name is missing so it is impossible to tell my 3 repeats apart.  The 4th column is my own relationship with proper naming.  

DougBrowning_0-1630601744553.png

Thank you!

1 Reply
DougBrowning
MVP Esteemed Contributor

@Anonymous User   Checking in on the labels for relationships classes still being blank.  Got support calls on it again this week. 

We have many relates so it is super confusing for them to all show as blank in the table.

DougBrowning_1-1659467942104.png

As I posted before the label is not being filled out is all.  Should be a simple fix.  As far as I can tell it has been incorrect since v1.

DougBrowning_0-1659467923151.png

Please 🙂   thanks a lot

0 Kudos