|
1с 83 выбрать последний договор у всех контрагентов | ☑ | ||
---|---|---|---|---|
0
buketovav
30.01.20
✎
16:16
|
Добрый день, Дорогие Форумчане!
Что-то я совсем голову сломал: как выбрать у всех контрагентов последний договор? ДОговор - справочник. В договоре есть дата. Регистров сведений с этими данными нет. Делал одну таблицу с максимумом по дате и вторую с максимумом по ссылке, но это не работает. Подскажите или поделитесь кодом рабочим. Заранее благодарю |
|||
1
Timon1405
30.01.20
✎
16:17
|
поделитесь нерабочим кодом, будет видно что именно не получается
|
|||
2
dka80
30.01.20
✎
16:18
|
Выбрать Ссылка, максимум(дата)
Поместить ВТ из договоры группировать по ссылка ; Выбрать ссылка из Договоры Внутреннее соединение ВТ По договоры.Дата=ВТ.Дата И Договоры.Ссылка=ВТ.ССылка |
|||
3
buketovav
30.01.20
✎
16:23
|
(1) аналогично хотел выбрать последние приобретения товаров услуг
ВЫБРАТЬ МАКСИМУМ(ПриобретениеТоваровУслугТовары.Ссылка.Дата) КАК Дата, ПриобретениеТоваровУслугТовары.Ссылка КАК ПТУ ПОМЕСТИТЬ ВТ_ПТУДатаМаксимум ИЗ Документ.ПриобретениеТоваровУслуг.Товары КАК ПриобретениеТоваровУслугТовары ГДЕ ПриобретениеТоваровУслугТовары.Ссылка.Дата <= &ДатаОтчета СГРУППИРОВАТЬ ПО ПриобретениеТоваровУслугТовары.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ МАКСИМУМ(ПриобретениеТоваровУслугТовары.Ссылка) КАК ПТУ2, ПриобретениеТоваровУслугТовары.Ссылка.Дата КАК Дата ИЗ ВТ_ПТУДатаМаксимум КАК ВТ_ПТУДатаМаксимум ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриобретениеТоваровУслуг.Товары КАК ПриобретениеТоваровУслугТовары ПО ВТ_ПТУДатаМаксимум.ПТУ = ПриобретениеТоваровУслугТовары.Ссылка И ВТ_ПТУДатаМаксимум.Дата = ПриобретениеТоваровУслугТовары.Ссылка.Дата СГРУППИРОВАТЬ ПО ПриобретениеТоваровУслугТовары.Ссылка.Дата |
|||
4
buketovav
30.01.20
✎
16:25
|
по ПриобретениюТоваровУслуг хотел получить последнюю закупочную цену
|
|||
5
dka80
30.01.20
✎
16:28
|
(3) теперь человеческим языком напиши, что ты выбираешь в первом запросе, а что во втором.
Потому что в первом запросе у тебя фигня, и как следствие во втором тоже |
|||
6
buketovav
30.01.20
✎
16:31
|
брал пример (кажется) из Радченко и хотел реализовтаь что-то подобное для своих целей
ВЫБРАТЬ ВложенныйЗапрос.Номенклатура, МАКСИМУМ(ТоварыНаСкладах.Регистратор) КАК Регистратор ИЗ (ВЫБРАТЬ ТоварыНаСкладах.Номенклатура КАК Номенклатура, МАКСИМУМ(ТоварыНаСкладах.Период) КАК Период ИЗ РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах ГДЕ ТоварыНаСкладах.Период <= &ДатаОтчета И (ТоварыНаСкладах.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг) СГРУППИРОВАТЬ ПО ТоварыНаСкладах.Номенклатура ) КАК ВложенныйЗапрос ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах ПО ВложенныйЗапрос.Номенклатура = ТоварыНаСкладах.Номенклатура И ВложенныйЗапрос.Период = ТоварыНаСкладах.Период ГДЕ (ТоварыНаСкладах.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг) СГРУППИРОВАТЬ ПО ВложенныйЗапрос.Номенклатура |
|||
7
buketovav
30.01.20
✎
16:32
|
(5) вот и спрашиваю у Вас всех, как сделать правильно
|
|||
8
hhhh
30.01.20
✎
16:34
|
(7) как в (2) пробуй
|
|||
9
Масянька
30.01.20
✎
16:35
|
(6) Ну, написано же "человеческим языком"!
Словами, пальцами (а, нет, пальцев не видно) :) |
|||
10
unenu
30.01.20
✎
16:35
|
||||
11
buketovav
30.01.20
✎
16:43
|
(9) не совсем понял, что Вы хотели этим сказать, поясните, пожалуйста
|
|||
12
buketovav
30.01.20
✎
16:43
|
(10) спасибо, почитаю
|
|||
13
unenu
30.01.20
✎
16:45
|
(11) женская логика прост, может у нее суп закипел или еще чего
|
|||
14
Масянька
30.01.20
✎
16:47
|
(11) В (5) написано "теперь человеческим языком напиши, что ты выбираешь в первом запросе, а что во втором. ".
А в (6) запрос. (13) Про женскую логику говорят все и везде. Про мужскую молчат... А есть ли она? |
|||
15
dka80
30.01.20
✎
16:50
|
(7) ты скажи, что ты хочешь в первом запросе выбрать? Я вот вижу, что в первом запросе у тебя выбираются все документы с датой меньше заданной и выбирается максимальная дата из все документов.
Т.е. из исходных данных Реализация1 01.01.2019 Реализация2 01.02.2019 Реализация3 01.03.2019 у тебя будет результат Реализация1 01.03.2019 Реализация2 01.03.2019 Реализация3 01.03.2019 Зачем он тебе? |
|||
16
unregistered
30.01.20
✎
16:52
|
Если у контрагента договоров с одинаковой датой может быть несколько, то придется еще и по МАКСИМУМ(ссылка) группировать, чтобы отобрать только один договор для контрагента. |
|||
17
dka80
30.01.20
✎
16:52
|
если ты хочешь получить последнюю закупочную цену, то тебе надо найти последний документ поступления КОНКРЕТНОЙ НОМЕНКЛАТУРЫ, а из него найти уже цену.
|
|||
18
D_E_S_131
30.01.20
✎
17:28
|
Что-то тема началась с "Договора, у которого есть дата", а уже из ТЧ документа "ПриобретениеТоваровУслуг" данные выбирают. Как так? :)
|
|||
19
buketovav
31.01.20
✎
09:22
|
(18) да не, тема в том, чтобы выбрать последние данные, если нет у тебя регистров сведений необходимых
|
|||
20
DrWatson
31.01.20
✎
09:32
|
(19) Тема разве не закрыта? В (16) написали же все.
Насчет регистров сведений - ты знаешь, что он просто хранит данные почти так же как справочник? Когда ты пишешь СрезПоследних, то платформа за тебя генерирует текст запроса с обычной выборкой и группировкой. Т.е. иметь РС не обязательно, это можно сделать самому. Разница только в скорости работы на очень больших объёмах. |
|||
21
buketovav
31.01.20
✎
20:56
|
(20) да, все получилось, спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |