Имя: Пароль:
1C
1С v8
Как работает ПпериодСекунда в виртуальной таблице регистра остатки и обороты
0 sanches2
 
09.10.12
13:45
Привет. 8.2.16.362, УТ 10.3.15.9
Как-то связан ПериодСекунда из виртуальной таблицы регистра со временем регистратора? Вопрос возник в связи с тем, что у большинства документов Платежное поручение входящее в результате запроса период секунда равен 23.59.59, причем реальное время документа может быть и 8.00 и 10.00. Как правило документы эти загружаются типовой обработкой Клиент банк. Заходил в документ, переносил его время в начало дня, в документе все меняется нормально, в журнале тоже,а  в запросе по регистру период секунда так и остается равным 23.59.59 В связи с этим в отчете, где идет расчет остатков по документу, не корректно рассчитываются остатки по документу.
Вот скрин отчета http://dl.dropbox.com/u/23169682/strange.png
Получается, что при расчете остатков по документам, он сортирует их по периоду секунда, а в отчет выводит отсортированными по дате документа...
Спасибо
1 DrShad
 
09.10.12
13:46
запрос давай
2 sanches2
 
09.10.12
13:49
ВЫБРАТЬ
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.Регистратор.Номер КАК Номер,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.СуммаУпрПриход КАК Приход,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.СуммаУпрРасход КАК Расход,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.СуммаУпрКонечныйОстаток КАК Сальдо,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.СуммаУпрНачальныйОстаток,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.Контрагент КАК Контрагент,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.Регистратор КАК Регистратор,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.Регистратор.Дата,
   ВзаиморасчетыСКонтрагентамиОстаткиИОбороты.ПериодСекунда
{ВЫБРАТЬ
   Контрагент.*}
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентами.ОстаткиИОбороты(&НачалоПериода, , Авто, Движения, ) КАК ВзаиморасчетыСКонтрагентамиОстаткиИОбороты
3 sanches2
 
09.10.12
13:51
В запросе может быть что-то лишнее, но это уже результат экспериментов для поиска причины неправильного расчета остатков )
4 DrShad
 
09.10.12
13:53
ну как бы запрос в целом какой-то странный
какова цель запроса?
5 sanches2
 
09.10.12
14:03
Цель, показать сколько за период было прихода, расхода сумм. Главное условие, расчет конечного остатка (долга) по документу регистратору. В принципе это Ведомость по взаиморасчетам с контрагентами с группировкой по регистратору
6 vtolga
 
09.10.12
14:10
а зачем период- секунда? период "регистратор" ставить не пробовали?
7 sanches2
 
09.10.12
14:15
(6) Пробовал все, что знал. И просто регистратор и с секундой. Период секунду ставлю исходя из уроков по СКД, где говорится, что обязательным условием правильного расчета остатков по документам является наличие этого поля в запросе
8 vtolga
 
09.10.12
14:17
тогда попробуй упорядочить не по дате, а по позиции регистратора
9 vtolga
 
09.10.12
14:22
В смысле по  "момент времени"
10 sanches2
 
09.10.12
14:29
Пробовал, результат тот же. В отчете ведь в правильной последовательности выводить документы. А вот при расчете нач остатка на документ, судя по всему он сортирует по период секунда, а почему у меня период секунда у многих документов 23.59.59 и даже если менять время в документе, то значение период секунда не меняется,  я вообще не пойму. Причем это исключительно у документов Платежное поручение входящее. Может там есть какой-то режим проведения, который документ проводит не со временем в журнале, а в конце дня? Может и бред, но даже не знаю, что делать...
11 hhhh
 
09.10.12
14:37
(10) может там надо брать ДатаОплаты? Почему-то вы совершенно бездумно берете Регистратор.Дата ??
12 vtolga
 
09.10.12
15:38
"если менять время в документе"- попробуйте отменить проведение, а потом снова провести.
Была такая мулька- если меняется только время, иногда проводки оставались со старым временем.
13 sanches2
 
09.10.12
16:06
(11) дата оплаты не содержит времени, и отсортировать в отчете по хронологии не получится. Мне надо, чтобы в отчете документы были отсортированы по хронологии. Возможно, что дата документа не будет совпадать с датой оплаты, но сейчас интересует корректный расчет остатков по документу
(12) Попробовал, не изменилось ничего )
14 sanches2
 
09.10.12
16:21
Хм, даже если дату документа поменять например с 01.10.12 на 09.10.12, то в движении документа по регистру Взаиморасчеты с контрагентами остается период 01.10.12, а вот если поменять реквизит Дата оплата, то только после этого меняется значение в движениях в поле период. Значит мне надо добиться от него, чтобы при расчете остатков по документу он сортировал документы из не по полю период секунда, а по полю регистратор.Дата
(11) Спасибо за наводку
15 sanches2
 
10.10.12
13:39
Спасибо всем, сделал как надо.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший