Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 04:17
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Как в запросе установить период, сгруппировать по схожим реквизитам?  (Прочитано 8530 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kulkrise

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-08-06
    • Skype: kulkrise
  • Сайт: 
  • Профессия: Бухгалтер
1С 8.2 БП 2.0. Обычное приложение.


Прощу прощения за открытие новой темы, однако это связано с отсутствием
возможности добавить вложение в уже ранее созданную тему.


1. Как сделать, чтобы выборка из запроса организовывалась за определенный период,
с учетом установленных параметров в обработке реквизитов: НачДата и КонДата.
А здесь я вообще не понимаю как установить привязку.


2. Как сгруппировать схожих по значениям контрагентов, или выбрать только первых
или только последних.
Если я устанавливаю ВЫБРАТЬ ПЕРВЫЕ или ВЫБРАТЬ ПОСЛЕДНИЕ или
СГРУППИРОВАТЬ ПО, то мне выдает ошибку.


Оффлайн Besart

  • *****
  • Сообщений: 678
  • РЕПУТАЦИЯ: 142
  • КПД: 21%
  • Регистрация: 2012-12-10
    • Skype: artfa.a
  • Компания: Фрилансер
  • Профессия: Программист 8.1
1. Как сделать, чтобы выборка из запроса организовывалась за определенный период,
с учетом установленных параметров в обработке реквизитов: НачДата и КонДата.
где ВашаДата между НачДата и КонДата

2. Как сгруппировать схожих по значениям контрагентов,
по каким значениям вы хотите сгруппировать?

Оффлайн kulkrise

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-08-06
    • Skype: kulkrise
  • Сайт: 
  • Профессия: Бухгалтер
где ВашаДата между НачДата и КонДата
я так понимаю что в запросе нужно указать
|ГДЕ Документ.ПоступлениеТоваровУслуг.Дата = &НачДата И Документ.ПоступлениеТоваровУслуг.Дата = &КонДата
я правильно понимаю?

по каким значениям вы хотите сгруппировать?

Возможно СГРУППИРОВАТЬ ПО не совсем верно, корректнее выбрать ПЕРВЫЕ или ПОСЛЕДНИЕ, но выдает ошибку.
У меня выводит например, Контрагент Авто-Март и выборка по нему значений реквизитов из запроса.
Так вот этот Авто-Март повторяется столько раз, сколько документов по нему проводилось.
Но в этом нет необходимости, т.к. реквизиты самих документов я не вытаскиваю. то мне нет
необходимости чтобы он столько раз дублировался. Достаточно вытащить его один раз.

Оффлайн sdilshod

  • **
  • Сообщений: 76
  • РЕПУТАЦИЯ: 11
  • КПД: 14%
  • Регистрация: 2013-09-30
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
Возможно СГРУППИРОВАТЬ ПО не совсем верно, корректнее выбрать ПЕРВЫЕ или ПОСЛЕДНИЕ, но выдает ошибку.

Выполнение запроса должно быть на сервере

&НаСервере
Процедура ЗаполнитьПараметры(ОбластьШапки, ОбластьСтроки)
  // Запрос
КонецПроцедуры

Оффлайн kulkrise

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-08-06
    • Skype: kulkrise
  • Сайт: 
  • Профессия: Бухгалтер
Спасибо, исправлено.

Ошибки:
ВЫБРАТЬ ПОСЛЕДНИЕ
{Форма.Форма.Форма(79)}: Ошибка при вызове метода контекста (Выполнить)
   РезультатЗапроса = МойЗапрос.Выполнить().Выбрать();
по причине:
{(2, 1)}: Неправильный псевдоним "Контрагент.Ссылка"
<<?>>Контрагент.Ссылка КАК Ссылка,

ВЫБРАТЬ ПЕВЫЕ
{Форма.Форма.Форма(79)}: Ошибка при вызове метода контекста (Выполнить)
   РезультатЗапроса = МойЗапрос.Выполнить().Выбрать();
по причине:
{(2, 1)}: Ожидается константа
<<?>>Контрагент.Ссылка КАК Ссылка,

	|УПОРЯДОЧИТЬ ПО
|ГруппаКонтрагентов,
|Наименование
|СГРУППИРОВАТЬ ПО
|Контрагент.Код,
|Контрагент.Наименование,
|Контрагент.Родитель.Наименование,
|Контрагент.НаименованиеПолное,
|Контрагент.ИНН,
|Контрагент.КПП,
|Контрагент.КодПоОКПО,
|Контрагент.ОсновнойБанковскийСчет.НомерСчета,
|Контрагент.ОсновнойБанковскийСчет.Банк.Наименование,
|Контрагент.ОсновнойБанковскийСчет.Банк.Код,
|Контрагент.ОсновнойБанковскийСчет.Банк.КоррСчет,
|Контрагент.ОсновнойДоговорКонтрагента.ВидДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.Номер,
|Контрагент.ОсновнойДоговорКонтрагента.Дата,
|Контрагент.ОсновнойДоговорКонтрагента.СрокДействия";
{Форма.Форма.Форма(78)}: Ошибка при вызове метода контекста (Выполнить)
   РезультатЗапроса = МойЗапрос.Выполнить().Выбрать();
по причине:
{(43, 1)}: Синтаксическая ошибка "СГРУППИРОВАТЬ"
<<?>>СГРУППИРОВАТЬ ПО

Оффлайн sdilshod

  • **
  • Сообщений: 76
  • РЕПУТАЦИЯ: 11
  • КПД: 14%
  • Регистрация: 2013-09-30
  • Сайт: 
  • Профессия: Программист 1С
	|Контрагент.ОсновнойДоговорКонтрагента.СрокДействия КАК СрокДействия
|ИЗ Документ.РеализацияТоваровУслуг КАК Контрагент

Оффлайн kulkrise

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-08-06
    • Skype: kulkrise
  • Сайт: 
  • Профессия: Бухгалтер
	МойЗапрос = Новый Запрос;
МойЗапрос.Текст =
"ВЫБРАТЬ
|Контрагент.Ссылка КАК Ссылка,
|Контрагент.Код КАК Код,
|Контрагент.Наименование КАК Наименование,
|Контрагент.Родитель.Наименование КАК ГруппаКонтрагентов,
|Контрагент.НаименованиеПолное КАК ПолноеНаименование,
|Контрагент.ИНН КАК ИНН,
|Контрагент.КПП КАК КПП,
|Контрагент.КодПоОКПО КАК КодПоОКПО,
|Контрагент.ОсновнойБанковскийСчет.НомерСчета КАК РасчетныйСчет,
|Контрагент.ОсновнойБанковскийСчет.Банк.Наименование КАК НаименованиеБанка,
|Контрагент.ОсновнойБанковскийСчет.Банк.Код КАК БИКБанка,
|Контрагент.ОсновнойБанковскийСчет.Банк.КоррСчет КАК КоррСчетБанка,
|Контрагент.ОсновнойДоговорКонтрагента.ВидДоговора КАК ВидДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.Номер КАК НомерДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.Дата КАК ДатаДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.СрокДействия КАК СрокДействия
|СГРУППИРОВАТЬ ПО
|Контрагент.Код,
|Контрагент.Наименование,
|Контрагент.Родитель.Наименование,
|Контрагент.НаименованиеПолное,
|Контрагент.ИНН,
|Контрагент.КПП,
|Контрагент.КодПоОКПО,
|Контрагент.ОсновнойБанковскийСчет.НомерСчета,
|Контрагент.ОсновнойБанковскийСчет.Банк.Наименование,
|Контрагент.ОсновнойБанковскийСчет.Банк.Код,
|Контрагент.ОсновнойБанковскийСчет.Банк.КоррСчет,
|Контрагент.ОсновнойДоговорКонтрагента.ВидДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.Номер,
|Контрагент.ОсновнойДоговорКонтрагента.Дата,
|Контрагент.ОсновнойДоговорКонтрагента.СрокДействия
  |ИЗ Документ.РеализацияТоваровУслуг Как Контрагент
|ГДЕ Проведен
|ОБЪЕДИНИТЬ ВСЕ
|ВЫБРАТЬ
|Контрагент.Ссылка КАК Ссылка,
|Контрагент.Код КАК Код,
|Контрагент.Наименование КАК Наименование,
|Контрагент.Родитель.Наименование КАК ГруппаКонтрагентов,
|Контрагент.НаименованиеПолное КАК ПолноеНаименование,
|Контрагент.ИНН КАК ИНН,
|Контрагент.КПП КАК КПП,
|Контрагент.КодПоОКПО КАК КодПоОКПО,
|Контрагент.ОсновнойБанковскийСчет.НомерСчета КАК РасчетныйСчет,
|Контрагент.ОсновнойБанковскийСчет.Банк.Наименование КАК НаименованиеБанка,
|Контрагент.ОсновнойБанковскийСчет.Банк.Код КАК БИКБанка,
|Контрагент.ОсновнойБанковскийСчет.Банк.КоррСчет КАК КоррСчетБанка,
|Контрагент.ОсновнойДоговорКонтрагента.ВидДоговора КАК ВидДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.Номер КАК НомерДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.Дата КАК ДатаДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.СрокДействия КАК СрокДействия
|СГРУППИРОВАТЬ ПО
|Контрагент.Код,
|Контрагент.Наименование,
|Контрагент.Родитель.Наименование,
|Контрагент.НаименованиеПолное,
|Контрагент.ИНН,
|Контрагент.КПП,
|Контрагент.КодПоОКПО,
|Контрагент.ОсновнойБанковскийСчет.НомерСчета,
|Контрагент.ОсновнойБанковскийСчет.Банк.Наименование,
|Контрагент.ОсновнойБанковскийСчет.Банк.Код,
|Контрагент.ОсновнойБанковскийСчет.Банк.КоррСчет,
|Контрагент.ОсновнойДоговорКонтрагента.ВидДоговора,
|Контрагент.ОсновнойДоговорКонтрагента.Номер,
|Контрагент.ОсновнойДоговорКонтрагента.Дата,
|Контрагент.ОсновнойДоговорКонтрагента.СрокДействия
  |ИЗ Документ.ПоступлениеТоваровУслуг КАК Контрагент
|ГДЕ Проведен
|УПОРЯДОЧИТЬ ПО
|ГруппаКонтрагентов,
|Наименование";
{Форма.Форма.Форма(94)}: Ошибка при вызове метода контекста (Выполнить)
   РезультатЗапроса = МойЗапрос.Выполнить().Выбрать();
по причине:
{(34, 1)}: Синтаксическая ошибка "ИЗ"
<<?>>ИЗ Документ.РеализацияТоваровУслуг Как Контрагент

Оффлайн Besart

  • *****
  • Сообщений: 678
  • РЕПУТАЦИЯ: 142
  • КПД: 21%
  • Регистрация: 2012-12-10
    • Skype: artfa.a
  • Компания: Фрилансер
  • Профессия: Программист 8.1
создайте этот же запрос через конструктор.
учите матчасть, иначе вы так один запрос будете создвать неделю
Добавлено: 06 Ноя 2013, 19:02

переименуйте Контрагент

Последний раз редактировалось: Besart; 06 Ноя 2013, 19:02. Причина: Объединение сообщений

Оффлайн kulkrise

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-08-06
    • Skype: kulkrise
  • Сайт: 
  • Профессия: Бухгалтер
через конструктор создавала - не помогло,
как говорится: плохому танцору и ноги мешают".

про матчасть - это наука и, учитывая, что я к ней никогда даже не подступалась,
вряд ли я ее смогу выучить без посторонней помощи, возможно в будущем
я попытаюсь ее изучать, но не сейчас.

Контрагент переименовывала. не помогло, решилось по-другому,
уже и не помню, что я там меняла, но привожу запрос, на моменте группировки работает.

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

на моменте дат - не работает:
Также на форме есть 2 реквизита: НачПериод и КонПериод, но при добавлении в запрос
 
 
|ГДЕ Проведен
|И Документ.РеализацияТоваровУслуг >= &НачПериод
|И Документ.РеализацияТоваровУслуг <= &КонПериод
|СГРУППИРОВАТЬ ПО
|...
|ГДЕ Проведен 
|И Документ.ПоступлениеТоваровУслуг >= &НачПериод
|И Документ.ПоступлениеТоваровУслуг <= &КонПериод
|СГРУППИРОВАТЬ ПО
 
выдает ошибку:
 
{Форма.Форма.Форма(100)}:
Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = МойЗапрос.Выполнить().Выбрать();
по причине:{(20, 3)}:
Поле не найдено "Документ.РеализацияТоваровУслуг"И <<?>>Документ.РеализацияТоваровУслуг >= &НачПериод
 
Я так понимаю это связано с отсутствием привязки &НачПериод и &КонПериод с реквизитами формы. но не пойму как их между собой связать,
попробовала прописать ЭтаФорма.НачПериод и ЭтаФорма.КонПериод ошибка в принципе та же

Оффлайн GRADUS

  • *****
  • Сообщений: 699
  • РЕПУТАЦИЯ: 51
  • КПД: 7%
  • Регистрация: 2013-06-08
  • Сайт: 
  • Профессия: Программист 1С
Как вам еще раз сказать, что уже сказали?

Да, мы видим все твои ошибки, да они банальны, но они будут всегда, если будешь так писать запросы.
Для создания запросов пользуйся конструктором запросов, затем смотри что получилось, иначе всегда будут тупые ошибки как сейчас.

В последнем коде зачем ты сравниваешь ссылку с датой?

Запрос к форме вот вообще никак не привязан. Небо и земля.


 

Получить номер недели в месяце в запросе [номер недели]

Автор MuI_I_IkaРаздел Алгоритмы

Ответов: 0
Просмотров: 4128
Последний ответ 15 Июл 2015, 18:24
от MuI_I_Ika
РС "СостояниеОСОрганизаций" в запросе

Автор ILLUMIРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1114
Последний ответ 07 Янв 2015, 05:33
от ILLUMI
Как исправить при обновлении ИБ: Ошибка в запросе набора данных по причине: {(58, 2)}: Несовместимые типы "ВЫБОР" <<?>>ВЫБОР

Автор dollРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 2113
Последний ответ 01 Янв 2017, 20:27
от Геннадий ОбьГЭС
"Поле не найдено" в запросе, но оно есть.

Автор ferrari314Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 2664
Последний ответ 27 Окт 2015, 10:29
от vitasw
Временная таблица во вложенном запросе+Группировка VS Таблица значений + Свернуть

Автор TsaigerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 581
Последний ответ 14 Июл 2017, 23:10
от Tsaiger

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
171 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
38 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 211
  • Точка Скрытых: 0
  • Точка Пользователей: 3
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal