Перейти к публикации

Мастер-формы Тимцентра в БД


Рекомендованные сообщения

Коллеги, добрый день.

Появилась задача получить мастер-форму ревизии от, собственно, самой ревизии. Отношение нахожу в таблице PIMANRELATION, все ок.

Но дальше по полученному тегу не могу ее найти в таблице PITEMVERSIONMASTER.

Ссылка на сообщение
Поделиться на других сайтах


16 часов назад, Geksa сказал:

Коллеги, добрый день.

Появилась задача получить мастер-форму ревизии от, собственно, самой ревизии. Отношение нахожу в таблице PIMANRELATION, все ок.

Но дальше по полученному тегу не могу ее найти в таблице PITEMVERSIONMASTER.

С BIRT играетесь?

 

В таблице PIMANRELATION:

 

RRELATION_TYPEU - по идее uid IMAN_master_form_rev Relation

RPRIMARY_OBJECTU и RSECONDARY_OBJECTU - одно из этого - ревизия(uid), другое - мастер-форма(uid)

Изменено пользователем lexx174
Ссылка на сообщение
Поделиться на других сайтах
1 час назад, lexx174 сказал:

С BIRT играетесь?

 

В таблице PIMANRELATION:

 

RRELATION_TYPEU - по идее uid IMAN_master_form_rev Relation

RPRIMARY_OBJECTU и RSECONDARY_OBJECTU - одно из этого - ревизия(uid), другое - мастер-форма(uid)

Вот, что удалось раскопать:

Из PImanrelation ссылаемся на Pform. А дальше от PForm либо ссылка на PItemRevisionMaster, либо на отдельную таблицу для своего кастомного класса хранения.А в какой таблице узнать тип мастер-формы? Чтобы знать, доставать данные из встроенной PItemRevisionMaster или из своего класса хранения?

Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, koner сказал:

а чо bitr прям с БД на прямую работает? 
а как же бизнес логика...

ну лично мне не для birt)

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, koner сказал:

а чо bitr прям с БД на прямую работает? 
а как же бизнес логика...

Да, работает.

Бизнес логика - в ряде случаев костыль и тормоза (для больших отчетов или специфичных запросов).

 

 

1 час назад, Geksa сказал:

Вот, что удалось раскопать:

Из PImanrelation ссылаемся на Pform. А дальше от PForm либо ссылка на PItemRevisionMaster, либо на отдельную таблицу для своего кастомного класса хранения.А в какой таблице узнать тип мастер-формы? Чтобы знать, доставать данные из встроенной PItemRevisionMaster или из своего класса хранения?

В моем ответе в принципе ответ на ваш вопрос.  в ссылается POM вы открыв свойство отношения IMAN_master_form увидите первичная ссылка - ваша ревизия, вторичная ссылка - мастер-форма.

 

В таблица IMANRELATION как раз хранятся PUIDы первичной и вторичной ссылки - RPRIMARY_OBJECTU и RSECONDARY_OBJECTU.

Отсюда и копайте.

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

 

 

Изменено пользователем lexx174
Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, lexx174 сказал:

Да, работает.

Бизнес логика - в ряде случаев костыль и тормоза (для больших отчетов или специфичных запросов).

 

 

в моем ответе в принципе ответ на ваш вопрос.  в ссылается POM вы открыв свойство отношения IMAN_master_form увидите первичная ссылка - ваша ревизия, вторичная ссылка - мастер-форма.

 

В таблица IMANRELATION как раз хранятся PUIDы первичной и вторичной ссылки - RPRIMARY_OBJECTU и RSECONDARY_OBJECTU.

Отсюда и копайте.

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

 

 

с IMANRELATION разобралась.

Это все понятно. Надо как-то дойти до класса хранения формы.

Была бы очень благодарна за запрос, я думаю, он бы ответил на все мои вопросы)

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Geksa сказал:

с IMANRELATION разобралась.

Это все понятно. Надо как-то дойти до класса хранения формы.

Была бы очень благодарна за запрос, я думаю, он бы ответил на все мои вопросы)

что вам надо получить под мастер-формой? ее puid? или что? если puid то это RSECONDARY_OBJECTU

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Geksa сказал:

Была бы очень благодарна за запрос, я думаю, он бы ответил на все мои вопросы)

select w.pobject_name from pworkspaceobject w
          inner join pimanrelation rel
            on w.puid = rel.rsecondary_objectu
          inner join pimantype t
            on rel.rrelation_typeu = t.puid and t.ptype_name='IMAN_master_form'
          where rel.rprimary_objectu='VdRlznd$FOoqlC';

в данном примере вытаскивается наименование мастер-формы ревизии, на вход дается puid ревизии

Изменено пользователем lexx174
Ссылка на сообщение
Поделиться на других сайтах
6 минут назад, lexx174 сказал:

что вам надо получить под мастер-формой? ее puid? или что? если puid то это RSECONDARY_OBJECTU

У меня задача - получить атрибуты мастер-формы. Не стандартного айтема, а кастомного. Со своим классом хранения. Через таблицу PIMANRELATION и ее поле RSECONDARY_OBJECTU я нахожу уид мастер-формы. Как теперь найти ее атрибуты?

 

Данное поле (RSECONDARY_OBJECTU) ссылается на поле PUID таблицы PForm.

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

 

 

Ссылка на сообщение
Поделиться на других сайтах
15 минут назад, Geksa сказал:

У меня задача - получить атрибуты мастер-формы. Не стандартного айтема, а кастомного. Со своим классом хранения. Через таблицу PIMANRELATION и ее поле RSECONDARY_OBJECTU я нахожу уид мастер-формы. Как теперь найти ее атрибуты?

 

Данное поле (RSECONDARY_OBJECTU) ссылается на поле PUID таблицы PForm.

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

 

 

выше привел пример как поулчить puid или наименование мастер-формы

Ссылка на сообщение
Поделиться на других сайтах

Если замороченно получается с вытаскиванием атрибутов, не проще ли дальше, имея puid мастер-формы получить атрибуты средствами ITK или JAVA?

Ссылка на сообщение
Поделиться на других сайтах
7 минут назад, lexx174 сказал:

Если замороченно получается с вытаскиванием атрибутов, не проще ли дальше, имея puid мастер-формы получить атрибуты средствами ITK или JAVA?

Не проще, т.к. мне нужно это сделать не заходя в Тимцентр, не создавая сессию.

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Geksa сказал:

Не проще, т.к. мне нужно это сделать не заходя в Тимцентр, не создавая сессию.

ну половина дела у вас сделано.есть puid мастер-формы.

Ссылка на сообщение
Поделиться на других сайтах
21 час назад, tuzik сказал:

похоже что pform.rdata_filec = ppom_class.pcpid
ppom_class.ptname - имя таблицы класса хранения.

 

огромное спасибо. Это то, что было нужно

Ссылка на сообщение
Поделиться на других сайтах

А кто-нибудь разбирался с правилами ревизионного конфигурирования через БД? В таблице PPSOCCURRENCE есть ссылка на сам айтем: RCHILD_ITEMU, а вот какую из ревизий брать..

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Geksa сказал:

А кто-нибудь разбирался с правилами ревизионного конфигурирования через БД? В таблице PPSOCCURRENCE есть ссылка на сам айтем: RCHILD_ITEMU, а вот какую из ревизий брать..

пишите в ЛС

Ссылка на сообщение
Поделиться на других сайтах
  • 2 года спустя...
В 17.10.2017 в 09:56, Geksa сказал:

А кто-нибудь разбирался с правилами ревизионного конфигурирования через БД? В таблице PPSOCCURRENCE есть ссылка на сам айтем: RCHILD_ITEMU, а вот какую из ревизий брать..

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

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • gudstartup
      @stanislavz вы уж сразу еще один контроллер закажите а потом этот доламывайте. а со старым комбинировать не пробовали? у вас там диск или ssd в качестве носителя? может hdd загибается а вы сразу в мат.плату полезли.
    • maxx2000
      Подушную малость. Чё там. Уже в упор научились резьбу резать без выходной канавки?
    • ispite
      Здравствуйте, не могу построить стандартную сетку, что не позволяет дальше провести расчёт. Получается сделать сетку "на основе кривизны", но солид отказывается считать, после нажатия кнопки "запустить исследование" происходит сбой. https://disk.yandex.ru/d/D8wvRbYMW1lWjQ
    • ddm
      изготовить по чертежу с последующим покрытием,цинкование ,по 1000 шт каждой позиции ,предложение отправить на почту qwer463@yandex.ru
    • sklide008
      И еще можно ли задать горчие клавиши на кнопки открыть, скрыть и тд?
    • sklide008
      Подскажите, пожалуйста, в инвенторе есть такой пункт упорядочи по алфавиту дерево. Здесь найти такого не могу, пытался treesorter ставить но он добавляет просто в папку а не сортирует в дереве. Есть ли такой макрос чтобы все детали в дереве по порядку и алфавиту шли?
    • stanislavz
      Есть станок с данным контроллером. Все работает. Недавно была проблема с передачей данных - установил запасной контроллер. А запасной контроллер сказал нет работе. Проблема была в программе компьютера для передачи данных. Грустно, досадно, контроллер был куплен как рабочий. Как бы и не горит, но необходимо поправить. Плата управления с процессором mc68020, память hm628128-10. Память буферным питанием от 3 батареек + 0,5 Фарада на плате как буфер для замены батареек на 1 сутки. Лежало долго, без батареек. Симптомы: После первого включения, в памяти были и программы и параметры (0 странность). Честно, удивило. Но - система жутко тормозит, отклик на нажатие кнопки 3-5 секунд. В таком режиме сумел закачать машинные параметры под свой станок. Но это заняло час.. 4 строки и ждет секунд 10 итд. Есть видео. Перекинул с рабочего контроллера, БП, плату плц, ээпром плц - все то же. Проверил осциллографом кварцы живые , частота есть, амплитуда хорошая. 1 странность - после манипуляций по замене батарейки, старые записи из памяти исчезли. Ничего не коротнул. Возможно 0,5 Ф был не заряжен. Там тоже необходимы сутки для зарядки. Но как оно было запечатоно до этого - мистика. 2 странность. Если плата лежит ночь без питания, только с буфером - потом 2-3 минуты работает хорошо. 3 аналогично работает 2-3 минуты если питание отключить и очистить питание памяти (выпаял 0,5 Ф буфер с платы) Проверка памяти на старте есть. Проходит хорошо. На зависает, на холодную пайку не похоже. Шевелил / двигал все. Да и не виснет, именно тормозит. При том если оставить на час - тоже все стабильно плохо. Если набрать быстро 5 символей- экран сразу пуст, но после задержки символы будут на экране. Заказал второй процессор и память. 10 штук. Подавал прямо 5 вольт на память - все так же. Токи потребления между плохой и хорошей платой смогу проверит.    
    • brigval
    • Ветерок
      "увеличение оптимизации". Оптимизацию невозможно ни увеличить, ни уменьшить.
    • gudstartup
      @boomeeeer может от страны зависит
×
×
  • Создать...