Michael Miller<\/A> attributeassistant<\/P><\/P>Tengo Attribute Assistant configurado para copiar un ServiceID (campo Foreign Key) de una tubería de servicio intersectante a otra tubería de servicio intersectante. Esto funciona correctamente al colocar una nueva característica de tubería de servicio; sin embargo, obtengo resultados inconsistentes al dividir una característica existente de tubería de servicio. Si el campo ServiceID tiene un valor que no está vinculado a un registro, funcionará correctamente y copiará el ServiceID a la nueva característica de tubería de servicio que se crea por la división. Sin embargo, si el campo ServiceID tiene un valor que sí está vinculado a un registro, el valor no se copia.<\/P><\/P>En el código AA,<\/P>sourceFeature.get_Value(sourceField) devuelve null si hay un registro vinculado, pero devuelve el valor ServiceID cuando pongo un ServiceID que no coincide con ningún registro.<\/P><\/P>¿Es esto un error o alguien sabe alguna forma de solucionarlo?<\/P><\/P>Aquí está la configuración exacta:<\/P>
<\/P>
Tengo Attribute Assistant configurado para copiar un ServiceID (campo Foreign Key) de una tubería de servicio intersectante a otra tubería de servicio intersectante. Esto funciona correctamente al colocar una nueva característica de tubería de servicio; sin embargo, obtengo resultados inconsistentes al dividir una característica existente de tubería de servicio. Si el campo ServiceID tiene un valor que no está vinculado a un registro, funcionará correctamente y copiará el ServiceID a la nueva característica de tubería de servicio que se crea por la división. Sin embargo, si el campo ServiceID tiene un valor que sí está vinculado a un registro, el valor no se copia.<\/P>
En el código AA,<\/P>
sourceFeature.get_Value(sourceField) devuelve null si hay un registro vinculado, pero devuelve el valor ServiceID cuando pongo un ServiceID que no coincide con ningún registro.<\/P>
¿Es esto un error o alguien sabe alguna forma de solucionarlo?<\/P>
Aquí está la configuración exacta:<\/P>
Let me try to explain the data model a little better:
There is a table called P_ServicesSummary. This table gets a uniqueid called ServiceID generated by Attribute Assistant. There is a 1:M relationship between P_ServicesSummary (Origin) ServiceID (PK) to the feature class P_Service(Destination) ServiceID (FK).
If the P_Service feature that I am splitting has a ServiceID value that matches a ServiceID in the P_ServicesSummary, it will return null as the value; however, if I enter "dumb data" into the ServiceID field like "12345", so there isn't a matching record in P_ServicesSummary table. The get value will return the "12345" and copy it to the newly created service feature correctly.
I will send the log information shortly.
OK, so I tested changing this value from "False" to "True" and it still doesn't work. The fields that do not have a relationship class with a link record work correctly, but the ServiceID field doesn't. For example, my InServiceDate and InServiceYear will copy to the newly created split feature, but the ServiceID does not.
I was thinking of something else, but I do not see that option. Could you activate the log file and maybe that can help us narrow it down. How are you splitting the service line? Does not make sense that get_value is not getting the value when split, unless the new feature is not getting is ID carried over because of the 1:M relationship. If you split a main that has a valid ID, with the AA turned off, do the resulting 2 features have the same ID, hence violating the 1:M relationship?
The key "OnCreateWhenSplit" has it's value set to "False". Should I change this to "True"?
There is an option to suspend the AA on split, can you check that in the loaded.aa.config file?
Los miembros registrados pueden publicar, seguir actualizaciones y más. ¿Nuevo aquí? Regístrate gratis.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.