Support Centre

How DAD-linked attributes get filled in

What makes a value copy across from your DAD model, when it happens — and why it never overwrites what someone has entered.

What this article covers

Some attributes on an activity are never typed in by anyone. If the activity is linked to an object in your DAD model, AE can copy values straight off that object — saving a great deal of re-keying, and keeping the activity and the model reading the same.

The behaviour catches people out in two places: on some nights nothing happens at all, and a value that changes in DAD afterwards does not follow through to AE. Neither is a fault. This article follows a single cable through a full cycle so you can predict exactly what will happen, and when.


Two kinds of DAD link

When a super user builds an Activity Type, an attribute can be pointed at the DAD in two different ways. Both are set up in the same place, and it is worth knowing which one you are looking at.

  1. A linked DAD attribute — an attribute that exists on the DAD object itself, such as a cable's size or insulation class. The value comes from the object's own attribute data.
  2. A DAD object property — not an attribute, but a property of the object itself: Object ID, Tag Name, Connector From and Connector To. Connector From and Connector To only mean something for cables; on anything else they stay blank.

Everything below applies to both, with one difference that matters once a value is already sitting on the activity — see Where the two kinds part company at the end. The storyboard follows the second kind, object properties on a cable, because that is where the surprises live.


What makes AE fill a value in

Four things cause values to be written:

  • An activity being created from its Activity Type.
  • The overnight maintenance run, which sweeps every activity of every Activity Type in the project.
  • Resync activities with template in the desktop — the manual "do it now" lever.
  • Syncing a change set for a single activity.
The rule underneath all four

AE only ever writes into an attribute that nobody has typed into, on an activity that is still open. A value you entered is never replaced, by any of the four. Whether AE will revisit a value it wrote depends on which of the two kinds of link it is — that is the last section.


A worked example: cable CBL-1234

One cable, on an Activity Type whose attributes include Tag Name, Connector From and Connector To. Follow it from set-up to a change in the model.

1
Set-up — before anything runs

The super user makes the link

On the Activity Type, a super user adds the three attributes and points each one at the matching DAD object property. Nothing is filled in at this moment, and nothing appears on any activity.

Linking an attribute does not fill it. It only tells AE where to look the next time something triggers a fill.

2
That night

The overnight run — and whether it runs at all

Every night AE makes a maintenance pass over your projects, and pre-populating these attributes is part of it. But the run is choosy about which projects it picks up. A project is only processed when maintenance is switched on for it, and one of the following is true:

  • it is an ops-and-maintenance project — those are processed every night, no other condition; or
  • the DAD model has actually changed since AE last synced with it.

So on a night when DAD has not changed, nothing happens for that project. That is not a fault — with nothing new in the model, there is nothing new to copy across. It does, however, mean that waiting overnight is not a reliable way to make a fill happen. Scene 6 has the lever that is.

3
Next morning

The values appear

On the activities for CBL-1234, Tag Name now reads the cable's tag, Connector From shows the equipment at one end and Connector To the equipment at the other.

Not every activity will have been touched. AE filled the attributes that were blank, on activities that were still open, that nobody had typed into. Everything else was left alone — which is exactly the intent.

4
Later that week

A field user types over one

Out on site, someone corrects Connector To by hand — the cable was landed on a different termination than the model shows.

That value is now theirs, permanently. No overnight run, no resync and no change set will ever replace it. This is deliberate, and it is the single most important thing to understand about the feature: what a person recorded in the field is evidence, and AE will not quietly overwrite evidence with model data.

5
A month on

DAD changes the cable's To end — and AE does not follow

Engineering re-terminates CBL-1234 in the model, so its To end now points somewhere new. The activity in AE keeps the value it was given. The next overnight run will not correct it, and neither will a resync.

The reason is the rule from the top of this page: AE fills blanks. Once an object property has a value on an activity, AE treats that value as settled. It cannot tell the difference between a value it wrote and a value that is now the truth on the ground, so rather than risk replacing something correct with something wrong, it leaves everything as it stands.

What to do: if the newer value is the one you want on the activity, enter it on the activity yourself. From that point it is a recorded value like any other, and nothing will overwrite it.

Worth saying plainly: this means an AE activity can hold a tag or a From/To that has since moved on in DAD. That is the price of never clobbering field data, and it is the trade we have deliberately made.

This is also the point where the other kind of link behaves differently — a linked DAD attribute will pick up the newer value, within limits. That is the next section.
6
Any time you like

"I don't want to wait until tomorrow"

Use Resync activities with template on the Activity Type in the desktop. It does the same work as the overnight pass, but immediately, and only for that Activity Type. The same rule applies — blanks only, open activities, nothing anyone has typed.

This is the answer to the most common complaint we hear: a super user has just added a DAD object property attribute to an existing Activity Type, waited overnight, and found nothing happened. Nothing was ever going to happen — DAD itself had not changed, so the overnight run skipped the project entirely. Resync is the lever, not the calendar.


Where the two kinds part company

Everything in the storyboard holds for both kinds of link but one thing: what happens to a value AE itself put there, when the model later changes.

  • A DAD object property (Tag Name, Connector From / To, Object ID) is filled once and then left alone forever — the behaviour in scene 5.
  • A linked DAD attribute is kept in step for longer. If the value in DAD changes, AE will bring the new one across — but only while the activity is still in an early state: created, allocated to a team leader, or assigned to a team member. Once it has moved past that (see Activity States), it is fixed.

What does not differ is the protection on your own data. Neither kind will ever replace a value a person has entered — that guard applies to both, at every state, for good.


At a glance

Trigger What it covers Replaces something you typed?
An activity is created from its Activity Type That activity No
The overnight maintenance run Every activity of every Activity Type in the project — but only on nights the project qualifies (see scene 2) No
Resync activities with template Every activity of that one Activity Type, straight away No
Syncing a change set The single activity in the change set No

The short version

  • Linking an attribute to the DAD does not fill it — something has to trigger the fill.
  • A fill only ever lands on an open activity that nobody has typed into.
  • Once a person enters a value, it is theirs for good — both kinds of link, every state.
  • A DAD object property is filled once and never revisited; a linked DAD attribute keeps following the model while the activity is still in an early state.
  • The overnight run skips projects where DAD has not changed, so waiting is not a plan.
  • Resync activities with template is the reliable "do it now".