Имя: Пароль:
1C
1С v8
Как узнать дату первого поступления?
,
0 ad205
 
27.04.12
15:11
Мозг не хочет к концу недели варить. Вопрос следующий, как запросом получить дату первого поступления товара для определенного договора контрагента.

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

УПОРЯДОЧИТЬ ПО
   ДоговорКонтрагента
АВТОУПОРЯДОЧИВАНИЕ


Не прокатывает. В чем косяк?   Заранее спасибо.
1 lett
 
27.04.12
15:13
Регистратор?
2 Maxus43
 
27.04.12
15:13
зачем вложеный запрос? просто к РегистрНакопления.Закупки.Обороты, Минимум Периода ищи и всё
3 Ненавижу 1С
 
гуру
27.04.12
15:13
4 КМ155
 
27.04.12
15:14
(0) ВЫБРАТЬ
   ЗакупкиОбороты.Номенклатура,
   ЗакупкиОбороты.ДоговорКонтрагента,
   МИНИМУМ(ЗакупкиОбороты.Период) КАК Период
ИЗ
   РегистрНакопления.Закупки.Обороты(, , Регистратор, ) КАК ЗакупкиОбороты

СГРУППИРОВАТЬ ПО
   ЗакупкиОбороты.ДоговорКонтрагента,
   ЗакупкиОбороты.Номенклатура
5 ad205
 
27.04.12
15:15
В том то и дело что я даты поступления не знаю, нужно как раз узнать самую первую дату. При чем если не ставить условие только 1, то список то выводится, а вот с 1. Пустые строки.
6 Лоботряс
 
27.04.12
15:17
(3)это не для уставших пятничных мозгов:)
7 hhhh
 
27.04.12
15:19
(5) ВЫБРАТЬ ПЕРВЫЕ 1 - одну запись на всю базу вы берете, а вам нужно одну запись по каждому договору.
8 ad205
 
27.04.12
15:21
(7) пример можно?
9 КМ155
 
27.04.12
15:22
(8) тебе что-то в (4) не понятно ?
10 ad205
 
27.04.12
15:27
(9) Выдает пустые данные по Периоду

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

УПОРЯДОЧИТЬ ПО
   ДоговорКонтрагента
АВТОУПОРЯДОЧИВАНИЕ
11 Maxus43
 
27.04.12
15:28
(10) да убери ты свой запрос вобще, скопипасти просто
12 Maxus43
 
27.04.12
15:28
накуа соединение делать по договору?
13 КМ155
 
27.04.12
15:29
(10) а накуя группировать по стоимости ?
14 Maxus43
 
27.04.12
15:30
(0) иди домой, пить пиво лучше
15 ad205
 
27.04.12
15:30
Есть отчет в котором кроме прочих данных выводятся договоры, нужно в придачу узнать когда и на какую сумму была самая первая закупка.
16 КМ155
 
27.04.12
15:31
(15) твой код к этой задаче ни каким боком не лежит
17 ad205
 
27.04.12
15:33
(16) Вот и прошу помочь )))
18 Maxus43
 
27.04.12
15:33
(17) Правильно заданый вопрос - это и есть ответ (с)
а щас прочитай сабж и пост (0) :)
19 ad205
 
27.04.12
15:37
В принципе фраза из (0) "Вопрос следующий, как запросом получить дату первого поступления товара для определенного договора контрагента." вполне логична. пример кода тоже не просто выдал.    так что есть мысли,  как это сделать?, я то был уверен что очень просто, а тут на тебе.
20 Maxus43
 
27.04.12
15:39
(19) >>как запросом получить дату первого поступления товара для определенного договора контрагента
ответ в (4), причем на все договора
21 КМ155
 
27.04.12
15:40
(19) код элементарный:
ВЫБРАТЬ
   ЗакупкиОбороты.ДоговорКонтрагента,
   МИНИМУМ(ЗакупкиОбороты.Период) КАК Период
ПОМЕСТИТЬ ПерваяЗакупка
ИЗ
   РегистрНакопления.Закупки.Обороты(, , Регистратор, ) КАК ЗакупкиОбороты

СГРУППИРОВАТЬ ПО
   ЗакупкиОбороты.ДоговорКонтрагента
;

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

СГРУППИРОВАТЬ ПО
   ПерваяЗакупка.ДоговорКонтрагента
;

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ДоговорыКонтрагентов.Ссылка,
   СтоимостьПервойЗакупки.Регистратор,
   СтоимостьПервойЗакупки.СтоимостьОборот
ИЗ
   Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
       ЛЕВОЕ СОЕДИНЕНИЕ СтоимостьПервойЗакупки КАК СтоимостьПервойЗакупки
       ПО СтоимостьПервойЗакупки.ДоговорКонтрагента = ДоговорыКонтрагентов.Ссылка
22 ad205
 
27.04.12
15:50
(21) Спасибо тебе, буду разбираться.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.