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

Π‘ΡƒΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² подпискС Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ событиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. Когда Π² систСмС происходит ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ записал Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» Ρ†Π΅Π½Ρƒ Π² справочникС β€” ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° автоматичСски Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ участок ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ позволяСт Π³ΠΈΠ±ΠΊΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠ΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠ΅ΠΉ с внСшними сСрвисами Π±Π΅Π· постоянного опроса систСмы.

Данная ΡΡ‚Π°Ρ‚ΡŒΡ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ рассматриваСт ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², особСнности ΠΈΡ… написания Π½Π° встроСнном языкС ΠΈ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠœΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Ρ‚Ρ€ΠΎΠ½Π΅ΠΌ вопросы ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌ использовании ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ ΠΈΠ»ΠΈ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ.

АрхитСктура событийной ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹

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

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

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ управлСния ΠΌΠ΅ΠΆΠ΄Ρƒ уровнями рСгулируСтся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ &НаБСрвСрС. Если Π²Ρ‹ Π½Π΅ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅ контСкст выполнСния явно, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’Ρ‹Π·ΠΎΠ² сСрвСрной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈΠ· клиСнтского ΠΊΠΎΠ΄Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ явного указания ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ использования асинхронных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ². ΠŸΡ€ΡΠΌΠΎΠΉ Π²Ρ‹Π·ΠΎΠ² Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° контСкста ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС выполнСния.

πŸ“Š Π‘ ΠΊΠ°ΠΊΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
Волько клиСнтскиС
Волько сСрвСрныС
Π‘ΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ
Волько Π² модулях ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

Π’ΠΈΠΏΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π² модулях ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

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

Π”Ρ€ΡƒΠ³ΠΈΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ событиСм являСтся ΠŸΠΎΡΠ»Π΅Π—Π°ΠΏΠΈΡΠΈ. Π­Ρ‚ΠΎΡ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ запускаСтся ΡƒΠΆΠ΅ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ транзакция зафиксирована, ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ физичСски сохранСны. Π•Π³ΠΎ основноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ дСйствий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° сам процСсс сохранСния, Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для дальнСйшСго workflow. НапримСр, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° увСдомлСния ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρƒ ΠΈΠ»ΠΈ созданиС связанного Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°-основания.

  • πŸ“ ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»Π΅ΠΉ, автоматичСского заполнСния Π½Π΅Π΄ΠΎΡΡ‚Π°ΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ записи ΠΏΡ€ΠΈ ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ….
  • πŸ’Ύ ΠŸΠΎΡΠ»Π΅Π—Π°ΠΏΠΈΡΠΈ β€” примСняСтся для пост-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, логирования ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ запуска Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, Π½Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹Ρ… для сохранСния.
  • πŸ—‘οΈ ΠŸΠ΅Ρ€Π΅Π΄Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ β€” позволяСт ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π°ΠΆΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ очистку связанных рСгистров ΠΏΠ΅Ρ€Π΅Π΄ Π»ΠΈΠΊΠ²ΠΈΠ΄Π°Ρ†ΠΈΠ΅ΠΉ записи.

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

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠžΡ‚ΠΊΠ°Π· Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ сохранСниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΡ€ΠΈ выявлСнии критичСских ошибок Π² Π΄Π°Π½Π½Ρ‹Ρ….

Бобытия Π² модулях Ρ„ΠΎΡ€ΠΌ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ интСрфСйсом

ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° взаимодСйствиС с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ прСдставлСниС Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ здСсь Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΡŽΡ‚ Π½Π° наТатия ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² полях Π²Π²ΠΎΠ΄Π° ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΎΠΊΠ½Π°. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ являСтся Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Ρ…ΠΎΠ΄Π° ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹, Π³Π΄Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ происходит Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ настройка видимости элСмСнтов интСрфСйса Π² зависимости ΠΎΡ‚ ΠΏΡ€Π°Π² доступа.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ. Оно срабатываСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ мСняСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°. Π§Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎΠ΅ использованиС тяТСлой Π»ΠΎΠ³ΠΈΠΊΠΈ Π² этом ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ "Ρ‚ΠΎΡ€ΠΌΠΎΠ·Π°ΠΌ" интСрфСйса. РСкомСндуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π² Π½Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π»Π΅Π³ΠΊΠΈΠ΅ вычислСния ΠΈΠ»ΠΈ установку Ρ„Π»Π°Π³ΠΎΠ², Π° слоТныС расчСты Π²Ρ‹Π½ΠΎΡΠΈΡ‚ΡŒ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅.

Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ выполнСния Π’ΠΈΠΏΠΈΡ‡Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅
ΠŸΡ€ΠΈΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΠšΠ»ΠΈΠ΅Π½Ρ‚ Настройка фокуса, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ
ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠšΠ»ΠΈΠ΅Π½Ρ‚/Π‘Π΅Ρ€Π²Π΅Ρ€ ДинамичСский расчСт, каскадноС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Π’Ρ‹Π±ΠΎΡ€Π° ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ· списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ
Команда ΠšΠ»ΠΈΠ΅Π½Ρ‚/Π‘Π΅Ρ€Π²Π΅Ρ€ Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ дСйствий ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌ Ρ„ΠΎΡ€ΠΌΡ‹

Для управлСния ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΌ интСрфСйсом Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹. Он позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΊΠ½ΠΎΠΏΠΎΠΊ, располоТСнных Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов. Π’Π°ΠΆΠ½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° для Ρ€Π°Π·Π½Ρ‹Ρ… элСмСнтов управлСния.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ИзмСнСниС структуры Ρ„ΠΎΡ€ΠΌΡ‹ (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ²) Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ всСх ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² событий, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ссылки Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ элСмСнты Π²Ρ‹Π·ΠΎΠ²ΡƒΡ‚ ошибки ΠΏΡ€ΠΈ запускС.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° модуля Ρ„ΠΎΡ€ΠΌΡ‹

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

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠ²

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

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠžΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ асинхронного взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ подсистСмами. Π­Ρ‚ΠΎ особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΌΠΈ заданиями ΠΈΠ»ΠΈ внСшними соСдинСниями, ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ становится извСстным Π½Π΅ сразу. БистСма ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠΉ decouples (развязываСт) ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ систСмы, ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ ΠΈΡ… Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ.

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

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π² ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°Ρ…

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

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° ΠΈ синтаксис

Рассмотрим Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° события ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° "РСализацияВоваровУслуг". Π’ этом ΠΊΠΎΠ΄Π΅ ΠΌΡ‹ провСряСм, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π»ΠΈ ΠΏΠΎΠ»Π΅ "ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚", ΠΈ автоматичСски рассчитываСм сумму Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ количСства Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ².


&НаБСрвСрС

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ(ΠžΡ‚ΠΊΠ°Π·, РСТимЗаписи, Π Π΅ΠΆΠΈΠΌΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ)

Если ΠŸΡƒΡΡ‚Π°ΡΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅(ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚) Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("НСобходимо Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°!");

ΠžΡ‚ΠΊΠ°Π· = Π˜ΡΡ‚ΠΈΠ½Π°;

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

// РасчСт ΠΈΡ‚ΠΎΠ³ΠΎΠ²

ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = 0;

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€Ρ‹ Из ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° +

(Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ * Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€Ρ‹.Π¦Π΅Π½Π°);

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

ΠšΠΎΠ½Π΅Ρ†ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

Π’ клиСнтском ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ часто трСбуСтся динамичСски ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ поля. НапримСр, ΠΏΠΎΠ»Π΅ "ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ" ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ событиС ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ поля "Π’ΠΈΠ΄ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ".


&ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π’ΠΈΠ΄ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚)

Если ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΈΠ΄ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ = ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.Π’ΠΈΠ΄Ρ‹ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π’ΠΎΠ³Π΄Π°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹.ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ.Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ = Π˜ΡΡ‚ΠΈΠ½Π°;

Π˜Π½Π°Ρ‡Π΅

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹.ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ.Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ = Π›ΠΎΠΆΡŒ;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

ΠšΠΎΠ½Π΅Ρ†ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

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

πŸ’‘

ВсСгда провСряйтС Ρ‚ΠΈΠΏ значСния ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок прСобразования Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с пустыми ссылками.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΈ частыС ошибки Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

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

Другая критичСская ошибка β€” Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ запросов ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ росту Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. ВсС Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ вынСсСны Π½Π° сСрвСр ΠΈ, ΠΏΠΎ возмоТности, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ±Ρ‰ΠΈΠΌ запросом Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° Ρ†ΠΈΠΊΠ»Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строк.

  • 🚫 Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° интСрфСйса β€” Π½Π΅ выполняйтС Π΄ΠΎΠ»Π³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² клиСнтских ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Ρ… событий наТатия ΠΊΠ½ΠΎΠΏΠΎΠΊ.
  • πŸ”„ РСкурсия β€” слСдитС Π·Π° Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ°ΠΌΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ() Π²Π½ΡƒΡ‚Ρ€ΠΈ событий записи ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.
  • πŸ“‰ N+1 ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” ΠΈΠ·Π±Π΅Π³Π°ΠΉΡ‚Π΅ выполнСния запроса Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ строкам Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части.

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

Как ΠΎΡ‚Π»Π°Π΄ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΡƒ останова (F9) нСпосрСдствСнно Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. ЗапуститС ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ (F5) Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ прСдприятия ΠΈ воспроизвСдитС дСйствиС, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ событиС.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)

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

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

МоТно Π»ΠΈ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ?

Π”Π°, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Ρ‹ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, ΠΏΡ€ΠΈ соблюдСнии контСкста выполнСния (ΠΊΠ»ΠΈΠ΅Π½Ρ‚/сСрвСр).

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ срабатываСт?

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ контСкста (&ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅/&НаБСрвСрС), ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ имя ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Ρ‚ΠΎΡ‡Π½ΠΎ совпадаСт с ΠΈΠΌΠ΅Π½Π΅ΠΌ события Π² ΠΏΠ°Π»ΠΈΡ‚Ρ€Π΅ свойств, ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π½Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π»ΠΈ подписка Π½Π° событиС Π² свойствах ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события?

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