|
|
МИНИМУМ в запросе к справочнику не работает?
mikecool, Ёпрст, Aloex, dergreche, Шурик71, Anton1307, LoneMan, PLUT, dedmoroz777, Широкий, ndrv, Мультук, scanduta, Fragster, Ненавижу 1С, Доминошник, Кир Пластелинин, Crusher, nick86, Михаил Козлов, PR, Fish, lEvGl, paramedic, formista2000, Chameleon1980, scaramouche, obs191, laeg, Климов Сергей, , ads55, _Batoo, Ager, zenik, Greeen, Кирпич, okmail, Kongo2019, toypaul, mmg, Silgis, Somebody, Гипервизор, AndreyZhukov, vova1122, arsik, Garykom, Gun47, Hmster, vbus, azt-yur, Fedor-1971, Галахад, Zamestas, Толич, maxar, Tarlich, Baiji, integer, X Leshiy, 2S, maxab72, SleepyHead, Beduin, Ботаник Гарден Меран, Hawk_1c, Бычье сердце, RomanYS, Жеглофф, JohnGilbert, Gucci76, Волшебник
| ☑ |
|
0
Климов Сергей
06.10.26
✎
13:23
|
Или лыжи не едут? Простейшая (упрощенная) задача: выбрать из справочника ДоговорыКонтрагентов элемент с минимальной Датой. Запрос:
ВЫБРАТЬ
ДоговорыКонтрагентов.Ссылка КАК Ссылка,
МИНИМУМ(ДоговорыКонтрагентов.Дата) КАК Дата
ИЗ
Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
СГРУППИРОВАТЬ ПО
ДоговорыКонтрагентов.Ссылка
И в результате получаем ВСЕ договоры из базы. ЧЯДНТ? При этом похожий по смыслу запрос к регистру сведений замечательно отбирает минимальные значения.
|
|
|
1
Fragster
гуру
06.10.26
✎
13:25
|
ну ты ему написал - выбери минимальную дату для каждой ссылки, он тебе это и сделал
|
|
|
2
Kongo2019
06.10.26
✎
13:27
|
(0)
ВЫБРАТЬ ПЕРВЫЕ 1
ДоговорыКонтрагентов.Ссылка КАК Ссылка,
ДоговорыКонтрагентов.Дата КАК Дата
ИЗ
Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
ГДЕ
ДоговорыКонтрагентов.ПометкаУдаления = ЛОЖЬ
УПОРЯДОЧИТЬ ПО
ДоговорыКонтрагентов.Дата ВОЗРАСТАЮЩЕЙ
|
|
|
3
Волшебник
06.10.26
✎
13:28
|
Выбрать первые 1 ссылка
Из спр.Дог
Упорядочить по дата
|
|
|
4
Baiji
06.10.26
✎
13:34
|
ВЫБРАТЬ
ДоговорыКонтрагентов.Ссылка КАК Ссылка
ИЗ
Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
ГДЕ
ДоговорыКонтрагентов.Дата В
(ВЫБРАТЬ
МИНИМУМ(Справочник.ДоговорыКонтрагентов.Дата) КАК Дата
ИЗ
Справочник.ДоговорыКонтрагентов)
|
|
|
5
Fragster
гуру
06.10.26
✎
13:34
|
скорее всего у него задача "для каждого контрагента" и это типовая задача на собеседовании на джуна
|
|
|
6
Fragster
гуру
06.10.26
✎
13:35
|
хотя я даю "три последних продажи"
|
|
|
7
PLUT
гуру
06.10.26
✎
13:36
|
(0) добавь временную табличку или вложенный запрос в запрос
|
|
|
8
Климов Сергей
06.10.26
✎
13:36
|
(5) Совершенно верно. Это упрощённая задача. Реально нужно для каждого из неопределённого количества контрагентов выбрать один договор, дата которого минимально отклоняется от заданной.
|
|
|
9
Garykom
гуру
06.10.26
✎
13:40
|
(0) Все правильно
Выбрал таблицу минимальных дат относительно договоров
Получил
Договор|МинимальнаяДата
Но так как у тебя Дата идет из самих элементов Договор (каждый договор имеет реквизит дата) - в итоге выбирает все договоры
Тебе надо выбрать вероятно самый ранний договор по контрагенту?
Или просто один самый ранний договор?
|
|
|
10
Garykom
гуру
06.10.26
✎
13:42
|
Или лыжи не едут?
Нет, просто летом стоишь в них одетый
|
|
|
11
Климов Сергей
06.10.26
✎
13:42
|
(9) Нужно для каждого из некоего набора контрагентов выбрать один договор, дата которого минимально отклоняется от заданной.
|
|
|
12
Климов Сергей
06.10.26
✎
13:42
|
(10) это я понимаю.
|
|
|
13
Garykom
гуру
06.10.26
✎
13:43
|
Задачка выбора самых ранних договоров в пределах каждого контрагента решается слегка иначе
Там или ВТ или подзапрос нужен
|
|
|
14
Garykom
гуру
06.10.26
✎
13:45
|
1. Сначала для каждого Контрагента выбери самую раннюю дату Договора, только Даты без самих ссылок на Договор
2. Затем уже имея табличку Контрагент - ДатаДоговора, банально отбираем нужные договоры и получаем Контрагент - Договор - Дата
|
|
|
15
PLUT
гуру
06.10.26
✎
13:45
|
(11) так вот жы, не благодари
https://share.google/aimode/gyhg6FIJbhbfio998
дисклеймер: всё не читал, что ИИчко написало
|
|
|
16
Garykom
гуру
06.10.26
✎
13:46
|
(14)+
3. Случай когда по одному Контрагенту, два и более Договора имею одинаковую минимальную дату - уже сам...
|
|
|
17
Garykom
гуру
06.10.26
✎
13:47
|
(15) а ИИ это (16) предусмотрел?
Или что дата может быть пустой и такие не нуна
|
|
|
18
Климов Сергей
06.10.26
✎
13:52
|
(15) Всё равно спасибо! )))
(16) (17) Разгребусь уже.
Я понял, что они не пересекаются. Но ПОЧЕМУ они не пересекаются? (с) Ералаш
Почему запрос к регистру сведений работает "в один приём", а к справочнику - нет? Или стараться не думать об этом?
|
|
|
19
PLUT
гуру
06.10.26
✎
13:53
|
|
|
|
20
Garykom
гуру
06.10.26
✎
13:59
|
(18) Почему запрос к регистру сведений работает "в один приём", а к справочнику - нет? Или стараться не думать об этом?
потому что запрос к РС другой, только кажется что похожий
|
|
|
21
Chameleon1980
06.10.26
✎
15:36
|
(18) потому, что у РС есть измерения. Почитай обязательно про особенности запросов к РС - тоже пригодится уже на следующем собесе.
|
|