Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Запрос Группировка
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
meverikxp
Здравствуйте есть такой запрос
Запрос.Текст = "ВЫБРАТЬ 
        |Ссылка.Контрагент КАК Контрагенты,
    |Ссылка.Дата,
    |Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |СУММА (Количество) КАК Количество,
    |СУММА (Цена) КАК Цена,
    |СУММА (Сумма) КАК Сумма
    
    |ИЗ
    |Документ.РеализацияТоваровУслуг.Товары
    |ГДЕ
    |Ссылка.Дата > &Дата
    |СГРУППИРОВАТЬ ПО Ссылка.Контрагент, Ссылка.ДоговорКонтрагента, Ссылка.Дата";

Подскажите как сгруппировать данные только по контрагенту и договору, потому что когда удаляю группировку по дате вылазит ошибка
Vofka
Только убрать из запроса дату.
meverikxp
Цитата(Vofka @ 19.05.11, 14:37) необходимо зарегистрироваться для просмотра ссылки
Только убрать из запроса дату.

а как сделать что бы выбрать дату, может как то вложенным запросом, подскажите пожалуйста
meverikxp
Цитата(Vofka @ 19.05.11, 15:07) необходимо зарегистрироваться для просмотра ссылки
    Запрос.Текст = "ВЫБРАТЬ 
    |Ссылка.Контрагент КАК Контрагенты,
    |Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |СУММА (Количество) КАК Количество,
    |СУММА (Цена) КАК Цена,
    |СУММА (Сумма) КАК Сумма
    |ИЗ
    |Документ.РеализацияТоваровУслуг.Товары
    |ГДЕ
    |Ссылка.Дата > &Дата
    |СГРУППИРОВАТЬ ПО Ссылка.Контрагент, Ссылка.ДоговорКонтрагента";

а как мне потом обратится к дате?

подскажите, возможно ли сделать сначала отбор. а потом по фильтрованным данным сделать запрос?
Vofka
meverikxp, успели всё-таки месагу мою прочесть. Дело в том, что я сначала написал запрос, потом прчитал ещё раз ваш пост и понял, что фигню написал. И удалил пост.

А если так?:

Запрос.Текст = "ВЫБРАТЬ 
|Ссылка,
    |Ссылка.Контрагент КАК Контрагенты,
    |Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |СУММА (Количество) КАК Количество,
    |СУММА (Цена) КАК Цена,
    |СУММА (Сумма) КАК Сумма
    |ИЗ
    |Документ.РеализацияТоваровУслуг.Товары
    |ГДЕ
    |Ссылка.Дата > &Дата
    |СГРУППИРОВАТЬ ПО Ссылка.Контрагент, Ссылка.ДоговорКонтрагента, Ссылка";


А в выборке уже из Ссылки берите дату.
logist
В том, что Вы делаете нужен период дат.
meverikxp
Цитата(Vofka @ 19.05.11, 15:44) необходимо зарегистрироваться для просмотра ссылки
meverikxp, успели всё-таки месагу мою прочесть. Дело в том, что я сначала написал запрос, потом прчитал ещё раз ваш пост и понял, что фигню написал. И удалил пост.

А если так?:

Запрос.Текст = "ВЫБРАТЬ 
|Ссылка,
    |Ссылка.Контрагент КАК Контрагенты,
    |Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |СУММА (Количество) КАК Количество,
    |СУММА (Цена) КАК Цена,
    |СУММА (Сумма) КАК Сумма
    |ИЗ
    |Документ.РеализацияТоваровУслуг.Товары
    |ГДЕ
    |Ссылка.Дата > &Дата
    |СГРУППИРОВАТЬ ПО Ссылка.Контрагент, Ссылка.ДоговорКонтрагента, Ссылка";


А в выборке уже из Ссылки берите дату.

Так выходит сколько документов столько и записей, а мне нужно выбрать по контрагенту за выбранный период суммарную номенклатуру с ценами и создать НН, И если контрагент1 покупал номенклатуру1 5 раз, мне в результате нужна одна строка с количеством 5, а так выводит 5 строк.

Цитата(logist @ 19.05.11, 15:54) необходимо зарегистрироваться для просмотра ссылки
В том, что Вы делаете нужен период дат.

а можно более подробно, что вы имеете ввиду по периодом дат?
Zaval
Не группируйте ни по докам ни по дате - тогда просуммирует.
meverikxp
Цитата(Zaval @ 19.05.11, 16:18) необходимо зарегистрироваться для просмотра ссылки
Не группируйте ни по докам ни по дате - тогда просуммирует.

Я заполняю значения в ТЧ, и мне нужно сгруппировать по контрагенту

То-есть. я заполняю ТЧ списком контрагентов. потом обхожу каждую строку и создаю на основании НН, если в ТЧ будет лишняя строка будет и лишний документ
Vofka
Цитата
а можно более подробно, что вы имеете ввиду по периодом дат?

Ну ё, тяжело подумать? Это значит 2 даты: начальная и конечная.

И пока вообще не понятно нафига вы сюда дату лепите, если везде говорите, что вам надо сгруппировать по контрагенту и договору. Дата зачем?
logist
Цитата(Vofka @ 19.05.11, 17:05) необходимо зарегистрироваться для просмотра ссылки
Дата зачем?

Что бы ограничить период выборки, т.е. выписать налоговую только за месяц/неделю (например).
p.s.в запросе еще не хватает условия что документ "проведен" (раз уж выбираете из документов).
Vofka
logist, я так понимаю, автор в результате запроса хочет дату видеть. Если нет, то должно работать так, как я написал первый раз:

    Запрос.Текст = "ВЫБРАТЬ 
    |Ссылка.Контрагент КАК Контрагенты,
    |Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |СУММА (Количество) КАК Количество,
    |СУММА (Цена) КАК Цена,
    |СУММА (Сумма) КАК Сумма
    |ИЗ
    |Документ.РеализацияТоваровУслуг.Товары
    |ГДЕ
    |Ссылка.Дата > &Дата
    |СГРУППИРОВАТЬ ПО Ссылка.Контрагент, Ссылка.ДоговорКонтрагента";
meverikxp
Цитата(Vofka @ 19.05.11, 18:32) необходимо зарегистрироваться для просмотра ссылки
logist, я так понимаю, автор в результате запроса хочет дату видеть. Если нет, то должно работать так, как я написал первый раз:

    Запрос.Текст = "ВЫБРАТЬ 
    |Ссылка.Контрагент КАК Контрагенты,
    |Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    |СУММА (Количество) КАК Количество,
    |СУММА (Цена) КАК Цена,
    |СУММА (Сумма) КАК Сумма
    |ИЗ
    |Документ.РеализацияТоваровУслуг.Товары
    |ГДЕ
    |Ссылка.Дата > &Дата
    |СГРУППИРОВАТЬ ПО Ссылка.Контрагент, Ссылка.ДоговорКонтрагента";

В данном запросе будет ошибка на
|Ссылка.Дата > &Дата

потому что в запросе не выбирается поле Дата или Ссылка. вот в принципе что я хочу:
есть несколько продаж одному контрагенту по нескольким видам номенклатуры в разные дни, и нужно по всем реализациям сделать общую НН, и так чтобы номенклатура не повторялась, а суммировалась. И поле Дата мне нужно только для того чтобы сравнить выбранную дату пользователем с датой документа, попадает ли он в заданный период или нет.
конечный результат должен быть вроде этого:
контрагент1, номенклатура1 - 10шт
................... Номенклатура2 -15шт

но в принципе данные всегда будут формироваться за месяц, может можно их по этому принципу сгруппировать? Но лучше было бы с даты по дату
Vofka
Цитата
В данном запросе будет ошибка ... потому что в запросе не выбирается поле Дата или Ссылка.

Вот же мне повезло!!! У меня ошибок таких нет.

meverikxp, лично мне уже начинает надоедать ваше лентяйство! Попробовали б вы мой запрос - убедились бы в том, что всё замечательно работает.

И вопросы чётче задавать надо!

Контрол + Ц, Контрол + В:
ВЫБРАТЬ
    РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагенты,
    РеализацияТоваровУслугТовары.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество,
    СУММА(РеализацияТоваровУслугТовары.Цена) КАК Цена,
    СУММА(РеализацияТоваровУслугТовары.Сумма) КАК Сумма
ИЗ
    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
    РеализацияТоваровУслугТовары.Ссылка.Дата Между &Дата И &Дата2

СГРУППИРОВАТЬ ПО
    РеализацияТоваровУслугТовары.Ссылка.Контрагент,
    РеализацияТоваровУслугТовары.Ссылка.ДоговорКонтрагента


В общем - 32542200.gif
meverikxp
Цитата(Vofka @ 20.05.11, 8:57) необходимо зарегистрироваться для просмотра ссылки
Вот же мне повезло!!! У меня ошибок таких нет.

meverikxp, лично мне уже начинает надоедать ваше лентяйство! Попробовали б вы мой запрос - убедились бы в том, что всё замечательно работает.

И вопросы чётче задавать надо!

Контрол + Ц, Контрол + В:
ВЫБРАТЬ
    РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагенты,
    РеализацияТоваровУслугТовары.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество,
    СУММА(РеализацияТоваровУслугТовары.Цена) КАК Цена,
    СУММА(РеализацияТоваровУслугТовары.Сумма) КАК Сумма
ИЗ
    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
    РеализацияТоваровУслугТовары.Ссылка.Дата Между &Дата И &Дата2

СГРУППИРОВАТЬ ПО
    РеализацияТоваровУслугТовары.Ссылка.Контрагент,
    РеализацияТоваровУслугТовары.Ссылка.ДоговорКонтрагента


В общем - 32542200.gif

От это я туплю.... 09000000.gif
Не получалось потому что пробовал делать в консоли запросов, а параметр задать забыл, вот сегодня выспался, прочитал ваш пост, написал сразу в конфигураторе, задал параметры, и О... ЧУДО работает. Спасибо Вам за терпение, и за то что доказали мне что я не прав.
Vofka
А где же тогда плюсики мне? why.gif
meverikxp
Цитата(Vofka @ 20.05.11, 9:32) необходимо зарегистрироваться для просмотра ссылки
А где же тогда плюсики мне? why.gif

Уже.
А как к дате добавить 23 часа 59 минут и 59 сек.?
Vofka
Цитата
А как к дате добавить 23 часа 59 минут и 59 сек.?

Опять начинаем разводить в теме кашу? Ну откройте книгу какую-то, ну ёлки-палки. Закрыто.
Batchir
ТекДата + 24*60*60 - 1
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.