Сколько каждый конструктор сделал форматов?

Автор Avangard, 21.11.11, 13:26:02

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

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

Avangard

Здравствуйте, уважаемые форумчане.

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

Синтаксис SQL мне известен хорошо.

А вот как хранится информация в базе непонятно.

Интересует:
Как информация хранится в базе?
В каких таблицах есть поля "Разработал", "Формат", "Количество листов"?
Как таблицы связаны между собой?

Заранее благодарен.

P.S.

Возможно у кого-то есть методический материал
по курсам Лоцман: Администратор
или Лоцман: Прикладное программирование.


Maxxx

Посмотрите в папке с установленным ЛОЦМАНом файлик Reports.chm. Это и есть справочная информация для создания отчетов.

Avangard

Этот хелп я уже читал.

Информации все равно мало.

Мне бы разобранный пример
от начала и до конца,
чтобы каждое действие описано было.

Спасибо, что не остались равнодушным.


Maxxx

 "Разработал", "Формат", "Количество листов" - это у Вас атрибуты у документа в базе данных?
И я так понимаю что тут в условии должно быть - сколько сделал конструктор за определенный период времени. И смысл данного отчета не совсем понятен, ведь конструктор может создать документ(без файла), заполнить атрибуты, а при этом файл создавать позднее...

LDL

Зачем изобретать, пользуйтесь существующим "\ASCON\Loodsman\Client\Модуль расчета форматов\CalcFormat.pgi"

Дмитрий22

Этот модуль работает только на простых форматах типа А4, А3, А2. Если формат будет А2х3, А4х3 то надо что-то писать.

l2qwe

rvwVersions (вьюшка со всеми объектами, по типам отбираем нужные документы)
rvwAttributes (вьюшка с Атрибутами связываем по id и по названию атрибута достаем значения)

l2qwe

нечто вот такое получается
select tA.value, COUNT(tV.id)
from rvwVersions tV
inner join rvwAttributes tA on tA.idversion = tV.id
and tA.name = 'Формат'
where tV.id in
(select tV.id
from rvwVersions tV
inner join rvwAttributes tA on tA.idversion = tV.id
and tA.name = 'Разработал'
and tA.value= 'Иванов В.В.'
where tV.type in ('Сборочный чертеж', 'Чертеж детали')
)
group by tA.value

Avangard