Имя: Пароль:
1C
1С v8
Ошибка с датой
0 koketka
 
10.04.13
15:09
Макет = ВнешняяОбработкаОбъект.ПолучитьМакет("Отчет");
   Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |    Инвойс.Дата КАК Дата,
   |    Инвойс.Номер,
   |    Инвойс.ДокументОснование,
   |    Инвойс.ВалютаДокумента,
   |    Инвойс.СуммаДокумента,
   |    Инвойс.Контрагент
   |ИЗ
   |    Документ.Инвойс КАК Инвойс
   |ГДЕ
   |    Инвойс.Дата МЕЖДУ &ДатаНач И &ДатаКон
   |    И Инвойс.Проведен = ИСТИНА
   |
   |УПОРЯДОЧИТЬ ПО
   |    Дата";

   Запрос.УстановитьПараметр("ДатаКон", Новый Граница(КонецДня(ДатаКон),ВидГраницы.Включая));
   Запрос.УстановитьПараметр("ДатаНач", Новый Граница(НачалоДня(ДатаНач),ВидГраницы.Включая));
Вот запрос выводит ошибку
Форма.Отчет(41)}: Ошибка при вызове метода контекста (Выполнить): {(11, 14)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
Инвойс.Дата <<?>>МЕЖДУ &ДатаНач И &ДатаКон
   Результат = Запрос.Выполнить();
по причине:
{(11, 14)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
Инвойс.Дата <<?>>МЕЖДУ &ДатаНач И &ДатаКон
1 koketka
 
10.04.13
15:10
я правильно поняла нельзя сравнивать даты если я ее установила как границу  Запрос.УстановитьПараметр("ДатаКон", Новый Граница(КонецДня(ДатаКон),ВидГраницы.Включая));
2 zzerro
 
10.04.13
15:11
Запрос.УстановитьПараметр("ДатаКон", КонецДня(ДатаКон));
   Запрос.УстановитьПараметр("ДатаНач", НачалоДня(ДатаНач);
Границы - это для виртуальных таблиц регистров, для остального даты
3 koketka
 
10.04.13
15:13
все поняла спасибо!