Имя: Пароль:
1C
 
помогите разобраться с Последовательностями
0 И.Ванов
 
02.11.04
11:11
что проверяет метод Последовательность.Проверить(МоментВремени)?
т.е. как понимать такое состояние:

МоментВремени.Сравнить(Последовательность.ПолучитьГраницу())=1 И
Последовательность.Проверить(МоментВремени)=Истина

???
1 Naumov
 
02.11.04
11:53
(0) А СП отменили?
Проверить(..)
Проверяет, что по указанный момент времени последовательность по заданным измерениям не нарушена.

А выражение МоментВремени.Сравнить(Последовательность.ПолучитьГраницу())=1 И
Последовательность.Проверить(МоментВремени)=Истина
можно понимать как

МоментВремени позже чем граница последовательности с одной стороны и Последовательность на моментВремени еще не нарушена.

Смысл такого выражения я тоже не очень догоняю оно истина видимо только при ненарушенной последовательности и ОперативномПроведении. (Если конечно моментВремени - это момент документа, а не что-либо иное)
2 vasinok
 
02.11.04
11:56
(1) Наивный вопрос: Что такое СП?
3 Naumov
 
02.11.04
11:58
Синаткс-помошник
4 vasinok
 
02.11.04
11:59
(3) Спасибо.
5 И.Ванов
 
02.11.04
13:00
второй день гоняю тесты -- смысл до сих пор не ясен.
(1) ваше предположение не верно, т.к. реально случается и такая ситуация:

МоментВремени.Сравнить(Последовательность.ПолучитьГраницу())=1 И
Последовательность.Проверить(МоментВремени)=Истина И
Режим=РежимПроведенияДокумента.Неоперативный

да, считаем всегда что МоментВремени это момент документа.
6 И.Ванов
 
02.11.04
13:41
к сказанному могу добавить, что бывает и по другому:

МоментВремени.Сравнить(Последовательность.ПолучитьГраницу())=1 И
Последовательность.Проверить(МоментВремени)=Истина И
Режим=РежимПроведенияДокумента.Оперативный
7 И.Ванов
 
02.11.04
14:07
а еще такой интересный тест:
в базе всего два тестовых документа одного вида. один вчерашним днем (проводится неоперативно), другой -- сегодняшним (задает вопрос как проводить, отвечаю "оперативно").
Провожу первый док. Граница последовательности ставится на него.
Провожу второй док. Оперативно. В обработке проведения имеем состояние:

Последовательность.Проверить(МоментВремениТекущегоДока)=Ложь

После проведения граница последовательности оказывается на втором доке.
Тут же провожу второй док еще раз. В обработке проведения имеем:

Последовательность.Проверить(МоментВремениТекущегоДока)=Истина
8 И.Ванов
 
02.11.04
14:12
далее
повторяем тот же тест, только проводим оба дока НЕоперативно.
т.е. в первом тесте последний док проводится ВСЕГДА оперативно, во втором тесте -- ВСЕГДА неоперативно:

Провожу первый док. Граница последовательности ставится на него.
Провожу второй док. НЕОПЕРАТИВНО. В обработке проведения имеем состояние:

Последовательность.Проверить(МоментВремениТекущегоДока)=ИСТИНА

После проведения граница последовательности оказывается на втором доке.
Тут же провожу второй док еще раз. В обработке проведения имеем:

Последовательность.Проверить(МоментВремениТекущегоДока)=Истина
9 И.Ванов
 
02.11.04
16:33
короче, я кажется понял!!!

метод Последовательность.Проверить(МоментВремени) в случае оперативного проведения отрабатывает зачастую не правильно. Он определяет последовательность как нарушеную т.к. видит в интервале между границей последовательности и собственным свежепридуманным моментом времени (проведение то оперативное, значит меняем при записи время дока на текущее!) самого себя из базы со старым временем дока, входящего в последовательность, а значит нарушающего её.
кто либо что то понял? если нет -- звиняйте, как умеем...

ЗЫ интересно, поймают этот баг разработчики?
10 Слухай
 
02.11.04
16:47
, Коллега Больцман...
Не парь людям мозги. :-) Какие-такие последовательности?
Ты че, не видишь хто тут тусуицца? :-)
11 Волшебник
 
02.11.04
16:52
(5-9) Главное - не мешать человеку!
12 И.Ванов
 
02.11.04
17:13
(10) да уж, у Жванецкого монологи куда интереснее...
(11) скажи им там, пусть поправят.)) а то не солидно как то ...
13 Волшебник
 
02.11.04
17:17
(12) Напиши на v8@1c.ru, указав № рег. комплекта
14 Naumov
 
02.11.04
17:20
(11) А правильный ответ будет?
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn