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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы для Ρ„ΠΈΡ€ΠΌΡ‹ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²

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

C++Builder ΠΈ Delphi стали ΠΎΠ΄Π½ΠΈΠΌΠΈ ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… популярных Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΠΉ дСнь инструмСнтов для создания ΠΊΠ°ΠΊ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм благодаря ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΡΠΎΡ‡Π΅Ρ‚Π°Π½ΠΈΡŽ удобства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… интСрфСйсов, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, однотипности доступа ΠΊ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹ΠΌ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, начиная ΠΎΡ‚ ΠΏΠ»ΠΎΡΠΊΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ† Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° dBase ΠΈ Paradox ΠΈ ΠΊΠΎΠ½Ρ‡Π°Ρ сСрвСрными Π‘Π£Π‘Π”… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы для Ρ„ΠΈΡ€ΠΌΡ‹ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

  • Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅
  • 1. ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½Π°Ρ стадия
  • 1.1 ОписаниС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области
  • 1.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области
  • 1.3 ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ UML Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ
  • 2. Бтадия проСктирования
  • 2.1 Π’Ρ‹Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
  • 2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° логичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ
  • 2.3 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° физичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ
  • 3. РСализация ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
  • 3.1 БСрвСрная Ρ‡Π°ΡΡ‚ΡŒ
  • 3.2 ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ
  • 3.3 РСализация запросов
  • 4. Эксплуатация ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
  • Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅
  • Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹
  • ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ

На ΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΌ этапС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ управлСния производством Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ пСрспСктивным являСтся автоматизация ΠΏΠ»Π°Π½ΠΎΠ²ΠΎ-управлСнчСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π½Π° Π±Π°Π·Π΅ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π­Π’Πœ, установлСнных нСпосрСдствСнно Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… мСстах спСциалистов. Π­Ρ‚ΠΈ систСмы ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ распространСниС Π² ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… мСст (АРМ).

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

Анализируя ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ АРМ, спСциалисты ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΈΡ… Ρ‡Π°Ρ‰Π΅ всСго ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΌΠ°Π»Ρ‹Π΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ систСмы, располоТСнныС нСпосрСдствСнно Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… мСстах спСциалистов ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° управлСния Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ мСста, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ. Однако ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ создания АРМ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ: ΡΠΈΡΡ‚Π΅ΠΌΠ½ΠΎΡΡ‚ΡŒ, Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ, ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ, ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ. Богласно ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ систСмности АРМ слСдуСт Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ систСмы, структура ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… опрСдСляСтся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ.

ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС запрос ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ гибкости ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΈΡΠΏΠΎΡΠΎΠ±Π»ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ систСмы ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ пСрСстройкам благодаря ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ построСния всСх подсистСм ΠΈ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΡ… ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ².

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ устойчивости Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ систСма АРМ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ основныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ нСзависимо ΠΎΡ‚ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡ‚вия Π½Π° Π½Π΅Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ². Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΊΠΈ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΅Π΅ Ρ‡Π°ΡΡ‚ях Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ устранимы, Π° Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ систСмы — быстро восстановима.

Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ АРМ слСдуСт Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ уровня Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ², отнСсСнного ΠΊ Π·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡŽ ΠΈ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΠΈ систСмы.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ АРМ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ числСнный эффСкт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ условии ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ распрСдСлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ ΠΈ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌΠΈ срСдствами ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ядром ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… являСтся Π­Π’Πœ. Π›ΠΈΡˆΡŒ Ρ‚ΠΎΠ³Π΄Π° АРМ станСт срСдством ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Ρ€ΡƒΠ΄Π° ΠΈ ΡΡ„фСктивности управлСния, Π½ΠΎ ΠΈ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ комфортности спСциалистов.

Π’Π΅ΠΌΠ° курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° — «Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы для Ρ„ΠΈΡ€ΠΌΡ‹ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²» .

ЦСль курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° — Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ мСста ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° Ρ„ΠΈΡ€ΠΌΡ‹.

1. ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½Π°Ρ стадия

1.1 ОписаниС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области

Π€ΠΈΡ€ΠΌΠ° прСдставляСт собой Ρ‚ΠΎΡ€Π³ΠΎΠ²ΠΎΠ΅ прСдприятиС.

ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Ρ„ΠΈΡ€ΠΌΡ‹ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π°ΠΊΠ°Π·Ρ‹, Π½Π° ΡΠΊΠ»Π°Π΄Π΅ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ Π·Π°ΠΊΠ°Π·Ρ‹, разносчик доставляСт Π·Π°ΠΊΠ°Π·Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ.

Π‘Ρ…Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ бизнСс-процСсс прСдставлСн Π½Π° Ρ€ΠΈΡ. 1.1.

Рис. 1.1 БизнСс-процСсс Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΠΈΡ€ΠΌΡ‹

1.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области

Π’ Π½Π°ΡΡ‚оящСС врСмя для описания бизнСс-процСссов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ нСсколько ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΉ. К Ρ‡ΠΈΡΠ»Ρƒ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных относятся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ модСлирования бизнСс-процСссов, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΉ описания ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Ρ€Π°Π±ΠΎΡ‚ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ описания ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

НаиболСС ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ описания бизнСс-процСссов являСтся стандарт IDEF0. ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ IDEF0 Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ структурного Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ирования SADT. Π‘ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ стандарт Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π» сущСствСнных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π’ Π½Π°ΡΡ‚оящСС врСмя Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ IDEF0 сопряТСно с Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Π΅Π΅ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² — ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² для модСлирования бизнСс-процСссов (BPWin, ProCap, IDEF0/EM Tool ΠΈ Π΄Ρ€.) ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ IDEF0 прСдоставляСт Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΡƒ прСкрасныС возмоТности для описания бизнСса ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ с Π°ΠΊΡ†Π΅Π½Ρ‚ΠΎΠΌ Π½Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ процСссами. Нотация позволяСт ΠΎΡ‚Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ процСсса ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Π΅ связи Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°: ΠΏΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ, Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… рСсурсов. ΠŸΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ процСсса Π² IDEF0 ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ сущСствСнно ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π° Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠ°. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ IDEF0 ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для описания бизнСса Π½Π° Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. Π˜Ρ… ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ прСимущСство состоит Π² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ процСссами ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ваТнСйшСй ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ описания процСссов являСтся мСтодология IDEF3. Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ эта мСтодология называСтся Work Flow Modeling, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΅Π΅ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ IDEF3 ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для описания Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… процСссов ΠΈΠ»ΠΈ, говоря Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Ρ€Π°Π±ΠΎΡ‚. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ описания IDEF3 ΠΎΡ‡Π΅Π½ΡŒ Π±Π»ΠΈΠ·ΠΊΠ° ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚мичСским ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ построСния схСм процСссов стандартными срСдствами построСния Π±Π»ΠΎΠΊ-схСм (построСниС Π±Π»ΠΎΠΊ-схСмы Π² MS Word). Основа ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ IDEF3 состоит Π² ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ процСссов, ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ выполняСмых Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚.

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ DFD (Data FlowDiagramming). Π­Ρ‚ΠΈ Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для описания ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡ‚Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚, выполняСмых ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ процСсса, ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ†ΠΈΡ€ΠΊΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ этими Ρ€Π°Π±ΠΎΡ‚Π°ΠΌΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, нотация DFD позволяСт ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² (Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΎΠ±ΠΎΡ€ΠΎΡ‚) ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… рСсурсов (Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ). Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ схСмы процСссов Π² DFD Π²Ρ‹ΡΠ²Π»ΡΡŽΡ‚ основныС ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ модСль прСдставлСна Π½Π° Ρ€ΠΈΡ. 1.2.

Рис. 1.2 Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ модСль

1.3 ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ UML Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² использования обСспСчиваСт высокоуровнСвоС описаниС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ систСма Π² ΡΠΎΡΡ‚оянии ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ Ρ ΠΊΠ΅ΠΌ (ΠΈΠ»ΠΈ Ρ‡Π΅ΠΌ) ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎ называСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ опрСдСлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ.

Рис. 1.3 Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² использования

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° классов (class diagram) слуТит для прСдставлСния статичСской структуры ΠΌΠΎΠ΄Π΅Π»ΠΈ систСмы Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ классов ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° классов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Ρ€Π°ΠΆΠ°Ρ‚ΡŒ, Π² Ρ‡Π°ΡΡ‚ности, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ взаимосвязи ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ сущностями ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ структуру ΠΈ Ρ‚ΠΈΠΏΡ‹ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ.

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

Рис. 1.4 Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° классов

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

Рис. 1.5 Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

2. Бтадия проСктирования

2.1 Π’Ρ‹Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° срСда Borland Delphi.

C++Builder ΠΈ Delphi стали ΠΎΠ΄Π½ΠΈΠΌΠΈ ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… популярных Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΠΉ дСнь инструмСнтов для создания ΠΊΠ°ΠΊ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм благодаря ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΡΠΎΡ‡Π΅Ρ‚Π°Π½ΠΈΡŽ удобства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… интСрфСйсов, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, однотипности доступа ΠΊ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹ΠΌ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, начиная ΠΎΡ‚ ΠΏΠ»ΠΎΡΠΊΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ† Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° dBase ΠΈ Paradox ΠΈ ΠΊΠΎΠ½Ρ‡Π°Ρ сСрвСрными Π‘Π£Π‘Π”. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² стимулировало достаточно Π±Π΅Π·Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½Ρ‹ΠΉ пСрСнос Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚/сСрвСр ряда ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, модСрнизация ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ½Ρ‹ΠΌΠΈ срСдствами Π±Ρ‹Π»Π° Π±Ρ‹ сопряТСна с Π±ΠΎΠ»ΡŒΡˆΠΈΠΌΠΈ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ²Ρ‹ΠΌΠΈ ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌΠΈ.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ соврСмСнныС Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΈ развития ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… срСдств Ρ‚Π°ΠΊΠΎΠ²Ρ‹, Ρ‡Ρ‚ΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ становится Π½Π΅ ΠΏΡ€ΠΎΡΡ‚ΠΎ появлСниС Π½ΠΎΠ²Ρ‹Ρ… Π³ΠΈΠ±ΠΊΠΈΡ… ΠΈ ΠΌΠΎΡ‰Π½Ρ‹Ρ… срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ сСмСйств Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² с ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌΠΈ срСдами ΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎ Π² Ρ†Π΅Π»ΠΎΠΌ повторяСт идСологию формирования офисных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² (тСкстовый процСссор + элСктронная Ρ‚Π°Π±Π»ΠΈΡ†Π° + Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Π°Ρ Π‘Π£Π‘Π” + ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚) вмСсто выпуска ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… офисных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Если Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ линию ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Inprise, Ρ‚ΠΎ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Delphi ΠΈ C++Builder, Π° Ρ‚Π°ΠΊΠΆΠ΅ сходныС ΠΏΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΡ€Π΅Π΄Π΅ JBuilder, IntraBuilder, Visual dBase.

Бходство C++Builder ΠΈ Delphi Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся чисто внСшним. C++Builder ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ ΠΈ ΡΠΎΠ·Π΄Π°Π½ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Delphi, ΡΡ‚Π°Π²ΡˆΠ΅ΠΉ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π΄Π²Π° Π³ΠΎΠ΄Π° вСсьма популярной срСди Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². По ΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ этот ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ±Ρ‰ΡƒΡŽ с Delphi Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ классов, Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… написана Π½Π° Object Pascal.

Однако ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ C++Builder ΠΈ Delphi этим Π½Π΅ ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°Π΅Ρ‚ся. Π’ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… C++Builder ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Delphi, Π½ΠΎ ΠΈ ΠΊΠΎΠ΄, написанный Π½Π° Object Pascal, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Del-phi. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ наслСдованиС Ρ„ΠΎΡ€ΠΌ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Π² Ρ‚ΠΎΠΌ числС ΠΈ ΡΠΎΠ·Π΄Π°Π½Π½Ρ‹Ρ… Π² Delphi. Π­Ρ‚ΠΈ возмоТности появились благодаря Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ Π² C++Builder ΠΎΠ±ΠΎΠΈΡ… компиляторов C++ ΠΈ Object Pascal.

Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠ±Π° срСдства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ — ΠΈ C++Builder, ΠΈ Delphi. Части ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ созданы с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΡƒΡ… срСдств, ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠ°ΠΊ Delphi, Ρ‚Π°ΠΊ ΠΈ C++. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΈ ΡΡ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ, C++Builder ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, созданныС для Delphi, Π° ΠΈΡ… Π·Π° послСдниС нСсколько Π»Π΅Ρ‚ создано ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство. Π­Ρ‚ΠΎ богатство, Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΠΎΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ всСго ΠΌΠΈΡ€Π°, сСгодня способно ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ самыС ΠΏΡ€ΠΈΡ‡ΡƒΠ΄Π»ΠΈΠ²Ρ‹Π΅ запросы.

Delphi прСдоставляСт программисту ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΊΠΎΠ΄Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π° ΡΡ‡Π΅Ρ‚ наличия Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π½ΠΎ ΠΈ Π·Π° счСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ стандарта ActiveX, Ρ‡Ρ‚ΠΎ позволяСт Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ActiveX-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΊΠ°ΠΊ сторонних ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ, Ρ‚Π°ΠΊ ΠΈ ΡΠΎΠ·Π΄Π°Π½Π½Ρ‹Π΅ собствСнноручно с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ самого Delphi

НСмаловаТным Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, Π²Π»ΠΈΡΡŽΡ‰ΠΈΠΌ Π½Π° ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ этих ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ², являСтся ΠΈΡ… ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΡΡ‚ΡŒ, Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°ΡΡΡ Π² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ создания с ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ² ActiveX, ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Π½ΠΎ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… экспСртов, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² свойств ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ самой срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

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

Π’Ρ‹Π±ΠΎΡ€ систСмы управлСния Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… (Π‘Π£Π‘Π”) прСдставляСт собой ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΈ ΡΠ²Π»ΡΠ΅Ρ‚ся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π²Π°ΠΆΠ½Ρ‹Ρ… этапов ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ, Ρ‚Π°ΠΊ ΠΈ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠΌ потрСбностям, ΠΏΡ€ΠΈ этом слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ финансовыС Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ оборудования, самой систСмы, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π½Π° Π΅Π΅ ΠΎΡΠ½ΠΎΠ²Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ пСрсонала.

Microsoft Access — ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡ‹Ρ… популярных систСм управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π•Π΅ ΡƒΡΠΏΠ΅Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒ с Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½ΠΎΠΉ Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½ΠΎΠΉ ΠΊΠ°ΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ, ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ Microsoft, ΠΈΠ»ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π΅Π΅ Π² Π±ΠΎΠ³Π°Ρ‚ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² сСмСйства Microsoft Office. Но ΠΊΠΎΡ€Π΅Π½ΡŒ успСха, скорСС всСго, Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΏΡ€Π΅ΠΊΡ€Π°ΡΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, рассчитанного ΠΊΠ°ΠΊ Π½Π° Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅Π³ΠΎ, Ρ‚Π°ΠΊ ΠΈ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π‘Π£Π‘Π” Access для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ процСссор Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Microsoft Jet 4.0, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈ ΡΡ€Π΅Π΄ΡΡ‚Π²ΠΎ быстрого построСния интСрфСйса — ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ Ρ„ΠΎΡ€ΠΌ. Для получСния распСчаток ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ². Автоматизация Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ°ΠΊΡ€ΠΎΠΊΠΎΠΌΠ°Π½Π΄. На Ρ‚ΠΎΡ‚ случай, ΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… срСдств, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Access ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. ΠŸΡ€ΠΈ этом ΠΊΠ°ΠΊ Π² ΠΌΠ°ΠΊΡ€ΠΎΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ· ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΌΠ°ΠΊΡ€ΠΎΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

НСсмотря Π½Π° ΡΠ²ΠΎΡŽ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ Π½Π° ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π² Access присутствуСт язык программирования Visual Basic for Application, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ массивы, свои Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ DLL-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ OLE Automation ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ OLE-сСрвСры. Π’Ρ‹ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ кодирования, ΠΊΠΎΠ³Π΄Π° Π² ΡΡ‚ΠΎΠΌ появляСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ. MS Access ΠΈΠ· Π²ΡΠ΅Ρ… рассматриваСмых срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠΌΠ΅Π΅Ρ‚, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, самый Π±ΠΎΠ³Π°Ρ‚Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… срСдств. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Access приходится исходя ΠΈΠ· ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠΏΡ‹Ρ‚Π° Π°Π²Ρ‚ΠΎΡ€Ρ‹ бСрутся ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для сСбя Π»ΠΈΡ‡Π½ΠΎ, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ хотя Π±Ρ‹ Π±Π΅Π· ΠΎΠ΄Π½ΠΎΠΉ строчки ΠΊΠΎΠ΄Π° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

Для коммСрчСского распространСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π½Π° Access, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠΆΠ΅ писали, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ‚ Access Developer Toolkit, вмСстС с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ дополнСния ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ActiveX.

Π“Π»Π°Π²Π½ΠΎΠ΅ качСство Access, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ‚ ΠΊ Π½Π΅ΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, — тСсная интСграция с Microsoft Office. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, скопировав Π² Π±ΡƒΡ„Π΅Ρ€ графичСский ΠΎΠ±Ρ€Π°Π· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΎΡ‚ΠΊΡ€Ρ‹Π² Microsoft Word ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ² вставку ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π°, ΠΌΡ‹ Ρ‚ΡƒΡ‚ ΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Π‘Π”. Вся Ρ€Π°Π±ΠΎΡ‚Π° с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΊΠ½ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΡ‚ΡΡŽΠ΄Π° осущСствляСтся доступ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ: Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ, запросам, Ρ„ΠΎΡ€ΠΌΠ°ΠΌ, ΠΎΡ‚Ρ‡Π΅Ρ‚Π°ΠΌ, макросам, модулям.

ΠŸΠΎΡΡ€Π΅Π΄ΡΡ‚Π²ΠΎΠΌ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ISAM ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ Ρ‚Π°Π±Π»ΠΈΡ† Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ²: DBASE, Paradox, Excel, тСкстовым Ρ„Π°ΠΉΠ»Π°ΠΌ, FoxPro 2. x, Π° ΠΏΠΎΡΡ€Π΅Π΄ΡΡ‚Π²ΠΎΠΌ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ODBC — ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ².

Access ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π² Ρ€ΠΎΠ»ΠΈ OLE ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€Π°, Ρ‚Π°ΠΊ ΠΈ ΠžΠ•Π• сСрвСра. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Access ΠΈΠ· Π»ΡŽΠ±ΠΎΠ³ΠΎ прилоТСния, ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π² Ρ€ΠΎΠ»ΠΈ OLE ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€Π° ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. ВстроСнный SQL позволяСт максимально Π³ΠΈΠ±ΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ускоряСт доступ ΠΊ Π²Π½Π΅ΡˆΠ½ΠΈΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ, ΠΌΠ°Π»ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌ с ΠΏΠΎΠ½ΡΡ‚иями рСляционных Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, Access Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ свои слоТныС ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΎ, связанных ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ полям.

2.2 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° логичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ

ОпишСм сущности ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹.

Π’Π°Π±Π»ΠΈΡ†Π° 2.1 Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ

ПолС

Вип поля

Код_Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°

Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ

ЀИО

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ [25]

АдрСс

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ [25]

Π’Π΅Π»Π΅Ρ„ΠΎΠ½

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ [15]

Π’Π°Π±Π»ΠΈΡ†Π° 2.2 Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ Разносчик

ПолС

Вип поля

Код_разносчика

Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ

ЀИО

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ [25]

Π’Π΅Π»Π΅Ρ„ΠΎΠ½

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ [15]

Π’Π°Π±Π»ΠΈΡ†Π° 2.3 Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ Π’ΠΎΠ²Π°Ρ€

ПолС

Вип поля

Код_Ρ‚ΠΎΠ²Π°Ρ€Π°

Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ

НаимСнованиС

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ [25]

Π“Ρ€ΡƒΠΏΠΏΠ°

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ [15]

Π¦Π΅Π½Π°

Числовой

Π’Π°Π±Π»ΠΈΡ†Π° 2.4 Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ Π–ΡƒΡ€Π½Π°Π»

ПолС

Вип поля

Код_ΠΆΡƒΡ€Π½Π°Π»Π°

Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ

Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ

Числовой

Разносчик

Числовой

Π‘ΡƒΠΌΠΌΠ°

Числовой

Π”Π°Ρ‚Π°

Π”Π°Ρ‚Π°

Π’Π°Π±Π»ΠΈΡ†Π° 2.5 Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ ДСтализация

ПолС

Вип поля

Код_Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ

Π–ΡƒΡ€Π½Π°Π»

Числовой

Π’ΠΎΠ²Π°Ρ€

Числовой

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ

Числовой

2.3 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° физичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ

ЀизичСская модСль, разработанная Π² MS Access, прСдставлСна Π½Π° Ρ€ΠΈΡ. 2.1.

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

3. РСализация ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

3.1 БСрвСрная Ρ‡Π°ΡΡ‚ΡŒ

БСрвСрная Ρ‡Π°ΡΡ‚ΡŒ Π² Π΄Π°Π½Π½ΠΎΠΌ курсовой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ прСдставлСна Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… MS Access bd. mdb.

Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΡ‚ всС Π΄Π°Π½Π½Ρ‹Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ систСмы.

Для связи сСрвСра ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ тСхнология ADO.

ВСхнология ADO являСтся модСлью доступа ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚авляСт собой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ интСрфСйс для Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ OLE DB.

ADO ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ возмоТности для построСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚/сСрвСрных ΠΈ Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ обСспСчиваСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Remote Data Service (RDS), посрСдством ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с ΡΠ΅Ρ€Π²Π΅Ρ€Π° Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚скоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π° Web-страницу, ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ «Π½Π° ΡΡ‚ΠΎΡ€ΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°» ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ сСрвСру.

Рис. 3.1 Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

3.2 ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π² Delphi 7 ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚авляСт собой интСрфСйс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с Ρ„ункциями для управлСния Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ….

ОпишСм основныС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ клиСнтской части.

Алгоритм Ρ€Π°Π±ΠΎΡ‚Ρ‹ со ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ°ΠΌΠΈ.

Рис. 3.2 Π‘Ρ…Π΅ΠΌΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° добавлСния ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ирования Π΄Π°Π½Π½Ρ‹Ρ…

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄:

procedure TForm3. Button2Click (Sender: TObject);

begin

if Edit1. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ЀИО! ');

Edit1. SetFocus;

exit;

end;

if Edit2. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ АдрСс! ');

Edit2. SetFocus;

exit;

end;

if Edit3. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½! ');

Edit3. SetFocus;

exit;

end;

if Form3. Caption='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅' then

Form2. ADOQuery1. Insert

else

Form2. ADOQuery1. Edit;

Form2. ADOQuery1. FieldValues ['ЀИО']: =Edit1. Text;

Form2. ADOQuery1. FieldValues ['АдрСс']: =Edit2. Text;

Form2. ADOQuery1. FieldValues ['Π’Π΅Π»Π΅Ρ„ΠΎΠ½']: =Edit3. Text;

Form2. ADOQuery1. UpdateRecord;

Form2. ADOQuery1. Last;

Form2. ADOQuery1. First;

Button1Click (Sender);

end;

Рис. 3.3 Π‘Ρ…Π΅ΠΌΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° удалСния Π΄Π°Π½Π½Ρ‹Ρ…

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄:

procedure TForm2. Button3. Click (Sender: TObject);

begin

with Application do

begin

if MessageBox ('Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ запись? ', 'Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅', MB_OKCANCEL) =IDOK then

ADOQuery1. Delete;

end;

end;

3.3 РСализация запросов

Π’ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ систСмС использовались SQL-запросы для получСния Π΄Π°Π½Π½Ρ‹Ρ….

SQL запросы ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

Β· созданиС, модификация ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…;

Β· вставка ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (записСй) Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…;

Β· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (записСй) Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…;

Β· Π²Ρ‹Π±ΠΎΡ€ΠΊΠ° (ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅) ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ† Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…;

Β· ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (записСй) ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования SQL-запросов:

ADOQuery1. SQL. Clear;

st: ='SELECT Π–ΡƒΡ€Π½Π°Π». Код_ΠΆΡƒΡ€Π½Π°Π»Π°, Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ. ЀИО, Разносчики. ЀИО, Π–ΡƒΡ€Π½Π°Π». Π‘ΡƒΠΌΠΌΠ°, Π–ΡƒΡ€Π½Π°Π». Π”Π°Ρ‚Π° ';

st: =st+'FROM Π–ΡƒΡ€Π½Π°Π», Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ, Разносчики WHERE (Π–ΡƒΡ€Π½Π°Π». Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ=Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ. Код_Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°) AND ';

st: =st+' (Π–ΡƒΡ€Π½Π°Π». Разносчик=Разносчики. Код_разносчика) ORDER BY Π–ΡƒΡ€Π½Π°Π». Π”Π°Ρ‚Π°';

ADOQuery1. SQL. Add (st);

ADOQuery1. Open;

st: ='SELECT Π’ΠΎΠ²Π°Ρ€Ρ‹. НаимСнованиС, ДСтализация. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ FROM ДСтализация, Π’ΠΎΠ²Π°Ρ€Ρ‹ ';

st: =st+'WHERE (Π’ΠΎΠ²Π°Ρ€Ρ‹. Код_Ρ‚ΠΎΠ²Π°Ρ€Π°=ДСтализация. Π’ΠΎΠ²Π°Ρ€) AND (ДСтализация. Π–ΡƒΡ€Π½Π°Π»='+IntToStr (ADOQuery1. FieldValues ['Код_ΠΆΡƒΡ€Π½Π°Π»Π°']) +') ';

ADOQuery2. SQL. Clear;

ADOQuery2. SQL. Add (st);

ADOQuery2. Open;

4. Эксплуатация ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

ΠŸΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠΊΡ€Π°Π½ выводится главная Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Главная Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ содСрТит ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅ мСню:

Β· Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ (Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ, Разносчик, Π’ΠΎΠ²Π°Ρ€) — Ρ€Π°Π±ΠΎΡ‚Π° со ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ°ΠΌΠΈ;

Β· Π’Ρ‹Ρ…ΠΎΠ΄ — Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Π°ΠΊΠΆΠ΅ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ находится Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΆΡƒΡ€Π½Π°Π» Π·Π°ΠΊΠ°Π·ΠΎΠ² с ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ ΠΏΠΎ Π΄Π°Ρ‚Π΅ ΠΈ Π΄Π΅Ρ‚ализация Π·Π°ΠΊΠ°Π·Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ приводится список ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ².

Главная Ρ„ΠΎΡ€ΠΌΠ° прСдставлСна Π½Π° Ρ€ΠΈΡ. 4.1.

Рис. 4.1 Главная Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Рассмотрим Ρ€Π°Π±ΠΎΡ‚Ρƒ со ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ°ΠΌΠΈ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ справочника «Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ». Π€ΠΎΡ€ΠΌΠ° содСрТит Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ управлСния.

ВсС справочники ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Β· Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅;

Β· Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅;

Β· Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅;

Β· Π’Ρ‹Ρ…ΠΎΠ΄.

Π€ΠΎΡ€ΠΌΠ° справочника Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠ² прСдставлСна Π½Π° Ρ€ΠΈΡ. 4.2.

Рис. 4.2 Π€ΠΎΡ€ΠΌΠ° справочника Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠ²

ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π° ΡΠΊΡ€Π°Π½Π΅ появится Ρ„ΠΎΡ€ΠΌΠ° с ΠΏΠΎΠ»ΡΠΌΠΈ для Π²Π²ΠΎΠ΄Π° Π½ΠΎΠ²ΠΎΠΉ записи (рис. 4.3.).

Рис. 4.3 Окно Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅

Для добавлСния Π½ΠΎΠ²ΠΎΠΉ записи Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ всС поля ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ». Если ΠΊΠ°ΠΊΠΎΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΠΎΠ»Π΅ Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ, Ρ‚ΠΎ Π²Ρ‹Π΄Π°Π΅Ρ‚ся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сообщСниС ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ся ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄.

Рис. 4.4 Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅

Кнопка «ΠžΡ‚ΠΌΠ΅Π½Π°» Π½Π΅ ΡΠΎΡ…раняСт Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ.

Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ записи происходит Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ добавлСнию, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ всС поля ΡƒΠΆΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ записи.

Рис. 4.5 Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ записи

ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ «Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выдаст запрос Π½Π° ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ удалСния записи. ПослС подтвСрТдСния запись Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π°.

Рис. 4.6 Запрос Π½Π° ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ записи

Рассмотрим Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡŽ добавлСния Π·Π°ΠΊΠ°Π· Π² ΠΆΡƒΡ€Π½Π°Π».

На Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ», появится Ρ„ΠΎΡ€ΠΌΠ° добавлСния Π·Π°ΠΊΠ°Π·Π°, рис. 4.7.

Рис. 4.7 Π€ΠΎΡ€ΠΌΠ° добавлСния Π·Π°ΠΊΠ°Π·Π°

Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части Ρ„ΠΎΡ€ΠΌΡ‹ находится Ρ‚Π°Π±Π»ΠΈΡ†Π° для хранСния Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ², Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список с Π€Π˜Πž Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠ² ΠΈ Ρ Π€Π˜Πž разносчиков, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π±ΠΎΡ€ Π΄Π°Ρ‚Ρ‹ Π·Π°ΠΊΠ°Π·Π°.

Π’ Π½ΠΈΠΆΠ½Π΅ΠΉ части Ρ„ΠΎΡ€ΠΌΡ‹ находится список Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ². Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ²Π°Ρ€Π° Π² ΡΠΏΠΈΡΠΎΠΊ производится Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ ΡΡ‚Ρ€ΠΎΠΊΠ΅ Ρ‚ΠΎΠ²Π°Ρ€Π°, послС этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ количСство Π·Π°ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ‚ΠΎΠ²Π°Ρ€Π°.

Рис. 4.8 Π€ΠΎΡ€ΠΌΠ° указания количСства Ρ‚ΠΎΠ²Π°Ρ€Π°

ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ «ΠžΠΊ» Ρ‚ΠΎΠ²Π°Ρ€ добавится Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ Π°Π²Ρ‚оматичСски измСнится сумма Π·Π°ΠΊΠ°Π·Π°.

Рис. 4.9 Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ добавлСния Π·Π°ΠΊΠ°Π·Π°

ПослС составлСния списка Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² выбираСтся Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ, разносчик ΠΈ Π΄Π°Ρ‚Π°. НаТимаСтся ΠΊΠ½ΠΎΠΏΠΊΠ° «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ» ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ….

Рис. 4.10. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ добавлСния Π·Π°ΠΊΠ°Π·Π°

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

Π’ Ρ…ΠΎΠ΄Π΅ выполнСния курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π±Ρ‹Π»Π° рассмотрСна прСдмСтная ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Ρ„ΠΈΡ€ΠΌΡ‹ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ².

Π‘Ρ‹Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ сущности ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ UML-Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ систСмы. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° физичСская Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚скоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ стала ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Service. exe, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ вСсти справочники Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠ², разносчиков, Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ², Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°ΠΊΠ°Π·Ρ‹ ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ Π·Π°ΠΊΠ°Π·Π°Ρ….

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

1. Аппак М. А. АвтоматизированныС Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ мСста Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π­Π’Πœ. — Πœ.: Π Π°Π΄ΠΈΠΎ ΠΈ ΡΠ²ΡΠ·ΡŒ, 2009. — 176 с.

2. Π“ΠΎΠ»ΡŒΠ΄ΡˆΡ‚Π΅ΠΉΠ½ Π‘. Π›, Π’ΠΊΠ°Ρ‡Π΅Π½ΠΊΠΎ Π’. Π―.

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

Π² ΡΠΈΡΡ‚Π΅ΠΌΠΎΠ»ΠΎΠ³ΠΈΡŽ ΠΈ ΡΠΈΡΡ‚Π΅ΠΌΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΡƒ / Π‘. Π›. Π“ΠΎΠ»ΡŒΠ΄ΡˆΡ‚Π΅ΠΉΠ½. — Π˜Π Π Πž. Π•ΠΊΠ°Ρ‚Π΅Ρ€ΠΈΠ½Π±ΡƒΡ€Π³, 2010. — 198 с.

3. Π“Π»ΡƒΡˆΠ°ΠΊΠΎΠ² Π‘. Π’., Π›ΠΎΠΌΠΎΡ‚ΡŒΠΊΠΎ Π”. Π’. Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…: Π£Ρ‡Π΅Π±Π½Ρ‹ΠΉ курс. — Πœ.: Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ АБВ, 2008. — 504 с.

4. Π”ΡŽΠΊ Π’. А. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠŸΠš Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…. — Π‘Пб: ΠŸΠΈΡ‚Π΅Ρ€. 1997;

5. ΠœΠ°Ρ€ΠΊ Π”. А. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ структурного Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ирования SADT. — Πœ: ΠœΠ΅Ρ‚Π°Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡ, 2009. — 242 с.

6. Π‘Π΅Π½Π½ΠΎΠ² А. Π‘. Access 2003 ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, ΠŸΠΈΡ‚Π΅Ρ€, 2005;

7. Π‘ΠΈΠΌΠΎΠ½ΠΎΠ²ΠΈΡ‡, ЕвсССв Π—Π°Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: Delphi. М.: АБВ-ΠŸΠ Π•Π‘Π‘, 2001;

8. Π¨ΡƒΡ€Π΅ΠΌΠΎΠ² Π•. Π›. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΉ ΡƒΡ‡Π΅Ρ‚ Ρ‚ΠΎΡ€Π³ΠΎΠ²Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ: ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ пособиС/. — Πœ.: ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠŸΡ€Π΅ΡΡ, 2000;

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

unit Unit1;

interface

uses

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

Dialogs, XPMan, Menus, StdCtrls, DB, ADODB, Grids, DBGrids;

type

TForm1 = class (TForm)

XPManifest1: TXPManifest;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

ADOConnection1: TADOConnection;

GroupBox1: TGroupBox;

GroupBox2: TGroupBox;

Button1: TButton;

DBGrid1: TDBGrid;

DBGrid2: TDBGrid;

ADOQuery1: TADOQuery;

DataSource1: TDataSource;

ADOQuery2: TADOQuery;

DataSource2: TDataSource;

ADOQuery3: TADOQuery;

procedure N2Click (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure N3Click (Sender: TObject);

procedure N4Click (Sender: TObject);

procedure N5Click (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure DBGrid1CellClick (Column: TColumn);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2, Unit4, Unit6, Unit8;

{$R *. dfm}

procedure TForm1. N2Click (Sender: TObject);

begin

Form1. Close;

end;

procedure TForm1. FormCreate (Sender: TObject);

var

sdr, st: string;

begin

Screen. Cursor: = crSQLWait;

sdr: ='';

sdr: =sdr+'Provider=Microsoft. Jet. OLEDB.4.0; ';

sdr: =sdr+'Password=""; ';

sdr: =sdr+'User ID=Admin; ';

sdr: =sdr+'Data Source='+ ExtractFileDir (Application. ExeName) +'bd. mdb; ';

sdr: =sdr+'Mode=ReadWrite; Extended Properties=""; ';

sdr: =sdr+'Jet OLEDB: System database=""; ';

sdr: =sdr+'Jet OLEDB: Registry Path=""; ';

sdr: =sdr+'Jet OLEDB: Database Password=""; ';

sdr: =sdr+'Jet OLEDB: Engine Type=5; ';

sdr: =sdr+'Jet OLEDB: Database Locking Mode=1; ';

sdr: =sdr+'Jet OLEDB: Global Partial Bulk Ops=2; ';

sdr: =sdr+'Jet OLEDB: Global Bulk Transactions=1; ';

sdr: =sdr+'Jet OLEDB: New Database Password=""; ';

sdr: =sdr+'Jet OLEDB: Create System Database=False; ';

sdr: =sdr+'Jet OLEDB: Encrypt Database=False; ';

sdr: =sdr+'Jet OLEDB: Compact Without Replica Repair=False; ';

sdr: =sdr+'Jet OLEDB: SFP=False';

ADOConnection1. ConnectionString: =sdr;

try

ADOConnection1. Connected: =true;

ADOQuery1. SQL. Clear;

st: ='SELECT Π–ΡƒΡ€Π½Π°Π». Код_ΠΆΡƒΡ€Π½Π°Π»Π°, Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ. ЀИО, Разносчики. ЀИО, Π–ΡƒΡ€Π½Π°Π». Π‘ΡƒΠΌΠΌΠ°, Π–ΡƒΡ€Π½Π°Π». Π”Π°Ρ‚Π° ';

st: =st+'FROM Π–ΡƒΡ€Π½Π°Π», Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ, Разносчики WHERE (Π–ΡƒΡ€Π½Π°Π». Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ=Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ. Код_Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°) AND ';

st: =st+' (Π–ΡƒΡ€Π½Π°Π». Разносчик=Разносчики. Код_разносчика) ORDER BY Π–ΡƒΡ€Π½Π°Π». Π”Π°Ρ‚Π°';

ADOQuery1. SQL. Add (st);

ADOQuery1. Open;

DBGrid1. Columns. Width: =0;

st: ='SELECT Π’ΠΎΠ²Π°Ρ€Ρ‹. НаимСнованиС, ДСтализация. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ FROM ДСтализация, Π’ΠΎΠ²Π°Ρ€Ρ‹ ';

st: =st+'WHERE (Π’ΠΎΠ²Π°Ρ€Ρ‹. Код_Ρ‚ΠΎΠ²Π°Ρ€Π°=ДСтализация. Π’ΠΎΠ²Π°Ρ€) AND (ДСтализация. Π–ΡƒΡ€Π½Π°Π»='+IntToStr (ADOQuery1. FieldValues ['Код_ΠΆΡƒΡ€Π½Π°Π»Π°']) +') ';

ADOQuery2. SQL. Clear;

ADOQuery2. SQL. Add (st);

ADOQuery2. Open;

except

showmessage ('Ошибка');

end;

screen. Cursor: =crdefault;

end;

procedure TForm1. N3Click (Sender: TObject);

begin

Form2. ShowModal;

end;

procedure TForm1. N4Click (Sender: TObject);

begin

Form4. ShowModal;

end;

procedure TForm1. N5Click (Sender: TObject);

begin

Form6. ShowModal;

end;

procedure TForm1. Button1Click (Sender: TObject);

var

st: String;

begin

Form8. Caption: ='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅';

ADOQuery3. SQL. Clear;

ADOQuery3. SQL. Add ('SELECT MAX (Код_ΠΆΡƒΡ€Π½Π°Π»Π°) AS num FROM Π–ΡƒΡ€Π½Π°Π»');

ADOQuery3. Open;

Form8. Label5. Caption: =IntToStr (ADOQuery3. FieldValues ['num'] +1);

Form8. ADOQuery2. SQL. Clear;

st: ='SELECT ДСтализация. Код_Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ДСтализация. Π–ΡƒΡ€Π½Π°Π», Π’ΠΎΠ²Π°Ρ€Ρ‹. НаимСнованиС,';

st: =st+'ДСтализация. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ FROM ДСтализация, Π’ΠΎΠ²Π°Ρ€Ρ‹ WHERE ';

st: =st+' (Π–ΡƒΡ€Π½Π°Π»='+Form8. Label5. Caption+') AND (ДСтализация. Π’ΠΎΠ²Π°Ρ€=Π’ΠΎΠ²Π°Ρ€Ρ‹. Код_Ρ‚ΠΎΠ²Π°Ρ€Π°) ';

Form8. ADOQuery2. SQL. Add (st);

Form8. ADOQuery2. Open;

Form8. DBGrid1. Columns. Width: =0;

// Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ

Form8. ADOQuery3. SQL. Clear;

Form8. ADOQuery3. SQL. Add ('SELECT * FROM Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ ORDER BY ЀИО');

Form8. ADOQuery3. Open;

Form8. Zak. ListField: ='ЀИО';

Form8. Zak. KeyField: ='Код_Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°';

// разносчик

Form8. ADOQuery4. SQL. Clear;

Form8. ADOQuery4. SQL. Add ('SELECT * FROM Разносчики ORDER BY ЀИО');

Form8. ADOQuery4. Open;

Form8. Razn. ListField: ='ЀИО';

Form8. Razn. KeyField: ='Код_разносчика';

Form8. ShowModal;

end;

procedure TForm1. DBGrid1CellClick (Column: TColumn);

var

st: String;

begin

st: ='SELECT Π’ΠΎΠ²Π°Ρ€Ρ‹. НаимСнованиС, ДСтализация. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ FROM ДСтализация, Π’ΠΎΠ²Π°Ρ€Ρ‹ ';

st: =st+'WHERE (Π’ΠΎΠ²Π°Ρ€Ρ‹. Код_Ρ‚ΠΎΠ²Π°Ρ€Π°=ДСтализация. Π’ΠΎΠ²Π°Ρ€) AND (ДСтализация. Π–ΡƒΡ€Π½Π°Π»='+IntToStr (ADOQuery1. FieldValues ['Код_ΠΆΡƒΡ€Π½Π°Π»Π°']) +') ';

ADOQuery2. SQL. Clear;

ADOQuery2. SQL. Add (st);

ADOQuery2. Open;

end;

end.

unit Unit2;

interface

uses

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

Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids;

type

TForm2 = class (TForm)

DBGrid1: TDBGrid;

Button1: TButton;

Button2: TButton;

Button3: TButton;

Button4: TButton;

DataSource1: TDataSource;

ADOQuery1: TADOQuery;

procedure Button4Click (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

uses Unit1, Unit3;

{$R *. dfm}

procedure TForm2. Button4Click (Sender: TObject);

begin

Form2. Close;

end;

procedure TForm2. FormCreate (Sender: TObject);

begin

ADOQuery1. SQL. Clear;

ADOQuery1. SQL. Add ('SELECT * FROM Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ ORDER BY ЀИО');

ADOQuery1. Open;

DBGrid1. Columns. Width: =0;

end;

procedure TForm2. Button2Click (Sender: TObject);

begin

with Application do

begin

if MessageBox ('Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ запись? ', 'Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅', MB_OKCANCEL) =IDOK then

ADOQuery1. Delete;

end;

end;

procedure TForm2. Button1Click (Sender: TObject);

begin

Form3. Caption: ='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅';

Form3. ShowModal;

end;

procedure TForm2. Button3Click (Sender: TObject);

begin

Form3. Caption: ='Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅';

Form3. Edit1. Text: =ADOQuery1. FieldValues ['ЀИО'];

Form3. Edit2. Text: =ADOQuery1. FieldValues ['АдрСс'];

Form3. Edit3. Text: =ADOQuery1. FieldValues ['Π’Π΅Π»Π΅Ρ„ΠΎΠ½'];

Form3. ShowModal;

end;

end.

unit Unit3;

interface

uses

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

Dialogs, StdCtrls;

type

TForm3 = class (TForm)

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Edit2: TEdit;

Label3: TLabel;

Edit3: TEdit;

Button1: TButton;

Button2: TButton;

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

uses Unit2;

{$R *. dfm}

procedure TForm3. Button1Click (Sender: TObject);

begin

Edit1. Text: ='';

Edit2. Text: ='';

Edit3. Text: ='';

Form3. Close;

end;

procedure TForm3. Button2Click (Sender: TObject);

begin

if Edit1. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ЀИО! ');

Edit1. SetFocus;

exit;

end;

if Edit2. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ АдрСс! ');

Edit2. SetFocus;

exit;

end;

if Edit3. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½! ');

Edit3. SetFocus;

exit;

end;

if Form3. Caption='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅' then

Form2. ADOQuery1. Insert

else

Form2. ADOQuery1. Edit;

Form2. ADOQuery1. FieldValues ['ЀИО']: =Edit1. Text;

Form2. ADOQuery1. FieldValues ['АдрСс']: =Edit2. Text;

Form2. ADOQuery1. FieldValues ['Π’Π΅Π»Π΅Ρ„ΠΎΠ½']: =Edit3. Text;

Form2. ADOQuery1. UpdateRecord;

Form2. ADOQuery1. Last;

Form2. ADOQuery1. First;

Button1Click (Sender);

end;

end.

unit Unit4;

interface

uses

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

Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids;

type

TForm4 = class (TForm)

DBGrid1: TDBGrid;

Button1: TButton;

Button2: TButton;

Button3: TButton;

Button4: TButton;

DataSource1: TDataSource;

ADOQuery1: TADOQuery;

procedure FormCreate (Sender: TObject);

procedure Button4Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

uses Unit1, Unit5;

{$R *. dfm}

procedure TForm4. FormCreate (Sender: TObject);

begin

ADOQuery1. SQL. Clear;

ADOQuery1. SQL. Add ('SELECT * FROM Разносчики ORDER BY ЀИО');

ADOQuery1. Open;

DBGrid1. Columns. Width: =0;

end;

procedure TForm4. Button4Click (Sender: TObject);

begin

Form4. Close;

end;

procedure TForm4. Button2Click (Sender: TObject);

begin

with Application do

begin

if MessageBox ('Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ запись? ', 'Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅', MB_OKCANCEL) =IDOK then

ADOQuery1. Delete;

end;

end;

procedure TForm4. Button1Click (Sender: TObject);

begin

Form5. Caption: ='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅';

Form5. ShowModal;

end;

procedure TForm4. Button3Click (Sender: TObject);

begin

Form5. Caption: ='Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅';

Form5. Edit1. Text: =ADOQuery1. FieldValues ['ЀИО'];

Form5. Edit3. Text: =ADOQuery1. FieldValues ['Π’Π΅Π»Π΅Ρ„ΠΎΠ½'];

Form5. ShowModal;

end;

end.

unit Unit5;

interface

uses

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

Dialogs, StdCtrls;

type

TForm5 = class (TForm)

Label1: TLabel;

Edit1: TEdit;

Label3: TLabel;

Edit3: TEdit;

Button1: TButton;

Button2: TButton;

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

uses Unit4;

{$R *. dfm}

procedure TForm5. Button1Click (Sender: TObject);

begin

Edit1. Text: ='';

Edit3. Text: ='';

Form5. Close;

end;

procedure TForm5. Button2Click (Sender: TObject);

begin

if Edit1. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ЀИО! ');

Edit1. SetFocus;

exit;

end;

if Edit3. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½! ');

Edit3. SetFocus;

exit;

end;

if Form5. Caption='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅' then

Form4. ADOQuery1. Insert

else

Form4. ADOQuery1. Edit;

Form4. ADOQuery1. FieldValues ['ЀИО']: =Edit1. Text;

Form4. ADOQuery1. FieldValues ['Π’Π΅Π»Π΅Ρ„ΠΎΠ½']: =Edit3. Text;

Form4. ADOQuery1. UpdateRecord;

Form4. ADOQuery1. Last;

Form4. ADOQuery1. First;

Button1Click (Sender);

end;

end.

unit Unit6;

interface

uses

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

Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids;

type

TForm6 = class (TForm)

DBGrid1: TDBGrid;

Button1: TButton;

Button2: TButton;

Button3: TButton;

Button4: TButton;

DataSource1: TDataSource;

ADOQuery1: TADOQuery;

procedure Button4Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form6: TForm6;

implementation

uses Unit1, Unit7;

{$R *. dfm}

procedure TForm6. Button4Click (Sender: TObject);

begin

Form6. Close;

end;

procedure TForm6. Button2Click (Sender: TObject);

begin

with Application do

begin

if MessageBox ('Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ запись? ', 'Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅', MB_OKCANCEL) =IDOK then

ADOQuery1. Delete;

end;

end;

procedure TForm6. FormCreate (Sender: TObject);

begin

ADOQuery1. SQL. Clear;

ADOQuery1. SQL. Add ('SELECT * FROM Π’ΠΎΠ²Π°Ρ€Ρ‹ ORDER BY НаимСнованиС');

ADOQuery1. Open;

DBGrid1. Columns. Width: =0;

end;

procedure TForm6. Button1Click (Sender: TObject);

begin

Form7. Caption: ='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅';

Form7. ShowModal;

end;

procedure TForm6. Button3Click (Sender: TObject);

begin

Form7. Caption: ='Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅';

Form7. Edit1. Text: =ADOQuery1. FieldValues ['НаимСнованиС'];

Form7. Edit2. Text: =ADOQuery1. FieldValues ['Π“Ρ€ΡƒΠΏΠΏΠ°'];

Form7. Edit3. Text: =ADOQuery1. FieldValues ['Π¦Π΅Π½Π°'];

Form7. ShowModal;

end;

end.

unit Unit7;

interface

uses

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

Dialogs, StdCtrls;

type

TForm7 = class (TForm)

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Edit2: TEdit;

Label3: TLabel;

Edit3: TEdit;

Button1: TButton;

Button2: TButton;

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form7: TForm7;

implementation

uses Unit6;

{$R *. dfm}

procedure TForm7. Button1Click (Sender: TObject);

begin

Edit1. Text: ='';

Edit2. Text: ='';

Edit3. Text: ='';

Form7. Close;

end;

procedure TForm7. Button2Click (Sender: TObject);

begin

if Edit1. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ НаимСнованиС! ');

Edit1. SetFocus;

exit;

end;

if Edit2. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π“Ρ€ΡƒΠΏΠΏΡƒ! ');

Edit2. SetFocus;

exit;

end;

if Edit3. Text='' then

begin

showmessage ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π¦Π΅Π½Ρƒ! ');

Edit3. SetFocus;

exit;

end;

if Form7. Caption='Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅' then

Form6. ADOQuery1. Insert

else

Form6. ADOQuery1. Edit;

Form6. ADOQuery1. FieldValues ['НаимСнованиС']: =Edit1. Text;

Form6. ADOQuery1. FieldValues ['Π“Ρ€ΡƒΠΏΠΏΠ°']: =Edit2. Text;

Form6. ADOQuery1. FieldValues ['Π¦Π΅Π½Π°']: =Edit3. Text;

Form6. ADOQuery1. UpdateRecord;

Form6. ADOQuery1. Last;

Form6. ADOQuery1. First;

Button1Click (Sender);

end;

end.

unit Unit8;

interface

uses

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

Dialogs, StdCtrls, DBCtrls, Grids, DBGrids, DB, ADODB, ComCtrls;

type

TForm8 = class (TForm)

GroupBox1: TGroupBox;

GroupBox2: TGroupBox;

Label1: TLabel;

Zak: TDBLookupComboBox;

Label2: TLabel;

Razn: TDBLookupComboBox;

Label3: TLabel;

Label4: TLabel;

Button1: TButton;

Button2: TButton;

DBGrid1: TDBGrid;

DBGrid2: TDBGrid;

ADOQuery1: TADOQuery;

DataSource1: TDataSource;

ADOQuery2: TADOQuery;

DataSource2: TDataSource;

ADOQuery3: TADOQuery;

DataSource3: TDataSource;

ADOQuery4: TADOQuery;

DataSource4: TDataSource;

ADOQuery5: TADOQuery;

DataSource5: TDataSource;

Label5: TLabel;

Label6: TLabel;

Dat: TDateTimePicker;

Label7: TLabel;

procedure FormCreate (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

procedure DBGrid2DblClick (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form8: TForm8;

implementation

uses Unit1, Unit9;

{$R *. dfm}

procedure TForm8. FormCreate (Sender: TObject);

begin

ADOQuery1. SQL. Clear;

ADOQuery1. SQL. Add ('SELECT * FROM Π’ΠΎΠ²Π°Ρ€Ρ‹ ORDER BY НаимСнованиС');

ADOQuery1. Open;

DBGrid2. Columns. Width: =0;

end;

procedure TForm8. Button1Click (Sender: TObject);

begin

Zak. KeyValue: =0;

Razn. KeyValue: =0;

Form8. Close;

end;

procedure TForm8. Button2Click (Sender: TObject);

var

st: String;

begin

ADOQuery5. SQL. Clear;

ADOQuery5. SQL. Add ('SELECT * FROM Π–ΡƒΡ€Π½Π°Π»');

ADOQuery5. Open;

ADOQuery5. Insert;

ADOQuery5. FieldValues ['Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ']: =Zak. KeyValue;

ADOQuery5. FieldValues ['Разносчик']: =Razn. KeyValue;

ADOQuery5. FieldValues ['Π‘ΡƒΠΌΠΌΠ°']: =StrToInt (Label4. Caption);

ADOQuery5. FieldValues ['Π”Π°Ρ‚Π°']: =DateToStr (Dat. Date);

ADOQuery5. UpdateRecord;

ADOQuery5. Last;

ADOQuery5. First;

st: ='SELECT Π–ΡƒΡ€Π½Π°Π». Код_ΠΆΡƒΡ€Π½Π°Π»Π°, Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ. ЀИО, Разносчики. ЀИО, Π–ΡƒΡ€Π½Π°Π». Π‘ΡƒΠΌΠΌΠ°, Π–ΡƒΡ€Π½Π°Π». Π”Π°Ρ‚Π° ';

st: =st+'FROM Π–ΡƒΡ€Π½Π°Π», Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ, Разносчики WHERE (Π–ΡƒΡ€Π½Π°Π». Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ=Π—Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ. Код_Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°) AND ';

st: =st+' (Π–ΡƒΡ€Π½Π°Π». Разносчик=Разносчики. Код_разносчика) ORDER BY Π–ΡƒΡ€Π½Π°Π». Π”Π°Ρ‚Π°';

Form1. ADOQuery1. SQL. Clear;

Form1. ADOQuery1. SQL. Add (st);

Form1. ADOQuery1. Open;

Form1. DBGrid1. Columns. Width: =0;

st: ='SELECT Π’ΠΎΠ²Π°Ρ€Ρ‹. НаимСнованиС, ДСтализация. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ FROM ДСтализация, Π’ΠΎΠ²Π°Ρ€Ρ‹ ';

st: =st+'WHERE (Π’ΠΎΠ²Π°Ρ€Ρ‹. Код_Ρ‚ΠΎΠ²Π°Ρ€Π°=ДСтализация. Π’ΠΎΠ²Π°Ρ€) AND (ДСтализация. Π–ΡƒΡ€Π½Π°Π»='+IntToStr (Form1. ADOQuery1. FieldValues ['Код_ΠΆΡƒΡ€Π½Π°Π»Π°']) +') ';

Form1. ADOQuery2. SQL. Clear;

Form1. ADOQuery2. SQL. Add (st);

Form1. ADOQuery2. Open;

Button1Click (Sender);

end;

procedure TForm8. DBGrid2DblClick (Sender: TObject);

begin

Form9. ShowModal;

end;

end.

unit Unit9;

interface

uses

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

Dialogs, StdCtrls, ComCtrls;

type

TForm9 = class (TForm)

Edit1: TEdit;

UpDown1: TUpDown;

Button1: TButton;

Button2: TButton;

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form9: TForm9;

implementation

uses Unit8;

{$R *. dfm}

procedure TForm9. Button1Click (Sender: TObject);

begin

Edit1. Text: ='1';

Form9. Close;

end;

procedure TForm9. Button2Click (Sender: TObject);

var

sum: Integer;

st: String;

begin

Form8. ADOQuery2. SQL. Clear;

Form8. ADOQuery2. SQL. Add ('SELECT * FROM ДСтализация');

Form8. ADOQuery2. Open;

Form8. ADOQuery2. Insert;

Form8. ADOQuery2. FieldValues ['Π–ΡƒΡ€Π½Π°Π»']: =StrToInt (Form8. Label5. Caption);

Form8. ADOQuery2. FieldValues ['Π’ΠΎΠ²Π°Ρ€']: =Form8. ADOQuery1. FieldValues ['Код_Ρ‚ΠΎΠ²Π°Ρ€Π°'];

Form8. ADOQuery2. FieldValues ['ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ']: =StrToInt (Edit1. Text);

Form8. ADOQuery2. UpdateRecord;

Form8. ADOQuery2. Last;

Form8. ADOQuery2. First;

Form8. ADOQuery2. SQL. Clear;

st: ='SELECT ДСтализация. Код_Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ДСтализация. Π–ΡƒΡ€Π½Π°Π», Π’ΠΎΠ²Π°Ρ€Ρ‹. НаимСнованиС,';

st: =st+'ДСтализация. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ FROM ДСтализация, Π’ΠΎΠ²Π°Ρ€Ρ‹ WHERE ';

st: =st+' (Π–ΡƒΡ€Π½Π°Π»='+Form8. Label5. Caption+') AND (ДСтализация. Π’ΠΎΠ²Π°Ρ€=Π’ΠΎΠ²Π°Ρ€Ρ‹. Код_Ρ‚ΠΎΠ²Π°Ρ€Π°) ';

Form8. ADOQuery2. SQL. Add (st);

Form8. ADOQuery2. Open;

Form8. DBGrid1. Columns. Width: =0;

sum: =StrToInt (Edit1. Text) *Form8. ADOQuery1. FieldValues ['Π¦Π΅Π½Π°'];

Form8. Label4. Caption: =IntToStr (StrToInt (Form8. Label4. Caption) +sum);

Button1Click (Sender);

end;

end.

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