1. В шаблоне Excel у вас 7 ячеек по вертикали и одна ячейка по горизонтали, а в менюшках: 35 позиций по вертикали и одна по горизонтали. Уже несоответствие.
2. Далее, для горизонтали вы выводите термин из поля 999, в котором находится счетчик книговыдач (это бля обычной библиографической базы), естественно что там нет значения, которое у вас в справочнике горизонтали (*)
3. Формат вертикали у вас учитывает сравнение по первым двум символам кода ББК. Если есть укороченный код ББК в справочнике RZN_STF.MNU, то он выводится, а если его там нет? Тогда должен формироваться термин - "Прочие"
4. У вас правильный подход, но вы его не совсем до конца довели. У вас должен быть справочник, соответствующий вертикали шаблона (только 6 позиций как в таблице) и справочник для раскодировки индексов ББК в разделы знаний.
(if p(v621) then
if &uf('KRZN_BBK.mnu!'v621.2) <>'' then
&uf('KRZN_BBK.mnu!'v621.2)
else
if &uf('KRZN_BBK.mnu!'v621.1) <>'' then
&uf('KRZN_BBK.mnu!'v621.1)
else
'*'
fi
fi
fi)
в этом варианте в справочнике RZN_BBK.mnu - все 35 вариантов перекодирования индексов ББК в разделы занний, а в справочнике RZN_stf.mnu только 6 позиций, которые выводятся в таблицу
формат горизонтали должен быть приблизительно таким:
(if p(v621) then
'*'
fi)
Форматы я для наглядности отформатировал, что бы они были визуально понятны. Для формы их нужно будет свернуть в одну строку. Термин "*" (звездочка) - это чаще всего принятый термин для позиции "Прочие"
Редактировано 2 раз. Последний раз 21.07.2014 11:55 пользователем Gena.