Имя: Пароль:
1C
1С v8
Вирт. таблица "Фактический период действия"
0 Alamo-10
 
28.11.12
13:01
Всем привет!

Есть следующая задача. В ЗУПе сотрудникам, не пришедшим на работу, заводится док. "Невыходы" с видом расчета "Невыясненные причины отсутсвия на работе". В дальнейшем этот вид расчета вытесянется больничным либо прогулом и т.п. Так вот, необходимо найти те записи по невыясненным причинам за определенный период, которые не были вытеснены другими видами расчета, т.е. остались "незакрытыми".

Я хотел использовать виртуальную таблицу РР "ОсновныеНачисленияОрганизацийФактическийПериодДействия". Попробовал сформировать запросы через консоль, но обнаружил, что результат получаю такой же, как при использовании реальной таблицы.

Например, есть сотрудник, у него запись в регистре:
01.09.2012   12.09.2012 - 30.09.2012 Невыясненные причины отсутствия на работе
Потом в октябре заводится больничный, и эта запись сторнируется 2 строчками
01.10.2012   12.09.2012 - 14.09.2012 Невыясненные причины отсутствия на работе (сторно)
01.10.2012   15.09.2012 - 30.09.2012 Невыясненные причины отсутствия на работе (сторно)

Т.е. я предполагал, что при использовании виртуальной таблицы, мои записи должны как бы свернуться, и показать мне результат с учетом сторнировок, т.е. фактически записей вообще быть не должно, поскольку фактический период = 0.

Подскажите, может быть я неправильно интерпретировал смысл этой виртуальной таблицы, либо же надо использовать другую? Просто с виртуальными таблицами регистров расчета никогда не сталкивался. Как правильнее будет реализовать такую задачу? Спасибо!
1 Feanorko
 
28.11.12
13:16
>Т.е. я предполагал, что при использовании виртуальной таблицы, мои записи должны как бы свернуться

наоборот, разбиться, на отрезки фактических периодов действия согласно вытеснений

>и показать мне результат с учетом сторнировок
откуда там сторно должно взяться?

>Подскажите, может быть я неправильно интерпретировал смысл этой виртуальной таблицы

СП и погуглить, полагаю, не предлагать? :)
2 Feanorko
 
28.11.12
13:19
+(1) Рекомендую посмотреть вебинары по расчетным механизмам Павла Чистова, должно наступить просветление :)
3 Alamo-10
 
28.11.12
13:23
(1) гуглил, находил темы про вирт. таблицы, но мне они не подошли.

>откуда там сторно должно взяться?
Неправильно написал. Имел ввиду, с учетом вытеснений, т.е. если больничный вытеснил период с 12.09 по 14.09, то фактический период действия невыясненных причин становится уже с 15.09 по 30.09. Или я опять неправ?
4 Feanorko
 
28.11.12
13:25
(3) если период действия записи был с 1 по 30 и больничный вытеснил с 12 по 14, то в ВТ будет две записи:
с 1 по 11 и с 15 по 30
5 Alamo-10
 
28.11.12
13:28
(4) Не так.
Период действия был с 12 по 30, больничный вытеснил 2 записями: первые 3 дня с 12 по 14, остальное с 15 по 30. Что должно в результате остаться от невыясненных причин? По моим представлениям, ничего
6 Alamo-10
 
28.11.12
13:29
+(5) Первая колонка в (0) - это период регистрации
7 Alamo-10
 
28.11.12
13:33
В принципе, реализовал задачу через реальную таблицу, пришлось немножко поработать над соединениями таблиц. Просто хотелось бы использовать более правильный способ. За рекомендацию по Чистову спасибо, посмотрю обязательно.
8 Feanorko
 
28.11.12
13:43
(5) а период регистрации у основной записи и вытесняющей совпадает?
9 Alamo-10
 
30.11.12
10:35
(8) Нет, у вытесняющей месяцем позже
10 Feanorko
 
30.11.12
17:18
(9) что и требовалось доказать, это уже сторно и обрабатывается по-другому, в таблице фактического периода действия никак не увидеть такого вытеснения.
11 Alamo-10
 
01.12.12
01:29
(10) странно как-то, я всегда почему-то был уверен, что механизм вытеснения работает только в случае разных периодов регистрации. Короче надо порядок в своих знаниях наводить, запутался...
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой