powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Запрос по регистру сведений
16 сообщений из 16, страница 1 из 1
Запрос по регистру сведений
    #38572508
ankoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть регистр сведений - нормы тех потерь
ресурс процент потерь
измерения подразделения и техоперация
запрос нужен в таком ключе если техопрация в регистре пусто, то выбрать процент по подразделению, если не пусто , то и по подразделению и по заданной операцци
написала такой запрос , выводит и по подразделению и по оперции, а просто по подразделению - нет!

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| рздНормыТехПотерьСрезПоследних.Подразделение,
|рздНормыТехПотерьСрезПоследних.ТехОперация,
| рздНормыТехПотерьСрезПоследних.ПроцентТехПотерь

|ИЗ
| РегистрСведений.рздНормыТехПотерь.СрезПоследних КАК рздНормыТехПотерьСрезПоследних

|ГДЕ
|ВЫБОР
| КОГДА рздНормыТехПотерьСрезПоследних.ТехОперация ЕСТЬ NULL
| ТОГДА рздНормыТехПотерьСрезПоследних.Подразделение = &Подразделение
|
| ИНАЧЕ
| рздНормыТехПотерьСрезПоследних.ТехОперация = &ТехОперация1 И
| рздНормыТехПотерьСрезПоследних.Подразделение = &Подразделение

| КОНЕЦ " ;
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572512
Последний выдох ГПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хрень пишите...

КОГДА рздНормыТехПотерьСрезПоследних.ТехОперация ЕСТЬ NULL не выполнится
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572515
Последний выдох ГПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в самом худшем случае оно будет Неопределено
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572528
ankoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как надо?
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572534
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последний выдох ГПЖв самом худшем случае оно будет Неопределено
Это если значение составного типа.
А так - с Значение(Справочник.ТехОперации.ПустаяСсылка) сравнивать надо.
Или какой там у реквизита тип....
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572547
Последний выдох ГПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и вообще запросик странный к такой постановке
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572553
ankoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pail, да, правильно, ссылочный тип, переделала

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| рздНормыТехПотерьСрезПоследних.Подразделение,
|рздНормыТехПотерьСрезПоследних.ТехОперация,
| рздНормыТехПотерьСрезПоследних.ПроцентТехПотерь

|ИЗ
| РегистрСведений.рздНормыТехПотерь.СрезПоследних КАК рздНормыТехПотерьСрезПоследних

|ГДЕ
|ВЫБОР
| КОГДА рздНормыТехПотерьСрезПоследних.ТехОперация= Значение(Справочник.ТехнологическиеОперации.ПустаяСсылка)
| ТОГДА рздНормыТехПотерьСрезПоследних.Подразделение = &Подразделение
| ИНАЧЕ
| рздНормыТехПотерьСрезПоследних.ТехОперация = &ТехОперация1 И
| рздНормыТехПотерьСрезПоследних.Подразделение = &Подразделение

| КОНЕЦ " ;
только теперь во втором случае(когда нужно выбрать и по подр и по операции ), выбирает и то и то значение(( почему
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572570
ankoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Последний выдох ГПЖ, почему странный?
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572617
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ankoo,
Если у вас в регистре присутствуют и записи с установленной техоперацией,и с пустой (общая норма на подразделение,на всякий случай),
то такой запрос и выдаст оба варианта: фильтр сработает дважды.
А если требуется выдать ровно одну запись на подразделение, для выбранной операции либо для пустой - надо делать соединение. Примерно так:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
ВЫБРАТЬ
  НормыП.Подразделение,
  ЕстьNULL(НормыТ.ТехОперация,НормыП.ТехОперация),
  ЕстьNULL(НормыT.ПроцентТехПотерь,НормыП.ПроцентТехПотерь)

ИЗ
 РегистрСведений.рздНормыТехПотерь.СрезПоследних КАК НормыП
Левое соединение РегистрСведений.рздНормыТехПотерь.СрезПоследних как нормыТ
 по НормыТ.Подразделение=НормыП.Подразделение
  и  НормыТ.ТехОперация=&ТехОперация1 

где НормыП.ТехОперация= Значение(Справочник.ТехнологическиеОперации.ПустаяСсылка)



Работать будет если на каждое подразделение точно есть одна запись с пустой техоперацией.
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572627
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ankoo,
...да, и условия всё же лучше в параметрах виртуальных таблиц размещать, а не в "ГДЕ" запроса. По возможности.
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572645
ankoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pail,

А позразделение как бф тоже - параметр
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572651
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ankoo,
да пожауйста -не возражаю.
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572657
ankoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pail,
Спасибо!
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572688
Последний выдох ГПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pailankoo,
...да, и условия всё же лучше в параметрах виртуальных таблиц размещать, а не в "ГДЕ" запроса. По возможности.

не факт... смотря к чему стремятся
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38572731
ankoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pail, почему то ошибку выдает
...
Рейтинг: 0 / 0
Запрос по регистру сведений
    #38573674
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ankoo, почему то ошибку выдает
Персонально вам выдает под подписку о неразглашении?
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Запрос по регистру сведений
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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