Имя: Пароль:
1C
1С v8
сравнение с графиком...
,
0 Kurbash
 
26.06.14
10:59
такая ситуация-есть ТЧ на форме, содержит поля табномер и датавхода. Это поля когда тот или иной сотрудник вошел на предприятие. Смысл в том, чтобы сделать выборку кто не вышел на работу. Для ИТР, все понятно, суббота-воскресенье выходные. А для сменщиков? есть смены когда суббота или воскресенье выходной день. Для ИТР сделал левое соединение по Производственному календарю:

ВЫБРАТЬ
        |    промтаблица.ДатаВхода КАК датавхода,
        |    промтаблица.ТабНом КАК сотрудник
        |ПОМЕСТИТЬ пром
        |ИЗ
        |    &Промтаблица КАК промтаблица
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ РАЗЛИЧНЫЕ
        |    пром.сотрудник,
        |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря
        |ИЗ
        |    РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь,
        |    пром КАК пром
        |ГДЕ
        |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &КалендарьС И &КалендарьПо
        |    И НЕ (НАЧАЛОПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ДатаКалендаря, ДЕНЬ), пром.сотрудник) В
        |                (ВЫБРАТЬ
        |                    НАЧАЛОПЕРИОДА(пром.датавхода, ДЕНЬ),
        |                    пром.сотрудник
        |                ИЗ
        |                    пром)


Теперь надо как то запрос усложнить-добавить сверку с графиком...никак не дотумкаю как сделать(саму методологию)...никто не ннаправит на верную мысль?
1 Kurbash
 
26.06.14
11:11
читающих все меньше и меньше:) никто не пинет в верном направлении?
2 MUXACb
 
26.06.14
11:16
Для ЗУП:
1. Сделать выборку из сотрудников и кадровых графиков работы, у которых нет неявок.  
2. Сделать выборку(по плану и нужному виду учета времени) из регистра "ГрафикиРаботыПоВидамВремени" где измерение "ГрафикРаботы" имеет тип "Справочник.Сотрудники"(учет индивидуальных графиков)
3. Сделать выборку(по плану и нужному виду учета времени) из регистра "ГрафикиРаботыПоВидамВремени" где измерение "ГрафикРаботы" имеет тип "Справочник.ГрафикиРаботы"(учет кадровых графиков)
4. К Выборка1 левым соединением Выборка2(по дате и сотруднику) и Выборка3(по дате и графику). Если данных в Выборка2 нет то берем данные из Выборка3
5. К получившемуся результату(план выхода сотрудника) левым соединением свою ТЧ по табельному номеру и дате входа
6. Отбор по ТЧ.ТабельныйНомер ЕСТЬ NULL
3 MUXACb
 
26.06.14
11:18
+(2) В п.2 и п.3 не делать сравнение на тип измерения, а ставить отбор по сотрудникам и графикам работы из Выборка1
4 Kurbash
 
26.06.14
11:28
(2)-1-в смысле нет неявок?
5 MUXACb
 
26.06.14
11:36
(4) Если уже известно что сотрудник отсутствует на работе(отпуск, болеет, по невыясненной причине и т.п.) то не имеет смысла проверять эти даты
6 Kurbash
 
26.06.14
11:38
(5)вот тут самая соль-мы не знаем когда он отсутствовал. Например он не был на работе в пятницу, и по графику и должен быть,  а в субботу снова не был а по графику должен
7 Kurbash
 
26.06.14
11:39
(5)у нас есть дата входа, а вот как увязать ее с графиком...
8 MUXACb
 
26.06.14
11:44
(6) Есть неявки, о которых известно заранее и они оформлены в программе соответствующими документами

(7) В регистре "ГрафикиРаботыПоВидамВремени" есть измерение "Дата" - это и есть дата планируемого прихода на работу.

Какая у Вас конфигурация?
9 Kurbash
 
26.06.14
11:45
так вот как раз и нет- у нас другая ситуация-я делаю выгрузку за месяц скажем, неявки не учитываются кадровиками, как раз из моего запроса и должно быть ясно когда неявка была у сотрудника
10 Kurbash
 
26.06.14
11:46
я так понимаю из предложенного первый запрос просто убрать нужно
11 MUXACb
 
26.06.14
11:49
(10) Тогда первый запрос будет таким:  Сделать выборку из сотрудников и кадровых графиков работы(учитывая даты приема и увольнения)
12 Gogger
 
26.06.14
11:53
(9) у вас больничные сотрудники не приносят, и в отпуска не ходят???
13 Kurbash
 
26.06.14
12:07
(12) носят-ходят, но если с конца месяца на больничный пошел и в этом месяце больше не появился? по графику должен быть а нету
14 Gogger
 
26.06.14
12:16
(13)отпуска по-любому вводятся заранее (потому что оплачиваются "вперед". так что уже есть факт неотработанного времени.
а если сотрудник заболел, например - он начальнику разве не должен отзвониться? про него вообще никто не интересуется - где он, что с ним - до конца месяца?
вообще тебе уже написали все - регистр "Графики работы по видам времени" содержит все данные по графику работы сотрудника (вид учета времени, вид дня, количество часов и т.п.). его надо использовать - выбираешь все рабочие дни по сотруднику, исключаешь заранее известные невыходы (отпуск, оформленный больничный), и сравниваешь по датам с данными СКУД.
15 Kurbash
 
26.06.14
12:22
да я понял уже, копаю, спасибо
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой