Всегда делал вот так
Запрос.УстановитьПараметр("ДатаОтчета", КонецДня(ДатаОтчета));
А сегодня пол дня тупил - и как оказалось надо делать нет так , а вариант который ниже.
ГраницаКНД = Новый Граница(КонецДня(ДатаОтчета), ВидГраницы.Включая);
Запрос.УстановитьПараметр("ДатаОтчета", ГраницаКНД );
Вопрос - а в чем разница между этими двумя вариантами, может базу на ошибки проверить. Релиз 1С:Предприятие 8.2 (8.2.18.102) Бухгалтерия предприятия, редакция 2.0 (2.0.51.8)
вот кусок кода
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстатки.СуммаОстаток КАК Сумма,
| ХозрасчетныйОстатки.Счет КАК Счет,
| ХозрасчетныйОстатки.Субконто1 КАК Контрагент,
| ХозрасчетныйОстатки.Субконто2 КАК Договор
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаОтчета, Счет в (&СписокСчетов), , ) КАК ХозрасчетныйОстатки
|ГДЕ
| ХозрасчетныйОстатки.Организация = &Организация
|
|УПОРЯДОЧИТЬ ПО
| Счет,
| ХозрасчетныйОстатки.Субконто1
|АВТОУПОРЯДОЧИВАНИЕ ";
СписокСчетов=Новый СписокЗначений;
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.01"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.03"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.02"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.04"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.02"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.04"));
ГраницаКНД = Новый Граница(КонецДня(ДатаОтчета), ВидГраницы.Включая);
Запрос.УстановитьПараметр("ДатаОтчета", ГраницаКНД );
//Запрос.УстановитьПараметр("ДатаОтчета", КонецДня(ДатаОтчета));
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("СписокСчетов", СписокСчетов);
Результат = Запрос.Выполнить();
ТЗ2=Результат.Выгрузить();
Запрос.УстановитьПараметр("ДатаОтчета", КонецДня(ДатаОтчета));
А сегодня пол дня тупил - и как оказалось надо делать нет так , а вариант который ниже.
ГраницаКНД = Новый Граница(КонецДня(ДатаОтчета), ВидГраницы.Включая);
Запрос.УстановитьПараметр("ДатаОтчета", ГраницаКНД );
Вопрос - а в чем разница между этими двумя вариантами, может базу на ошибки проверить. Релиз 1С:Предприятие 8.2 (8.2.18.102) Бухгалтерия предприятия, редакция 2.0 (2.0.51.8)
вот кусок кода
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ХозрасчетныйОстатки.СуммаОстаток КАК Сумма,
| ХозрасчетныйОстатки.Счет КАК Счет,
| ХозрасчетныйОстатки.Субконто1 КАК Контрагент,
| ХозрасчетныйОстатки.Субконто2 КАК Договор
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаОтчета, Счет в (&СписокСчетов), , ) КАК ХозрасчетныйОстатки
|ГДЕ
| ХозрасчетныйОстатки.Организация = &Организация
|
|УПОРЯДОЧИТЬ ПО
| Счет,
| ХозрасчетныйОстатки.Субконто1
|АВТОУПОРЯДОЧИВАНИЕ ";
СписокСчетов=Новый СписокЗначений;
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.01"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.03"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.02"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("66.04"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.02"));
СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.04"));
ГраницаКНД = Новый Граница(КонецДня(ДатаОтчета), ВидГраницы.Включая);
Запрос.УстановитьПараметр("ДатаОтчета", ГраницаКНД );
//Запрос.УстановитьПараметр("ДатаОтчета", КонецДня(ДатаОтчета));
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("СписокСчетов", СписокСчетов);
Результат = Запрос.Выполнить();
ТЗ2=Результат.Выгрузить();
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот