Имя: Пароль:
1C
1С v8
УТ 10.3 Взаиморасчеты
0 ParinovS
 
30.07.12
16:08
Доброго времени суток. Собственно проблема.
1. Создаю документ оплаты от 29.07.2012 10:00:00 на 2000 рублей
2. Создаю документ отгрузки от 30.07.2012 11:00:00 на 500 рублей
3. В консоле запросов смотрю на виртуальную таблицу ВзаиморасчетыСКонтрагентами.Остатки, период устанавливаю 30.07.2012 12:00:00. Итог остаток 2000 рублей. Если дата отрузки тоже 29, то остаток 1500.
Вот запрос:


ВЫБРАТЬ
   ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента,
   ВзаиморасчетыСКонтрагентамиОстатки.Сделка,
   ВзаиморасчетыСКонтрагентамиОстатки.Организация,
   ВзаиморасчетыСКонтрагентамиОстатки.Контрагент,
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток,
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаУпрОстаток
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(
           &ТекущаяДата,
           ДоговорКонтрагента = &Договор
               И Контрагент = &Контрагент) КАК ВзаиморасчетыСКонтрагентамиОстатки


ВОПРОС: Почему так происходит?
1 iceman2112
 
30.07.12
16:13
Документ отгрузки движения делает?
2 iceman2112
 
30.07.12
16:13
Если делает то какие - вот у будет тебе ответ
3 Baker_it
 
30.07.12
16:15
Не только какие, но и каким временем :)
4 ParinovS
 
30.07.12
16:17
Ну оплату я посмотрел, конец дня, в который производилась оплата. А вот отгрузка стоит дата документа....
5 ParinovS
 
30.07.12
16:26
Нашел типовой код. Там нет параметра Период.

Запрос = Новый Запрос;
               Запрос.УстановитьПараметр("ДоговорКонтрагента", ДоговорКонтрагента);
               
               Запрос.Текст = "
               |ВЫБРАТЬ // Для контроля суммы задолженности по договору (любой вариант ведения взаиморасчетов)
               |    " + Знак + "ВзаиморасчетыПоДоговору.СуммаВзаиморасчетовОстаток КАК СуммаВзаиморасчетовОстаток
               |ИЗ
               |     РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(,
               |     ДоговорКонтрагента = &ДоговорКонтрагента
               |     ) КАК ВзаиморасчетыПоДоговору
               |";
               
               Выборка = Запрос.Выполнить().Выбрать();
6 iceman2112
 
30.07.12
16:41
ну попробуй выбрать все движения по договору и контагенту, посмотри последнюю дату. Что там какие записи?
7 ParinovS
 
30.07.12
16:45
(6) я уже решил проблему. Ответ лежит в посте (5). Если не указывать "Период" в параметрах виртуальной таблицы, то данные получаются актуальными.