|
как найти следующий документ последовательности
| ☑ |
0
Ndochp
20.03.12
✎
13:30
|
Делаю восстановление последовательности, через некоторое время последовательность.Восстановить() срезается. Делаю выборку из последовательности первого документа после границы с сортировкой по моменту времени, провожу его. Документ проводится, но граница на него не сдвигается.
Граница своя, тупая, все на атомате, и сброс, и регистрация документов.
В чем может быть проблема? мне пришло в голову только вариант, что на самом деле следующим в последовательности стоит другой документ, но как его найти не понятно.
|
|
1
mikecool
20.03.12
✎
13:32
|
границу надо руками установить
я сдвигаю только в момент возникновения ошибки на последний док, проведенный без ошибок
|
|
2
Axel2009
20.03.12
✎
13:43
|
(0) проведи следующий. граница на него сдвинется
|
|
3
Ndochp
20.03.12
✎
13:45
|
Какой следующий?
Я и говорю, нахожу первый с моментом в последовательности больше границы, провожу, последовательность не двигается.
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| Складские.Регистратор
|ИЗ
| Последовательность.Складские КАК Складские
|ГДЕ
| (&Фирма = 0
| ИЛИ Складские.Фирма = &Фирма)
| И Складские.МоментВремени > &МоментВремени
|
|УПОРЯДОЧИТЬ ПО
| Складские.МоментВремени"
;
Запрос.Параметры.Вставить("Фирма", ?(флОтборФирма, ОтборФирма, 0));
Отбор = Новый Структура;
Если флОтборФирма тогда Отбор.Вставить("Фирма", ОтборФирма); КонецЕсли;
Запрос.Параметры.Вставить("МоментВремени", Последовательности.Складские.ПолучитьГраницу(Отбор));
Результат = Запрос.Выполнить();
|
|
4
Axel2009
20.03.12
✎
13:46
|
проведение документа двигает последовательность только назад.
чтобы сдвинуть вперед - последовательность нужно восстанавливать
|
|
5
Axel2009
20.03.12
✎
13:46
|
(4)+ либо самому ставить текущий документ
|
|
6
Ndochp
20.03.12
✎
14:57
|
(5) У меня проблема то собственно в чем - срезается восстановление последовательности (через последовательность.Восстановить()). Надо выдать пользователю выдать документ, на котором срезается. А как - не понятно. Думал подтащить по одному документу выше границы проводя и на чем будет отказ, то и выдать. Но видно прийдется в регистр/справочник писать факты проведений документов, и какой в итоге не отчитается об успешности, тот и виноват.
|
|
7
Axel2009
20.03.12
✎
15:13
|
(6) восстановление последовательности писал сам всегда, типовым не пользовался. там после успешного выполнения в последовательности смещал границу и все
|
|