Имя: Пароль:
1C
 
Запрос из базы 7.7 к остаткам по счету в базе 8.2 БП2
0 dimm7310
 
10.08.17
10:54
В продолжение темы Запрос из базы 7.7 к остаткам по счету 41 в базе 8.2  БП2

Если в кратко о сути проблемы:

Из базы 7.7 формируется запрос в базе на 8.3 БП2 с целью получить остатки и обороты товара по счету за период.
Вот код запроса:

ИмпЗапрос=v8.NewObject("Запрос");
ИмпМассив =v8.NewObject("Массив");
ИмпМассив.Insert("10.04");
ИмпЗапрос.Текст =   "ВЫБРАТЬ
               |    ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Субконто1,
               |    ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокДт Как КоличествоНачальное,
               |    ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт Как КоличествоКонечное
               |ИЗ
              |    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, &Дата2, Период, , Счет В ИЕРАРХИИ(&СчетТ) , , ) КАК ХозрасчетныйОстаткиИОбороты
               |ГДЕ
               |    ХозрасчетныйОстаткиИОбороты.Субконто1.Код = &Товар
               |
               |УПОРЯДОЧИТЬ ПО
               |    Субконто1";
ИмпЗапрос.УстановитьПараметр("Дата1",Дата1);
ИмпЗапрос.УстановитьПараметр("Дата2",(Дата2+1));
ИмпЗапрос.УстановитьПараметр("Товар",СокрЛП(Номенклатура.Код));
ИмпЗапрос.УстановитьПараметр("СчетТ",v8.ПланыСчетов.Хозрасчетный.НайтиПоКоду("10"));  




суть проблемы в том, что Дата2 - это семерошный реквизит (даты) и при передаче в запрос 8-ки он передается с нулевым временем. Мне же нужно задать конец дня Дата2 , как мне посоветовали в ветке в запросе указать Дата2+1, но здесь есть один большой минус: бух-ра часто делают поступление на склад документа со временем о ч 00 мин, и следовательно приход попадает в оборот - значит не подходит

Мне нужно в запросе конец дня Дата2

пробовал в параметре запроса передавать
v8.дата(2017,07,31,23,59,59) - выдает ошибку "Поле агрегатного объекта не обнаружено (дата)"

Как обойти проблему:  может можно в самом запросе текстом указать дату?
1 1dvd
 
10.08.17
10:57
v8.Вычислить("Дата(2017, 08, 09, 23, 59, 59)")
2 1dvd
 
10.08.17
10:58
Или так

РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, КОНЕЦПЕРИОДА(&Дата2, ДЕНЬ), Период, , Счет В ИЕРАРХИИ(&СчетТ) , , )
3 dimm7310
 
10.08.17
11:00
спасибо, буду пробовать
Закон Брукера: Даже маленькая практика стоит большой теории.