ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² срСдС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ отличаСтся ΠΎΡ‚ создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° C# ΠΈΠ»ΠΈ Python. Π—Π΄Π΅ΡΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ ΠΏΠΈΡˆΠ΅Ρ‚ вСсь ΠΊΠΎΠ΄ с нуля для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ экрана, Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с ΡƒΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, надСляя ΠΈΡ… Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ повСдСния. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ инструмСнтом для этого слуТит встроСнный язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ компилируСтся Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ ΠΈ выполняСтся Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ сСрвСрС. ПониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚ΠΎΠΌ для создания ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ.

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

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

Π’ΠΈΠΏΡ‹ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ контСкст ΠΈΡ… выполнСния

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Π³Π΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ваша Π»ΠΎΠ³ΠΈΠΊΠ°. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3 ТСстко раздСляСт срСду выполнСния Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ (интСрфСйс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ) ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ (Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…). ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкам Ρ‚ΠΈΠΏΠ° "Π’Ρ‹Π·ΠΎΠ² сСрвСра ΠΈΠ· ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π±Π΅Π· ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΈ &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅" ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ Ρ…ΡƒΠΆΠ΅, ΠΊ критичСскому падСнию ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠ·-Π·Π° Π»ΠΈΡˆΠ½ΠΈΡ… сСтСвых Π²Ρ‹Π·ΠΎΠ²ΠΎΠ².

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ свой Π½Π°Π±ΠΎΡ€ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. НапримСр, Ρƒ Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° Π΅ΡΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°. ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° выполняСтся Π½Π° сторонС сСрвСра (Π·Π° Ρ€Π΅Π΄ΠΊΠΈΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ событий Ρ„ΠΎΡ€ΠΌΡ‹) ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² памяти ΠΏΠ΅Ρ€Π΅Π΄ записью. ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° отрисовку элСмСнтов, Ρ€Π΅Π°ΠΊΡ†ΠΈΡŽ Π½Π° наТатия ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ Π²Π²ΠΎΠ΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ отвСтствСнности здСсь критичСски Π²Π°ΠΆΠ½ΠΎ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚ΡΠΆΠ΅Π»ΡƒΡŽ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… нСпосрСдствСнно Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ зависанию интСрфСйса. ВсСгда выноситС Ρ€Π°Π±ΠΎΡ‚Ρƒ с запросами Π² сСрвСрный контСкст.

БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ понятиС ΠžΠ±Ρ‰Π΅Π³ΠΎ модуля. Π­Ρ‚ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ привязан ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Π° слуТит Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для всСй ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. ΠŸΡ€ΠΈ создании ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΠΈ Π² свойствах: "Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ", "Π‘Π΅Ρ€Π²Π΅Ρ€", "ΠšΠ»ΠΈΠ΅Π½Ρ‚", "Π’Π½Π΅ΡˆΠ½Π΅Π΅ соСдинСниС". ΠžΡ‚ этих настроСк зависит, смоТСт Π»ΠΈ ваш ΠΊΠΎΠ΄ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½ ΠΈΠ· Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ внСшнСго прилоТСния Ρ‡Π΅Ρ€Π΅Π· ODBC.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ прСфиксы Π² ΠΈΠΌΠ΅Π½Π°Ρ… ΠΎΠ±Ρ‰ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "ΠžΠ±Ρ‰ΠΈΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ.Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹Π΅Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹" ΠΈΠ»ΠΈ "ΠžΠ±Ρ‰ΠΈΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ.ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉΠŸΠΎΠΌΠΎΡ‰Π½ΠΈΠΊ"), Ρ‡Ρ‚ΠΎΠ±Ρ‹ сразу ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ контСкст ΠΈΡ… исполнСния ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° модуля ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ основныС события

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

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

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

Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ НазначСниС
ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ Π‘Π΅Ρ€Π²Π΅Ρ€ Установка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта
ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ Π‘Π΅Ρ€Π²Π΅Ρ€ ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ коррСктности Π΄Π°Π½Π½Ρ‹Ρ…, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° записи ΠΏΡ€ΠΈ ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…
ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π‘Π΅Ρ€Π²Π΅Ρ€ Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ рСгистрам (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²)
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ Π‘Π΅Ρ€Π²Π΅Ρ€ Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° послС стандартного провСдСния

Π’Π½ΡƒΡ‚Ρ€ΠΈ этих ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠžΠ±ΡŠΠ΅ΠΊΡ‚. Π­Ρ‚ΠΎ ссылка Π½Π° сам Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈΠ»ΠΈ элСмСнт справочника, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обрабатываСтся Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Π³ΠΎ свойства, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. НапримСр, присвоСниС значСния Π΄Π°Ρ‚Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° выглядит ΠΊΠ°ΠΊ ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π”Π°Ρ‚Π° = ВСкущаяДата();. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ измСнСния Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ становятся постоянными Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ() ΠΈΠ»ΠΈ провСдСния.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° модуля ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 1

Π Π°Π±ΠΎΡ‚Π° с ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ клиСнтской Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ

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

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Ρ‡Ρ‚ΠΎ данная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ мСстС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для всСх ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² наТатия ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π° ΠΈ событий открытия Ρ„ΠΎΡ€ΠΌΡ‹. Если Π²Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈΠ· клиСнтской Π±Π΅Π· ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΈ &НаБСрвСрС Ρƒ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, систСма выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ компиляции.

Частая Π·Π°Π΄Π°Ρ‡Π° β€” динамичСскоС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ видимости элСмСнтов. НапримСр, ΠΏΠΎΠ»Π΅ "ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ" Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ доступно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли установлСн Ρ„Π»Π°Π³ "ΠžΡΠΎΠ±Ρ‹Π΅ условия". Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ. Π’ Π½Π΅ΠΌ Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт собой ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹. Код ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ: Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹.ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ.Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ = ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠžΡΠΎΠ±Ρ‹Π΅Π£ΡΠ»ΠΎΠ²ΠΈΡ;.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ 1Π‘ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… совмСстимости. ВсСгда провСряйтС Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊ вашСй вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π²Π°ΠΆΠ½Ρ‹ΠΉ аспСкт β€” Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ мСста ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Ρ‚ΡƒΠ΄Π° Π΄Π°Π½Π½Ρ‹Π΅. Они доступны Π² событии ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Π­Ρ‚ΠΎ стандартный ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ контСкста, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ID ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°, ΠΈΠ· списка Π² ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΡƒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ?

Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ структуру ΠΈΠ»ΠΈ массив, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ кладСтся Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Π€ΠΎΡ€ΠΌΠ°.ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒΠœΠΎΠ΄Π°Π»ΡŒΠ½ΠΎ(ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹). Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΠΎΡ€ΠΌΡ‹ эти Π΄Π°Π½Π½Ρ‹Π΅ доступны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° сСрвСрС ΠΏΡ€ΠΈ создании.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ компиляции ΠΈ мСТконтСкстноС взаимодСйствиС

Бамая слоТная Ρ‡Π°ΡΡ‚ΡŒ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² Π² 1Π‘ β€” это ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ использованиС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅, &НаБСрвСрС, &ΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅Π‘Π΅Π·ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π° ΠΈ &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅ΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅Π‘Π΅Π·ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π°. НСпониманиС ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ просто Π½Π΅ компилируСтся ΠΈΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° ставится ΠΏΠ΅Ρ€Π΅Π΄ объявлСниСм ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ опрСдСляСт, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ сторонС ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ.

Если ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π° ΠΊΠ°ΠΊ &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅, ΠΎΠ½Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ доступа ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. Если ΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° &НаБСрвСрС, ΠΎΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ интСрфСйсом (ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠΊΠ½Π° сообщСний, ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΎΠΊ). Для связи ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π²Ρ‹Π·ΠΎΠ²Π°. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°Ρ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ, просто ΡƒΠΊΠ°Π·Π°Π² Π΅Ρ‘ имя, Π½ΠΎ сСрвСрная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π±Π΅Π· ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΡƒΡ…ΠΈΡ‰Ρ€Π΅Π½ΠΈΠΉ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ описания оповСщСния).

πŸ“Š Π‘ ΠΊΠ°ΠΊΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ Ρƒ вас Ρ‡Π°Ρ‰Π΅ всСго Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ошибки?
&ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅
&НаБСрвСрС
&ΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅Π‘Π΅Π·ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π°
Π― Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° &ΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅Π‘Π΅Π·ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π° являСтся ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ. Она Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Ρ‡Ρ‚ΠΎ функция Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ контСкст Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π΅ обращаСтся ΠΊ ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ»ΠΈ Π­Ρ‚ΠΎΡ‚ΠžΠ±ΡŠΠ΅ΠΊΡ‚). Π’Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ быстрСС ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π² Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ спСктрС Π·Π°Π΄Π°Ρ‡, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ вычисляСмыС поля Π² запросах (с ограничСниями).

Рассмотрим Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ сцСнарий: ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠ°Π» ΠΊΠ½ΠΎΠΏΠΊΡƒ "Π Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ скидку". ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ наТатия (&ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅) собираСт Π΄Π°Π½Π½Ρ‹Π΅, Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ расчСта (&НаБСрвСрС), ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΅Π³ΠΎ Π² ΠΏΠΎΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹. ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ этой Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ запрос ΠΊ Π±Π°Π·Π΅ прямо Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ наТатия, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° тСхничСски.

πŸ’‘

Π—ΠΎΠ»ΠΎΡ‚ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ: вСсь ΠΊΠΎΠ΄, Π²Π»ΠΈΡΡŽΡ‰ΠΈΠΉ Π½Π° интСрфСйс β€” Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, вСсь ΠΊΠΎΠ΄, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ β€” Π½Π° сСрвСрС. ΠœΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ количСство ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ контСкстами.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΈ поиск ошибок Π² ΠΊΠΎΠ΄Π΅

НаписаниС ΠΊΠΎΠ΄Π° β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π΄Π΅Π»Π°. Вторая ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° β€” это поиск ΠΏΡ€ΠΈΡ‡ΠΈΠ½, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π·Π°Π΄ΡƒΠΌΠ°Π½ΠΎ. Π’ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ 1Π‘ встроСн ΠΌΠΎΡ‰Π½Ρ‹ΠΉ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠ΄ построчно. Запуск ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ осущСствляСтся клавишСй F10 (шаг с Π·Π°Ρ…ΠΎΠ΄ΠΎΠΌ) ΠΈΠ»ΠΈ Shift+F10 (шаг Π±Π΅Π· Π·Π°Ρ…ΠΎΠ΄Π°).

ΠŸΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ Π²Π°ΠΆΠ½ΠΎ ΡƒΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΠΊΠ½Π°ΠΌΠΈ "Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅" ΠΈ "ВыраТСния". Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² памяти. ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΡΡ‚ΡŒ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΈΠ· клиСнтского контСкста Π² сСрвСрный. ΠžΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ автоматичСски ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π²ΠΈΠ΄, показывая ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ контСкста. Если Π²Ρ‹ потСряли контСкст, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅.

Для Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ встроСнный ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π·Π°ΠΌΠ΅Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (Π—Π°ΠΌΠ΅Ρ€ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ). Он позволяСт Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ "ΡƒΠ·ΠΊΠΈΠ΅ мСста" Π² ΠΊΠΎΠ΄Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, цикличСскиС обращСния ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ запросы. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π·Π°ΠΌΠ΅Ρ€Π° выводятся Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π² Π²ΠΈΠ΄Π΅ Π΄Π΅Ρ€Π΅Π²Π° Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

  • 🐞 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΡƒ останова (Breakpoint) Π½Π° критичСских строках ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚.
  • πŸ“Š АнализируйтС тСкст запроса Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅, наТимая ΠΊΠ½ΠΎΠΏΠΊΡƒ "ВСкст запроса", Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ SQL-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, отправляСмый Π½Π° Π‘Π£Π‘Π”.
  • πŸ“ Π’Π΅Π΄ΠΈΡ‚Π΅ ΠΆΡƒΡ€Π½Π°Π» рСгистрации для отслСТивания ошибок Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π±Π°Π·Π΅, Π³Π΄Π΅ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

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

Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΈ оптимизация ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ

Код Π² 1Π‘ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ, Π½ΠΎ ΠΈ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ эффСктивным. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. НапримСр, Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ‘ΡΡ‹Π»ΠΊΡƒ() Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ большой Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π±Ρ‹ΡΡ‚Ρ€ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π² процСсс, длящийся minutes. ВсСгда ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½Π°Π±ΠΎΡ€Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… максимально эффСктивно.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ для вынСсСния ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰Π΅ΠΉΡΡ Π»ΠΎΠ³ΠΈΠΊΠΈ. Если Π²Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² пяти Ρ€Π°Π·Π½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ…, вынСситС Π΅Π³ΠΎ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля. Π­Ρ‚ΠΎ упростит ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ: ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΏΡ€Π°Π²ΠΈΠ» ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ использования Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² ΠΎΠ±Ρ‰ΠΈΡ… модулях с ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠΌ "Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ". Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ нСпрСдсказуСмому повСдСнию Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ….

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

πŸ’‘

ΠŸΠ΅Ρ€Π΅Π΄ сдачСй ΠΊΠΎΠ΄Π° Π² Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ прогоняйтС Π΅Π³ΠΎ Ρ‡Π΅Ρ€Π΅Π· Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Она автоматичСски Π½Π°ΠΉΠ΄Π΅Ρ‚ мноТСство ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ошибок ΠΈ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠΉ стандартов.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°?

ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ экзСмпляром (ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π½Π°ΠΊΠ»Π°Π΄Π½ΠΎΠΉ). ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с классом ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ†Π΅Π»ΠΎΠΌ (со всСми Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ сразу), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для массовой записи ΠΈΠ»ΠΈ слоТной Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² памяти.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² модулях 1Π‘?

Π”Π°, Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ DLL Ρ‡Π΅Ρ€Π΅Π· COM-соСдинСниС, Π½ΠΎ это Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ особых ΠΏΡ€Π°Π² доступа ΠΈ настройки бСзопасности, Π° Ρ‚Π°ΠΊΠΆΠ΅ услоТняСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Как Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ модуля ΠΎΡ‚ измСнСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ?

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ контСкст выполнСния ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ Π²Π°ΠΆΠ΅Π½?

ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ опрСдСляСт, ΠΊΠ°ΠΊΠΈΠ΅ рСсурсы доступны ΠΊΠΎΠ΄Ρƒ: интСрфСйс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (ΠΊΠ»ΠΈΠ΅Π½Ρ‚) ΠΈΠ»ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… (сСрвСр). ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Π½ΠΈΡ† контСкста Π±Π΅Π· ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ошибки выполнСния.