|
Получить в запросе Отчетные периоды по годам с Даты принятия на работу Сотрудника
|
|||
---|---|---|---|
#18+
kniga Но вот пытаюсь пока запросом от Анатолия. Как я писал выше, осталось решить один нюас, т.е. показать период, если в нем нет отпуска. Если в запросе используется LEFT JOIN, то к таблиуе/запросу на стороне стрелки имеет смысл применить только условие NOT NULL к обязательному полю (нет подчиненных записей). Любые другие условия не дадут вам желаемый результат, вернее дадут тот же, что и пр INNER JOIN. Для вашей задачи создайте еще один запрос: Код: sql 1. 2. 3.
Но давайте обсудим тему отпусков. Есть отработанный период, за который предоставляется отпуск. Обычно в следующем периоде весь, или частями. Иногда авансом в том же периоде, а иногда с задержкой аж черех год или еще позднее. Поэтому для правильной работы в таблице отпусков должен быть указан номер периода (я вам писал вчера, но ответ влез на час раньше вопроса, возможно и не заметили). Вы же пытаетесь получить нечто непонятное. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2020, 15:33 |
|
Получить в запросе Отчетные периоды по годам с Даты принятия на работу Сотрудника
|
|||
---|---|---|---|
#18+
Кривцов Анатолий, спасибо за конструкцию! Сейчас буду пробовать. авторА еще можете добавить поле "n" из "nn" и получите номер периода. это я видел, хотя тоже отметил, что ответы и вопросы перемешались, да еще продублировалось у меня, хотя я этого не делал ) Я не совсем понял куда добавить поле с номером периода ("n"). В примере оно у меня добавлено в запросе, но никакого влияния не оказало, только ориентироваться легче стало конечно, видно, что, например, первого периода нет (если нет отпуска :) Да, по отпускам у нас так и есть, могут и два года не выходить, а потом частями нагоняют. Вот для лучшего ориентира, я и хочу отразить периоды, а в них отпуска. Отчет я приготовил, он показывает почти как задумывалось кроме того периода, у которого нет отпуска ) В приложении Отчет, где Дата приема сотрудника 09.06.2010 и он в первый год не брал отпуск, поэтому в отчете не отображается ( ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2020, 17:24 |
|
Получить в запросе Отчетные периоды по годам с Даты принятия на работу Сотрудника
|
|||
---|---|---|---|
#18+
Кривцов Анатолий, Код: vbnet 1. 2. 3.
Да! В примере четко все как надо, сейчас в реалбазу буду вставлять, но думаю все получится, спасибо!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2020, 17:41 |
|
Получить в запросе Отчетные периоды по годам с Даты принятия на работу Сотрудника
|
|||
---|---|---|---|
#18+
Можно так(как вариант): -иметь таблицу с полями необходимыми для Вашего отчета работник, периодС, периодПО, отпускС, отпускПО, допОтпускС, допОтпускПО -при запуске БД проверять наличие записи содержащей период,относительно Date и если новый(следующий) период уже начался,а записи еще нет в таблице автоматически добавлять её запросом на добавление в процедурой VBA(совместив проверку и добавление) в таблицу,с заполненными полями:[работник],[периодС],[периодПО] -при предоставлении отпуска найти(еще процедура VBA) в форме нужного работника и заполнить поля про отпуск -создать отчет на этой таблице ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2020, 00:21 |
|
|
start [/forum/topic.php?fid=45&msg=39942882&tid=1610154]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 158ms |
0 / 0 |