• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Номера эскизов в отчёте МК

Автор Chipollino, 26.03.15, 16:21:57

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Chipollino

Решили дополнить отчёт автоматическим выводом номеров эскизов (из атрибута caption) в отчёт, а не рисование этого номера на картинке эскиза, но встала проблема - через интерфейс поместить в блоке подстановок один атрибут над другим нельзя. Решил добавлять прямоугольник с текстом при выводе эскиза, но и тут не работает:
function FillAttr(start_x, start_y, clsAttr, obj)
  ' start_x,y - êîîðäèíàòà íà÷àëà âñòàâêè, clsAttr - àòðèáóò èç áëîê ïîäñòàíîâêè, obj - îáúåêò òåõíîëîãèè
  'çàïîëíèì ïðîöåäóðîû ïî-óìîë÷àíèþ
  set FillAttr = rptBuilder.rDefaultHandlers.rFillAttr(start_x,start_y,clsAttr,obj)

  set iRect = rptBuilder.rActiveBuild.rDstDocument.rActivePage.rCreateRect
  iRect.rWidth = 0
  iRect.rX0 = start_x
  iRect.rY0 = start_y
  iRect.rX1 = start_x + 30
  iRect.rY1 = start_y + 8.5
  iRect.rText.rText = obj.vrAttrByName("caption").vrValue
end function


Что я делаю неправильно, если у меня этот прямоугольник не рисуется вообще? Всю справку перерыл, но так и не понял, как созданный объект добавить на лист

Вячеслав

Не знал, что эскизы нужно нумеровать.
Обычно на карте МК с операцией по переходам и эскизами, эскиз идет вместе с операцией...

Chipollino

Бывает, что к одной операции несколько эскизов идёт и на один эскиз ссылаются в нескольких переходах - вот тогда без нумерации никак.

Так что нужна либо сквозная нумерация на весь ТП, или писать номер операции и номер эскиза (например "010 Эскиз 2"), но проблема в том, как его нарисовать поверх эскиза в отчёте.

tur

Как я понял атрибут есть - выведите его напрямую без функции, т.е. если он заполнен.

Chipollino

А куда его выводить? если добавить ещё одну строку выше эскиза, то чаще всего они будут на разных страницах располагаться, а по другому в блок подстановок не вывести (составной атрибут тоже не подходит)
Вот я и хочу дорисовать блок с текстом поверх уже нарисованного эскиза, но ни одна геометрия созданная на странице не появляется (пробовал и линии рисовать, и координаты вручную ставить в углу страницы). Может кт-то уже сталкивался с дополнительным построением в отчёте?

Chipollino

В общем нашлось решение. В поддержке подсказали заходить через класс подстановки cls.rSubst.rPage из входных параметров, иначе почему-то не выходит нарисовать на листе.
Теперь всё рисуется и выводится.