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

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

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

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

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

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

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

Группировка материалов в карте

Автор Александр Волков, 30.05.16, 14:56:28

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

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

Александр Волков

У в карте меня выводятся все материалы из класса сборки. Мне нужно сгруппировать одинаковые материалы, вывести название и количество.
В какой функции это нужно делать?
И как добавить строку в блок подстановок в функции? Потому что я не знаю сколько будет материалов. И по количеству неодинаковых материалов нужно добавить строки.

Вячеслав

Я так понял, что речь идет о вспомогательных материалах.
Проще всего группировать вручную в дереве.
Если такой вариант не подходит, то делите на подклассы, прописывайте правила вывода их в настройках дерева техпроцесса.

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

tur

Цитата: Вячеслав от 30.05.16, 15:16:40
Я так понял, что речь идет о вспомогательных материалах.
Проще всего группировать вручную в дереве.
Если такой вариант не подходит, то делите на подклассы, прописывайте правила вывода их в настройках дерева техпроцесса.

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

Для начала нужно определить правила группировки, а потом уже смотреть как их выводить в карту.

Вячеслав

Цитата: tur от 31.05.16, 10:23:20
Для начала нужно определить правила группировки, а потом уже смотреть как их выводить в карту.

Ну я полагал, что эти правила топик-стартером уже определены, как минимум... ::)

Антон_

Смотря какая карта. Можно например навесить на операцию скрипт, в нем создать несколько итераторов материалов в данной операции и по каким либо критериям менять позиции в операции между этими материалами
если правильно помню

set v_obj=obj.vrGetObjectVector
set it_mat1 = v_obj.vrCreateIterator("material", obj,true)
set it_mat2 = v_obj.vrCreateIterator("material", obj,true)

do while it_mat1.vrnext
  set mat1=it_mat1.vrgetobject
  do while it_mat2.vrnext
    set mat2=it_mat2.vrgetobject
    if mat1. чего нибудь mat2 then res = obj.vrchildmove(mat1,mat2,false)
    end if
  loop
loop

функцию поместить в функцию поля, где отображается информация об операции, например ее наименование

это по памяти, скорее всего с ошибками, сейчас нет под рукой документации((


Антон_

забыл еще упомянуть, при данном способе такой же порядок отображения материалов распространиться на все последующие карты в комплекте. То есть есть карты карта1, карта2, карта3, карта4, карта5 и мы написали этот скрипт в карте3, то в картах 1 и 2 материалы будут отображаться в стандартном порядке, а в картах 3,4,5 будут отображаться в порядке, который был сформирован в карте3.

Александр Волков

Всем спасибо. Оказалось, что у материалов в сборке уже есть нужный атрибут, надо было просто его вывести.