#0
by DrLekter
Пишу запрос - ПОЛНОЕ СОЕДИНЕНИЕ из двух других выборок по разным регистрам, примерно так: Работает отлично, пока есть данные в обеих выборках. Если одна выборка
#2
by DrLekter
Сорри, ввод случайно нажал, а редактировать нельзя. Примерно так : ВЫБРАТЬ поле1, поле2 ИЗ Выборка1 ПОЛНОЕ СОЕДИНЕНИЕ Выборка2 ПО .... Если вторая часть (выборка2) оказывается полностью пустой (ни одной записи), запрос не выполняется. Первая - может быть пустой, может не пустой, при этом отрабатывает как надо. Где неправ?
#9
by DrLekter
ЗапросОбороты.КоличествоРасходОборотСклад1, ЗапросОстатки.КоличествоОстатокСклад1, ЗапросОбороты.КоличествоРасходОборотСклад2, ВЫБОР КОГДА ЗапросОборотыОбороты.Номенклатура ЕСТЬ Null ТОГДА РасходыНаПроизводствоОбороты.Номенклатура КОНЕЦ КАК НоменклатураОбщая, ЗапросОборотыОбороты.КоличествоРасходОборотСклад1, ЗапросОборотыОбороты.КоличествоРасходОборотСклад2, ВЫБОР КОГДА ОборотыОбороты.Склад = &Склад1 ТОГДА ОборотыОбороты.КоличествоРасходОборот ИНАЧЕ 0 КОНЕЦ КАК КоличествоРасходОборотСклад1, ВЫБОР КОГДА ОборотыОбороты.Склад = &Склад2 ТОГДА ОборотыОбороты.КоличествоРасходОборот ИНАЧЕ 0 КОНЕЦ КАК КоличествоРасходОборотСклад2, ОборотыОбороты.КоличествоРасходОборот КАК КоличествоРасходОборот И ЗапросОборотыОбороты.Номенклатура В ИЕРАРХИИ(&Номенклатура) ЗапросОборотыОбороты.КоличествоРасходОборот, ВЫБОР КОГДА ОстаткиОстатки.Склад ЕСТЬ Null ТОГДА 0 КОГДА ОстаткиОстатки.Склад = &Склад1 ТОГДА ОстаткиОстатки.КоличествоОстаток ИНАЧЕ 0 КОНЕЦ КАК КоличествоОстатокСклад1, ВЫБОР КОГДА ОстаткиОстатки.Склад ЕСТЬ Null ТОГДА 0 КОГДА ОстаткиОстатки.Склад = &Склад2 ТОГДА ОстаткиОстатки.КоличествоОстаток ИНАЧЕ 0 КОНЕЦ КАК КоличествоОстатокСклад2 И ОстаткиОстатки.Номенклатура В ИЕРАРХИИ(&Номенклатура) СГРУППИРОВАТЬ ПО ОстаткиОстатки.Номенклатура, ЗапросОстатки.КоличествоОстатокСклад1, ЗапросОбороты.КоличествоРасходОборотСклад2, ЗапросОстатки.КоличествоОстатокСклад2 УПОРЯДОЧИТЬ ПО Номенклатура ИТОГИ МАКСИМУМ(КоличествоРасходОборотСклад1), МАКСИМУМ(КоличествоОстатокСклад2) ПО Номенклатура ИЕРАРХИЯ Вот оно
#10
by DrLekter
Вот если РасходыНаПроизводствоОбороты отсутствуют в выбранных условиях, запрос получается пустой. А если ОборотыОбороты отсутствуют - почему-то все как и должно быть, выводится только из второй
#15
by DrLekter
Все ваще просто оказалось - вместо ГДЕ РасходыНаПроизводствоОбороты.Номенклатура В ИЕРАРХИИ(&Номенклатура) И ЗапросОборотыОбороты.Номенклатура В ИЕРАРХИИ(&Номенклатура) написал ГДЕ РасходыНаПроизводствоОбороты.Номенклатура В ИЕРАРХИИ(&Номенклатура) ИЛИ ЗапросОборотыОбороты.Номенклатура В ИЕРАРХИИ(&Номенклатура) и все заработало! ))))) Тупанул, сорри....
#16
by DrLekter
Теперь с ним новая проблема: если у пользователя ограничены права, нужно выбирать с ключевым словом РАЗРЕШЕННЫЕ. Его можно использовать только в главном запросе. При этом он все равно почему-то выбирает не только разрешенные, на этапе работы с выборкой выскакивает предупреждение, что прав недостаточно. По идее, в конце он тоже должен отсеять неразрешенные, но почему-то так не делает ((
#17
by DrLekter
Я имел в виду, что когда подзапросы выполняются, они выбирают всю номенклатуру из регистров, но в окончательном запросе ключевое слово РАЗРЕШЕННЫЕ разве не должно отсечь все недопустимое?
#19
by DrLekter
Понятно, спасибо Пока не стал в регистрах писать ограничения, обошел предварительным созданием списка разрешенной номенклатуры. На скорость выполнения вроде не повлияло (все же список немаленький получился, опасался тормозов при выполнении запроса с таким условием)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Один запрос - все ок , два запрос - не получается :(
- Подскажите чайнику ... Что такое в запросах Левое соединение, полное соединение
- Что быстрее работает в запросе ГДЕ (внутри запрос) или Соединение таблиц?
- Запрос СКД - передача значения во вложенный запрос
- Полное соединение в запросе не работает.
- Запрос в обработке и запрос в консоли отчетов выдают разные результаты
В этой группе 1С
- ЗУП Отнесение работника по договору гражд-правового характера на 76 счет
- Ввод остатков табличная часть
- Прямым запросом устанавливаю номер строки в регистре. Засада.
- Ткните, где посмотреть последовательность конфигураций УТ 10.3
- ЗиК 305: Снятая инвалидность и страховые взносы
- Как создать БД MS SQL 2005 в памяти.
- Помощь новичку
- СКД: как программно переименовать заголовок поля
- как в 1с бухгалтерия 8 приостановить амортизацию?
- Удаленный хост принудительно разорвал существующее подключение
- v8: Отбор по массиву строк в табличном поле
- перенос данных Камин 2.0 Камин 3.0
- Перенос остатков со старого КБК на новый
- СКД 8.2: не работает отбор в группе
- v8: Ошибка при загрузке XML данных в БП 2.0 из ТиС 7.7 (КД)
- v8: СКД, права пользователя, режим совместимости 8.1 отключили
- Как имея ссылку на строку таблицы значений получить название самой таблицы
- УПП изменения даты выполнения в диаграмме загруженности рабочих центров. КАК?
- Обновление номенклатуры при программном создании документа
- Загрузка из ЗиК 7.7 ред 2.3