В общем, такой код получился, все работает
X++:
public void update()
{
NVAOMAAirLines nVAOMAAirLines;
ttsbegin;
//Если изменился тип маршрута
if (this.RouteType != this.orig().RouteType)
{
super();
//Отбираем все рейсы, которые хоть как-то связаны с данной строкой и...
while select forupdate * from nVAOMAAirLines
where (nVAOMAAirLines.AirLinesOwner == this.Num
|| nVAOMAAirLines.AirLinesOwner == this.AirLinesOwner)
{
//Меняем у них маршрут
nVAOMAAirLines.RouteType = this.RouteType;
nVAOMAAirLines.doUpdate();
}
}
ttscommit;
}