|
11.05.2008, 11:40 | #1 |
Участник
|
Я только начинаю работать с Navision. И возникла такая задача:
Может быть задана группа бюджетов. Также задаем список бюджетов. Для каждого бюджета могут быть заданы статьи. Они могут заполнять друг друга по механизму автозополнения. Проверка на то, что статья не может автозаполнять непосредственно саму себя есть. Но нет проверки, что это может происходить косвенным образом. Например, если в 1-ой статье, указать, что она заполнит вторую статью, а во 2-ой, что она заполнит первую, то получится циклическая ссылка статьи 1 на саму себя. Так, вот задача: реализовать отчет, который выдавал бы список статей у которых есть циклические ссылки. Подскажите в каком направлении действовать |
|
12.05.2008, 11:25 | #2 |
Участник
|
При указании ссылки на статью делайте след. проверку. Создайте рекурсивную ф-ю. Соберите в темповую таблицу 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) |
|
25.07.2008, 14:37 | #3 |
Участник
|
Спасибо :-)
|
|