|   |   | 
| 
 | Помогите сформировать запрос | ☑ | ||
|---|---|---|---|---|
| 0
    
        KuJIT 29.01.14✎ 14:22 | 
        Такие дела: Есть документ "Медицинский документ", у него есть реквизит1, реквизит2 и дата. У меня есть параметр, которому должен быть равен реквизит1, при этом мне нужны только документы с различными Реквизитами2 (из тех, что с одинаковым Реквизитом2 выбираю тот, у которого дата позже). Можно такой запрос сделать? И как?     | |||
| 1
    
        vicof 29.01.14✎ 14:24 | 
        Можно, 5000 р.     | |||
| 2
    
        Beduin 29.01.14✎ 14:24 | 
        Группируй по дате относительно реквизит2. Короче тупая задача по валюте. Смотри как у Гилева.     | |||
| 3
    
        Ненавижу 1С гуру 29.01.14✎ 14:24 | 
        можно, 4900     | |||
| 4
    
        butterbean 29.01.14✎ 14:25 | 
        МАКСИМУМ(Дата) + СГРУППИРОВАТЬ ПО Реквизит2     | |||
| 5
    
        Enders 29.01.14✎ 14:25 | 
        Можно, 700 грн     | |||
| 6
    
        Classic 29.01.14✎ 14:26 | 
        300$     | |||
| 7
    
        salvator 29.01.14✎ 14:26 | 
        Да, 1000 евро     | |||
| 8
    
        Beduin 29.01.14✎ 14:26 | 
        Где то есть сайт, там автор за самый лучший ответ деньги пересылает.     | |||
| 9
    
        KuJIT 29.01.14✎ 14:35 | 
        (8) Лол. Это явно не он)     | |||
| 10
    
        KuJIT 29.01.14✎ 14:42 | 
        (4) Не очень понятно. Как модифицировать 
 Запрос.Текст = "ВЫБРАТЬ | МедицинскийДокумент.ТелоМедицинскогоДокумента, | МедицинскийДокумент.Дата |ИЗ | Документ.МедицинскийДокумент КАК МедицинскийДокумент |ГДЕ | МедицинскийДокумент.МедицинскаяКарта.Ссылка = &МКСсылка" | |||
| 11
    
        salvator 29.01.14✎ 14:44 | 
        (10)
 Открой конструктор и сгруппируй по ТелоМедицинскогоДокумента, с максимум по дате | |||
| 12
    
        Ненавижу 1С гуру 29.01.14✎ 14:48 | 
        пример:
 ВЫБРАТЬ ЗаказПокупателя.СкладГруппа, МАКСИМУМ(ЗаказПокупателя.Дата) КАК Дата ПОМЕСТИТЬ Временная ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя ГДЕ ЗаказПокупателя.Контрагент = &Контрагент СГРУППИРОВАТЬ ПО ЗаказПокупателя.СкладГруппа ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ЗаказПокупателя.Ссылка, Временная.СкладГруппа, Временная.Дата ИЗ Временная КАК Временная ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО Временная.СкладГруппа = ЗаказПокупателя.СкладГруппа И Временная.Дата = ЗаказПокупателя.Дата ГДЕ ЗаказПокупателя.Контрагент = &Контрагент | |||
| 13
    
        WildSery 29.01.14✎ 14:54 | 
        (12) Задача решена неверно, не выполнено условие "при этом мне нужны только документы с различными Реквизитами2"
 Необходимо добавить ИМЕЮЩИЕ НЕ МАКСИМУМ(ЗаказПокупателя.Дата) = МИНИМУМ(ЗаказПокупателя.Дата) | |||
| 14
    
        WildSery 29.01.14✎ 14:55 | 
        И группировать, разумеется, не по складу, а по заказу.     | |||
| 15
    
        Ненавижу 1С гуру 29.01.14✎ 14:57 | 
        (13) не тупи
 я думаю, я правиьно понял автора | |||
| 16
    
        KuJIT 29.01.14✎ 14:58 | 
        Запрос.Текст =  "ВЫБРАТЬ
 | МедицинскийДокумент.ТелоМедицинскогоДокумента, | МАКСИМУМ(МедицинскийДокумент.Дата) КАК Дата |ИЗ | Документ.МедицинскийДокумент КАК МедицинскийДокумент |ГДЕ | МедицинскийДокумент.МедицинскаяКарта.Ссылка = &МКСсылка | |СГРУППИРОВАТЬ ПО | МедицинскийДокумент.ТелоМедицинскогоДокумента" ; Так? Так ругается, что "Недопустимое поле для групировки" | |||
| 17
    
        Ненавижу 1С гуру 29.01.14✎ 15:01 | 
        (16) чукча писатель?     | |||
| 18
    
        WildSery 29.01.14✎ 15:02 | 
        (15) Я не вижу признаков, что правильно.     | |||
| 19
    
        Ёпрст гуру 29.01.14✎ 15:03 | 
        (18) огласите первичные признаки "правильности"     | |||
| 20
    
        WildSery 29.01.14✎ 15:05 | 
        (19) Описание задачи автором плюс обоснованные умозаключения.     | |||
| 21
    
        Ёпрст гуру 29.01.14✎ 15:06 | 
        (20) огласите обоснованные умозаключения     | |||
| 22
    
        WildSery 29.01.14✎ 15:12 | 
        (21) В данной теме я умозаключений не делал.
 (15) Пожалуй, соглашусь, что туплю. Простая группировка скорее всего именно то, что нужно автору. | |||
| 23
    
        Simbad 29.01.14✎ 15:15 | 
        750 руб     | |||
| 24
    
        Ненавижу 1С гуру 29.01.14✎ 15:16 | 
        (23) согласен, высылай     | |||
| 25
    
        Simbad 29.01.14✎ 15:17 | 
        (24) деньги вперед     | |||
| 26
    
        Зойч 29.01.14✎ 15:18 | 
        Так это же срез последних )))     | |||
| 27
    
        KuJIT 29.01.14✎ 15:21 | 
        Так срез последних не в регистрах только?     | |||
| 28
    
        KuJIT 29.01.14✎ 15:22 | 
        (17) Что это значит? В чем косяк?     | |||
| 29
    
        Ненавижу 1С гуру 29.01.14✎ 15:31 | 
        (28) см (12)     | |||
| 30
    
        Simbad 29.01.14✎ 15:36 | 
        Ладно шутка шуткой, стандартная задача на списание по партиям плюс Максимальный док по дате уже нужно выбрать в запросе а не просто отсортировать
 code+ ВЫБРАТЬ ИсполнительныйЛист.Получатель КАК Получатель, МАКСИМУМ(ИсполнительныйЛист.Дата) КАК Дата ПОМЕСТИТЬ ВТ ИЗ Документ.ИсполнительныйЛист КАК ИсполнительныйЛист ГДЕ ИсполнительныйЛист.Физлицо = &ФЛ СГРУППИРОВАТЬ ПО ИсполнительныйЛист.Получатель ИНДЕКСИРОВАТЬ ПО Получатель, Дата ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ.Получатель КАК Получатель, ВТ.Дата, ИсполнительныйЛист.Ссылка ИЗ Документ.ИсполнительныйЛист КАК ИсполнительныйЛист ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ КАК ВТ ПО ИсполнительныйЛист.Получатель = ВТ.Получатель И ИсполнительныйЛист.Дата = ВТ.Дата УПОРЯДОЧИТЬ ПО Получатель code- | |||
| 31
    
        Simbad 29.01.14✎ 15:40 | 
        (16) ns jn,bhfto ljrevtyn f yt rfrjqnnj htrdbpbn gj eckjdb. ns abkmnh yfrkflsdfti yf ytrbq htrdbpbn     | |||
| 32
    
        Simbad 29.01.14✎ 15:41 | 
        (31) Извините, по условию ты накладываешь фильтр на реквизит а в запросе это сам документ     | |||
| 33
    
        KuJIT 29.01.14✎ 16:31 | 
        (32) Не понял =/ Если не затруднит, не могли бы Вы изменить мой запрос, чтобы он выполнял поставленную задачу? Бо примеры типа (30) Слишком страшные. =)     | |||
| 34
    
        WildSery 29.01.14✎ 16:32 | 
        (33) Вы слишком пугливы, пример можно сказать азбучный.     | |||
| 35
    
        13_Mult 29.01.14✎ 16:40 | 
        (33) Ёпрст, тебе готовый запрос дали. Подставь туда свой док и всё.     | |||
| 36
    
        KuJIT 29.01.14✎ 16:46 | 
        (35) Окау     | |||
| 37
    
        hhhh 29.01.14✎ 17:18 | 
        похоже ТелоМедицинскогоДокумента - не группируется     | |||
| 38
    
        KuJIT 30.01.14✎ 08:48 | 
        (37) И что в таком случае делать?     | |||
| 39
    
        KuJIT 30.01.14✎ 09:04 | 
        И вообще 
 {ВнешняяОбработка.МедкнижкаПечать.МодульОбъекта(166,6)}: Ожидается ключевое слово 'КонецФункции' ('EndFunction') <<?>>|СГРУППИРОВАТЬ ПО (Проверка: Сервер) | |||
| 40
    
        KuJIT 30.01.14✎ 09:05 | 
        Если закомментить 
 //|СГРУППИРОВАТЬ ПО //| МедицинскийДокумент.Ссылка //|ИНДЕКСИРОВАТЬ ПО //| Ссылка, //| Дата" Тогда нет ошибки. | |||
| 41
    
        Ёпрст гуру 30.01.14✎ 09:21 | 
        (35) никто мне ничего не давал     | |||
| 42
    
        KuJIT 30.01.14✎ 09:21 | 
        (12) Я создаю запрос1 с текстом первым, задаю параметр, делаю выборку?
 Как вообще с временными таблицами работать? | |||
| 43
    
        Ёпрст гуру 30.01.14✎ 09:22 | 
        (42) а в чем проблема работы с временными таблицами ?     | |||
| 44
    
        KuJIT 30.01.14✎ 09:24 | 
        (43) В том, что я чайник.     | |||
| 45
    
        Ёпрст гуру 30.01.14✎ 09:26 | 
        (44) дык почитай книжки, стань не чайником..     | |||
| 46
    
        KuJIT 30.01.14✎ 09:26 | 
        Пишк текст первого запроса, устанавливаю параметр, выполняю - таблица сформирована. Создаю 2й запрос, устанавливаю текст, параметр, делаю выборку - профит. Так?     | |||
| 47
    
        Wobland 30.01.14✎ 09:26 | 
        (42) на 414й странице букваря вижу использование ВТ     | |||
| 48
    
        KuJIT 30.01.14✎ 09:27 | 
        (47) Букваря?     | |||
| 49
    
        Wobland 30.01.14✎ 09:28 | 
        (48) Радченко М.Г., Хрусталева Е.Ю. 1С Предприятие 8.2. Практическое пособие разработчика (2009)     | |||
| 50
    
        Ёпрст гуру 30.01.14✎ 09:29 | 
        (46) пишешь пакетный запрос, например, первый запрос выгребает что-то во временную табличку, второй, третий,..n-ый запрос может выгребать данные из этой таблички.. всё собственно.     | |||
| 51
    
        KuJIT 30.01.14✎ 09:32 | 
        В любом случае, не группируется по нужному мне полю =/     | |||
| 52
    
        KuJIT 30.01.14✎ 09:38 | 
        "Недопустимое поле для групировки"     | |||
| 53
    
        salvator 30.01.14✎ 09:39 | 
        Запрос скинь полностью.     | |||
| 54
    
        KuJIT 30.01.14✎ 09:43 | 
        Запрос.Текст = "ВЫБРАТЬ
 | МедицинскийДокумент.ТелоМедицинскогоДокумента, | МАКСИМУМ(МедицинскийДокумент.Дата) КАК Дата |ПОМЕСТИТЬ Временная |ИЗ | Документ.МедицинскийДокумент КАК МедицинскийДокумент |ГДЕ | МедицинскийДокумент.МедицинскаяКарта = &МедицинскаяКарта |СГРУППИРОВАТЬ ПО | МедицинскийДокумент." ; Запрос.УстановитьПараметр("МедицинскаяКарта", МассивОбъектов[0]); Запрос.Выполнить(); Запрос2 = Новый Запрос; Запрос2.Текст = " | ВЫБРАТЬ | МедицинскийДокумент.Ссылка, | Временная.ТелоМедицинскогоДокумента, | Временная.Дата | ИЗ | Временная КАК Временная | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.МедицинскийДокумент КАК МедицинскийДокумент | ПО Временная.ТелоМедицинскогоДокумента = МедицинскийДокумент.ТелоМедицинскогоДокумента | И Временная.Дата = МедицинскийДокумент.Дата | ГДЕ | МедицинскийДокумент.МедицинскаяКарта = &МедицинскаяКарта" ; | |||
| 55
    
        KuJIT 30.01.14✎ 09:43 | 
        Собсно ошибка появляется, когда пытается выполнить Запрос.Выполнить();     | |||
| 56
    
        salvator 30.01.14✎ 09:47 | 
        (55) Точку убери в имени поля группировки.
 И пользуйся конструктором, коли не умеешь писать руками. Там и научишься писать запросы со временными таблицами, заодно. | |||
| 57
    
        KuJIT 30.01.14✎ 09:54 | 
        (56) Так не в точке дело) Я прочто при копипасте не все скопипастил, видимо. По примеру там должно быть "МедицинскийДокумент.ТелоМедицинскогоДокумента"     | |||
| 58
    
        Мимохожий Однако 30.01.14✎ 09:56 | 
        Опиши типы реквизитов. Погадаю: ТелоМедицинскогоДокумент с типом Строка неограниченной длины.     | |||
| 59
    
        KuJIT 30.01.14✎ 10:01 | 
        Ну, я тоже гуглил =)
 ТелоМедицинскогоДокумента имеет тип "хранилище значений", что, вероятно, то же самое. Вообще в нем хранится xml-строка. | |||
| 60
    
        13_Mult 30.01.14✎ 10:49 | 
        (43) Ух ты ж, это же надо как бывает ))).     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |