Имя: Пароль:
1C
 
v8: выбрать регистратор с максимальной датой
,
0 YelenaD
 
12.08.08
07:40
Из регистра Продажи нужно выбрать регистратор с максимальной датой по товару. МАКСИМУМ(ПродажиОбороты.Регистратор) выбирает Максимум по номеру документа, как сделать по дате?

ВЫБРАТЬ
   ПродажиОбороты.Номенклатура КАК Номенклатура,
   ПродажиОбороты.Контрагент КАК Контрагент,
   ПродажиОбороты.ДоговорКонтрагента КАК ДоговорКонтрагента,
   МАКСИМУМ(ПродажиОбороты.Регистратор) КАК Регистратор
ИЗ
   РегистрНакопления.Продажи.Обороты(, , Регистратор, Номенклатура = &Номенклатура) КАК ПродажиОбороты

СГРУППИРОВАТЬ ПО
   ПродажиОбороты.Номенклатура,
   ПродажиОбороты.Контрагент,
   ПродажиОбороты.ДоговорКонтрагента
1 magicSan
 
12.08.08
07:41
ПродажиОбороты.Регистратор.дата
пробывал?
2 magicSan
 
12.08.08
07:42
но я бы делал упорядочить по дате убыв и брал первую запись она и есть дле тебя искомая, а вааабще нафига тут запрос????последовательность надо брать
3 YelenaD
 
12.08.08
07:45
(1) И как тут выбрать максимальный регистратор? Если делать МАКСИМУМ(ПродажиОбороты.Регистратор.Дата) И ПродажиОбороты.Регистратор тогда все регистраторы выпадут

Условие в запросе будет Номенклатура В (&Номенклатура)
Т.е. нужно выбрать последние документы по товарам, которые двигали Продажи
4 RomaH
 
naïve
12.08.08
07:46
Максимм по дате и связать
5 Андрюха
 
12.08.08
07:47
ВЫБРАТЬ 1 и СОРТИРОВАТЬ ПО дате регистратора УБЫВ
6 YelenaD
 
12.08.08
07:48
(4) А можно примерчик, что-то я туплю
7 magicSan
 
12.08.08
07:48
(3) порядок по дате берешь первую запись она и есть сикомая, ну нафига тебе делать запрос ко всему регистру???када можно взять последователтьность??
8 YelenaD
 
12.08.08
07:48
(5) Номенклатур будет несколько
9 YelenaD
 
12.08.08
07:50
(7) Что значит "берешь первую запись", если номенклатур несколько будет и по КАЖДОЙ нужен максимальный регистратор
10 magicSan
 
12.08.08
07:52
берешь тогда временую таблицу и к к ней цепляешь
11 YelenaD
 
12.08.08
07:53
(10) Хотелось бы как-нибудь одним запросом обойтись :(
12 Андрюха
 
12.08.08
07:57
Отобрать необходимые номенклатуры и вложенными запросами получить (5)
13 magicSan
 
12.08.08
08:03
(9)пордон ваш запрос уже возращает только те регистраторы где есть задная номенклатура , то есть упорядочить по номенклатуре далее по дате
14 magicSan
 
12.08.08
08:10
(13) это во вложеном запросе в нём же нумеруешь записи , и уже в "главном запросе" делаешь отбор по полю где пронумерованы записи
15 RomaH
 
naïve
12.08.08
08:21
ВЫБРАТЬ
   ПродажиОбороты.Номенклатура КАК Номенклатура,
   ПродажиОбороты.Контрагент КАК Контрагент,
   ПродажиОбороты.ДоговорКонтрагента КАК ДоговорКонтрагента,
   МАКСИМУМ(ПродажиОбороты.Регистратор.Дата) КАК Регистратор
ИЗ
   РегистрНакопления.Продажи.Обороты(, , Регистратор, Номенклатура = &Номенклатура) КАК ПродажиОбороты

СГРУППИРОВАТЬ ПО
   ПродажиОбороты.Номенклатура,
   ПродажиОбороты.Контрагент,
   ПродажиОбороты.ДоговорКонтрагента


это все во вложеный запрос

получишь таблицу в разрезе всей аналитики и максимальной датой по этому разрезу (вобще-то нужен момент времени)

потом с ней уже делаешь связь с условием на равенство всех полей
16 tautau
 
12.08.08
08:43
Нафиг там вообще обороты?

ВЫБРАТЬ
   Продажи.Номенклатура КАК Номенклатура,
   Продажи.Контрагент КАК Контрагент,
   Продажи.ДоговорКонтрагента КАК ДоговорКонтрагента,
   Продажи.Регистратор
ИЗ
   РегистрНакопления.Продажи КАК Продажи
       ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           Продажи.Номенклатура КАК Номенклатура,
           Продажи.Контрагент КАК Контрагент,
           Продажи.ДоговорКонтрагента КАК ДоговорКонтрагента,
           МАКСИМУМ(Продажи.Период) КАК Период
       ИЗ
           РегистрНакопления.Продажи КАК Продажи
       ГДЕ
           Продажи.Период <= &НаДату
           И Продажи.Номенклатура В(&СписокНоменклатуры)
       
       СГРУППИРОВАТЬ ПО
           Продажи.Номенклатура,
           Продажи.Контрагент,
           Продажи.ДоговорКонтрагента) КАК ВложенныйЗапрос
       ПО Продажи.Номенклатура = ВложенныйЗапрос.Номенклатура
           И Продажи.Контрагент = ВложенныйЗапрос.Контрагент
           И Продажи.ДоговорКонтрагента = ВложенныйЗапрос.ДоговорКонтрагента
           И Продажи.Период = ВложенныйЗапрос.Период
17 YelenaD
 
12.08.08
09:01
(16) Спасибо! Ну ооочень выручили :)
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс