Загрузка данных в Вертикаль V3 из МиС

Автор tur, 19.05.09, 11:20:49

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

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

tur

Как вставить в техпроцесс написанный в Вертикаль V3 - ГОСТ на ТУ (по материалу) из МиС?
Можно вставить ГОСТ на материал и ГОСТ на сортамент, а ГОСТ на ТУ выводится в общем наименовании, но отдельно взять его и вставить в бланк техпроцесса не получается.

alx

ГОСТ на метариал - MIS.MATERIAL.DOCUMENT
ГОСТ на сортамент - MIS.SORTAMENT.DOCUMENT

Например, для "Медь цианистая техническая ГОСТ 10018-79" на ТУ есть документ "ГОСТ 10018-79 Медь цианистая техническая. Технические условия.". Его можно получитьпо псевдониму MIS.MATERIAL.DOCUMENT, т.е. это системой понимается как ГОСТ на материал.

Приведите пожалуйста ваш пример.

tur

ПРИМЕР

Есть материал из МиС
Круг 5 ГОСТ-2590-88/30Х13 ГОСТ 5949-75 ГОСТ 5632-72, из него:

ГОСТ 5632-72 - это ГОСТ на материал
ГОСТ 2590-88 - это ГОСТ на сортамент
ГОСТ 5949-75 - это ГОСТ на ТУ.

Необходимо чтобы в бланк техпроцесса попадал ГОСТ на ТУ отдельно без материала и сортамента, а он выводится только в общей группе с материалом, а как отдельную позицию его взять нельзя.

alx

В конфигураторе объектной модели ТП создайте строковый атрибут и в поле "Справочник" для него пропишите строку MIS.GOST_TU.NAME

tur

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

Вячеслав

Заинтересовался темой, попробовал у себя, но, к сожалению, тоже не получилось.

Есть ли где-нибудь перечень имен полей МиС, в которых хранится информация и данные из которых передаются в Вертикаль?   

tur

В конфигураторе объектной модели ТП создан строковый атрибут и в поле "Справочник" для него прописана строка MIS.GOST_TU.DISPLAYNAME, в Вертикаль попали данные
ГОСТ 5949-75 Сталь сортовая и калиброванная коррозионностойкая, жаростойкая и жаропрочная. Технические условия.
Технолог со своими правами удалить название не сможет.

Как получить ГОСТ на ТУ без наименования?

alx


tur

В конфигураторе объектной модели ТП создан строковый атрибут и в поле "Справочник" для него прописана строка MIS.GOST_TU.NAME.
При добавлении вышеназванного оператора, никаких данных по ГОСТ на ТУ в Вертикаль вообще не попадает!



alx

#9
Передачу данных проверили на ВЕРТИКАЛЬ V4 и V3, в обоих случаях работает, см. http://www.youtube.com/watch?v=klhCGVoxPVM
Какая точно версия ВЕРТИКАЛЬ и МиС (с какими SP) у Вас установлена? В любом случае Вам стоит написать в техподдержку.

Matthew

Доброго времени суток!
Буду очень благодарен, если кто подскажет, как сопоставить созданному в Кофигураторе Вертикали V3 атрибуту плотность материала из МиС'а. Плиз!)

teplinskiy

Цитата: Matthew от 06.11.09, 19:05:50
как сопоставить созданному в Кофигураторе Вертикали V3 атрибуту плотность материала из МиС'а. Плиз!

Пишите в поле "Справочник" следующее:
MIS.Material.Properties.PropCode[Здесь имя вашего свойства].Value

также, если значение свойства - это диапозон, то:
MIS.Material.Properties.PropCode[Здесь имя вашего свойства].MinValue
MIS.Material.Properties.PropCode[Здесь имя вашего свойства].MaxValue

Одна особенность...! Имя вашего свойства не должно содержать точек - "."

Matthew

Большое спасибо!!! Все получилось :)

tur

Доброго времени суток, господин teplinskiy!
Буду очень благодарен, если Вы подскажете, как сопоставить в Конфигураторе Вертикали V4 SP1 созданному атрибуту материала толщина листа, атрибут справочника МиС - толщина.

teplinskiy

Цитата: tur от 02.12.09, 12:50:43
как сопоставить в Конфигураторе Вертикали V4 SP1 созданному атрибуту материала толщина листа, атрибут справочника МиС - толщина.

Казалось бы, по аналогии с получением свойства материала, "толщину" (длину, ширину, диаметр) экземпляра сортамента удасться получить, прописав в поле атрибута "Справочник" так:
   MIS.SortamentEx.TypoSize.DefSize[Толщина].Value
но к сожалению эта возможность не реализована. Видимо разработчики посчитали получение отдельной величины из значения типоразмера "избыточным". Считаю, что они ПРАВЫ.

Для чего Вам необходимо получать из типоразмера отдельные величины?

А решение могу предложить следующее:
1) Получить значение типоразмера в атрибут, назовем его tipo_razmer - "Типоразмер", класса Вашего материала в ВЕРТИКАЛЬ, прописав в поле "Справочник" этого атрибута следующее:
   - MIS.SortamentEx.TypoSize
2) Добавить вычисляемый атрибут, назовем его tolsh_list - "Толщина листа". В поле "По функции" указать имя функции возвращающей толщину, путем обработки значения типоразмера, то есть vernut_tolsh
3) Добавим эту функцию, назовем ее vernut_tolsh

function vernut_tolsh(obj)

  if IsObject(Eventer) then
    set tolsh_list = obj.vrAttrByName("tolsh_list")   
    'Подписываемся на изменение атрибута получающего из МиС типоразмер   
    Eventer.AdviseOnChangeAttribute tolsh_list, obj.vrAttrByName("tipo_razmer")
  end if
 
  ' в случае если результат типоразмера "(толщина)X(ширина)X(длина)", то

  arr_typo = Split(obj.vrAttrByName("tipo_razmer").vrValue, "X", -1, 1)
                       
  vernut_tolsh = arr_typo(0)            ' (толщина)
'  vernut_tolsh = arr_typo(1)            ' (ширина)
'  vernut_tolsh  = arr_typo(2)           ' (длина)
   
end function

Одно "но", разделитель величин в типоразмере ("X") в справочнике встречается в верхнем и нижнем регистре, а также в аглицкой или кирилицкой транскрипции. Но думаю Вы с этим справитесь, доработав функцию. Для помощи воспользуйтесь справкой:
"c:\Program Files\ASCON\UniRefer 4.0\Doc\VBSCRIP5.CHM"

tur

Цитата: teplinskiy от 03.12.09, 15:59:42
Цитата: tur от 02.12.09, 12:50:43
как сопоставить в Конфигураторе Вертикали V4 SP1 созданному атрибуту материала толщина листа, атрибут справочника МиС - толщина.

Казалось бы, по аналогии с получением свойства материала, "толщину" (длину, ширину, диаметр) экземпляра сортамента удасться получить, прописав в поле атрибута "Справочник" так:
   MIS.SortamentEx.TypoSize.DefSize[Толщина].Value
но к сожалению эта возможность не реализована. Видимо разработчики посчитали получение отдельной величины из значения типоразмера "избыточным". Считаю, что они ПРАВЫ.

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


Переписать функцию, это хорошо, но забрать из МиС в Вертикаль весь типоразмер и дать возможность технологу править её, легче.

teplinskiy

Цитата: tur от 03.12.09, 16:37:55
Получение отдельной величины типоразмера (толщины) в технологический процесс - это требование стандарта предприятия.
Ну что же, встречается и такое. Примерное решение этой возможности описал выше.

Цитата: tur от 03.12.09, 16:37:55
Некоторые детали могут изготавливаться из отходов (обрезков) листа, а не из цельного листа. Знать размеры подобных обрезков невозможно, даже зная, заносить их в справочник, просто нерационально.
А какое отношение это имее к поставленному вопросу? В нем, насколько помню, Вы говорили о материале заведенном именно в МиС, и получаемом из МиС.
Об обрезках вы ничего не сказали, а также о том, что их заводить в МиС и не предполагается.

Цитата: tur от 03.12.09, 16:37:55
Поэтому считаю, что Вы неправы когда соглашаетесь с разработчиками.
Вы спрашивали не об обрезках!
Теперь представьте, что получаем из МиС типоразмер Листа. Стандартного Листа, заведенного с учетом ГОСТ. Хорошо, расщепили значение типоразмера на составляющие. Теперь они появились в составе атрибутов какого либо объекта (того же материала): толщина, длина, ширина. Зачем? Конечная цель какая? Использовать отдельные величины где-либо в расчетах? Выводить отдельно в технологическую карту?
Зачем, если есть значение типоразмера?
В этом случае Вы согласитесь с "избыточностью"?

Цитата: tur от 03.12.09, 16:37:55
Переписать функцию, это хорошо, но забрать из МиС в Вертикаль весь типоразмер и дать возможность технологу править её, легче.
Да, вариант. Но можно совсем обойтись без МиС: не забирать типоразмер, а сразу вводить значения величин обрезка.

tur

Доброго времени суток, господин teplinskiy!

Цитата: tur от 03.12.09, 16:37:55
толщина, длина, ширина. Зачем? Конечная цель какая? Использовать отдельные величины где-либо в расчетах? Выводить отдельно в технологическую карту?
Зачем, если есть значение типоразмера?
В этом случае Вы согласитесь с "избыточностью"?

Вы все время спрашиваете Зачем, Зачем, Зачем, я не обсуждаю стандарт предприятия, мне просто необходимо выполнять его требования, поэтому и был задан вопрос о толщине листа, получить полный перечень имеющихся атрибутов МиС просто негде.

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

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

Хотелось облегчить жизнь технологу и автоматизировать его работу и не заставлять "подгонять" имеющиеся данные, под требования СТП предприятия.

Вячеслав

Добрый день!

На вопрос: а зачем? отвечу: пример обозначения листовой заготовки в техпроцессах и прочих технологических документах:

б=36, 890х1280 (2), м.з.= ...., н.р.=....

Аналогично и по другим профилям есть особенности.

Что касается "обрезков", а на самом деле - ДЕЛОВЫХ ОТХОДОВ, то все данные по ним хранятся в МиСе, а в ЛОЦМАНе мы их указываем по связи "Изготавливается из..." для типа "Заготовка", обозначение и атрибуты типа "Деловой отход" получаем из МиСа, аналогично "Материалу основному"

teplinskiy

Цитата: tur от 04.12.09, 09:31:55
Вы все время предлагаете мне что-нибудь дописать в функцию, вставить атрибут, того и гляди скоро предложите самому переписать технологический модуль.

tur, для облегчения жизни Вашим технологам проделайте шаги из преложенных файлов.
Если будут вопросы спрашивайте, не стесняйтесь.