Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Запросом получить только те документы, у которых во всех строках таблицы документа поле "

Запросом получить только те документы, у которых во всех строках таблицы документа поле "
Я
   Kadyroff
 
30.12.20 - 13:41
Старый запрос выводил документы с условиями, что в табличной части стоит нужная номенклатура и "Сдал"= Истина
    "ВЫБРАТЬ
    |    ЛистОбследования.Ссылка,
    |    ЛистОбследования.Номер,
    |    ЛистОбследования.Дата КАК Дата,
    |    ЛистОбследования.Пациент,
    |    ЛистОбследования.Пациент.Наименование КАК ФИО,
    |    ЛистОбследования.Контрагент,
    |    ЛистОбследованиятчПрофосмотр.Номенклатура,
    |    ЛистОбследованиятчПрофосмотр.Направлен,
    |    ЛистОбследованиятчПрофосмотр.Сдал
    |ИЗ
    |    Документ.ЛистОбследования КАК ЛистОбследования
    |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЛистОбследования.тчПрофосмотр КАК ЛистОбследованиятчПрофосмотр
    |        ПО ЛистОбследования.Ссылка = ЛистОбследованиятчПрофосмотр.Ссылка
    |ГДЕ
    |    ЛистОбследования.Закрыт = Ложь
    |       И ЛистОбследования.ПометкаУдаления=Ложь
    |    И ЛистОбследованиятчПрофосмотр.Номенклатура = &Врачи
    |    И ЛистОбследованиятчПрофосмотр.Сдал = Истина

Стоит новая задача:  запросом получить только те документы, у которых во всех строках таблицы документа поле " Сдал" = Истина
в каком направлении двигаться?
   Ёпрст
 
1 - 30.12.20 - 13:45
Запросом получить ссылки на документы, где в тч емть строки с сдал= ложь
В основном запросе фильтр на эти доки
   Ёпрст
 
2 - 30.12.20 - 13:47
Ну или группировать основной запрос и смотреть, что сумма строк та же..
   acht
 
3 - 30.12.20 - 13:47
имеющие
    сумма(выбор когда листобследованиятчпрофосмотр.сдал тогда 1 иначе 0) = количество(листобследованиятчпрофосмотр.сдал)
   acht
 
4 - 30.12.20 - 13:48
Профосмотр номенклатуры пугает
   acht
 
5 - 30.12.20 - 13:49
А за сравнение Номенклатура = &Врачи ваще обидно
   ДенисЧ
 
6 - 30.12.20 - 13:50
(4) НОМЕНКЛАТУ́РА
Женский род
2.
Совокупность лиц, назначаемых на должность высшей инстанцией офиц..
   acht
 
7 - 30.12.20 - 13:50
(6) Это у которых шапки пирожками?
   Kassern
 
8 - 30.12.20 - 13:52
(0) Что за конфа такая? Полностью самописная?
   Kassern
 
9 - 30.12.20 - 13:54
(0) Как то странно Профосмотр пихать в ТЧ. Если например, одного врача не прошли и снова его пройти получится только через полтора месяца, то вы задним числом залезете в этот документ и поставите сдал?
   ДенисЧ
 
10 - 30.12.20 - 13:56
(7) Не обязательно. Могут быть и папахи. И шляпы в летнее время
   Cthulhu
 
11 - 30.12.20 - 14:08
СУММА(ВЫБОР(КОГДА ЛистОбследования.Закрыт = Ложь  И ЛистОбследования.ПометкаУдаления=Ложь 
    И ЛистОбследованиятчПрофосмотр.Номенклатура = &Врачи И ЛистОбследованиятчПрофосмотр.Сдал = Истина
    ТОГДА 1 ИНАЧЕ 0 КОНЕЦ )) КАК КвоОк,
СУММА(1) КАК КвоИт
сгруппировать эту беду подокументно и отфильтровать по КвоОк=КвоИт

нэ?
   Kadyroff
 
12 - 30.12.20 - 14:35
(4) :) Я вас сейчас еще больше испугаю, принесли базу, где на базе торговли реализован медицинский учет...Бывает и такое....
   Kadyroff
 
13 - 30.12.20 - 14:39
(9) Да, самописная, медицина на базе торговли и склада. Здесь смысл такой, что администратор вводит документ лист обследования, далее врачи в своем интерфейсе вводят результаты осмотра, при проведении этого документа "РезальтатОсмотра", корректируется ЛистОбследования.
   Малыш Джон
 
14 - 30.12.20 - 16:06
(12) Среднюю себестоимость пациента ещё считать не заставляли?)
   Kassern
 
15 - 30.12.20 - 16:10
(14) Это ладно, с НГ еще маркировать заставят, вот будет весело)
   Dmitrii
 
16 - 30.12.20 - 17:03
(0) Ну так и напиши в конце текста запроса к уже имеющимся условиям ГДЕ.
И НЕ ЛистОбследования.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ ЛистОбследованиятчПрофосмотр.Ссылка ИЗ Документ.ЛистОбследования.тчПрофосмотр КАК ЛистОбследованиятчПрофосмотр ГДЕ НЕ (ЛистОбследованиятчПрофосмотр.Ссылка.Закрыт ИЛИ ЛистОбследованиятчПрофосмотр.Ссылка.ПометкаУдаления ИЛИ ЛистОбследованиятчПрофосмотр.Сдал) И ЛистОбследованиятчПрофосмотр.Номенклатура = &Врачи
   Dmitrii
 
17 - 30.12.20 - 17:04
+ к (16) Скобочку закрывающую в конце текста забыл.
   Ногаминебить
 
18 - 30.12.20 - 17:19
Не предлагали еще запрос с Группировкой по документу и Минимум Сдал? Во временную таблицу и потом из результата выбрать все истины.
   Kassern
 
19 - 30.12.20 - 17:31
Насколько я понимаю не может быть закрытых листов обследования, где не все осмотры сданы. Могу предложить частное решение задачки: перед записью ЛистОбследования  проверять, если тчПрофосмотр.Количество()>0 И тчПрофосмотр.Найти(Ложь,"Сдал")=Неопределено тогда Закрыт = Истина. А далее просто отбор ЛистОбследования.Закрыт = Истина. По уму конечно регистр прикрутить и к нему уже обращаться для запроса.
   Kadyroff
 
20 - 14.01.21 - 13:59
(16) Спасибо. Это то, что нужно! Только условие по номенклатуре сделала отдельным, так нужный врач не попадает.
Подскажите, если по старому условию я отбираю все строки, где Поле Сдал=Истина, то в новом условии необходимо отобрать все строки сдал=Истина кроме той, где Номенклатура=Профпатолог, т.е. эта строка должна быть ложью?

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.