Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проблема с визуализацией въюхи / 10 сообщений из 10, страница 1 из 1
14.06.2017, 07:21
    #39471230
Валерий_72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
Добрый день господа!
У меня возникла проблема с визуализацией въюхи, а именно:
1. Раскатываю проект, в которой содержимое въюхи следующее
CREATE OR REPLACE
VIEW `v#project#materials`
AS
SELECT
rm.id AS `id`, -- Идентификатор материала
rm.c_project_id AS `c_project_id`, -- Идентификатор проекта/ИС
`f#project#get_project_which_project_belongs_to`(rm.c_project_id) AS `c_root_project_id`, -- Идентификатор родительского проекта
rm.c_nomenclature_id AS `c_nomenclature_id`, -- Идентификатор номенклатуры
rm.c_estimate_cost_without_VAT_per_unit AS `c_nomenclature_estimate_cost_without_VAT_per_unit`, -- Стоимость без НДС за единицу
rm.c_estimate_VAT_per_unit AS `c_nomenclature_estimate_VAT_per_unit`, -- НДС
(IFNULL(rm.c_estimate_cost_without_VAT_per_unit, 0) + IFNULL(rm.c_estimate_VAT_per_unit, 0)) AS `c_nomenclature_estimate_cost_per_unit`, -- Стоимость (в т.ч. НДС)
rm.c_amount AS `c_nomenclature_required_amount`, -- Необходимое количество материала для производства работ
IFNULL(pcm.c_total_correlated_amount, 0) AS `c_total_correlated_amount`, -- Сопоставлено материалов со сметой (суммарно)
rm.c_amount_by_which_formed_act_of_incoming_control AS `c_amount_by_which_formed_act_of_incoming_control`, -- ???
rm.c_document_code AS `c_document_code`,
rm.c_code AS `c_code`,
n.c_name AS `c_nomenclature_name`, -- Наименование номенклатуры
CONCAT(n.c_name, REPLACE(CONCAT(', ', n.c_unit, '.'), '..', '.')) AS `c_nomenclature_fullname`, -- Наименование номенклатуры
nc.id AS `c_nomenclature_certificate_id`, -- Идентификатор сертификата
nc.c_number AS `c_nomenclature_certificate_number`, -- Номер сертификата
nc.c_expiration_date AS `c_nomenclature_certificate_expiration_date`, -- Срок действия сертификата (до...)
CASE
WHEN (nc.c_expiration_date <= NOW())
THEN 'red'
WHEN (nc.c_expiration_date <= (NOW() + INTERVAL 7 DAY))
THEN 'yellow'
WHEN ISNULL(nc.c_expiration_date)
THEN 'red'
ELSE NULL
END AS `c_color_for_certificate`,
p.c_warehouse_id AS `c_project_warehouse_id`, -- Идентификатор склада проекта/ИС
IFNULL(mmo.c_amount, 0) AS `c_nomenclature_ordered_amount`, -- Заказано из спецификации у СС на склад ИС (суммарно)
IFNULL(mmo.c_amount_confirm, 0) AS `c_nomenclature_ordered_confirm_amount`, -- Заказано из спецификации у СС на склад ИС и ИСПОЛНЕНО (суммарно)
(IFNULL(mmo.c_amount, 0) - IFNULL(mmo.c_amount_confirm, 0)) AS `c_nomenclature_ordered_not_confirm_amount`, -- Заказано из спецификации у СС на склад ИС НО НЕ ИСПОЛНЕНО (суммарно)
(IFNULL(mm.c_amount, 0) + IFNULL(mo.c_amount, 0)) AS `c_nomenclature_available_amount`, -- Отправлено (все) на склад ИС (суммарно)
(IFNULL(mmo.c_amount, 0) - (IFNULL(mm.c_amount_order, 0) + IFNULL(mo.c_amount_order, 0))) AS `c_nomenclature_wait_available_amount`, -- Ожидает отправки (Разница между Отправленным материалом и Отправленым (в рамках требований))
(IFNULL(mm.c_amount_confirm, 0) + IFNULL(mo.c_amount_confirm, 0)) AS `c_nomenclature_available_confirm_amount`, -- Принято (все) на склад ИС (суммарно)
((IFNULL(mm.c_amount, 0) + IFNULL(mo.c_amount, 0)) -
(IFNULL(mm.c_amount_confirm, 0) + IFNULL(mo.c_amount_confirm, 0))) AS `c_nomenclature_available_not_confirm_amount`, -- Отправлено, но не принято (все) на склад ИС (суммарно)
(IFNULL(mm.c_amount_not_order, 0) + IFNULL(mo.c_amount_not_order, 0)) AS `c_nomenclature_available_not_order_amount`, -- Отправлено (не в рамках требования) на склад ИС (суммарно)
(IFNULL(mm.c_amount_not_order_confirm, 0) + IFNULL(mo.c_amount_not_order_confirm, 0)) AS `c_nomenclature_available_not_order_confirm_amount`, -- Принято (не в рамках требования) на склад ИС (суммарно)
((IFNULL(mm.c_amount_not_order, 0) + IFNULL(mo.c_amount_not_order, 0)) -
(IFNULL(mm.c_amount_not_order_confirm, 0) + IFNULL(mo.c_amount_not_order_confirm, 0))) AS `c_nomenclature_available_not_order_not_confirm_amount`, -- Отправлено, но не принято (не в рамках требования) на склад ИС (суммарно)
(IFNULL(mm.c_amount_order, 0) + IFNULL(mo.c_amount_order, 0)) AS `c_nomenclature_available_order_amount`, -- Отправлено (в рамках требования) на склад ИС (суммарно)
(IFNULL(mm.c_amount_order_confirm, 0) + IFNULL(mo.c_amount_order_confirm, 0)) AS `c_nomenclature_available_order_confirm_amount`, -- Принято (в рамках требования) на склад ИС (суммарно)
((IFNULL(mm.c_amount_order, 0) + IFNULL(mo.c_amount_order, 0)) -
(IFNULL(mm.c_amount_order_confirm, 0) + IFNULL(mo.c_amount_order_confirm, 0))) AS `c_nomenclature_available_order_not_confirm_amount`, -- Отправлено, но не принято (в рамках требования) на склад ИС (суммарно)
IFNULL(m_my_warehouse.c_amount, 0) AS `c_nomenclature_warehouse_project_amount`, -- Остаток (наличие) под проект, на складе ИС
IFNULL(m_all_warehouse.c_amount, 0) AS `c_nomenclature_warehouse_all_amount`, -- Остаток (наличие) под проект, на всех складах (в т.ч. ИС)
(IFNULL(m_all_warehouse.c_amount, 0) - IFNULL(m_my_warehouse.c_amount, 0)) AS `c_nomenclature_not_warehouse_project_amount`,
IFNULL(mm_job.c_amount, 0) AS `c_nomenclature_released_job_amount`, -- Отпущено в работу (количество выданного на руки материала под проект) с любого склада
IFNULL(mm_job.c_amount_confirm, 0) AS `c_nomenclature_released_job_confirm_amount`, -- Принято в работу (количество принятого на руки материала под проект) с любого склада
(IFNULL(mm_job.c_amount, 0) - IFNULL(mm_job.c_amount_confirm, 0)) AS `c_nomenclature_released_job_not_confirm_amount`, -- Отпущено но не принято в работу
IFNULL(rmpp.c_amount, 0) AS `c_nomenclature_mounted_amount`, -- Материал, смонтированный в работе (весь)
IFNULL(rmpp.c_amount_confirm, 0) AS `c_nomenclature_mounted_confirm_amount` -- Материал, смонтированный в работе (подтверждено)
FROM
-- сразу навешиваем фильтр для оптимизации
(SELECT
rm.id,
rm.c_project_id,
rm.c_nomenclature_id,
rm.c_amount,
rm.c_amount_by_which_formed_act_of_incoming_control,
rm.c_estimate_cost_without_VAT_per_unit,
rm.c_estimate_VAT_per_unit,
rm.c_document_code,
rm.c_code,
rm.c_group_code,
rm.c_number_code,
rm.c_description,
rm.c_next_version_id,
rm.c_is_deleted,
rm.c_is_manual,
rm.c_change_reason,
rm.c_change_reason_file_id,
rm.c_last_modified_datetime
FROM `t#project#required_materials` rm
WHERE
ISNULL(rm.c_next_version_id) -- новый(после редактирования) материал
AND !rm.c_is_deleted -- не удаленный
) AS rm
-- проект
JOIN `t#project#projects` p
ON rm.c_project_id = p.id
-- номенклатура
JOIN `t#warehouse#nomenclature` n
ON rm.c_nomenclature_id = n.id
-- сертификаты
LEFT JOIN `t#warehouse#nomenclature_certificates` nc
ON n.c_certificate_id = nc.id

/* Количество сопоставленного материала */
LEFT JOIN
(SELECT
esc.c_specification_id AS c_specification_id,
SUM(ewm.c_amount) AS c_total_correlated_amount
FROM `t#project#estimate#specification_correlations` esc
JOIN `t#project#estimate_work_materials` ewm
ON esc.c_estimate_material_id = ewm.id
WHERE
ewm.c_is_active
AND !ewm.c_is_deleted
GROUP BY
esc.c_specification_id) pcm
ON pcm.c_specification_id = rm.id

/* Заказано из спецификации у СС на склад ИС (суммарно)
все заказы
исполненные заказы */
LEFT JOIN `v#project#materials#material_movement_orders` mmo
ON mmo.c_required_material_id = rm.id
AND mmo.c_nomenclature_id = rm.c_nomenclature_id
AND mmo.c_destination_warehouse_id = p.c_warehouse_id

/* Отправлено на склад ИС (оно-же по сути и Принято)
весь материал, отправленный со складов в рамках проекта на склад ИС (корзина + в пути)
весь подтвержденный материал, отправленный со складов в рамках проекта на склад ИС (корзина + в пути)
материал (в рамках исполнения требования), отправленный со складов в рамках проекта на склад ИС (корзина + в пути)
подтвержденный материал (в рамках исполнения требования), отправленный со складов в рамках проекта на склад ИС (корзина + в пути) */
LEFT JOIN `v#project#materials#material_movements` mm
ON mm.c_project_id = rm.c_project_id
AND mm.c_nomenclature_id = rm.c_nomenclature_id
AND mm.c_destination_warehouse_id = p.c_warehouse_id

/* Отправлено на склад ИС (оно-же по сути и Принято)
весь материал, заказанный у внешнего поставщика и оплаченный и отправленный на склад ИС */
LEFT JOIN `v#project#materials#material_orders` mo
ON mo.c_project_id = rm.c_project_id
AND mo.c_nomenclature_id = rm.c_nomenclature_id
AND mo.c_warehouse_id = p.c_warehouse_id

/* Остаток (наличие) под проект, на складе ИС */
LEFT JOIN `v#project#materials#my_warehouse_materials` m_my_warehouse
ON m_my_warehouse.c_project_id = rm.c_project_id
AND m_my_warehouse.c_nomenclature_id = rm.c_nomenclature_id
AND m_my_warehouse.c_warehouse_id = p.c_warehouse_id

/* Остаток (наличие) под проект, на всех складах (в т.ч. ИС) */
LEFT JOIN `v#project#materials#all_warehouse_materials` m_all_warehouse
ON m_all_warehouse.c_project_id = rm.c_project_id
AND m_all_warehouse.c_nomenclature_id = rm.c_nomenclature_id

/* Отпущено в работу (количество выданного на руки материала под проект) с любого склада
Принято в работу (количество принятого на руки материала под проект) с любого склада */
LEFT JOIN `v#project#materials#material_movements_job` mm_job
ON mm_job.c_project_id = rm.c_project_id
AND mm_job.c_nomenclature_id = rm.c_nomenclature_id

/* Количество смонтированного материала (всего)
Количество смонтированного материала (подтверждено) */
LEFT JOIN `v#project#materials#work_required_materials` rmpp
ON rmpp.c_required_material_id = rm.id
AND rmpp.c_project_id = rm.c_project_id;
2. Проект раскатывается нормально, Select * FROM въюха - предлоставляет набор данных, но вот проблема, при открытии въшки в dbForge, текст запроса пустой (см.прикрепленное изображение).

Я понимаю, что длина запроса велика, но так увы захотел заказчик.
Подскажите, в чем может быть проблема????
...
Рейтинг: 0 / 0
14.06.2017, 08:07
    #39471242
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
Валерий_72Подскажите, в чем может быть проблема????Судя по описанию - в dbForge. А не в MySQL. Так что похоже, что Вы форумом ошиблись...
...
Рейтинг: 0 / 0
14.06.2017, 08:10
    #39471243
Валерий_72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
Akina, Согласен, но возможно кто-то знает причину.
...
Рейтинг: 0 / 0
10.07.2017, 17:22
    #39485944
devart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
Валерий_72,

Пожалуйста, попробуйте выполнить следующий запрос:
show create view <имя>;

где <имя> замените именем представления, т.е. v#project#materials

Будет ли отображаться запрос полностью?
...
Рейтинг: 0 / 0
11.07.2017, 07:03
    #39486198
Валерий_72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
devartВалерий_72,

Пожалуйста, попробуйте выполнить следующий запрос:
show create view <имя>;

где <имя> замените именем представления, т.е. v#project#materials

Будет ли отображаться запрос полностью?

Добрый день!
Вот результат запроса,
...
Рейтинг: 0 / 0
11.07.2017, 15:46
    #39486663
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
Валерий_72,

Ну так всё у тебя показывается, всё нормально, что ты ещё хочешь?
...
Рейтинг: 0 / 0
11.07.2017, 15:48
    #39486669
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
То, что "...в dbForge текст запроса пустой " -- это проблема исключитльно этого самого dbForge.
Используй другой тул, или вообще никакого не используй, редактор и консолька.
...
Рейтинг: 0 / 0
13.07.2017, 11:58
    #39488196
devart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
Валерий_72devartВалерий_72,

Пожалуйста, попробуйте выполнить следующий запрос:
show create view <имя>;

где <имя> замените именем представления, т.е. v#project#materials

Будет ли отображаться запрос полностью?

Добрый день!
Вот результат запроса,
Спасибо за ответ.
Данную проблему воспроизвели и исправим её в следующей версии продукта.
...
Рейтинг: 0 / 0
13.07.2017, 15:37
    #39488507
Валерий_72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
devartВалерий_72пропущено...


Добрый день!
Вот результат запроса,
Спасибо за ответ.
Данную проблему воспроизвели и исправим её в следующей версии продукта.

Добрый день!
Спасибо.
...
Рейтинг: 0 / 0
17.08.2017, 06:57
    #39506632
Валерий_72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с визуализацией въюхи
devartВалерий_72пропущено...


Добрый день!
Вот результат запроса,
Спасибо за ответ.
Данную проблему воспроизвели и исправим её в следующей версии продукта.

Добрый день!
Обновился до версии 7.2.78. К сожалению результат все тот-же.
Подскажите в какой версии будут исправления?
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проблема с визуализацией въюхи / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]