ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° справочника для отслСТивания ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ сотрудниках прСдприятия

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ создана Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ списков класса List, Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ListView для отобраТСния ΠΊΡ€Π°Ρ‚ΠΊΠΈΡ… свСдСний ΠΎ ΡˆΡ‚Π°Ρ‚Π΅ сотрудников, ToolStrip1 для отобраТСния ΠΏΠ°Π½Π΅Π»ΠΈ мСню. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ создано 5 ΠΎΠΊΠΎΠ½ (главная Ρ„ΠΎΡ€ΠΌΠ°, Ρ„ΠΎΡ€ΠΌΠ° добавлСния Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника, Ρ„ΠΎΡ€ΠΌΠ° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅, Ρ„ΠΎΡ€ΠΌΠ° ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ, ΠΈ Ρ„ΠΎΡ€ΠΌΠ° для записи ΠΏΡ€ΠΈΡ‡ΠΈΠ½ прСмирования/дСпрСмирования). Для Π²Π²ΠΎΠ΄Π°… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° справочника для отслСТивания ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ сотрудниках прСдприятия (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠœΠ˜ΠΠ˜Π‘Π’Π•Π Π‘Π’Π’Πž ΠžΠ‘Π ΠΠ—ΠžΠ’ΠΠΠ˜Π― ΠΈ Π½Π°ΡƒΠΊΠΈ УКРАИНЫ

ЗапороТский институт экономики ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ

ΠšΠ°Ρ„Π΅Π΄Ρ€Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… систСм

ΠšΠ£Π Π‘ΠžΠ’ΠΠ― Π ΠΠ‘ΠžΠ’Π

ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

«Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° справочника для отслСТивания ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ°Ρ… прСдприятия»

Π—Π°ΠΏΠΎΡ€ΠΎΠΆΡŒΠ΅

РЕЀЕРАВ справочник сотрудник информация интСрфСйс ΠšΡƒΡ€ΡΠΎΠ²Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π°: 31 стр., 16 рисунков, 6 ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, 5 источников Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠžΠ±ΡŠΠ΅ΠΊΡ‚ исслСдования: ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ справочныС систСмы.

ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚ исслСдования: справочник ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ.

ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹: Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для отслСТивания ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ°Ρ…, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π½Π° Π΄Π°Π½Π½ΠΎΠΌ прСдприятии. ΠΠ°Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π²Ρ‹ΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° прикладная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°-справочник для Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… прСдприятий с Π±ΠΎΠ»ΡŒΡˆΠΈΠΌ числом сотрудников. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° позволяСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Ρ… сотрудников Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ сотрудников, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»Π΅.

Π’ Ρ€Π°Π±ΠΎΡ‚Π΅ Π±Ρ‹Π»ΠΈ исслСдованы ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ сохранСния Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ способы ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ; рассмотрСны Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ элСмСнты управлСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π°Π½Ρ‹ практичСскиС Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡŽ, дальнСйшСй Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ систСмы; рассмотрСно созданиС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… ΠΎΠΊΠΎΠ½ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ общСния ΠΎΠΊΠΎΠ½ ΠΌΠ΅ΠΆΠ΄Ρƒ собой; рассмотрСна Ρ€Π°Π±ΠΎΡ‚Π° с ΡΠΎΠ±Ρ‹Ρ‚иями; использована сСриализация для сохранСния Π΄Π°Π½Π½Ρ‹Ρ….

CSHARP, Π‘ΠŸΠ ΠΠ’ΠžΠ§ΠΠ˜Πš, Π‘Π•Π Π˜ΠΠ›Π˜Π—ΠΠ¦Π˜Π―, ΠŸΠžΠ›Π¬Π—ΠžΠ’ΠΠ’Π•Π›Π¬Π‘ΠšΠ˜Π™ Π˜ΠΠ’Π•Π Π€Π•Π™Π‘, Π‘ΠžΠ‘Π«Π’Π˜Π―, Π”Π˜ΠΠ›ΠžΠ“ΠžΠ’Π«Π• ОКНА, ΠšΠ›ΠΠ‘Π‘.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Π’Π’Π•Π”Π•ΠΠ˜Π• РАЗДЕЛ 1 ΠΠΠΠ›Π˜Π— ΠŸΠ Π•Π”ΠœΠ•Π’ΠΠžΠ™ ΠžΠ‘Π›ΠΠ‘Π’Π˜

1.1 Π˜ΡΡ‚ΠΎΡ€ΠΈΡ развития справочников/Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…

1.2 ΠžΠ±Π·ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ-Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²

1.2.1 ΠšΠ°Π΄Ρ€Ρ‹ плюс

1.2.2 ΠžΡ‚Π΄Π΅Π» ΠšΠ°Π΄Ρ€ΠΎΠ² Плюс РАЗДЕЛ 2 ΠžΠŸΠ˜Π‘ΠΠΠ˜Π• ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ«

2.1 Бпособы сохранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

2.2 Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ

2.3 Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…

2.4 Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ подсистСм для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ

2.5 Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ просмотр Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2.5.1 Главная Ρ„ΠΎΡ€ΠΌΠ°

2.5.2 Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника Π² Π±Π°Π·Ρƒ

2.5.3 Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

2.5.4 УвольнСниС сотрудника

2.5.5 ΠŸΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудников

2.5.6 Π”Π΅ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудников

2.5.7 Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ сотрудников ΠΈΠ· Π±Π°Π·Ρ‹

2.5.8 ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

2.6 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° прилоТСния РАЗДЕЛ 3 Π Π£ΠšΠžΠ’ΠžΠ’ΠžΠ”Π‘Π’Π’Πž ΠŸΠž Π­ΠšΠ‘ΠŸΠ›Π£ΠΠ’ΠΠ¦Π˜Π˜

3.1 БистСмныС трСбования ΠΊ ΠŸΠš

3.2 Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π’Π«Π’ΠžΠ”Π« БПИБОК Π˜Π‘ΠŸΠžΠ›Π¬Π—ΠžΠ’ΠΠΠΠžΠ™ Π›Π˜Π’Π•Π ΠΠ’Π£Π Π« ΠŸΠ Π˜Π›ΠžΠ–Π•ΠΠ˜Π―

Π’Π’Π•Π”Π•ΠΠ˜Π•

Π’ Π½Π°ΡˆΠ΅ врСмя ΠΊΠ°ΠΏΠΈΡ‚Π°Π»ΠΈΠ·ΠΌΠ° ΠΈ Ρ€Ρ‹Π½ΠΎΡ‡Π½Ρ‹Ρ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ сущСствуСт ΠΌΠ½ΠΎΠ³ΠΎ способов Π·Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π΅Π½Π΅Π³. ΠšΡ‚ΠΎ-Ρ‚ΠΎ устраиваСтся Π½Π° Π·Π°Π²ΠΎΠ΄/прСдприятиС, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° ΡΠ΅Π±Ρ, Π° ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй, создавая свои прСдприятия ΠΈ Ρ„ΠΈΡ€ΠΌΡ‹. На ΠΊΠ°ΠΆΠ΄ΠΎΠΌ прСдприятии ΠΈΠ»ΠΈ ΠΆΠ΅ Ρ„ΠΈΡ€ΠΌΠ΅ Π΅ΡΡ‚ΡŒ свой ΡˆΡ‚Π°Ρ‚ сотрудников, Π³Π΄Π΅-Ρ‚ΠΎ ΠΎΠ½ Π±ΠΎΠ»ΡŒΡˆΠΎΠΉ, Π³Π΄Π΅-Ρ‚ΠΎ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ, Π° Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„ΠΈΡ€ΠΌΠ°Ρ… ΡˆΡ‚Π°Ρ‚ сотрудников ΠΌΠΎΠΆΠ½ΠΎ Π½Π° ΠΏΠ°Π»ΡŒΡ†Π°Ρ… ΡΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ. Однако, ΠΊΠ°ΠΊΠΎΠ² Π±Ρ‹ Π²Π΅Π»ΠΈΠΊ Π½Π΅ Π±Ρ‹Π» ΡˆΡ‚Π°Ρ‚ сотрудников, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Π΅Π³ΠΎ ΡƒΡ‡Π΅Ρ‚. ИмСнно для Ρ‚Π°ΠΊΠΈΡ… Ρ†Π΅Π»Π΅ΠΉ ΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΆΠ΅ спСциализированныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, справочники ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ.

Однако, использованиС соврСмСнных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… довольно Π½Π΅ Π²Ρ‹Π³ΠΎΠ΄Π½ΠΎ для прСдприятий с Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΠΌ ΡˆΡ‚Π°Ρ‚ΠΎΠΌ сотрудников (Π΄ΠΎ 3-Ρ… дСсятков) ΠΈΠ·-Π·Π° высокой стоимости послСдних. Π”Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, написанноС нСпосрСдствСнно для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ прСдприятия, ΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ для Π΅Π³ΠΎ потрСбностСй. Π˜Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊΠΎΠ²Ρ‹ ΠΆΠ΅ прСимущСства справочника ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π΄ соврСмСнными Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…:

Β· справочник ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… рСсурсов для своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚рирования;

Β· ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ особСнности ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ прСдприятия ΠΈ Π΅Π³ΠΎ Π½ΡƒΠΆΠ΄Ρ‹;

Β· удобство ΠΈ ΠΏΡ€ΠΎΡΡ‚ΠΎΡ‚Π° пользования друТСским интСрфСйсом;

Β· Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ установки, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅Ρ‚ нСобходимости установки Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для Ρ€Π°Π±ΠΎΡ‚Ρ‹;

Β· Π½Π΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Π° ΠΊ Ρ€Π΅ΡΡƒΡ€ΡΠ°ΠΌ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚;

Β· простота пСрСноса Π΄Π°Π½Π½Ρ‹Ρ… с ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠŸΠš Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ;

Β· ΠΌΠ½ΠΎΠ³ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ поставлСнной Ρ†Π΅Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

1. Π˜ΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ основныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для создания справочника ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ;

2. ΠŸΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹;

3. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ интСрфСйс ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

4. Π˜ΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ всС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ сохранСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

5. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ измСнСния ΠΈ ΡΠΎΡ…ранСния Π΄Π°Π½Π½Ρ‹Ρ…;

ΠšΡƒΡ€ΡΠΎΠ²Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ справочник ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π·Π°ΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π½Π°Π²Ρ‹ΠΊΠΈ создания структур Π΄Π°Π½Π½Ρ‹Ρ…, использования Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ интСрфСйсов Π² ΡΡ€Π΅Π΄Π΅ CSharp.

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΎΠ±Π·ΠΎΡ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ тСорСтичСскиС свСдСния для выполнСния практичСской части Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ описана рСализация основных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ описаниС выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ описаны руководство администратора ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Сля систСмы.

РАЗДЕЛ 1

ΠΠΠΠ›Π˜Π— ΠŸΠ Π•Π”ΠœΠ•Π’ΠΠžΠ™ ΠžΠ‘Π›ΠΠ‘Π’Π˜

1.1 Π˜ΡΡ‚ΠΎΡ€ΠΈΡ развития справочников/Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π˜ΡΡ‚ΠΎΡ€ΠΈΡ возникновСния ΠΈ Ρ€Π°Π·Π²ΠΈΡ‚ия Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π² ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ, Ρ‚Π°ΠΊ ΠΈ Π² ΡƒΠ·ΠΊΠΎΠΌ аспСктС, Ρ‚.ΠΊ. справочник ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ — это ΠΏΠΎ ΡΡƒΡ‚ΠΈ нСбольшая Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ….

Π’ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ аспСктС понятиС истории Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… обобщаСтся Π΄ΠΎ ΠΈΡΡ‚ΠΎΡ€ΠΈΠΈ Π»ΡŽΠ±Ρ‹Ρ… срСдств, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… чСловСчСство Ρ…Ρ€Π°Π½ΠΈΠ»ΠΎ ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»ΠΎ Π΄Π°Π½Π½Ρ‹Π΅. Π’ Ρ‚Π°ΠΊΠΎΠΌ контСкстС ΡƒΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, срСдства ΡƒΡ‡Ρ‘Ρ‚Π° царской ΠΊΠ°Π·Π½Ρ‹ ΠΈ Π½Π°Π»ΠΎΠ³ΠΎΠ² Π² Π΄Ρ€Π΅Π²Π½Π΅ΠΌ Π¨ΡƒΠΌΠ΅Ρ€Π΅ (4000 Π³. Π΄ΠΎ Π½. э.), узСлковая ΠΏΠΈΡΡŒΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΈΠ½ΠΊΠΎΠ² — ΠΊΠΈΠΏΡƒ, клинописи, содСрТащиС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Ассирийского царства ΠΈ Ρ‚. ΠΏ. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ нСдостатком этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° являСтся Ρ€Π°Π·ΠΌΡ‹Π²Π°Π½ΠΈΠ΅ понятия «Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…» ΠΈ Ρ„актичСскоС Π΅Π³ΠΎ слияниС с ΠΏΠΎΠ½ΡΡ‚иями «Π°Ρ€Ρ…ΠΈΠ²» ΠΈ Π΄Π°ΠΆΠ΅ «ΠΏΠΈΡΡŒΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ».

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡƒΠ·ΠΊΠΎΠΌ аспСктС рассматриваСт Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΌ (соврСмСнном) ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ. Π­Ρ‚Π° история начинаСтся с 1955 Π³ΠΎΠ΄Π°, ΠΊΠΎΠ³Π΄Π° появилось ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ записСй. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС этого Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΎ модСль ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ записСй Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ². Для хранСния Π΄Π°Π½Π½Ρ‹Ρ… использовались ΠΏΠ΅Ρ€Ρ„ΠΎΠΊΠ°Ρ€Ρ‚Ρ‹.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ сСтСвыС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… появились Π² ΡΠ΅Ρ€Π΅Π΄ΠΈΠ½Π΅ 1960;Ρ…. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»ΠΈΡΡŒ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ². ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ индСксно-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ записСй быстро Ρ€Π°Π·Π²ΠΈΠ»ΠΈΡΡŒ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ записСй, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π½Π° Π½Π°Π±ΠΎΡ€Ρ‹. Π—Π° Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ Data Base Task Group (DBTG), Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π²ΡˆΠ΅ΠΉ стандартный язык описания Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π§Π°Ρ€Π»ΡŒΠ· Π‘Π°Ρ…ΠΌΠ°Π½ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Π’ΡŒΡŽΡ€ΠΈΠ½Π³ΠΎΠ²ΡΠΊΡƒΡŽ ΠΏΡ€Π΅ΠΌΠΈΡŽ.

Π’ ΡΡ‚ΠΎ ΠΆΠ΅ врСмя Π² ΡΠΎΠΎΠ±Ρ‰Π΅ΡΡ‚Π²Π΅ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… COBOL Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π½Π° концСпция схСм Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ нСзависимости Π΄Π°Π½Π½Ρ‹Ρ….

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²Π°ΠΆΠ½Ρ‹ΠΉ этап связан с ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π² Π½Π°Ρ‡Π°Π»Π΅ 1970;Ρ… рСляционной ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, благодаря Ρ€Π°Π±ΠΎΡ‚Π°ΠΌ Π­Π΄Π³Π°Ρ€Π° Π€. Кодда. Π Π°Π±ΠΎΡ‚Ρ‹ Кодда ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΈ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ‚Ссной связи ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… с ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΎΠΉ ΠΈ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ. Π—Π° ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ Π² Ρ‚Π΅ΠΎΡ€ΠΈΡŽ ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ Π­Π΄Π³Π°Ρ€ Π€. Кодд Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΏΡ€Π΅ΠΌΠΈΡŽ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°.

Π‘Π°ΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ database (Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…) появился Π² Π½Π°Ρ‡Π°Π»Π΅ 1960;Ρ… Π³ΠΎΠ΄ΠΎΠ², ΠΈ Π±Ρ‹Π» Π²Π²Π΅Π΄Ρ‘Π½ Π² ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠΈΠΌΠΏΠΎΠ·ΠΈΡƒΠΌΠ°Ρ…, ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ„ΠΈΡ€ΠΌΠΎΠΉ SDC (System Development Corporation) Π² 1964 ΠΈ 1965 Π³ΠΎΠ΄Π°Ρ…, хотя понимался сначала Π² Π΄ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ ΡƒΠ·ΠΊΠΎΠΌ смыслС, Π² ΠΊΠΎΠ½Ρ‚СкстС систСм искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π°. Π’ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Π² ΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Π²ΠΎΡˆΡ‘Π» лишь Π² 1970;Π΅ Π³ΠΎΠ΄Ρ‹.

1.2 ΠžΠ±Π·ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ-Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²

1.2.1 ΠšΠ°Π΄Ρ€Ρ‹ Плюс

ΠšΠ°Π΄Ρ€ΠΎΠ²Ρ‹ΠΉ ΡƒΡ‡Π΅Ρ‚ — это Π²Π°ΠΆΠ½Ρ‹ΠΉ аспСкт для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΡ‚Π΄Π΅Π»Π° ΠΊΠ°Π΄Ρ€ΠΎΠ² любой ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ΠΉ ΠΏΡ€Π΄ΡƒΠΊΡ‚ ΠΏΡ€ΠΈΠ·Π²Π°Π½ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ускорит ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ Π»ΡŽΠ±Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡ‚Π΄Π°Ρ‡Ρƒ ΠΎΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ долТностных обязанностСй спСциалистов ΠΏΠΎ ΠΊΠ°Π΄Ρ€Π°ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ прСдприятия.

Рисунок 1.1 Π Π°Π±ΠΎΡ‡Π΅Π΅ ΠΎΠΊΠ½ΠΎ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ сотрудника

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ «ΠšΠ°Π΄Ρ€Ρ‹ Плюс» Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ ΠΏΡ€ΠΈΠΊΠ°Π·Ρ‹, заявлСния ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹, ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ пСрсонала, Π° Ρ‚Π°ΠΊΠΆΠ΅ вСсти ΡƒΡ‡Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Рисунок 1.2.2 Π£Ρ‡Π΅Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ сотрудника

1.2.2 ΠžΡ‚Π΄Π΅Π» ΠšΠ°Π΄Ρ€ΠΎΠ² Плюс

ΠžΡ‚Π΄Π΅Π» ΠšΠ°Π΄Ρ€ΠΎΠ² Плюс — автоматизация Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΡ‚Π΄Π΅Π»Π° ΠΊΠ°Π΄Ρ€ΠΎΠ². ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΡ‚Π΄Π΅Π»Π° ΠΊΠ°Π΄Ρ€ΠΎΠ² ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΎΠ±ΠΎΡ€ΠΎΡ‚. Π­Ρ„Ρ„Π΅ΠΊΡ‚ ΠΎΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΎΡ‚Π΄Π΅Π»Π° ΠΊΠ°Π΄Ρ€ΠΎΠ² высок для прСдприятий с Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ Ρ‡ΠΈΡΠ»Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ сотрудников. Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ сущСствСнно сниТаСт врСмя, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠΊΠ°Π·ΠΎΠ² ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Рисунок 1.2.3 ΠžΡ‚Π΄Π΅Π» ΠšΠ°Π΄Ρ€ΠΎΠ² Плюс ΠΎΠΊΠ½ΠΎ со ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌ расписаниСм (просмотр, Π²Π²ΠΎΠ΄, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅)

ВозмоТности:

— Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ 34-Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² (ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ ΠΈ ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠΊΠ°Π·ΠΎΠ²), ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠΎΡΡ‚Π°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡŽ Госкомстата России;

— Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ 36-Ρ‚ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… статистичСских ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ²;

— Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² (Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΏΡ€ΠΈΠΊΠ°Π·ΠΎΠ²) ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ²;

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΡƒ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ‚Π°Π±Π΅Π»ΡŒ) с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ 1Π‘;

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΡƒ ΠΈΠ· Excel (ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ);

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ классификаторы (ΠšΠ›ΠΠ”Π , ОКИН, ОКБО, ΠžΠšΠŸΠ”Π’Π ).

Рисунок 1.2.4 Active ΠžΡ‚Π΄Π΅Π» ΠšΠ°Π΄Ρ€ΠΎΠ² Плюс Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° отпусков

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

По Π±ΠΎΠ»ΡŒΡˆΠΎΠΌΡƒ счСту, Π²Π°ΠΆΠ½ΠΎ Π½Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ Π²ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ справочника ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ, Π° ΡΠ°ΠΌ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ. РСшСниС ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ справочника Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½: информация Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ΄ Ρ‡Π΅Ρ‚ΠΊΠΈΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ, Ρ€Π°Π±ΠΎΡ‚Π° с Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ условия. Π­Ρ‚ΠΎ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡƒΡΠ»ΠΎΠ²ΠΈΠΉ удобства ΠΈ ΡΡ„фСктивности Ρ€Π°Π±ΠΎΡ‚Ρ‹ всСго прСдприятия Π² Ρ†Π΅Π»ΠΎΠΌ. ИспользованиС Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π²Ρ‹Π³ΠΎΠ΄Π½ΠΎ Π² ΡΠΈΠ»Ρƒ ΠΈΡ… ΠΈΠ·Π±Ρ‹Ρ‚очности, Ρ‚.ΠΊ. Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Π² ΡΠ²ΠΎΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ… ΡΡ‚Π°Ρ€Π°ΡŽΡ‚ΡΡ ΡƒΡ‡Π΅ΡΡ‚ΡŒ всС аспСкты ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΌΡƒ вопросу. Π­Ρ‚Π° ΠΆΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΈ Π·Π°Ρ‚рудняСт освоСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² пСрсоналом, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹. Π’Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ ΠΈΠ· Π΄Π°Π½Π½ΠΎΠΉ ситуация являСтся созданиС собствСнной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Π½ΡƒΠΆΠ΄Ρ‹ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ пСрсонала, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ с Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

РАЗДЕЛ 2. ΠžΠŸΠ˜Π‘ΠΠΠ˜Π• ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ«

2.1 Бпособы сохранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… сотрудников. Π›ΡƒΡ‡ΡˆΠ΅ всСго для этого ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ сСриализация. Π Π°Π±ΠΎΡ‚Π° с ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΎΡ‡Π΅Π½ΡŒ проста, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ всСго нСсколько строчСк, Π° ΡΠ°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ способом ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ фактичСски любой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π΅Π³ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ.

Π’Π°ΠΊΠΆΠ΅ просто ΠΈ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ дСсСриализации. Как ΠΈ ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ дСсСриализация Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π΄Π° ΠΈ ΠΏΡ€ΠΎΡΡ‚Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Ρ‚.ΠΊ. восстанавливаСт ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ сохранСнный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ сохранСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ini-Ρ„Π°ΠΉΠ»Ρ‹, сохранСниС массива Π±Π°ΠΉΡ‚ΠΎΠ² ΠΈΠ»ΠΈ строк Π² Ρ„Π°ΠΉΠ». ВсС Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΈΠΌ большим нСдостатком — Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄ сохранСниСм, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… ΠΏΠΎΡΠ»Π΅ прочтСния, Ρ‡Ρ‚ΠΎ ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΏΡ€ΠΈ нСобходимости сохранСния большого количСства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΈΠ»ΠΈ Ρ†Π΅Π»Ρ‹Ρ… классов.

Одно ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… прСимущСств сСриализации Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡ… ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°Ρ Π² Ρ„Π°ΠΉΠ». ВосстановлСниС Π½Π°ΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΡΠΎΡΡ‚авляСт большого Ρ‚Ρ€ΡƒΠ΄Π°, ΠΈ ΠΎΠ½ΠΈ сразу ΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ using ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ пространство ΠΈΠΌΠ΅Π½ System.Runtime.Serialization.Formatters.Binary ΠΈ System.Runtime.Serialization. ПослС этого Π½Π°ΠΌ становятся доступны Ρ‚Π°ΠΊΠΈΠ΅ классы ΠΊΠ°ΠΊ FileStream ΠΈ BinaryFormatter. Класс FileStream Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для создания ΠΏΠΎΡ‚ΠΎΠΊΠ° Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„Π°ΠΉΠ»Π°, ΠΌΠ΅Ρ‚ΠΎΠ΄Π° доступа, способа Π²Ρ‹Π·ΠΎΠ²Π°. Класс BinaryFormatter нСпосрСдствСнно Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Serialize ΠΈ Deserialize, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ запись/Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π²/ΠΈΠ· Ρ„Π°ΠΉΠ»Π°. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ прСдусмотрСно нСсколько мСст, Π³Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° запись ΠΈΠ»ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, слСдуя ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ программирования (Π΄Π°Π»Π΅Π΅ ООП) Π±Ρ‹Π»ΠΎ принято Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для записи ΠΈ Ρ‡Ρ‚Сния Saving () ΠΈ Opening () соотвСтствСнно.

Код:

public void Saving ()

{

FileStream FS = new FileStream (Application.StartupPath + «\Data.dat», FileMode. Create, FileAccess. Write, FileShare. ReadWrite);

BinaryFormatter BF = new BinaryFormatter ();

BF.Serialize (FS, L);

FS.Close ();

}

//Ѐункция чтСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„Π°ΠΉΠ»Π°

public void Opening ()

{

FileStream FS = new FileStream (Application.StartupPath + «\Data.dat», FileMode. Open, FileAccess. Read, FileShare. Read);

BinaryFormatter BF = new BinaryFormatter ();

L.Clear ();

L = (List)BF.Deserialize (FS);

FS.Close ();

}

Π˜Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΊΠΎΠ΄Π°, ΠΎΠ±Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ доступа public, поэтому ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ доступны Π² Π»ΡŽΠ±ΠΎΠΉ части нашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Saving () ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ создаём Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ, Π³Π΄Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ мСстополоТСниС Ρ„Π°ΠΉΠ»Π°, ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ доступа ΠΊ Ρ„Π°ΠΉΠ»Ρƒ. ΠŸΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° StartupPath класса Application. Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ для исполняСмому Ρ„Π°ΠΉΠ»Π°, Π·Π°ΠΏΡƒΡΡ‚ΠΈΠ²ΡˆΠ΅Π³ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π΅Π³ΠΎ имя. Π”Π°Π»Π΅Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ класс BinaryFormatter, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ нСпосрСдствСнно сСриализиуСт ΠΈ Π΄Π΅ΡΠΈΡ€ΠΈΠ°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ нСпосрСдствСнно ΠΏΡ€ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ сСриализации. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ сСриализации являСтся список ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΈΠΏΠ° класс Data. Data — это класс, поля ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ хранят всю ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅, Π° ΠΊΠ»Π°ΡΡ List просто ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ большоС количСство этих ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

public List L = new List ();

ПослС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ всСх Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΡ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Serialize.

BF.Serialize (FS, L);

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ, Ρ‚. Π΅. ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ ΠΈ Π½Π΅ΠΏΠΎΡΡ€Π΅Π΄ΡΡ‚Π²Π΅Π½Π½ΠΎ Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Opening (). Π­Ρ‚Π° функция сама ΠΏΠΎ ΡΠ΅Π±Π΅ ΠΌΠ°Π»ΠΎ Ρ‡Π΅ΠΌ отличаСтся ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ сохранСния, Ρ‚. Π΅. Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ, ΠΈ ΠΊΠ»Π°ΡΡ BinaryFormatter. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ ΠΎΡ‡ΠΈΡ‰Π°Π΅ΠΌ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² List, Ρ‡Ρ‚ΠΎΠ± ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок ΠΏΡ€ΠΈ сохранСнии ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ.

L = (List)BF.Deserialize (FS);

ΠŸΡ€ΠΈ дСсСриализации ΠΌΡ‹ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΡƒΠΆΠ΅ хранится информация Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. Π’.ΠΊ. функция Deserialize Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ восстановлСнный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° object ΠΌΡ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ явноС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° object ΠΊ List. ПослС этого Ρƒ Π½Π°Ρ Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΡƒΠΆΠ΅ хранятся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ класса Data, Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅.

2.2 Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ

Π’ ΠΌΠΎΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΈ ΠΏΡ€ΠΎΡΡ‚Ρ‹ΠΌ интСрфСйсом. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ сотрудников Π² ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ с ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈΠ»ΠΈ ΠΆΠ΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π΄Π°Π½Π½Ρ‹Π΅.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ записи.

2.3 Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ создана Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ списков класса List, Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ListView для отобраТСния ΠΊΡ€Π°Ρ‚ΠΊΠΈΡ… свСдСний ΠΎ ΡˆΡ‚Π°Ρ‚Π΅ сотрудников, ToolStrip1 для отобраТСния ΠΏΠ°Π½Π΅Π»ΠΈ мСню. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ создано 5 ΠΎΠΊΠΎΠ½ (главная Ρ„ΠΎΡ€ΠΌΠ°, Ρ„ΠΎΡ€ΠΌΠ° добавлСния Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника, Ρ„ΠΎΡ€ΠΌΠ° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅, Ρ„ΠΎΡ€ΠΌΠ° ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ, ΠΈ Ρ„ΠΎΡ€ΠΌΠ° для записи ΠΏΡ€ΠΈΡ‡ΠΈΠ½ прСмирования/дСпрСмирования). Для Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ… прСдусмотрСны TextBox-сы ΠΈ ComboBox-сы. Для Π±ΠΎΠ»Π΅Π΅ Π»Π΅Π³ΠΊΠΎΠ³ΠΎ восприятия ΠΏΡ€ΠΈ ошибкС Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π±Ρ‹Π» использован ErrorProvider. ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ своСго Π²Ρ‹Π±ΠΎΡ€Π° ΠΌΠΎΠΆΠ½ΠΎ произвСсти ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Button. Для Π±ΠΎΠ»Π΅Π΅ Π»Π΅Π³ΠΊΠΎΠ³ΠΎ восприятия мСста, ΠΊΡƒΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°Π΄ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ прСдусмотрСны GroupBox. Мною Π±Ρ‹Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ нСсколько ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… классов, ΠΎΠ΄ΠΈΠ½ — для хранСния всСй ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ ΠΈ ΠΎΠ΄ΠΈΠ½ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, для хранСния ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅.

Π‘Ρ€Π΅Π΄ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅: string, DateTime, int, bool, List<>, Data, Form, ListViewItem.

2.4 Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ подсистСм для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ

Π’ Ρ…ΠΎΠ΄Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ нСсколько подсистСм ΠΈ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ.

§ Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² Π±Π°Π·Ρƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника

— Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹;

— Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π½ΠΎΠ²ΠΎΠΌ сотрудникС;

— Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСкста;

— ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ записи;

— ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ заполнСния Ρ„ΠΎΡ€ΠΌΡ‹;

— ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π½ΠΎΠ²ΠΎΠΌ сотрудникС;

§ РСдактирования ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΡΡ Π² Π±Π°Π·Π΅ сотрудникам

— Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±Ρ‰Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ;

— Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…;

— ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ заполнСния Π΄Π°Π½Π½Ρ‹Ρ…;

— ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ;

§ УвольнСниС, ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π΄Π΅ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудников

— Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹;

— Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅;

— Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ, дСпрСмирования, прСмирования;

— ΡΠΎΡ…ранСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ;

§ Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ записи ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ ΠΈΠ· Π±Π°Π·Ρ‹

— ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ восстановлСния Π΄Π°Π½Π½Ρ‹Ρ… послС удалСния;

— ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

2.5 Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ просмотр Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2.5.1 Главная Ρ„ΠΎΡ€ΠΌΠ°

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π³ΠΎΡ‚ΠΎΠ²ΠΎ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ сразу ΠΆΠ΅ послС запуска. Если Π² Π±Π°Π·Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ записи ΠΎ ΡˆΡ‚Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΠΊΠΎΠ², ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ считаны ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅

Как Π²ΠΈΠ΄Π½ΠΎ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊΠ°ΠΊ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ», «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ», «Π£Π²ΠΎΠ»ΠΈΡ‚ΡŒ», «Π•Ρ‰Ρ‘». Π’.ΠΊ. ΠΊΠ½ΠΎΠΏΠΊΠ° «Π•Ρ‰Ρ‘» являСтся ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ с Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΌ списком, Π² Π½Π΅ΠΉ содСрТатся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ «ΠŸΡ€Π΅ΠΌΠΈΡ», «Π¨Ρ‚Ρ€Π°Ρ„», «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· Π±Π°Π·Ρ‹».

Рисунок 2.1.Главная Ρ„ΠΎΡ€ΠΌΠ°

2.5.2 БозданиС нового напоминания

Для добавлСния Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника Π² Π±Π°Π·Ρƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ». ПослС наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ появится ΠΎΠΊΠ½ΠΎ «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника», Π³Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ элСмСнты напоминания (рис. 2.2).

Рисунок 2.2 Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника Π² Π±Π°Π·Ρƒ

Окно «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника» располагаСтся Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Form2. Для удобства Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ GroupBox для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, которая вводится. Для Π²Ρ‹Π±ΠΎΡ€Π° области проТивания прСдусмотрСн ComboBox, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит всС области Π£ΠΊΡ€Π°ΠΈΠ½Ρ‹. ΠŸΡ€ΠΈ нСобходимости ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ввСсти ΠΎΠ±Π»Π°ΡΡ‚ΡŒ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹.

ΠŸΡ€ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ Π²Π²ΠΎΠ΄Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΠ»ΠΈ ΠΆΠ΅ Π½Π΅ Π²Π²ΠΎΠ΄Π΅ ΠΈΡ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ прСдусмотрСны ErrorProvider, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ просигнализируСт ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅ Π²ΠΎΠ·Π»Π΅ поля, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½Π° Π±Ρ‹Π»Π° Π΄ΠΎΠΏΡƒΡ‰Π΅Π½Π°. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° провСряСт Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° Ρ‚Π°ΠΊΠΈΠ΅ ошибки, ΠΊΠ°ΠΊ Π²Π²ΠΎΠ΄ Π·Π½Π°ΠΊΠΎΠ², ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ Ρ†ΠΈΡ„Ρ€, Π² ΠΏΠΎΠ»Ρ прСдусмотрСнныС для Π²Π²ΠΎΠ΄Π° Ρ†ΠΈΡ„Ρ€. На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΎΡˆΠΈΠ±ΠΊΠΈ, Π΄ΠΎΠΏΡƒΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Рисунок 2.3 Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника Π² Π±Π°Π·Ρƒ с ΠΎΡˆΠΈΠ±ΠΊΠ°ΠΌΠΈ

ПослС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» данная информация Ρ‚ΡƒΡ‚ ΠΆΠ΅ отобразится Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈ ΡΡ€Π°Π·Ρƒ ΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ сохранСна Π² Ρ„Π°ΠΉΠ».

2.5.3 Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

Π’Ρ‹Π·ΠΎΠ² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° для коррСктирования ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΡΡ Π² Π±Π°Π·Π΅ сотрудникам осущСствляСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ», ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ поставив Π³Π°Π»ΠΎΡ‡ΠΊΡƒ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ элСмСнта. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ этих дСйствий Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ°.

Рисунок 2.4 Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

ΠŸΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ этой Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° Π½Π΅Ρ‘ сразу ΠΆΠ΅ загруТаСтся информация ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌ сотрудникС. Окно рСдактирования ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Ρƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ ΠΎΠΊΠ½Ρƒ добавлСния Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника, ΠΈΠΌΠ΅Π΅Ρ‚ всС Ρ‚Π΅ ΠΆΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния.

Рисунок 2.5 Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ мСста шибки ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅

2.5.4 УвольнСниС сотрудника

Для ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ сотрудника Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ элСмСнта ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π£Π²ΠΎΠ»ΠΈΡ‚ΡŒ».

Рисунок 2.6 УвольнСниС сотрудника

ПослС наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ новая Ρ„ΠΎΡ€ΠΌΠ° с ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌ описаниС сотрудника (Π€.И.О., Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡ‚ΡŒ, Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ мСсто) ΠΈ ΠΏΠΎΠ»Π΅ΠΌ для Π²Π²ΠΎΠ΄Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ сотрудника. ПослС заполнСния этой Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Π½Π°ΠΆΠ°Ρ‚ия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» информация Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π°, Π° Π² Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π² ΡΡ‚ΠΎΠ»Π±Ρ†Π΅ «Π£Π²ΠΎΠ»Π΅Π½ с Ρ€Π°Π±ΠΎΡ‚Ρ‹» появится тСкущая Π΄Π°Ρ‚Π°.

Рисунок 2.7 Окно описания ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ сотрудника

2.5.5 ΠŸΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудников

ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠŸΡ€Π΅ΠΌΠΈΡ» Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π•Ρ‰Ρ‘» ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° (рис. 2.8), ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ поставив Π³Π°Π»ΠΎΡ‡ΠΊΡƒ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Ρ‚ΠΎΠ³ΠΎ сотрудника, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСмируСтся. На Π½Π΅ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π° краткая информация ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅, тСкущая сумма ΠΏΡ€Π΅ΠΌΠΈΠΈ, доступная для измСнСния ΠΈ ΠΏΠΎΠ»Π΅ для описания ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ прСмирования. ПослС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ заполнСния ΠΏΠΎΠ»Π΅ΠΉ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ Π½Π°ΠΆΠ°Ρ‚ия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ сохранСны ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ измСнСния Π±ΡƒΠ΄ΡƒΡ‚ внСсСны Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ.

Рисунок 2.8 ΠŸΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудника

2.5.6 Π”Π΅ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудников

ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π¨Ρ‚Ρ€Π°Ρ„» Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π•Ρ‰Ρ‘» ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ° (рис. 2.9), ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ поставив Π³Π°Π»ΠΎΡ‡ΠΊΡƒ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Ρ‚ΠΎΠ³ΠΎ сотрудника, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСмируСтся. На Π½Π΅ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π° краткая информация ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅, тСкущая сумма ΡˆΡ‚Ρ€Π°Ρ„Π° ΠΈΠ»ΠΈ ноль, Ссли сотрудник Π΅Ρ‰Ρ‘ Π½Π΅ ΡˆΡ‚рафовался, доступная для измСнСния ΠΈ ΠΏΠΎΠ»Π΅ для описания ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ дСпрСмирования. Если ΠΆΠ΅ сотрудник Ρ€Π°Π½Π΅Π΅ Π±Ρ‹Π» ΠΎΡˆΡ‚Ρ€Π°Ρ„ΠΎΠ²Π°Π½, Ρ‚ΠΎ ΠΏΠΎΠ»Π΅ описания ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ дСпрСмирования. ПослС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ заполнСния ΠΏΠΎΠ»Π΅ΠΉ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ Π½Π°ΠΆΠ°Ρ‚ия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ сохранСны ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ измСнСния Π±ΡƒΠ΄ΡƒΡ‚ внСсСны Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ.

Рисунок 2.9 Π”Π΅ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудника

ΠŸΡ€ΠΈ Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡˆΡ‚Ρ€Π°Ρ„Π° Π½Π° ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ° сумма ΠΏΡ€Π΅ΠΌΠΈΠΈ автоматичСски обнуляСтся.

Рисунок 2.10 Главная Ρ„ΠΎΡ€ΠΌΠ° со ΡˆΡ‚Π°Ρ‚ΠΎΠΌ сотрудников

2.5.7 Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ сотрудников ΠΈΠ· Π±Π°Π·Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Для удалСния записи ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ ΠΈΠ· Π±Π°Π·Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π½Π΅Π³ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· Π±Π°Π·Ρ‹» Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π•Ρ‰Ρ‘». ΠŸΡ€ΠΈ этом ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ послС удалСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ Π΅Ρ‘ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π΅ ΡƒΠ΄Π°ΡΡ‚ся. ΠŸΡ€ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΎΡ‚Π²Π΅Ρ‚Π΅ Π½Π° ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠ΅Π΅ΡΡ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ вся информация ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π° ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Рисунок 2.11 Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎΠ± ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

2.5.8 ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

Для просмотра ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅, Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΉ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°Π΄ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠΌ сотрудником ΠΊΠ»Π°Ρ†Π½ΡƒΡ‚ΡŒ Π΄Π²Π° Ρ€Π°Π·Π° Π»Π΅Π²ΠΎΠΉ клавишСй ΠΌΡ‹ΡˆΠΈ. ΠŸΡ€ΠΈ этом появится Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅.

Рисунок 2.12 Полная информация ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

2.6 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° прилоТСния

Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ событий ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ:

§ Form1

public Form1()

public void Opening ()

private void button1_Click (object sender, EventArgs e)

public void Saving ()

private void toolStripButton1_Click (object sender, EventArgs e)

private void toolStripButton2_Click (object sender, EventArgs e)

private Data Finds (string s)

private void AddDel (Data temp, Data NewD)

private void toolStripButton3_Click (object sender, EventArgs e)

private void прСмияToolStripMenuItem_Click (object sender, EventArgs e)

private void ΡˆΡ‚Ρ€Π°Ρ„ToolStripMenuItem_Click (object sender, EventArgs e)

private void Form1_FormClosing (object sender, FormClosingEventArgs e)

private void listView1_MouseDoubleClick (object sender, MouseEventArgs e)

private void ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒΠ˜Π·Π‘Π°Π·Ρ‹ToolStripMenuItem_Click (object sender, EventArgs e)

§ Form2

public Form2(int id, bool isnew, Data corr)

private void button2_Click (object sender, EventArgs e)

private void button1_Click (object sender, EventArgs e)

private void textBox1_Validating (object sender, CancelEventArgs e)

private void textBox2_Validating (object sender, CancelEventArgs e)

private void textBox3_Validating (object sender, CancelEventArgs e)

private void textBox4_Validating (object sender, CancelEventArgs e)

private void textBox5_Validating (object sender, CancelEventArgs e)

private void comboBox1_Validating (object sender, CancelEventArgs e)

private void textBox6_Validating (object sender, CancelEventArgs e)

private void textBox7_Validating (object sender, CancelEventArgs e)

private void textBox8_Validating (object sender, CancelEventArgs e)

private void textBox9_Validating (object sender, CancelEventArgs e)

private void textBox10_Validating (object sender, CancelEventArgs e)

private void textBox11_Validating (object sender, CancelEventArgs e)

private void Form2_Load (object sender, EventArgs e)

§ Form3

public Form3(Data d)

private void button1_Click (object sender, EventArgs e)

private void Form3_Load (object sender, EventArgs e)

private void button2_Click (object sender, EventArgs e)

§ Form4

public Form4(Data dt, bool what)

private void button2_Click (object sender, EventArgs e)

private void Form4_Load (object sender, EventArgs e)

private void button1_Click (object sender, EventArgs e)

private void textBox4_Validating (object sender, CancelEventArgs e)

§ Form5

public Form5(Data dt)

private void button1_Click (object sender, EventArgs e)

private void Form5_Load (object sender, EventArgs e)

§ Informations

public Informations ()

public Informations (string Area, string Town, string Street, string House, string Birthday, int Flat, int Phone_num)

public string GetSetArea

public string GetSetTown

public string GetSetStreet

public string GetSetHouse

public string GetSetBirthday

public int GetSetFlat

public int GetSetPhone_num

§ Data

public Data ()

public Data (string fio, string post, string workplace, string workoutreason, string finereason, int id, DateTime workin, DateTime workout,

double oklad, double premija, double fine, Informations INF, string premijareason)

public Data (string fio, string post, string workplace, string workoutreason, string finereason, int id, DateTime workin,

double oklad, double premija, double fine, Informations INF, string premijareason)

public string GetSetFio

public string GetSetPost

public string GetSetWorkPlace

public string GetInformation

public string GetSetWorkOutReason

public string GetSetFineReason

public int GetSetId

public DateTime GetSetWorkIn

public DateTime GetSetWorkOut

public double GetSetOklad

public double GetSetPremija

public double GetSetFine

public void SetInformation (string Area, string Town, string Street, string House, string Birthday, int Flat, int Phone_num)

public Informations GetInfa

public string GetSetPremijaReason

РАЗДЕЛ 3. Π Π£ΠšΠžΠ’ΠžΠ’ΠžΠ”Π‘Π’Π’Πž ΠŸΠž Π­ΠšΠ‘ΠŸΠ›Π£ΠΠ’ΠΠ¦Π˜Π˜

3.1 БистСмныС трСбования

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ Π½Π° Windows XP. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° нуТдаСтся Π² ΡƒΡΡ‚Π°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌ NET. Freamwork вСрсии 3.5 ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΎΠ΄Π½Π°ΠΊΠΎ соврСмСнныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Microsoft Windows XP Proffesion SP3 ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ NET. Freamwork вСрсии 3.5.

ВысокиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ тСхничСскиС характСристики ΠŸΠš ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ процСсс Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

3.2 Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΡ‡Π΅Π½ΡŒ проста Π² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ. Благодаря простому интСрфСйсу ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.

Для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π³Π΄Π΅ откроСтся главная Ρ„ΠΎΡ€ΠΌΠ°. Если ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π·Π°ΠΏΡƒΡΠΊΠ°Π»Π°ΡΡŒ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅, Ρ‚ΠΎ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Для добавлСния сотрудника Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ», послС Ρ‡Π΅Π³ΠΎ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ ввСсти всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Если ΠΆΠ΅ информация Π²Π²Π΅Π΄Π΅Π½Π° Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ Π±Ρ‹Π»ΠΈ Π΄ΠΎΠΏΡƒΡ‰Π΅Π½Ρ‹ ошибки Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΡƒΠ²Π΅Π΄ΠΎΠΌΠΈΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΠ± ΡΡ‚ΠΎΠΌ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ сигналом Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² поля, Π³Π΄Π΅ Π΄ΠΎΠΏΡƒΡ‰Π΅Π½Π° ошибка с ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌ описаниС сути. ПослС ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ ввСдСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ Π½Π°ΠΆΠ°Ρ‚ия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» информация Π±ΡƒΠ΄Π΅Ρ‚ внСсСна Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΡΡ€Π°Π·Ρƒ ΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅.

Для рСдактирования Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅Π³ΠΎ нас сотрудника ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅». ΠŸΡ€ΠΈ этом откроСтся ΠΎΠΊΠ½ΠΎ рСдактирования, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Ρƒ Π½Π΅ ΠΎΡ‚личаСтся ΠΎΡ‚ ΠΎΠΊΠ½Π° добавлСния сотрудника. ΠŸΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ», послС Ρ‡Π΅Π³ΠΎ ΠΎΠΊΠ½ΠΎ рСдактирования закроСтся ΠΈ ΠΈΠ½Ρ„ормация Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π°. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Ρ„Π°ΠΉΠ» происходит автоматичСски послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ± ΡƒΠ²ΠΎΠ»ΠΈΡ‚ΡŒ сотрудника Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π½Π΅Π³ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π£Π²ΠΎΠ»ΠΈΡ‚ΡŒ». ПослС наТатия Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ откроСтся ΠΎΠΊΠ½ΠΎ с ΠΊΡ€Π°Ρ‚ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΡƒ ΠΈ ΠΏΠΎΠ»Π΅ΠΌ для Π²Π²ΠΎΠ΄Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ. ПослС Π²Π²ΠΎΠ΄Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ ΠΈ Π½Π°ΠΆΠ°Ρ‚ия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» информация ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΌΡƒ сотруднику Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ΠΈ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π² ΡΡ‚ΠΎΠ»Π±Ρ†Π΅ «Π£Π²ΠΎΠ»Π΅Π½ с Ρ€Π°Π±ΠΎΡ‚Ρ‹» появится тСкущая Π΄Π°Ρ‚Π°. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠžΡ‚ΠΌΠ΅Π½Π°» информация ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ останСтся Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

На Ρ„ΠΎΡ€ΠΌΠ΅ имССтся ΠΊΠ½ΠΎΠΏΠΊΠ° «Π•Ρ‰Ρ‘» с Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΌ списком. Она содСрТит Ρ‚Π°ΠΊΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ дСйствия ΠΊΠ°ΠΊ «ΠŸΡ€Π΅ΠΌΠΈΡ», «Π¨Ρ‚Ρ€Π°Ρ„», «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· Π±Π°Π·Ρ‹». Для выполнСния дСйствия с ΡΡ‚ΠΈΠΌΠΈ функциями ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ сотрудника Π³Π°Π»ΠΎΡ‡ΠΊΠΎΠΉ, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ дСйствиС.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия «ΠŸΡ€Π΅ΠΌΠΈΡ» откроСтся Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с ΠΊΡ€Π°Ρ‚ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ ΠΈ Π΄Π²ΡƒΠΌΡ полями для Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ содСрТит Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ сумму ΠΏΡ€Π΅ΠΌΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Π·Π° ΠΊΠ°ΠΊΠΈΠ΅ заслуги Π΄Π°Π½Π½Ρ‹ΠΉ сотрудник Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½. Если ΠΆΠ΅ сотрудник Π΄ΠΎ ΡΡ‚ΠΎΠ³ΠΎ ΡƒΠΆΠ΅ Π±Ρ‹Π» ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‚ΠΎ Π² Π΄Π°Π½Π½Ρ‹Ρ… полях Π±ΡƒΠ΄Π΅Ρ‚ содСрТатся ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия «Π¨Ρ‚Ρ€Π°Ρ„» откроСтся Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с ΠΊΡ€Π°Ρ‚ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ ΠΈ Π΄Π²ΡƒΠΌΡ полями для Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ содСрТит Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ сумму ΡˆΡ‚Ρ€Π°Ρ„Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π΄Π°Π½Π½Ρ‹ΠΉ сотрудник Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½. Если ΠΆΠ΅ сотрудник Π΄ΠΎ ΡΡ‚ΠΎΠ³ΠΎ ΡƒΠΆΠ΅ Π±Ρ‹Π» Π΄Π΅ΠΏΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½, Ρ‚ΠΎ Π² Π΄Π°Π½Π½Ρ‹Ρ… полях Π±ΡƒΠ΄Π΅Ρ‚ содСрТатся ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅.

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· Π±Π°Π·Ρ‹» появится ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎΠ± ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ сотрудника ΠΈΠ· Π±Π°Π·Ρ‹. ΠŸΡ€ΠΈ ΡƒΡ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΎΡ‚Π²Π΅Ρ‚Π΅ Π½Π° Π΄Π°Π½Π½ΠΎΠ΅ сообщСниС вся информация ΠΊΠ°ΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ сотрудника Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π° ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’.ΠΊ. Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ вся информация ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ°Ρ… Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ помСстится, для этого прСдусмотрСно ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ. Для просмотра ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅ (ΠΎΠ±Ρ‰Π΅ΠΉ, ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, суммах ΡˆΡ‚Ρ€Π°Ρ„ΠΎΠ² ΠΈ ΠΏΡ€Π΅ΠΌΠΈΠΉ, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… прСмирования/дСпрСмирования) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π°Π΄ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠΌ нас сотрудникС Π΄Π²Π°ΠΆΠ΄Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π»Π΅Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ, ΠΏΡ€ΠΈ этом появится Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΌΡƒ сотруднику.

Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ°Ρ… происходит автоматичСски ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ внСсСнии ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π² Π΄Π°Π½Π½ΠΎΠΌ процСссС участия Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ выполнСния курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ я ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΡΡ с ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ создания, рСдактирования, Π° Ρ‚Π°ΠΊΠΆΠ΅ сохранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ сСриализации, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Π½Π°Π²Ρ‹ΠΊΠΈ программирования Π² ΡΡ€Π΅Π΄Π΅ Π‘Sharp.

Мною Π±Ρ‹Π»ΠΈ Π·Π°ΠΊΡ€Π΅ΠΏΠ»Π΅Π½Ρ‹ Π½Π°Π²Ρ‹ΠΊΠΈ создания структур Π΄Π°Π½Π½Ρ‹Ρ…, Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, создания интСрфСйса, Π° Ρ‚Π°ΠΊΠΆΠ΅ способы ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΎΠΉ ΠΈ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ΠΎ Π²Ρ€Π΅ΠΌΡ создания курсовой я ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΡΡ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ способами хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ мною Π±Ρ‹Π»Π° создана ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая позволяСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ°Ρ…, ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ сотрудникС Π²ΠΎ Π²ΡΡ‘ΠΌ ΡˆΡ‚Π°Ρ‚Π΅.

1. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ указания ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ «ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅», Π—Π°ΠΏΠΎΡ€ΠΎΠΆΡŒΠ΅, 2005.

2. Π­Π½Π΄Ρ€ΡŽ ΠšΡ€ΠΎΠ²Ρ‡ΠΈΠΊ, Π’ΠΈΠ½ΠΎΠ΄ ΠšΡƒΠΌΠ°Ρ€, Номан Π›Π°Π³Π°Ρ€ΠΈ. Net. Π‘Π΅Ρ‚Π΅Π²ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для профСссионалов, Π›ΠΎΡ€Ρ€ΠΈ, 2005.

3. ВроСлсСн Π­Π½Π΄Ρ€ΡŽ. Π―Π·Ρ‹ΠΊ программирования C# 2005 ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .NET. 3-Π΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, Π’ΠΈΠ»ΡŒΡΠΌΡ, 2007.

4. Microsoft Developer Network MSDN Library для Visual Studio 2008 — ΠΏΠ°ΠΊΠ΅Ρ‚ обновлСния 1 (SP1)

5. Visual C# Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…. ΠœΠΈΡ…Π°ΠΈΠ» Абрамян. Π‘Π₯Π’-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2008

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ А

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Drawing;

using System. Linq;

using System. Text;

using System.Windows.Forms;

using System.Runtime.Serialization.Formatters.Binary;

using System.Runtime.Serialization;

using System. IO;

namespace Staff

{

[Serializable]

public partial class Form1: Form

{

public Form2 F2;

public Form3 F3;

public Form4 F4;

public Form5 F5;

private List L = new List ();

private ListViewItem LV;

private int IND = 0;

private int CNT = 0;

private int IDS = 1;

public Form1()

{

InitializeComponent ();

listView1.CheckBoxes = true;

if (File.Exists (Application.StartupPath + «\Data.dat»)) //ВоссстанавливаСм Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ события, Ссли Ρ‚Π°ΠΊΠΎΠ²Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ

{

Opening (); //ДСсСрСализация

if (L.Count ≠ 0)

{

CNT = L. Count;

IDS = L. Count + 1;

for (int i = 0; i < L. Count; i++)

{

ListViewItem LVI = new ListViewItem ();

LVI.Text = L[i]. GetSetId. ToString ();

LVI.SubItems.Add (L[i].GetSetFio);

LVI.SubItems.Add (L[i].GetSetPost);

LVI.SubItems.Add (L[i].GetSetWorkPlace);

LVI.SubItems.Add (L[i].GetSetWorkIn.ToShortDateString ());

if (L[i]. GetSetWorkOut == DateTime. MinValue)

LVI.SubItems.Add (««);

else

LVI.SubItems.Add (L[i]. GetSetWorkOut. ToShortDateString ());

LVI.SubItems.Add (L[i].GetSetOklad.ToString ());

LVI.SubItems.Add (L[i].GetSetPremija.ToString ());

if (L[i]. GetSetFine == 0)

LVI.SubItems.Add (««);

else

LVI.SubItems.Add (L[i]. GetSetFine. ToString ());

LVI.SubItems.Add (L[i].GetInformation);

listView1.Items.Add (LVI);

}

}

}

listView1.ShowItemToolTips = true;

}

//Ѐункция сохранСния Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„Π°ΠΉΠ»

public void Saving ()

{

FileStream FS = new FileStream (Application.StartupPath + «\Data.dat», FileMode. Create, FileAccess. Write, FileShare. ReadWrite);

BinaryFormatter BF = new BinaryFormatter ();

BF.Serialize (FS, L);

FS.Close ();

}

//Ѐункция чтСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„Π°ΠΉΠ»Π°

public void Opening ()

{

FileStream FS = new FileStream (Application.StartupPath + «\Data.dat», FileMode. Open, FileAccess. Read, FileShare. Read);

BinaryFormatter BF = new BinaryFormatter ();

L.Clear ();

L = (List)BF.Deserialize (FS);

FS.Close ();

}

//Кнопка Π²Ρ‹Ρ…ΠΎΠ΄

private void button1_Click (object sender, EventArgs e)

{

Saving ();

this.Close ();

}

//Кнопка Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

private void toolStripButton1_Click (object sender, EventArgs e)

{

F2 = new Form2(IDS, true, new Data ());

ListViewItem LVI = new ListViewItem ();

int t = IDS — 1;

F2.ShowDialog (this);

IDS++;

if (F2.IsExitCorrectly)

{

L.Add (F2.DataNew);

LVI.Text = L[t]. GetSetId. ToString ();

LVI.SubItems.Add (L[t].GetSetFio);

LVI.SubItems.Add (L[t].GetSetPost);

LVI.SubItems.Add (L[t].GetSetWorkPlace);

LVI.SubItems.Add (L[t].GetSetWorkIn.ToShortDateString ());

LVI.SubItems.Add (««);

LVI.SubItems.Add (L[t].GetSetOklad.ToString ());

LVI.SubItems.Add (L[t].GetSetPremija.ToString ());

LVI.SubItems.Add (««);

LVI.SubItems.Add (L[t].GetInformation);

listView1.Items.Add (LVI);

}

Saving ();

}

//Кнопка РСдактирования

private void toolStripButton2_Click (object sender, EventArgs e)

{

Data temp = Finds (e.GetType ().ToString ());

if (temp.GetSetFio.Length ≠ 0)

{

F2 = new Form2(temp.GetSetId, false, temp);

F2.ShowDialog (this);

if (F2.IsExitCorrectly)

{

AddDel (temp, F2. DataNew);

Saving ();

}

else

{

listView1.Items.Insert (IND, LV);

listView1.Items[IND]. Checked = false;

}

}

else

{

MessageBox.Show («ΠΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ!», «Information», MessageBoxButtons. OK, MessageBoxIcon. Information);

}

}

//Ѐункция поиска ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎΠ³ΠΎ элСмСнта ΠΈΠ»ΠΈ ΠΆΠ΅ Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΠ° ΠΌΡ‹ΡˆΠΈ

private Data Finds (string s)

{

Data t = new Data ();

if (s == «System.EventArgs»)

{

foreach (ListViewItem item in listView1. CheckedItems)

{

foreach (Data dt in L)

{

if (dt.GetSetId == Convert. ToInt32(item.Text))

{

t = dt;

LV = item;

IND = item. Index;

listView1.Items.Remove (item);

break;

}

}

break;

}

}

if (s == «System.Windows.Forms.MouseEventArgs»)

{

foreach (ListViewItem item in listView1. SelectedItems)

{

foreach (Data dt in L)

{

if (dt.GetSetId == Convert. ToInt32(item.Text))

{

t = dt;

item.Selected = false;

item.Checked = false;

break;

}

}

break;

}

}

return t;

}

//Ѐункция добавлСния/удалСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ

private void AddDel (Data temp, Data NewD)

{

int index = 0;

index = L. IndexOf (temp);

L.Remove (temp);

L.Insert (index, NewD);

ListViewItem LVI = new ListViewItem ();

LVI.Text = L[index]. GetSetId. ToString ();

LVI.SubItems.Add (L[index].GetSetFio);

LVI.SubItems.Add (L[index].GetSetPost);

LVI.SubItems.Add (L[index].GetSetWorkPlace);

LVI.SubItems.Add (L[index].GetSetWorkIn.ToShortDateString ());

if (L[index]. GetSetWorkOut == DateTime. MinValue)

LVI.SubItems.Add (««);

else

LVI.SubItems.Add (L[index]. GetSetWorkOut. ToShortDateString ());

LVI.SubItems.Add (L[index].GetSetOklad.ToString ());

LVI.SubItems.Add (L[index].GetSetPremija.ToString ());

if (L[index]. GetSetFine == 0)

LVI.SubItems.Add (««);

else

LVI.SubItems.Add (L[index]. GetSetFine. ToString ());

LVI.SubItems.Add (L[index].GetInformation);

listView1.Items.Insert (index, LVI);

}

//Кнопка Π£Π²ΠΎΠ»ΠΈΡ‚ΡŒ

private void toolStripButton3_Click (object sender, EventArgs e)

{

Data temp = Finds (e.GetType ().ToString ());

if (temp.GetSetFio.Length ≠ 0)

{

F3 = new Form3(temp);

F3.ShowDialog (this);

if (F3.IsExitCorrF3)

{

AddDel (temp, F3. D);

Saving ();

}

else

{

listView1.Items.Insert (IND, LV);

listView1.Items[IND]. Checked = false;

}

}

else

MessageBox.Show («ΠΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ!», «Information», MessageBoxButtons. OK, MessageBoxIcon. Information);

}

//ΠŸΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудника

private void прСмияToolStripMenuItem_Click (object sender, EventArgs e)

{

Data temp = Finds (e.GetType ().ToString ());

if (temp.GetSetFio.Length ≠ 0)

{

F4 = new Form4(temp, true);

F4.ShowDialog (this);

if (F4.IsExitCorrF4)

{

AddDel (temp, F4. DT);

Saving ();

}

else

{

listView1.Items.Insert (IND, LV);

listView1.Items[IND]. Checked = false;

}

}

else

MessageBox.Show («ΠΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ!», «Information», MessageBoxButtons. OK, MessageBoxIcon. Information);

}

//Π¨Ρ‚Ρ€Π°Ρ„ΠΎΠ²Π°Π½ΠΈΠ΅ сотрудника

private void ΡˆΡ‚Ρ€Π°Ρ„ToolStripMenuItem_Click (object sender, EventArgs e)

{

Data temp = Finds (e.GetType ().ToString ());

if (temp.GetSetFio.Length ≠ 0)

{

F4 = new Form4(temp, false);

F4.ShowDialog (this);

if (F4.IsExitCorrF4)

{

AddDel (temp, F4. DT);

Saving ();

}

else

{

listView1.Items.Insert (IND, LV);

listView1.Items[IND]. Checked = false;

}

}

else

MessageBox.Show («ΠΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ!», «Information», MessageBoxButtons. OK, MessageBoxIcon. Information);

}

//По Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΡŽ — сохранСниС

private void Form1_FormClosing (object sender, FormClosingEventArgs e)

{

Saving ();

}

//Π”Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡Ρ‘ΠΊ — ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅

private void listView1_MouseDoubleClick (object sender, MouseEventArgs e)

{

Data temp = Finds (e.GetType ().ToString ());

if (temp.GetSetFio.Length ≠ 0)

{

F5 = new Form5(temp);

F5.ShowDialog (this);

}

}

//Π£Π΄Π°Π»ΠΈΡ‚ΡŒ сотрудника ΠΈΠ· Π±Π°Π·Ρ‹

private void ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒΠ˜Π·Π‘Π°Π·Ρ‹ToolStripMenuItem_Click (object sender, EventArgs e)

{

Data temp = Finds (e.GetType ().ToString ());

if (MessageBox.Show («Π’Ρ‹ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· Π±Π°Π·Ρ‹ nсотрудника «+ temp. GetSetFio, «Asterisk», MessageBoxButtons. YesNo, MessageBoxIcon. Question) == DialogResult. Yes)

{

if (temp.GetSetFio.Length ≠ 0)

{

int index = 0;

index = L. IndexOf (temp);

L.Remove (temp);

for (int i = index; i < L. Count; i++)

{

L[i]. GetSetId = i + 1;

}

listView1.Items.Clear ();

IDS—;

for (int i = 0; i < L. Count; i++)

{

ListViewItem LVI = new ListViewItem ();

LVI.Text = L[i]. GetSetId. ToString ();

LVI.SubItems.Add (L[i].GetSetFio);

LVI.SubItems.Add (L[i].GetSetPost);

LVI.SubItems.Add (L[i].GetSetWorkPlace);

LVI.SubItems.Add (L[i].GetSetWorkIn.ToShortDateString ());

if (L[i]. GetSetWorkOut == DateTime. MinValue)

LVI.SubItems.Add (««);

else

LVI.SubItems.Add (L[i]. GetSetWorkOut. ToShortDateString ());

LVI.SubItems.Add (L[i].GetSetOklad.ToString ());

LVI.SubItems.Add (L[i].GetSetPremija.ToString ());

if (L[i]. GetSetFine == 0)

LVI.SubItems.Add (««);

else

LVI.SubItems.Add (L[i]. GetSetFine. ToString ());

LVI.SubItems.Add (L[i].GetInformation);

listView1.Items.Add (LVI);

}

}

}

else

{

listView1.Items.Insert (IND, LV);

listView1.Items[IND]. Checked = false;

}

}

}

}

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π‘

Form2

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Drawing;

using System. Linq;

using System. Text;

using System.Windows.Forms;

namespace Staff

{

public partial class Form2: Form

{

public Data DataNew, DataCorrect;

public bool IsExitCorrectly = true;

private bool IsNew = true;

private int IDs = 0;

public Form2(int id, bool isnew, Data corr)

{

InitializeComponent ();

IDs = id;

IsNew = isnew;

DataCorrect = corr;

errorProvider1.BlinkRate = 500;

errorProvider1.BlinkStyle = ErrorBlinkStyle. BlinkIfDifferentError;

IsExitCorrectly = true;

}

//Кнопка Π’Ρ‹Ρ…ΠΎΠ΄

private void button2_Click (object sender, EventArgs e)

{

IsExitCorrectly = false;

this.Close ();

}

//Кнопка Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ

private void button1_Click (object sender, EventArgs e)

{

this.ValidateChildren (ValidationConstraints.Enabled);

if (textBox1.Text.Length == 0 || textBox2.Text.Length == 0 || textBox3.Text.Length == 0 || textBox4.Text.Length == 0 || textBox5.Text.Length == 0 ||

textBox6.Text.Length == 0 || textBox7.Text.Length == 0 || textBox8.Text.Length == 0 || textBox9.Text.Length == 0 ||

textBox10.Text.Length == 0 || textBox11.Text.Length == 0)

{

MessageBox.Show («ΠΠ΅ Π²ΡΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹!», «Asterisk», MessageBoxButtons. OK, MessageBoxIcon. Exclamation);

}

else

{

DataNew = new Data (textBox1.Text, textBox2. Text, textBox3. Text, «», «», IDs, DateTime. Now,

Convert.ToDouble (textBox4.Text), System.Math.Round ((Convert.ToDouble (textBox4.Text)) / 100 * Convert. ToDouble (textBox5.Text), 2),

0, new Informations (comboBox1.Text, textBox6. Text, textBox7. Text, textBox8. Text, textBox11. Text, Convert. ToInt32(textBox9.Text),

Convert.ToInt32(textBox10.Text)), «»);

IsExitCorrectly = true;

this.Close ();

}

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎΡΡ‚ΡŒ ЀИО

private void textBox1_Validating (object sender, CancelEventArgs e)

{

if (textBox1.Text.Length == 0)

errorProvider1.SetError (textBox1, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox1, «»);

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ДолТности

private void textBox2_Validating (object sender, CancelEventArgs e)

{

if (textBox2.Text.Length == 0)

errorProvider1.SetError (textBox2, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox2, «»);

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎΡΡ‚ΡŒ Π Π°Π±ΠΎΡ‡Π΅Π³ΠΎ мСста

private void textBox3_Validating (object sender, CancelEventArgs e)

{

if (textBox3.Text.Length == 0)

errorProvider1.SetError (textBox3, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox3, «»);

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΡΡ‚ΡŒ Оклада ΠΈ ΡƒΠΊΠ°Π·Π·Π°Π½ΠΎΠΉ суммы, которая Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ 30 000

private void textBox4_Validating (object sender, CancelEventArgs e)

{

try

{

if (textBox4.Text.Length == 0)

errorProvider1.SetError (textBox4, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

{

errorProvider1.SetError (textBox4, «»);

if (Convert.ToDouble (textBox4.Text) > 30 000)

errorProvider1.SetError (textBox4, «Π‘ΡƒΠΌΠΌΠ° слишком Π²Π΅Π»ΠΈΠΊΠ°!»);

else

errorProvider1.SetError (textBox4, «»);

}

}

catch (Exception ex)

{

errorProvider1.SetError (textBox4, «ΠžΠΊΠ»Π°Π΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†ΠΈΡ„Ρ€Ρ‹»);

}

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€Π΅ΠΌΠΈΠΈ Π½Π° Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π° Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ, Ρ‚. ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ ΠΏΡ€Π΅ΠΌΠΈΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ > 100%

private void textBox5_Validating (object sender, CancelEventArgs e)

{

try

{

if (textBox5.Text.Length == 0)

errorProvider1.SetError (textBox5, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

{

errorProvider1.SetError (textBox5, «»);

if (Convert.ToDouble (textBox5.Text) > 100)

errorProvider1.SetError (textBox5, «ΠŸΡ€ΠΎΡ†Π΅Π½Ρ‚ ΠΏΡ€Π΅ΠΌΠΈΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ большС 100%»);

else

errorProvider1.SetError (textBox5, «»);

}

}

catch (Exception ex)

{

errorProvider1.SetError (textBox5, «ΠŸΡ€Π΅ΠΌΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½Π° ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†ΠΈΡ„Ρ€Ρ‹»);

}

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Ρ‹Π±ΠΎΡ€Π° области

private void comboBox1_Validating (object sender, CancelEventArgs e)

{

if (comboBox1.Text.Length == 0)

errorProvider1.SetError (comboBox1, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ!»);

else

errorProvider1.SetError (comboBox1, «»);

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° заполнСнности Π³ΠΎΡ€ΠΎΠ΄Π°

private void textBox6_Validating (object sender, CancelEventArgs e)

{

if (textBox6.Text.Length == 0)

errorProvider1.SetError (textBox6, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox6, «»);

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° заполнСнности ΡƒΠ»ΠΈΡ†Ρ‹

private void textBox7_Validating (object sender, CancelEventArgs e)

{

if (textBox7.Text.Length == 0)

errorProvider1.SetError (textBox7, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox7, «»);

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° заполнСнности Π΄ΠΎΠΌΠ°, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

private void textBox8_Validating (object sender, CancelEventArgs e)

{

if (textBox8.Text.Length == 0)

errorProvider1.SetError (textBox8, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox8, «»);

}

//ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° заполнСнности ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρ‹, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

private void textBox9_Validating (object sender, CancelEventArgs e)

{

if (textBox9.Text.Length == 0)

errorProvider1.SetError (textBox9, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox9, «»);

try

{

if (Convert.ToInt32(textBox9.Text) == 0)

errorProvider1.SetError (textBox9, «ΠΠΎΠΌΠ΅Ρ€ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π²Π΅Π½ 0!»);

else

errorProvider1.SetError (textBox9, «»);

}

catch (Exception ex)

{

errorProvider1.SetError (textBox9, «ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ…!»);

}

}

//ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° заполнСнности Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

private void textBox10_Validating (object sender, CancelEventArgs e)

{

if (textBox10.Text.Length == 0)

errorProvider1.SetError (textBox10, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox10, «»);

try

{

if (Convert.ToInt32(textBox10.Text) == 0)

errorProvider1.SetError (textBox10, «ΠΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π²Π½Ρ‹ΠΌ 0!»);

else

errorProvider1.SetError (textBox10, «»);

}

catch (Exception ex)

{

errorProvider1.SetError (textBox10, «ΠΠΎΠΌΠ΅Ρ€ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ†ΠΈΡ„Ρ€Ρ‹!»);

}

}

//ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° заполнСнности Π΄Π°Ρ‚Ρ‹ роТдСния, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

private void textBox11_Validating (object sender, CancelEventArgs e)

{

if (textBox11.Text.IndexOf («,») > 0)

{

textBox11.Text = textBox11.Text.Replace («,», «.»);

}

if (textBox11.Text.Length == 0)

errorProvider1.SetError (textBox11, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

errorProvider1.SetError (textBox11, «»);

try

{

if (Convert.ToDateTime (textBox11.Text) == null)

errorProvider1.SetError (textBox11, «ΠΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ввСдённая Π΄Π°Ρ‚Π°!»);

else

errorProvider1.SetError (textBox11, «»);

}

catch (Exception ex)

{

errorProvider1.SetError (textBox10, «Π€ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Ρ‚Ρ‹: Π”Π”.ММ.Π“Π“Π“Π“»);

}

}

private void Form2_Load (object sender, EventArgs e)

{

errorProvider1.SetError (textBox1, «»);

errorProvider1.SetError (textBox2, «»);

errorProvider1.SetError (textBox3, «»);

errorProvider1.SetError (textBox4, «»);

errorProvider1.SetError (textBox5, «»);

errorProvider1.SetError (textBox6, «»);

errorProvider1.SetError (textBox7, «»);

errorProvider1.SetError (textBox8, «»);

errorProvider1.SetError (textBox9, «»);

errorProvider1.SetError (textBox10, «»);

errorProvider1.SetError (textBox11, «»);

errorProvider1.SetError (comboBox1, «»);

IsExitCorrectly = true;

if (IsNew)

{

this.Text = «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ сотрудника» ;

textBox11.Text = textBox1. Text = textBox10. Text = textBox2. Text = textBox3. Text = textBox4. Text = textBox5. Text = textBox6. Text =

textBox7.Text = textBox8. Text = textBox9. Text = «» ;

comboBox1.Text = «» ;

}

else

{

this.Text = «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…» ;

textBox1.Text = DataCorrect. GetSetFio;

textBox2.Text = DataCorrect. GetSetPost;

textBox3.Text = DataCorrect. GetSetWorkPlace;

textBox4.Text = DataCorrect.GetSetOklad.ToString ();

textBox5.Text = (DataCorrect.GetSetPremija * 100 / DataCorrect. GetSetOklad).ToString ();

textBox6.Text = DataCorrect.GetInfa.GetSetTown;

comboBox1.Text = DataCorrect.GetInfa.GetSetArea;

textBox7.Text = DataCorrect.GetInfa.GetSetStreet;

textBox8.Text = DataCorrect.GetInfa.GetSetHouse;

textBox9.Text = DataCorrect.GetInfa.GetSetFlat.ToString ();

textBox10.Text = DataCorrect.GetInfa.GetSetPhone_num.ToString ();

textBox11.Text = DataCorrect.GetInfa.GetSetBirthday;

}

}

}

}

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π’

Form3

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Drawing;

using System. Linq;

using System. Text;

using System.Windows.Forms;

namespace Staff

{

public partial class Form3: Form

{

public Data D;

public bool IsExitCorrF3 = true;

public Form3(Data d)

{

InitializeComponent ();

D = d;

}

//Кнопка Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ

private void button1_Click (object sender, EventArgs e)

{

if (textBox4.Text.Length ≠ 0)

{

D.GetSetWorkOutReason = textBox4. Text;

D.GetSetWorkOut = DateTime. Now;

IsExitCorrF3 = true;

this.Close ();

}

else

MessageBox.Show («ΠΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΡ!», «Asterisk», MessageBoxButtons. OK, MessageBoxIcon. Exclamation);

}

private void Form3_Load (object sender, EventArgs e)

{

textBox1.Text = D. GetSetFio;

textBox2.Text = D. GetSetPost;

textBox3.Text = D. GetSetWorkPlace;

IsExitCorrF3 = true;

this.Text = «Π£Π²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΠ΅ сотрудника «+ D. GetSetFio;

}

//Кнопка ΠžΡ‚ΠΌΠ΅Π½Π°

private void button2_Click (object sender, EventArgs e)

{

IsExitCorrF3 = false;

this.Close ();

}

}

}

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π“

Form4

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Drawing;

using System. Linq;

using System. Text;

using System.Windows.Forms;

namespace Staff

{

public partial class Form4: Form

{

public bool IsExitCorrF4 = true;

private bool PremijaOrFine = true; //ΠŸΡ€Π΅ΠΌΠΈΡ — true;

public Data DT;

public Form4(Data dt, bool what)

{

InitializeComponent ();

DT = dt;

PremijaOrFine = what;

}

//Кнопка ΠžΡ‚ΠΌΠ΅Π½Π°

private void button2_Click (object sender, EventArgs e)

{

IsExitCorrF4 = false;

this.Close ();

}

private void Form4_Load (object sender, EventArgs e)

{

errorProvider1.SetError (textBox4, «»);

IsExitCorrF4 = true;

textBox1.Text = DT. GetSetFio;

textBox2.Text = DT. GetSetPost;

textBox3.Text = DT. GetSetWorkPlace;

if (PremijaOrFine)

{

this.Text = «ΠŸΡ€Π΅ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅» ;

groupBox4.Text = «ΠŸΡ€Π΅ΠΌΠΈΡ» ;

groupBox5.Text = «Π—Π° Π·Π°ΡΠ»ΡƒΠ³ΠΈ» ;

textBox4.Text = DT.GetSetPremija.ToString ();

textBox5.Text = DT. GetSetPremijaReason;

}

else

{

this.Text = «ΠΠ°Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡˆΡ‚Ρ€Π°Ρ„Π°» ;

groupBox4.Text = «Π¨Ρ‚Ρ€Π°Ρ„» ;

groupBox5.Text = «ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π°» ;

textBox4.Text = DT.GetSetFine.ToString ();

textBox5.Text = DT. GetSetFineReason;

}

}

//Кнопка Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ

private void button1_Click (object sender, EventArgs e)

{

if (textBox4.Text.Length ≠ 0 && textBox5.Text.Length ≠ 0)

{

IsExitCorrF4 = true;

if (PremijaOrFine)

{

DT.GetSetPremija = Convert. ToDouble (textBox4.Text);

DT.GetSetPremijaReason = textBox5. Text;

}

else

{

DT.GetSetPremija = 0;

DT.GetSetFine = Convert. ToDouble (textBox4.Text);

DT.GetSetFineReason = textBox5. Text;

}

this.Close ();

}

else

MessageBox.Show («ΠΠ΅ Π²ΡΠ΅ поля Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹», «Informations», MessageBoxButtons. OK, MessageBoxIcon. Information);

}

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Π²ΠΎΠ΄Π°

private void textBox4_Validating (object sender, CancelEventArgs e)

{

if (textBox4.Text.Length == 0)

errorProvider1.SetError (textBox4, «Π’Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π»ΠΈ!»);

else

{

errorProvider1.SetError (textBox4, «»);

try

{

if (Convert.ToDouble (textBox4.Text) == 0)

errorProvider1.SetError (textBox4, «ΠΠ΅Π²Π΅Ρ€Π½ΠΎ Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅!»);

else

errorProvider1.SetError (textBox4, «»);

}

catch (Exception ex)

{

errorProvider1.SetError (textBox4, «ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ числа!»);

}

}

}

}

}

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π”

Form5

using System;

using System.Collections.Generic;

using System. ComponentModel;

using System. Data;

using System. Drawing;

using System. Linq;

using System. Text;

using System.Windows.Forms;

namespace Staff

{

public partial class Form5: Form

{

private Data DT;

public Form5(Data dt)

{

InitializeComponent ();

DT = dt;

}

//Кнопка Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ

private void button1_Click (object sender, EventArgs e)

{

this.Close ();

}

private void Form5_Load (object sender, EventArgs e)

{

this.Text = «ΠŸΠΎΠ»Π½Π°Ρ информация ΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ΅» ;

listView1.Items.Clear ();

listView1.ShowItemToolTips = true;

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ