При указании ссылки на статью делайте след. проверку. Создайте рекурсивную ф-ю. Соберите в темповую таблицу tmpTb все статьи, что ссылаются.
Пусть ф-я называется Collect.
Например в статье X хотим указать ссылку на Y,
tmpTbl.RESET
tmpTbl.DELETEALL;
collect(X);
checking(Rec)
Код:
Ф-я collect(ParmCode)
LocRealTb.SETRANGE("refer",ParmCode);
IF LocRealTb.FIND('-') THEN BEGIN
REPEAT
tmpTb := LocRealTb;
tmpTb.INSERT; // если с самого начала все верноЮ, то IF не нужен
collect(LocRealTb.Code);
UNTIL LocRealTbl.NEXT = 0;
END ELSE EXIT;
А затем еще рекурсия
ф-я checking(ParamTb)
Код:
IF tmpTb.GET(ParamTb.Code) then error('dfdfdf');
IF ParamTb."refer" = '' then exit;
ParamTb.GET(ParamTb."refer");
checking(ParamTb)
только добавьте туда проверки на пустые значения и т.п.