|
|
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
Нужно хранить должности, включая дату прихода и дату увольнения(перехода на новую должность). Дело в том, что один человек может занимать несколько должностей, все должности, которые он занимал и занимает должны храниться и надо выводить данные о тех должностях, которые он занимает сейчас. Первый вариант - это создать таблицу(AllPositions) должностей, которая ссылалась бы на таблицу сотрудников как многие к одному. Там хранить должность, даты поступления и ухода, а при выводе, проверять не явл. ли поле "дата увольнения" пустым, и если явл., значит этот человек все еще не уволился и занимает эту должность. Второе, тоже самое что и первое, но только ввести еще одну таблицу(CurrentPositions), где будут перечисляться идентификаторы тех должностей, которые он(сотрудник) занимает и еще не уволился. Повесить триггер, который будет добавлять и удалять из этой таблицы(CurrentPositions) должности, в зависимости от наличия даты прихода\увольнения в таблице AllPositions. Во втором варианте надо просто будет объединять таблицы нынешних должностей и сотрудников. В первом варианте, при объединении таблиц, надо будет еще проверять дату увольнения на null, чтобы узнать, увольнялся ли сотрудник с этой должности и если нет, то выводить данные занимаемой должности. Мне на ночь глядя на ум пока больше ничего не пришло. Может кто лучше чего подскажет. Спасибо. Пойду спать.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 03:43 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
В zip схема и скрипт для SQL Server. Всё, конечно, в упрощенном варианте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 08:38 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
Виноват, забыл пристегнуть zip. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 08:40 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, muk07. Вы писали: muk07 К сообщению приложен файл (Кадры.zip): cкачать. Размер - 36Kb Таблицу перемещений move еще доработать надо... не учтено: -количество ставок (1, 0.5, 0.3...) -тип работы (основная, совмещение...) еще м.б. что то... давно кадрами занимался -- Dik76 Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 09:35 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
muk07В zip схема и скрипт для SQL Server. Всё, конечно, в упрощенном варианте. 1. как выяснить должности, который сотрудник занимает сайчас(еще не уволился)? Если только полю isarrival присваивать 1(при назначении) и -1(при увольнении), то еще можно так: Код: plaintext 1. 2. 3. Может так проще? Тогда просто select... from TitleHistory inner join employees where firedate is null Да и с должностями не надо будет мучится, если появятся новые. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 10:17 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
sorry, хотел написать может так проще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 10:19 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
Dik76Таблицу перемещений move еще доработать надо... не учтено: -количество ставок (1, 0.5, 0.3...) -тип работы (основная, совмещение...) Конечно, вы правы. На самом деле всё гораздо толще. Но я привел только самые общие соображения. >tyj Да, можно HireDate, FireDate. (лучше назвать StartDate,EndDate - временной интервал действия приказа) На моей схеме над функцией, возвращающей список должностей Emp_ID на дату @d Вам придётся подумать. Сейчас у меня такой под рукой нет. Но в студенческих курсовых на работе есть. Это хорошее упражнение. Я часто его предлагаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 12:16 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
пример проекта БД который вам нужен очень хорошо и наглядно описан и нарисован в книге Базы данных издание 3-е(толстая и красная) там есть и должности и тип занятости в общем охватывает вашь вопрос целиком и польность ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 15:14 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
Авторы случайно не Грофф и Вайнберг? =) авторНа моей схеме над функцией, возвращающей список должностей Emp_ID на дату @d Вам придётся подумать. ну вот же Код: plaintext 1. 2. И просто проверю наличие даты увольнения. Если тада не null, то значит он эту должность еще занимает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 18:27 |
|
||
|
как лучше хранить должности?
|
|||
|---|---|---|---|
|
#18+
tyjИ просто проверю наличие даты увольнения. Не всякий работник считается уволенным (например: женщины ушедшие в декрет или откомандированные на военную службу) Вообще то советую сначала ознакомиться с нормативными документами по кадровому учету. И для начала разобраться с термином "среднесписочная численность" предприятия. Ознакомление с этим "шедевром" очень поучительно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2006, 20:41 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33472473&tid=1545473]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
153ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 427ms |

| 0 / 0 |
