VOGBIT Принцип написания sql запроса - Отчёты
Новая версия VOGBIT 24.2.6 - Расчёт плановых сроков в режиме «ускоренного прохождения заказа по производству», заметно быстрее стали отрываться окна «График производства», «Выполнение», «Статистика производства»

Последние темы на форумах VOGBIT

Учетные документы - Материалы, Комплектующие, Складской учёт
Валерий Бондаренко: Спасибо, слепой поиск очень помог.  Теперь по поводу сдачи на склад. Вогбит внедряли сначала на одном участке, там все так и организовано ...
Создание номенклатуры посредством "перетаскивания" в VOGBIT файлов - Общие вопросы
Константин Чилингаров: Не удалось загрузить файл или сборку "EPPlus, Version=4.1.0.0, Culture=neutral, PublicKeyToken=ea159fdaa78159a1" либо одну из их зависимостей. По этому вопросу:  С ...
Расчет плановых дат - Прочее
Андрей Тюрин: Будем ждать видео. Планирование производства -тема актуальная для нас.
Пример создания плагина - Плагины
Константин Чилингаров: Последние сообщения перенесены /forum/messages/forum24/topic2880/message17712/2880-sozdanie-nomenklatury-posredstvom-_peretaskivaniya_-v-vogbit-faylov#message17712 сюда . Причина: /forum/rules/ Правила ...
Сравнение производительности серверов - Прочее
Константин Чилингаров: Здравствуйте, Времена какие-то запредельные, на мой взгляд. Как по мне, для "расчёта" потребности минута - уже очень долго. Не говор ...
Расчет потребности материала из сменных заданий - Материалы, Комплектующие, Складской учёт
Zms.komissarov: Да, так и есть, не обновил строку и не увидел, что коэффициент пересчета указан для другого материала... Все работает! Спасибо!  
Восстановить учётные записи не срабатывает - Прочее
NPP_ORION: Разобрались, снимается вопрос.
Ошибка раскраски по приоритету - Ошибки в работе
Константин Чилингаров: Здравствуйте, Если кратко: 1. Нужно установить в настройках ручное назначение "приоритетов" (что пользователь сам проставляет &quo ...
Хранение в базе данных ссылок на файлы - Общие вопросы
Константин Чилингаров: Ещё штатный отчёт маршрутный лист с чертежом из PDF на обратной стороне у меня как-то не смог с первого раза сам сформироваться нормально, ...
Ошибка при печати отчёта - Отчёты
Константин Чилингаров: последнее сообщение /forum/messages/forum24/topic2877/message17694/2877-khranenie-v-baze-dannykh-ssylok-na-fayly#message17694 перенесено . Причина - нарушение /forum/rules/ правил форума , п.8.
Новые возможности. Объединённые задания. Как пользоваться? - Производство
Константин Чилингаров: Здравствуйте, Судя по данным вопросам, я понял, что Вы не поняли, как в принципе используется по задумке механизм "объединенных задан ...
Права Доступа Сотрудника - Прочее
Константин Чилингаров: Здравствуйте, Немного из истории вопроса…   В прошлой программе, которую мы делали до VOGBIT, была у нас «развесистая» система управл ...
Формат адреса прокси-сервера - Прочее
Владимир Белов: Добрый день! Нужно указывать в формате URL: http://170.70.0.1:3128 http http://170.70.0.1:3128 ://170.70.0.1:3128 У вас должен быть на прокси-сервере проброшен порт 28 ...
С Новым годом! - Общие вопросы
Сергей: На данный момент проблема решается повторной активацией серийного номера. Нужно нажать на кнопку "Повторить"
Совместимость с MS SQL Server - Общие вопросы
Владимир Белов: Добрый день! MSSQL 2008 не поддерживается. Минимальная поддерживаемая версия - 2012. Рекомендуемая - 2016 или более старшая.
Схема изготовления - Производство
Константин Чилингаров: А нет возможности из этого окна проверять наличие деталей на складе? Ну и выдавать их со склада, чтоб позиции "зеленели". Тут неск ...
И снова про брак... - Материалы, Комплектующие, Складской учёт
Константин Чилингаров: при нажатии на + в Связанных позициях, я ожидал(хотел) увидеть появление трёх позиций... Для этого нужно настроить, какие позиции должны ...
Удаление запланиированных этапов - Состав и технология
Константин Чилингаров: Здравствуйте! Компонент либо не существует, либо на него ссылаются этапы В  базе данных есть задания для производства (создаются ком ...
Групповой перенос номенклатуры с изменением обозначения - Прочее
GlMax: В принципе ожидаемо, но странно, что в системе, которая вроде бы должна работать, в том числе, и с мелкосерийным производством, отсутствую ...
Отсутствие деталей, операций в графике производства - Состав и технология
Константин Чилингаров: Здравствуйте, Нужно смотреть, какие настройки в базе данных сейчас выставлены (тип нормирования, в первую очередь), и данные введённые ...

Принцип написания sql запроса

Вопросы по формированию отчётов, настройка шаблонов отчётов, - Отчёты - Технические вопросы
Страницы: 1
Принцип написания sql запроса
 
Опишите пожалуйста в двух словах процесс написания sql запроса. В начале я увидел, что создается таблица(с названиями столбцов и их типами) , вот что далее происходит не понятно ...

Идет выборка из определенных таблиц , потом заносится в созданную таблицу , присваиваются значения к переменным в шаблоне , и в конце после получения данных обнуляется ?
ООО "Нефтезаводмонтаж" , г.Волгоград
 
Если имеются в виду отчёты, то в двух словах так:
1. из вогбита передаётся запрос т.н. CurrentQuery. Обычно в нём содержится информация из того режима откуда вызывается отчёт.
2. используя (или не используя) CurrentQuery, пишете свои запросы.
3. запрос выполняется и "присваиваются значения к переменным в шаблоне"
 
Дополню ответ Сергея,
Основная идея формирования отчета это исполнение стандартного SELECT запроса в SQL, где получившиеся столбцы данных - это значения полей в Excel файле шаблона отчета (более подробнее процедура формирования отчета описана тут: https://vogbit.ru/support/377/). Существует 2 вида получения данных это CurrentQuery или использование временной таблицы с готовыми данными, т.е. самый простой отчет будет выглядеть так: SELECT * FROM (%CurrentQuery%) (или название временной таблицы), а получившиеся названия столбцов используйте в шаблоне Excel, добавив перед наименованием поля знак $. Вот, собственно и вся технология.
 
Сергей, Андрей Бусел, спасибо за ответы.

Цитата
Андрей Бусел пишет:
самый простой отчет будет выглядеть так: SEL ECT * FR OM (%CurrentQuery%)

Т.е будет выводится стандартная таблица и все ее столбцы для опр. режима из которого выводится отчет , например если в таблице есть столбец id, то в шаблоне выводить, как $id .... я правильно понял ?

А каким образом можно посмотреть названия столбцов, например для режима график производства ?
ООО "Нефтезаводмонтаж" , г.Волгоград
 
Цитата
Максим Прохоров пишет:
Сергей,   Андрей Бусел,  спасибо за ответы.



Цитата
Андрей Бусел пишет:

самый простой отчет будет выглядеть так: SEL ECT * FR OM (%CurrentQuery%)



Т.е будет выводится стандартная таблица и все ее столбцы для опр. режима из которого выводится отчет , например если в таблице есть столбец id, то в шаблоне выводить, как $id .... я правильно понял ?

Да, все верно.

Цитата

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

В этом режиме используется второй вид получения данных. Для того, что бы "посмотреть" названия столбцов и значения необходимо после формирования любого отчета в режиме "График производства" открыть занчение параметра VGB_REPORT_QUERY текущего пользователя.
 
Андрей Бусел, спасибо. Еще такой вопрос . Если используем временную таблицу , по логике вещей необходимо сначала "забить" в нее данные , а потом уже Select(ом)вытаскивать ... правильно же ?
ООО "Нефтезаводмонтаж" , г.Волгоград
 
Цитата
Андрей Бусел пишет:
открыть значение параметра VGB_REPORT_QUERY текущего пользователя.
можно немного конкретней , где открыть этот параметр ?)

[Update] с этим моментом разобрался.
Изменено: Максим Прохоров - 22.09.2014 10:47:43
ООО "Нефтезаводмонтаж" , г.Волгоград
 
Андрей Бусел, сделал тестовый шаблон для отчета из графика производства , в UserQuery указал
Цитата
SEL ECT * FR OM (%CurrentQuery%)
При выполнении выдает ошибку синтаксиса
Цитата
Сообщение:
  Неправильный синтаксис около конструкции ")".

Ошибка при выполнении:

UserQuery test

SEL ECT * FR OM (SELECT
  [Views].[ObjectParameters].[ID]
FR OM
  [Views].[ObjectParameters]
WH ERE
  [Views].[ObjectParameters].[ID] = 158667)

Из запроса видно , что идет выборка лишь по одному столбцу (id) в таблице, где id=158667 ...
Как то криво получается выборка из выборки
Изменено: Максим Прохоров - 22.09.2014 11:48:19
ООО "Нефтезаводмонтаж" , г.Волгоград
 
Ну так оно и не должно так работать, нужно же сначала создать временую таблицу, и выполнить запрос из параметра пользователя (а он хранится в виде текстовой записи)... базовый пример будет выглядеть так:

Код
Create table #TEMP ([Idx] int,[NomenclatureNotation] nvarchar(max),[NomenclatureName] nvarchar(max),[CollectionNotation] nvarchar(max),[CollectionNmkNotation] nvarchar(max),[Comment] nvarchar(max),[NomenclatureId] bigint,[ComponentId] bigint,[CollectionId] bigint,[IsAccDocExists] nvarchar(max),[ComponentStage] nvarchar(max),[CollectionStage] nvarchar(max),[TpId] bigint,[IsClDocsExists] nvarchar(max),[OperationComment] nvarchar(max),[ComponentNumber] nvarchar(max),[ControlType] nvarchar(max),[ManHour] float,[ManHourParam] float,[ManHourSum] float,[MinDate] nvarchar(max),[Quantity] float,[State] nvarchar(max),[Executor] nvarchar(max),[Status] nvarchar(max),[StatusId] bigint,[Operation] nvarchar(max),[NmkBatch] nvarchar(max),[Stock] float,[Output] float,[Input] float,[Measure] nvarchar(max),[Warehouse] nvarchar(max),[RegCardId] bigint,[Number] nvarchar(max),[Date] nvarchar(max),[Consumer] nvarchar(max),[Month] nvarchar(max),[AlternateMeasure] nvarchar(max),[IsAlternateMeasure] nvarchar(max),[Priority] float,[Importance] nvarchar(max))

declare @qs nvarchar(max)
set @qs = (select top 1 op.stringvalue from [Views].[ObjectParameters] as op where op.id = (SELECT TOP(1) ID FROM  (%CurrentQueryPart2WithoutOrderBy%) AS CQ))
insert #Temp execute (@qs)


SELECT * FROM #TEMP
DROP TABLE #TEMP
 
Андрей Бусел,
спасибо будем разбираться.
ООО "Нефтезаводмонтаж" , г.Волгоград
 
Цитата
Андрей Бусел пишет:
Для того, что бы "посмотреть" названия столбцов и значения необходимо после формирования любого отчета в режиме "График производства" открыть занчение параметра VGB_REPORT_QUERY текущего пользователя.
А как все-таки открыть значение этого параметра?
 
Вкладка меню Рабочая, кнопка Сотрудники. Выбрать текущего пользователя, открыть зависимое окно Параметры.
Страницы: 1
Сейчас на форуме
Всего зарегистрированных пользователей: 4430
Приняло участие в обсуждении: 435
Всего тем: 804
Всего сообщений: 6067

×
Вход на сайт