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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… для хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… характСристик Ρ‚ΠΎΠ²Π°Ρ€Π°

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

Delphi 7 — это срСда быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ языка программирования ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык Delphi. Delphi 7 прСдставляСт собой ΠΏΠΎΠ»Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ирования Π΄ΠΎ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚ывания ΠΏΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅, управляСмой модСлью (MDA), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΈΡΡ‚Π΅ΠΌ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

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

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

1. Анализ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области

2. ОписаниС Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

2.1 Входная информация

2.2 Выходная информация

3. ОбоснованиС Π²Ρ‹Π±ΠΎΡ€Π° срСды Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

3.1 Π’Ρ‹Π±ΠΎΡ€ срСды Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

3.2 Π’Ρ‹Π±ΠΎΡ€ состава ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² тСхничСских срСдств

4. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ рСляционной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

4.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° логичСской ΠΈ Ρ„изичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

5. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ интСрфСйса ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников

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

Π’ ΠΊΡƒΡ€ΡΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ кассира, позволяСт автоматичСски Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ Π² Ρ€Π°Π·Ρ€Π΅Π·Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎ-отвСтствСнных Π»ΠΈΡ†, Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ Π½Π°Π²Ρ‹ΠΊΠΈ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡŽ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Database Desktop.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΡΡ‚ΠΈΡΡŒ Delphi 7- это срСда быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ языка программирования ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык Delphi.

1. Анализ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области Касса — это ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅Π΅ кассовыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Π½Π°Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ дСньгами ΠΈ Π΄Π΅Π½Π΅ΠΆΠ½Ρ‹ΠΌΠΈ цСнностями. Для обСспСчСния Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ сохранности Π½Π°Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π΅Π½Π΅ΠΆΠ½Ρ‹Ρ… срСдств ΠΈ Ρ†Π΅Π½Π½ΠΎΡΡ‚Π΅ΠΉ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ кассы Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ трСбованиям ΠΏΠΎ Ρ‚СхничСской укрСплСнности ΠΈ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ сигнализациСй ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ.

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

2. ОписаниС Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

2.1 Входная информация Входная информация — это информация, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰Π°Ρ ΠΈΠ·Π²Π½Π΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для Π΅Ρ‘ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ 2 Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½Π° Database Deckopt:

— Kassir. db

— Tovar. db

Π’ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Kassir. db Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ информациями слуТат:

— ΠšΠΎΠ΄ кассира

— Π€Π˜Πž

— ΠΠ΄Ρ€Π΅Ρ

— ΠžΠΊΠ»Π°Π΄ Π’ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Tovar. db Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ информациями слуТат:

— ΠšΠΎΠ΄ Ρ‚ΠΎΠ²Π°Ρ€Π°

— Π’ΠΎΠ²Π°Ρ€

— Π₯арактСристика

2.2 Выходная информация Выходная информация — это информация, получСнная Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ являСтся Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… GurOper1.db.

Π’ Π½Π΅ΠΌ ΠΌΡ‹ Π·Π°Π½ΠΎΡΠΈΠΌ Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π‘Π” выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π’Π°Π±Π»ΠΈΡ†Π° 1

β„–

Ostatok na nachala

Kod kassira

Debet

DebetS

Kredit

KreditS

DataOper

Kolic

Ostatok na conec

Summa

Operac

3. ОбоснованиС Π²Ρ‹Π±ΠΎΡ€Π° срСды Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

3.1 Π’Ρ‹Π±ΠΎΡ€ срСды Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Delphi 7 — это срСда быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ языка программирования ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык Delphi. Delphi 7 прСдставляСт собой ΠΏΠΎΠ»Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ирования Π΄ΠΎ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚ывания ΠΏΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅, управляСмой модСлью (MDA), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΈΡΡ‚Π΅ΠΌ элСктронного бизнСса для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Windows. Delphi 7 содСрТит Ρ€Π°Π·Π²ΠΈΡ‚Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ для создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ элСктронного бизнСса ΠΈ Π²Π΅Π±-сСрвисов, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², прСдоставляя всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для исслСдования вопросов ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Microsoft .NET. Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Π°Ρ срСда web-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Delphi 7 позволяСт Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ web-прилоТСния ΠΈ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹, связанныС с ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ сСрвСрной ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сСссиями Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ доступа. Π’ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½Π°Ρ Π² ΡΠΎΡΡ‚Π°Π² Delphi 7 тСхнология проСктирования ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ UML позволяСт эффСктивно ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои прилоТСния ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ срСдств Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ модСлирования ΠΈ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° (refactoring). ВозмоТности Delphi 7 ΠΏΠΎ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ, Ρ€Π΅ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³Ρƒ ΠΈ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠΉ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ высококачСствСнныС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΈ Ρ‚Сксты ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, примСняя Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ проСктирования ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ.

Database Desktop — это ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°, Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ похоТая Π½Π° Paradox, которая поставляСтся вмСстС с Delphi для ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… — Paradox ΠΈ dBase, Π° Ρ‚Π°ΠΊΠΆΠ΅ SQL-сСрвСрных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… InterBase, Oracle, Informix, Sybase (с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL Links).

3.2 Π’Ρ‹Π±ΠΎΡ€ состава ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² тСхничСских срСдств Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ состав ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… тСхничСских срСдств:

— ΠŸΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€ Pentium с Ρ‡Π°ΡΡ‚ΠΎΡ‚ΠΎΠΉ 1.8 Π“Π“Ρ† ΠΈ Π²Ρ‹ΡˆΠ΅;

— ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ объСм ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти — 256 ΠœΠ±Π°ΠΉΡ‚. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ — 1 Π“Π±Π°ΠΉΡ‚ ΠΈ Π²Ρ‹ΡˆΠ΅;

— Π–Ссткий диск с ΠΎΠ±ΡŠΠ΅ΠΌΠΎΠΌ свободного пространства Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 10 Π“Π±Π°ΠΉΡ‚ ΠΏΡ€ΠΈ минимальной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ Π΄ΠΎ 20 Π“Π±Π°ΠΉΡ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠ»Π½ΠΎΠΉ установкС;

— ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма Microsoft Windows XP SP2 (ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅);

— Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ 1024×768 ΠΈΠ»ΠΈ 1280×1024;

— Π£ΡΡ‚ройство для чтСния ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚-дисков.

4. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ рСляционной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

4.1 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° логичСской ΠΈ Ρ„изичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ логичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ осущСствим с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства ERWin 4.0.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ERWinсрСдство ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ модСлирования Π‘Π”.

Π’Ρ‹Π±Π΅Ρ€Π΅ΠΌ Ρ‚ΠΈΠΏ ΠΌΠΎΠ΄Π΅Π»ΠΈ Logical/Physical, ΠΈ Π½Π° Π»ΠΎΠ³ΠΈΡ‡Π΅ΡΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ:

— ΡΡƒΡ‰Π½ΠΎΡΡ‚ΠΈ,

— ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ,

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ построСния ЛогичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ прСдставлСн Π½Π° Ρ€ΠΈΡ. 1, Π° Π€ΠΈΠ·ΠΈΡ‡Π΅ΡΠΊΠ°Ρ модСль ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° Π½Π° Ρ€ΠΈΡ. 2.

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

Рис. 2. ЀизичСская модСль

5. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ интСрфСйса ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ курсовой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ содСрТит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Ρ„ΠΎΡ€ΠΌ:

— Form1;

— Data Module;

Data Moduleэто срСдство для эффСктивной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. На Ρ„ΠΎΡ€ΠΌΠ΅ Data Module установлСны ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаи это ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

— Table (ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ для размСщСния Π‘Π”)

— DataSource (ΡΠ²ΡΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹) Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄ для Ρ„ΠΎΡ€ΠΌΡ‹ Data Module:

Рис. 3. Π€ΠΎΡ€ΠΌΠ° Data Module

На Form 1 Π±ΡƒΠ΄ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ основныС элСмСнты, Π° Data Module ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для эффСктивной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π‘Π”.

На Form1 прСдставлСны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

— DBGrid (ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π° для Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…)

— Button (командная ΠΊΠ½ΠΎΠΏΠΊΠ° для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄)

— Edit (основной ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ для Π²Π²ΠΎΠ΄Π°)

— BitBtn (пиктографичСская ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ собой ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² стандартной ΠΊΠ½ΠΎΠΏΠΊΠΈ Button.

— DBNavigator (для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ DBGrid)

— Label (надпись)

— RadioButton («Ρ€Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΊΠ°» слуТит для «ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊΠ°Π½Π°Π»ΠΎΠ²»)

— Date Time Picker (ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° Π΄Π°Ρ‚Ρ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ) Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄ для Ρ„ΠΎΡ€ΠΌΡ‹ Form1:

Рис. 4. Π€ΠΎΡ€ΠΌΠ° Form1

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΡ‹ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Kassir. db Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ кассира, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΈΠ· Π‘Π” Tovar любой Ρ‚ΠΎΠ²Π°Ρ€, ΠΏΡ€ΠΈ этом Ρ†Π΅Π½Π° автоматичСски заполняСт ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Edit:

Π”Π°Π»Π΅Π΅ Π² Ρ€ΡƒΡ‡Π½ΡƒΡŽ заполняСм Π”Π΅Π±Π΅Ρ‚, Кол-Π²ΠΎ, ΠšΡ€Π΅Π΄ΠΈΡ‚, устанавливаСм Π΄Π°Ρ‚Ρƒ, ΠΈΠ· Π³Ρ€ΡƒΠΏΠΏ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ провСсти ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΠš.

Рис. 5. Π’Ρ‹Π±ΠΎΡ€ Ρ‚ΠΎΠ²Π°Ρ€Π° ΠΈΠ· Π‘Π” Tovar Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Form1

Рис. 6. Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Form1

Кнопка ΠžΠš ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² ΠΆΡƒΡ€Π½Π°Π» ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, которая прСдставляСт собой Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… GurOper1. db, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° для Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ³ΠΎ процСсса.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

Рис. 7. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ процСсса ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠžΠš Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Form1

Кнопка ΠžΡ‚Ρ‡Π΅Ρ‚ кассира ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π²Ρ‹Π²ΠΎΠ΄Π° Π² excel Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‚Ρ‡Π΅Ρ‚ кассира. Π­Ρ‚ΠΎΡ‚ ΠΎΡ‚Ρ‡Π΅Ρ‚ строится Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ ΠΈΠ· ΠΆΡƒΡ€Π½Π°Π»Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ GurOper1. Для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π΄Π°Ρ‚Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Kassir. db ΠΊΠ°ΡΡΠΈΡ€Π°, ΠΈ Π΅ΡΠ»ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ Π΅ΡΡ‚ΡŒ Π² ΠΆΡƒΡ€Π½Π°Π»Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ GurOper1. db, Ρ‚ΠΎ ΠΎΠ½ΠΈ выводятся Π² excel Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.

Рис. 8. ΠžΡ‚Ρ‡Π΅Ρ‚ кассира Кнопка Close ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… курсового проСктирования Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ мСсто кассира.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… для хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… характСристик Ρ‚ΠΎΠ²Π°Ρ€Π°.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΈΠ·ΡƒΡ‡Π΅Π½Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° тСхнология ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΈΠ΄ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ вСсти Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΡƒΡ‡Π΅Ρ‚ расходов Π½Π° Ρ‚ΠΎΠ²Π°Ρ€Ρ‹ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΏΠΎ ΠΊΠ°ΡΡΠΈΡ€Π°ΠΌ.

интСрфСйс ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° database desktop

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников

1. Π€Π»Π΅Π½ΠΎΠ² М. Π•. Библия Delphi: 2004. — 668с.

2. ΠŸΠ΅Ρ‚Ρ€ΠΎΠ² Π’. Н. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2008.

3. Π€Π°Ρ€ΠΎΠ½ΠΎΠ² Π’. Π’. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π² Delphi 7: Π£Ρ‡Π΅Π±Π½Ρ‹ΠΉ курс. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2004 — 464 с.

4. ΠšΠ°Ρ€ΠΏΠΎΠ²Π° Π’. Π‘. Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…: ΠΌΠΎΠ΄Π΅Π»ΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, рСализация. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2005. — 304с.

5. Ульман Π”ΠΆ., Π£ΠΈΠ΄ΠΎΠΌ Π”ΠΆ.

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π² ΡΠΈΡΡ‚Π΅ΠΌΡ‹ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. — Πœ.: Π›ΠΎΡ€ΠΈ, 2006. — 374с.

6. ΠšΠ°Ρ€ΠΏΠΎΠ²Π° Π’. Π‘. Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…: ΠΌΠΎΠ΄Π΅Π»ΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2009, 304 с.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Листинг ΠΊΠΎΠ΄Π° Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Buttons, StdCtrls, ExtCtrls, DBCtrls, Grids, DBGrids, ComObj, ComCtrls;

type

TForm1 = class (TForm)

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

DBGrid2: TDBGrid;

DBNavigator2: TDBNavigator;

DBGrid3: TDBGrid;

DBNavigator3: TDBNavigator;

GroupBox1: TGroupBox;

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Edit2: TEdit;

Label3: TLabel;

Edit3: TEdit;

Label4: TLabel;

Edit4: TEdit;

Label5: TLabel;

Edit5: TEdit;

GroupBox2: TGroupBox;

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

Edit6: TEdit;

Edit7: TEdit;

Edit8: TEdit;

Label6: TLabel;

Label7: TLabel;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

DateTimePicker1: TDateTimePicker;

RadioButton4: TRadioButton;

RadioButton5: TRadioButton;

RadioButton6: TRadioButton;

Button2: TButton;

procedure DBGrid1CellClick (Column: TColumn);

procedure BitBtn1Click (Sender: TObject);

procedure RadioButton3Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

a0:string;

flag :boolean;

n1: integer;

implementation

uses LAV, Modul1;

{$R *.dfm}

procedure TForm1. DBGrid1CellClick (Column: TColumn);

begin

Edit1.Text:=Ligidov.Tovar.FieldByName ('Cena').AsString;

end;

procedure TForm1. BitBtn1Click (Sender: TObject);

Var

a0:string;

a1:string;

a2:string;

// stoim, naz, nar: string;

begin

Ligidov.GurOper1.Insert;

Ligidov.GurOper1.FieldByName ('Debet').AsString:= Edit3. Text;

Ligidov.GurOper1.FieldByName ('Kredit').AsString:= Edit4. Text;

Ligidov.GurOper1.FieldByName ('DatOper').AsString:=DateToStr (DateTimePicker1.Date);

Ligidov.GurOper1.FieldByName ('KodKassira').AsString:=Ligidov.Kassir.FieldByName ('KodKassira').AsString;

Ligidov.GurOper1.FieldByName ('Kolic').AsString:=Edit2.Text;

a0:=CalKuljator (Edit1.Text, Edit2. Text,'*', 2);

a0:=ZnakZamena (a0,'.',',');

Ligidov.GurOper1.FieldByName ('summa').AsString:=a0;

edit5.Text:=a0;

if radiobutton1. Checked then

begin

Edit7.Text:=a0;

Edit8.Text:=inttostr (0);

a1:='ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ° ';

a2:=a1+Ligidov.Tovar.FieldByName ('Tovar').AsString;

Ligidov.GurOper1.FieldByName ('Operac').AsString:=a2;

end;

if radiobutton2. Checked then

begin

Edit7.Text:=inttostr (0);

Edit8.Text:=a0;

a1:='Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ ';

a2:=a1+Ligidov.Tovar.FieldByName ('Tovar').AsString;

Ligidov.GurOper1.FieldByName ('Operac').AsString:=a2;

end;

if radiobutton3. Checked then

begin

a2:=edit6.text;

Ligidov.GurOper1.FieldByName ('Operac').AsString:=a2;

end;

if radiobutton4. Checked then

begin

Edit7.Text:=inttostr (0);

Edit8.Text:=a0;

a1:='Оклад';

a2:=a1+Ligidov.Kassir.FieldByName ('FIO').AsString;

Ligidov.GurOper1.FieldByName ('Operac').AsString:=a2;

end;

if radiobutton5. Checked then

begin

Edit7.Text:=inttostr (0);

Edit8.Text:=a0;

a1:='Π½Π°Π»ΠΈΡ‡ΠΊΠ° Π² Π‘Π°Π½ΠΊ';

a2:=a1;

Ligidov.GurOper1.FieldByName ('Operac').AsString:=a2;

end;

if radiobutton6. Checked then

begin

Edit7.Text:=a0;

Edit8.Text:=inttostr (0);

a1:='погасили долг';

a2:=a1;

Ligidov.GurOper1.FieldByName ('Operac').AsString:=a2;

end;

Ligidov.GurOper1.FieldByName ('DebetS').AsString:= Edit7. Text;

Ligidov.GurOper1.FieldByName ('KreditS').AsString:= Edit8. Text;

Ligidov.GurOper1.Post;

end;

procedure TForm1. RadioButton3Click (Sender: TObject);

begin

edit6.Text:='';

end;

procedure TForm1. Button2Click (Sender: TObject);

Var

dat0,dat1,dat2,G0,s0,k0, kodW, KodPr, a0, a01,a1,a2 :string;

Gir0,Gir1,SGir1,sum0,kol0,Sum1,kol1,Ssum1,Skol1:real;

code, n2, i1,i, s1, s2,s3:integer;

XLApp, Sheet, Colum: Variant;

skold1,skolk1,skold2, skolk2, skold3, skolk3, kold1, kolk1,kold2, kolk2, kold3, kolk3,

d1,sd1,k1,sk1,sk2,d2,k2,sd2,d3,sd3,k3,sk3:real;

begin

With Ligidov do begin

//KodPr1:=Kassir.fieldbyname ('KodKassira').AsString;

dat0:='01.01.2000';

a0:=DateToStr (DateTimePicker1.Date);

dat1:=a0;

//a01:=DateToStr (DateTimePicker2.Date);

//dat2:=a01;

XLApp:=CreateOleObject ('Excel.Application');

XLApp.Visible:=true;

XLApp.Workbooks.Add (-4167);

XLApp.Workbooks[1]. WorkSheets[1].Name:='ΠžΠ±ΠΎΡ€ΠΎΡ‚ΠΊΠ°';

Colum:=XLApp.Workbooks[1].WorkSheets['ΠžΠ±ΠΎΡ€ΠΎΡ‚ΠΊΠ°'].Columns;

N2:=1;

Colum.Columns[1].ColumnWidth:=5;

Colum.Columns[2].ColumnWidth:=30;

Colum.Columns[3].ColumnWidth:=10;

Colum.Columns[4].ColumnWidth:=15;

Colum.Columns[5].ColumnWidth:=10;

Colum.Columns[6].ColumnWidth:=15;

Colum.Columns[7].ColumnWidth:=10;

Colum.Columns[8].ColumnWidth:=10;

Colum:=XLApp.Workbooks[1].WorkSheets['ΠžΠ±ΠΎΡ€ΠΎΡ‚ΠΊΠ°'].Rows;

Colum.Rows[2].Font.Bold:=true;

Colum.Rows[1].Font.Bold:=true;

Colum.Rows[1].Font.Color:=clBlue;

Colum.Rows[1].Font.Size:=12;

Sheet:=XLApp.Workbooks[1].WorkSheets['ΠžΠ±ΠΎΡ€ΠΎΡ‚ΠΊΠ°'];

//n2:=0;

Sheet.Cells[n2,1]:='Π–ΡƒΡ€Π½Π°Π» ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π·Π° '+a0 +'+'+Kassir.fieldbyname ('FIO').AsString;

iNC (n2);

Sheet.Cells[n2,2]: ='ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ Π½Π° Π½Π°Ρ‡Π°Π»Π° '+a0 ;

Ligidov.SetBase4('GurOper1.DB','DatOper','Debet','','','Summa','Summa','01.01.2000', a0,'50','','', kold1, d1);

Ligidov.SetBase4('GurOper1.DB','DatOper','Kredit','','','Summa','Summa','01.01.2000', a0,'50','','', kold1, d2);

d3:=d1-d2;

Str (d3:13:2,a1);

a1:=Trim (a1);

Sheet.Cells[n2,5]: =a1;

iNC (n2);

//Sheet.Cells[n2,0]:='?? ';

Sheet.Cells[n2,1]: ='β„–β„– ';

Sheet.Cells[n2,2]: ='НаимСнованиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ';

Sheet.Cells[n2,3]: ='Π”Π΅Π±Π΅Ρ‚';

Sheet.Cells[n2,4]:=' суммаДСбСт';

Sheet.Cells[n2,5]: ='ΠšΡ€Π΅Π΄ΠΈΡ‚';

Sheet.Cells[n2,6]:='ΡΡƒΠΌΠΌΠ°ΠšΡ€Π΅Π΄ΠΈΡ‚';

Sheet.Cells[n2,7]:='Π‘ΡƒΠΌΠΌΠ° ';

iNC (n2);

s1:=0; s2:=0;s3:=0;

With Ligidov do begin

SetBase4('GurOper1.DB','DatOper','','','','','Summa', a0, a0,'','','', kold1, d1);

Query1.First;

Repeat

//a1:=Query1.fieldbyname ('KodTovara').AsString;

//KodPr:=Query1.fieldbyname ('KodKassira').AsString;

Sheet.Cells[n2,2]: =Query1.fieldbyname ('Operac').AsString;

Sheet.Cells[n2,3]:=Query1.fieldbyname ('Debet').AsString;

Sheet.Cells[n2,4]:=Query1.fieldbyname ('DebetS').AsString;

Sheet.Cells[n2,5]:=Query1.fieldbyname ('Kredit').AsString;

Sheet.Cells[n2,6]:=Query1.fieldbyname ('KreditS').AsString;

Sheet.Cells[n2,7]:=Query1.fieldbyname ('Summa').AsString;

Sheet.Cells[n2,1]:=IntToStr (n2−2);

s2:=s2+Query1.fieldbyname ('DebetS').AsInteger;

s3:=s3+Query1.fieldbyname ('KreditS').AsInteger;

s1:=s2-s3;

Query1.Next;

iNC (n2);

until Query1. Eof;

Sheet.Cells[n2,2]: ='Π˜Ρ‚ΠΎΠ³ΠΎ';

Sheet.Cells[n2,4]:=IntToStr (s2);

Sheet.Cells[n2,6]:=IntToStr (s3);

Sheet.Cells[n2,7]:=IntToStr (s1);

Sheet.Cells[n2+3,7]:='Подпись кассира ___________________________';

Sheet.Cells[n2+5,7]: ='Подпись Π±ΡƒΠ³Π°Π»Ρ‚Π΅Ρ€Π° _________________________';

end;

Листинг ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ€ΠΌΡ‹ Data Module ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

unit LAV;

interface

uses

SysUtils, Classes, DBTables, DB;

type

TLigidov = class (TDataModule)

DataSource1: TDataSource;

DataSource2: TDataSource;

DataSource3: TDataSource;

DataSource4: TDataSource;

Tovar: TTable;

Kassir: TTable;

GurOper1: TTable;

Query1: TQuery;

Procedure SetBase3(Fils, Datp, Buhp, KodWrkPl, ScetPl, DaTT1, DaTT2,szet, KodWrk, Korenscet: string);

Procedure SetBase4(Fils, Datp, Buhp, KodWrkPl, ScetPl, Kolp, Sump, DaTT1, DaTT2,szet, KodWrk, Korenscet: string; Var Kol1, Sum1:real);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Ligidov: TLigidov;

TekDir:string;

implementation

{$R *.dfm}

Procedure TLigidov. SetBase4(Fils, Datp, Buhp, KodWrkPl, ScetPl, Kolp, Sump, DaTT1, DaTT2,szet, KodWrk, Korenscet: string; Var Kol1, Sum1:real);

Var

TekDir, s, s1,s0,a1,a0:string;

i1:integer;

Koli1, summ1: real;

begin

SetBase3(Fils, Datp, Buhp, KodWrkPl, ScetPl, DaTT1, DaTT2,szet, KodWrk, Korenscet);

//SetBase3(Fils, Datp, KodWrkPl, ScetPl, DaTT1, DaTT2,KodWrk, Korenscet);

Koli1:=0; summ1:=0;

Query1.First;

For i1:=1 to Query1. RecordCount do begin

//Koli1:=Koli1+Query1.FieldByName (Kolp).AsFloat;

summ1:=summ1+Query1.FieldByName (Sump).AsFloat;

Query1.Next;

end;//i

Kol1:=Koli1;

Sum1:=summ1;

end;

Procedure TLigidov. SetBase3(Fils, Datp, Buhp, KodWrkPl, ScetPl, DaTT1, DaTT2,szet, KodWrk, Korenscet: string);

Var

TekDir, s, s1,s0,a1,a0:string;

begin

//TekDir:='C:Scet60';

DataSource4.DataSet:=Query1;

//Dbgrid1.DataSource:=FDataSource4;

Query1.DatabaseName:=TekDir;

Query1.Close;

Query1.sql.Clear;

Query1.sql.Add ('SELECT * FROM '+Fils);

a1:='WHERE ('+Datp+' BETWEEN «'+DaTT1+'» and «'+DaTT2+'»)';

Query1.sql.Add (a1);

//if length (BuhP)>0 then Query1.sql.Add ('and ('+BuhP+' LIKE «%» ||'+'" '+szet+'" || «%»)');

if length (BuhP)>0 then Query1.sql.Add ('and ('+BuhP+'="'+szet+'")');

if length (ScetPl)>0 then Query1.sql.Add ('and ('+ScetPl+' LIKE «%» ||'+'" '+Korenscet+'" || «%»)');

if length (KodWrkPl)>0 then Query1.sql.Add ('and ('+KodWrkPl+'="'+KodWrk+'")');

{

a1:='and ('+Datp+' BETWEEN «'+DaTT1+'» and «'+DaTT2+'»)';

Form11.Query1.sql.Add (a1);

}

Query1.sql.SaveToFile ('sql11.txt');

Query1.open;

end;

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