Π Π°Π±ΠΎΡ‚Π° с пСрСчислСниями Π² 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ β€” ΠΎΠ΄Π½Π° ΠΈΠ· самых частых Π·Π°Π΄Π°Ρ‡, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ администраторы. Но Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° стандартный список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ пСрСчислСния содСрТит дСсятки ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ сотни элСмСнтов, Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСсколько? НСконтролируСмый Π²Ρ‹Π±ΠΎΡ€ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ замСдляСт Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π½ΠΎ ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ риск ошибок. НапримСр, Π² справочникС "ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹" ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Ρ‚ΠΈΠΏΠ° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈΠ· пСрСчислСния Π’ΠΈΠ΄Ρ‹Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ для Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹.

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

1. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ пСрСчислСний Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅

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

Π’ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ пСрСчислСниС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ справочника ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°). Π’ свойствах Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Π”ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΠΈ ΠΈΠ»ΠΈ Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ΠžΡ‚Π±ΠΎΡ€Π° β€” Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ статичСскоС условиС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

  • πŸ”Ή Π’ΠΈΠ΄Ρ‹Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².Π‘Ρ‡Π΅Ρ‚Π€Π°ΠΊΡ‚ΡƒΡ€Π° Π’ (Π’ΠΈΠ΄Ρ‹Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².Π‘Ρ‡Π΅Ρ‚Π€Π°ΠΊΡ‚ΡƒΡ€Π°, Π’ΠΈΠ΄Ρ‹Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².Акт) β€” оставит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ эти Π΄Π²Π° значСния
  • πŸ”Ή НЕ БтатусДокумСнта.Π£Π΄Π°Π»Π΅Π½ β€” ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ статусы
  • πŸ”Ή Π’ΠΈΠΏΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π° = ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.Π’ΠΈΠΏΡ‹ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ΠΎΠ².ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊ β€” ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅Π»Π΅Π²Π°Π½Ρ‚Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ примСняСтся ΠΊΠΎ всСму ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ β€” Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ это пСрСчислСниС. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π³ΠΈΠ±ΠΊΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² зависимости ΠΎΡ‚ контСкста (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π°Π·Π½Ρ‹Ρ… Ρ€ΠΎΠ»Π΅ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ), этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚.

πŸ’‘

Если пСрСчислСниС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСстах с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ограничСниями, создайтС копию пСрСчислСния Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π·Π°Π΄Π°Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ случая.

2. ДинамичСская Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹

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

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ "Π—Π°ΠΊΠ°Π·ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Ρ" с Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠΌ Π’ΠΈΠΏΠžΠΏΠ»Π°Ρ‚Ρ‹ (пСрСчислСниС). НуТно ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΎΠΏΠ»Π°Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ доступны для Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ покупатСля. РСшСниС:

  1. Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° создаСм ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ для Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° "ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ":
ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚)

Если Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ) Π’ΠΎΠ³Π΄Π°

Π’ΠΈΠΏΡ‹ΠžΠΏΠ»Π°Ρ‚Ρ‹ = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°();

Π’ΠΈΠΏΡ‹ΠžΠΏΠ»Π°Ρ‚Ρ‹.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("НаличныС", Π˜ΡΡ‚ΠΈΠ½Π°);

Π’ΠΈΠΏΡ‹ΠžΠΏΠ»Π°Ρ‚Ρ‹.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("БСзналичныйРасчСт", ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ.Π”ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°.Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π‘Π΅Π·Π½Π°Π»);

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΈΠΏΠžΠΏΠ»Π°Ρ‚Ρ‹.БписокВыбора.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ();

Для КаТдого Π’Π΅ΠΊΠ’ΠΈΠΏ Из ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.Π’ΠΈΠΏΡ‹ΠžΠΏΠ»Π°Ρ‚Ρ‹ Π¦ΠΈΠΊΠ»

Если Π’ΠΈΠΏΡ‹ΠžΠΏΠ»Π°Ρ‚Ρ‹.Бвойство(Π’Π΅ΠΊΠ’ΠΈΠΏ.Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€) Π’ΠΎΠ³Π΄Π°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΈΠΏΠžΠΏΠ»Π°Ρ‚Ρ‹.БписокВыбора.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π’Π΅ΠΊΠ’ΠΈΠΏ);

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

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

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

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

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°:

  • πŸ”§ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ БписокВыбора.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() ΠΈ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() для динамичСского формирования списка
  • πŸ”§ Π›ΠΎΠ³ΠΈΠΊΡƒ доступности Ρ…Ρ€Π°Π½ΠΈΠΌ Π² структурС для удобства управлСния
  • πŸ”§ ОбновлСниС списка происходит ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ зависимого Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° ("ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ")
πŸ“Š Какой способ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π°
ДинамичСская Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π² Ρ„ΠΎΡ€ΠΌΠ΅
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅
Π‘Π²ΠΎΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹

3. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий

Для слоТных сцСнариСв, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ нСсколько условий ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² систСмы, примСняСтся ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π΄Π°Π΅Ρ‚ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ deeper понимания Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ ΠΈ коллСкциями Π² 1Π‘.

Випичная Π·Π°Π΄Π°Ρ‡Π°: Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ "РСализацияВоваров" Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ пСрСчислСния Π’ΠΈΠΏΠ¦Π΅Π½Ρ‹ Π² зависимости ΠΎΡ‚:

  • πŸ“Œ Π’Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°
  • πŸ“Œ Π”Π°Ρ‚Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°
  • πŸ“Œ Наличия ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… соглашСний

РСшСниС Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события ΠŸΡ€ΠΈΠΠΊΡ‚ΠΈΠ²ΠΈΠ·Π°Ρ†ΠΈΠΈΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒΠ’ΠΎΠ²Π°Ρ€Ρ‹ΠŸΡ€ΠΈΠΠΊΡ‚ΠΈΠ²ΠΈΠ·Π°Ρ†ΠΈΠΈΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°)

ВСкущаяБтрока = Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹.Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒΠ’ΠΎΠ²Π°Ρ€Ρ‹.Π’Π΅ΠΊΡƒΡ‰ΠΈΠ΅Π”Π°Π½Π½Ρ‹Π΅;

ДоступныСВипыЦСн = Новый БписокЗначСний();

Запрос = Новый Запрос;

Запрос.ВСкст =

"ВЫБРАВЬ РАЗРЕШЕННЫЕ ВИПЫ ЦЕН

|Π˜Π— РСгистрБвСдСний.Π‘ΠΎΠ³Π»Π°ΡˆΠ΅Π½ΠΈΡΠžΠ¦Π΅Π½Π°Ρ…

|Π“Π”Π• ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ = &ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚

| И ДатаНачала <= &Π”Π°Ρ‚Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°

| И Π”Π°Ρ‚Π°ΠžΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΡ >= &Π”Π°Ρ‚Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°";

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚", ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚);

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("Π”Π°Ρ‚Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°", ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π”Π°Ρ‚Π°);

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Запрос.Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ();

Π’Ρ‹Π±ΠΎΡ€ΠΊΠ° = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ();

Пока Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ() Π¦ΠΈΠΊΠ»

ДоступныСВипыЦСн.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π’ΠΈΠΏΠ¦Π΅Π½Ρ‹);

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

Если ДоступныСВипыЦСн.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() = 0 Π’ΠΎΠ³Π΄Π°

ДоступныСВипыЦСн.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.Π’ΠΈΠΏΡ‹Π¦Π΅Π½.Розничная);

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

ВСкущаяБтрока.Π’ΠΈΠΏΠ¦Π΅Π½Ρ‹.БписокВыбора = ДоступныСВипыЦСн;

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

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

4. ИспользованиС ΠΎΡ‚Π±ΠΎΡ€Π° Π² запросах для динамичСских списков

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π΅ "Анализ ΠΏΡ€ΠΎΠ΄Π°ΠΆ" ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Π²ΠΈΠ΄Ρ‹ Π½omenclature, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ относятся ΠΊ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ "Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½ΠΈΠΊΠ°". ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ВидыНомСнклатуры содСрТит дСсятки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π½ΠΎ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅Π»Π΅Π²Π°Π½Ρ‚Π½Ρ‹Π΅:

ВЫБРАВЬ

НомСнклатура.НаимСнованиС,

НомСнклатура.ВидНомСнклатуры КАК Π’ΠΈΠ΄

Π˜Π—

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура КАК НомСнклатура

Π“Π”Π•

НомСнклатура.ВидНомСнклатуры Π’ (&БписокВидов)

Π£ΠŸΠžΠ Π―Π”ΠžΠ§Π˜Π’Π¬ ПО

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

Π“Π΄Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ &БписокВидов формируСтся Π·Π°Ρ€Π°Π½Π΅Π΅:

БписокВидов = Новый Массив();

БписокВидов.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.ВидыНомСнклатуры.Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½ΠΈΠΊΠ°);

БписокВидов.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.ВидыНомСнклатуры.БытоваяВСхника);

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("БписокВидов", БписокВидов);

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π°:

Плюс ΠœΠΈΠ½ΡƒΡ
⚑ Высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ (Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π‘Π£Π‘Π”) πŸ”§ Π’Ρ€Π΅Π±ΡƒΠ΅Ρ‚ измСнСния ΠΊΠΎΠ΄Π° ΠΎΡ‚Ρ‡Π΅Ρ‚Π°/ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
πŸ”„ Π›Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ для слоТных условий πŸ“Š НС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ
πŸ›  ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ полнотСкстовый поиск ΠΈ индСксы πŸ”’ ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ синтаксисом языка запросов
Как ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ запрос с Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡŽ?

Для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… (100К+ записСй) Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² запрос условиС ΠΏΠΎ индСксированному полю вмСстС с Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠΌ ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡŽ. НапримСр: Π“Π”Π• НомСнклатура.ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ°Π£Π΄Π°Π»Π΅Π½ΠΈΡ = Π›ΠžΠ–Π¬ И НомСнклатура.ВидНомСнклатуры Π’ (&БписокВидов)

Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π‘Π£Π‘Π” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ индСкс ΠΏΠΎ полю ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ°Π£Π΄Π°Π»Π΅Π½ΠΈΡ для ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡŽ.

5. ΠšΠ°ΡΡ‚ΠΎΠΌΠ½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ‹Π±ΠΎΡ€Π° с ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ

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

Рассмотрим Π·Π°Π΄Π°Ρ‡Ρƒ: Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ "Π—Π°ΡΠ²ΠΊΠ°ΠΠ°ΠžΠΏΠ»Π°Ρ‚Ρƒ" Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ· пСрСчислСния, Π½ΠΎ доступныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ зависят ΠΎΡ‚:

  • 🏒 ΠŸΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ сотрудника
  • πŸ’° Π’Π°Π»ΡŽΡ‚Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°
  • πŸ“… Π’Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄Π°Ρ‚Ρ‹ (сСзонныС ограничСния)

Алгоритм Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ:

  1. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ с Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠΌ Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉΠ’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (Ρ‚ΠΈΠΏ β€” нашС пСрСчислСниС)
  2. ДобавляСм элСмСнты управлСния для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² (Π²Ρ‹Π±ΠΎΡ€ подраздСлСния, Π²Π°Π»ΡŽΡ‚Ρ‹ ΠΈ Ρ‚.Π΄.)
  3. Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ ΠŸΡ€ΠΈΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния пСрСчислСния
  4. Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ‘ΠΏΠΈΡΠΎΠΊ(), которая Π±ΡƒΠ΄Π΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ значСния ΠΏΠΎ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°ΠΌ
  5. ДобавляСм ΠΊΠ½ΠΎΠΏΠΊΡƒ "Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ" с Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΎΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Ρ‡Π΅Ρ€Π΅Π· Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π’ΠΎΠ·Π²Ρ€Π°Ρ‚Π°

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° для ΠΊΠ½ΠΎΠΏΠΊΠΈ "Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ":

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠšΠΎΠΌΠ°Π½Π΄Π½Π°ΡΠŸΠ°Π½Π΅Π»ΡŒΠ’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ(Кнопка)

Если НЕ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉΠ’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ) Π’ΠΎΠ³Π΄Π°

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅("НС Π²Ρ‹Π±Ρ€Π°Π½ Ρ‚ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ!", 60);

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

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

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π’ΠΎΠ·Π²Ρ€Π°Ρ‚Π° = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°();

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π’ΠΎΠ·Π²Ρ€Π°Ρ‚Π°.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("Π’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ", Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉΠ’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ);

Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ(Π˜ΡΡ‚ΠΈΠ½Π°);

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

Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ эту Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΠ· основного Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΠΠ°Ρ‡Π°Π»ΠΎΠ’Ρ‹Π±ΠΎΡ€Π°(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚, Π”Π°Π½Π½Ρ‹Π΅Π’Ρ‹Π±ΠΎΡ€Π°, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°)

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° = Π›ΠΎΠΆΡŒ;

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹Π€ΠΎΡ€ΠΌΡ‹ = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°();

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("Π’Π΅ΠΊΡƒΡ‰Π΅Π΅ΠŸΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅", ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠŸΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅);

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("Π’Π°Π»ΡŽΡ‚Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°", ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’Π°Π»ΡŽΡ‚Π°);

ΠžΡ‚Π²Π΅Ρ‚ = ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒΠ€ΠΎΡ€ΠΌΡƒΠœΠΎΠ΄Π°Π»ΡŒΠ½ΠΎ("Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.Π€ΠΎΡ€ΠΌΡ‹.Π’Ρ‹Π±ΠΎΡ€Π’ΠΈΠΏΠ°ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ", ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹Π€ΠΎΡ€ΠΌΡ‹);

Если ΠžΡ‚Π²Π΅Ρ‚ <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ = ΠžΡ‚Π²Π΅Ρ‚.Π’ΠΈΠΏΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ;

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

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

πŸ’‘

ΠšΠ°ΡΡ‚ΠΎΠΌΠ½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠΏΡ€Π°Π²Π΄Π°Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для слоТных сцСнариСв с 3+ зависимыми ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. Для простых Π·Π°Π΄Π°Ρ‡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ стандартныС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ β€” ΠΎΠ½ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ мСньшС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ быстрСС.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ ΠΊΠ°ΠΊ ΠΈΡ… ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ

ΠŸΡ€ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΈ списков Π²Ρ‹Π±ΠΎΡ€Π° пСрСчислСний Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ΠΎΠ΄Π½ΠΈΠΌΠΈ ΠΈ Ρ‚Π΅ΠΌΠΈ ΠΆΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ. Π’ΠΎΡ‚ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнныС ошибки ΠΈ способы ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ:

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡŽ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… с большим количСством строк (1000+), ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ автоматичСскоС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ списков Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ΅. Π˜Π½Π°Ρ‡Π΅ интСрфСйс Π±ΡƒΠ΄Π΅Ρ‚ "Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ" ΠΈΠ·-Π·Π° постоянных пСрСрисовок.
  • 🚫 ΠŸΡƒΡΡ‚ΠΎΠΉ список Π²Ρ‹Π±ΠΎΡ€Π°: Π—Π°Π±Ρ‹Π»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ случай, ΠΊΠΎΠ³Π΄Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 0 Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. ВсСгда добавляйтС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ сообщСниС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ.
  • 🚫 Π£Ρ‚Π΅Ρ‡ΠΊΠΈ памяти: ΠŸΡ€ΠΈ частом ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ списков Π² Ρ†ΠΈΠΊΠ»Π°Ρ… Π½Π΅ ΠΎΡ‡ΠΈΡ‰Π°ΡŽΡ‚ΡΡ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() для БписокЗначСний ΠΈ Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠΈΡ‚ΡŒΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹() для запросов.
  • 🚫 НСсовпадСниС Ρ‚ΠΈΠΏΠΎΠ²: ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² список Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚Π΅ Π½Π΅ само Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ пСрСчислСния, Π° Π΅Π³ΠΎ прСдставлСниС (строку). ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.Π˜ΠΌΡΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.
  • 🚫 Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€Π°Π² доступа: Π€ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚Π΅ список Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π°Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ВсСгда ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ логичСскиС ограничСния с ΠŸΡ€Π°Π²Π°Π”ΠΎΡΡ‚ΡƒΠΏΠ°.ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°().

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° распространСнная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” нСкоррСктная Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Если Π²Ρ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚Π΅ список Π²Ρ‹Π±ΠΎΡ€Π° Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π»ΠΎΠ³ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΏΡ€ΠΈ:

  • πŸ“‹ Массовом ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΠ’Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅Π‘Ρ‚Ρ€ΠΎΠΊΠΈ())
  • πŸ“‹ ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ строк (ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ())
  • πŸ“‹ Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡΠ‘Π²ΠΎΠΉΡΡ‚Π²())

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Ρ‚Π°ΠΊΠΈΡ… сцСнариСв ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠŸΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉΠ Π΅ΠΆΠΈΠΌ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ с Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ событий Ρ„ΠΎΡ€ΠΌΡ‹.

FAQ: ЧастыС вопросы ΠΏΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡŽ пСрСчислСний

МоТно Π»ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ список Π²Ρ‹Π±ΠΎΡ€Π° пСрСчислСния Π±Π΅Π· программирования?

Π”Π°, для статичСских ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ свойство ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Π”ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΠΈ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ написания ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° Π½Π°Π±ΠΎΡ€ доступных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ фиксирован ΠΈ Π½Π΅ зависит ΠΎΡ‚ контСкста.

Для динамичСских ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ (ΠΊΠΎΠ³Π΄Π° список мСняСтся Π² зависимости ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…) ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ послС ограничСния списка Π²Ρ‹Π±ΠΎΡ€Π° староС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ исчСзаСт ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹?

Π­Ρ‚ΠΎ происходит ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ 1Π‘ автоматичСски сбрасываСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°, Ссли ΠΎΠ½ΠΎ Π½Π΅ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ список Π²Ρ‹Π±ΠΎΡ€Π°. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…:

  1. Π‘Π½Π°Ρ‡Π°Π»Π° сохранитС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ
  2. ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ список Π²Ρ‹Π±ΠΎΡ€Π°
  3. Π’Π΅Ρ€Π½ΠΈΡ‚Π΅ сохранСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ссли ΠΎΠ½ΠΎ допустимо ΠΏΠΎ Π½ΠΎΠ²Ρ‹ΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°:

Π’Π΅ΠΊΡƒΡ‰Π΅Π΅Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΈΠΏΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°;

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ‘ΠΏΠΈΡΠΎΠΊΠ’Ρ‹Π±ΠΎΡ€Π°(); // Π’Π°ΡˆΠ° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ

Если БписокВыбора.Найти(Π’Π΅ΠΊΡƒΡ‰Π΅Π΅Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΈΠΏΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = Π’Π΅ΠΊΡƒΡ‰Π΅Π΅Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅;

Π˜Π½Π°Ρ‡Π΅

ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΈΠΏΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = БписокВыбора[0]; // Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

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

Как ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ список Π²Ρ‹Π±ΠΎΡ€Π° Π² мобильном ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ 1Π‘?

Π’ мобильном ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ограничСния списков Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ дСсктопной вСрсии, Π½ΠΎ с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ особСнностями:

  • πŸ“± Для динамичСской Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ событиС ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ β€” ΠΎΠ½ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ обрабатываСтся Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах
  • πŸ“± Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ слоТных Ρ„ΠΎΡ€ΠΌ Π²Ρ‹Π±ΠΎΡ€Π° β€” Π½Π° ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… экранах ΠΎΠ½ΠΈ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½Ρ‹. Π›ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ простыС списки с поиском
  • πŸ“± ВСстируйтС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ: ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ устройства ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ большиС ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ

Для ускорСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² мобильном ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅:

  1. ΠœΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ количСство ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ
  2. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ… (ΠžΡ‚Π»ΠΎΠΆΠ΅Π½Π½Π°ΡΠ—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° = Π˜ΡΡ‚ΠΈΠ½Π°)
  3. ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ элСмСнты управлСния Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ…
МоТно Π»ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ список Π²Ρ‹Π±ΠΎΡ€Π° пСрСчислСния Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π΅ Π½Π° Π‘ΠšΠ”?

Π”Π°, Π½ΠΎ с ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΊΠ°ΠΌΠΈ. Π’ систСмС ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (Π‘ΠšΠ”) ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ списка Π²Ρ‹Π±ΠΎΡ€Π° для ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ‚ΠΈΠΏΠ° "ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅" рСализуСтся Ρ‡Π΅Ρ€Π΅Π·:

  1. БтатичСский список: Π’ настройках ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΎΡ‚Ρ‡Π΅Ρ‚Π° ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ фиксированный Π½Π°Π±ΠΎΡ€ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² свойствС БписокВыбора
  2. ДинамичСский список: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события ΠŸΡ€ΠΈΠšΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ΅Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°, Π³Π΄Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚Π΅ доступныС значСния Π½Π° основС Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ динамичСского ограничСния:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΡ€ΠΈΠšΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ΅Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°(Π”Π°Π½Π½Ρ‹Π΅Π Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°)

Если Π”Π°Π½Π½Ρ‹Π΅Π Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ.ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.Найти("Π’ΠΈΠΏΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°") <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

ДоступныСВипы = Новый БписокЗначСний();

// Π€ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ список Π½Π° основС Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

Если Π”Π°Π½Π½Ρ‹Π΅Π Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ.ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.Π’ΠΈΠΏ = ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.Π’ΠΈΠΏΡ‹ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ΠΎΠ².ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊ Π’ΠΎΠ³Π΄Π°

ДоступныСВипы.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅.Π’ΠΈΠ΄Ρ‹Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².Π‘Ρ‡Π΅Ρ‚Π€Π°ΠΊΡ‚ΡƒΡ€Π°ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊΠ°);

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

Π”Π°Π½Π½Ρ‹Π΅Π Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ.ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅("Π’ΠΈΠΏΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.БписокВыбора", ДоступныСВипы);

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

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² Π‘ΠšΠ” нСльзя Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ список Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° β€” Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡƒΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий.

Как ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ список Π²Ρ‹Π±ΠΎΡ€Π° Π² управляСмом ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ?

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ограничСния Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ Π² управляСмом ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ 1Π‘:

АспСкт УправляСмоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠžΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
Бписок Π²Ρ‹Π±ΠΎΡ€Π° НастраиваСтся Ρ‡Π΅Ρ€Π΅Π· Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Π€ΠΎΡ€ΠΌΡ‹.БписокВыбора Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠŸΠΎΠ»Π΅Π’Π²ΠΎΠ΄Π°.БписокВыбора
ДинамичСскоС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π§Π΅Ρ€Π΅Π· события Ρ„ΠΎΡ€ΠΌΡ‹ (ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ) Π§Π΅Ρ€Π΅Π· Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ”Π΅ΠΉΡΡ‚Π²ΠΈΠ΅ для элСмСнтов
ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π›ΡƒΡ‡ΡˆΠ΅ Π·Π° счСт ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° ΠœΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… списках
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° мобильного ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π”Π° НСт

Для ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ прилоТСния ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими пСрСчислСниями (100+ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ) рСкомСндуСтся:

  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠŸΠΎΠ»Π΅Π’Π²ΠΎΠ΄Π°.БписокВыбора.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ
  2. Π”ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ значСния ΠΏΠ°Ρ‡ΠΊΠ°ΠΌΠΈ ΠΏΠΎ 50-100 ΡˆΡ‚ΡƒΠΊ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ (ΠŸΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ(100))
  3. ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ эффСкты ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ (ΠŸΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠžΡ‚Ρ€ΠΈΡΠΎΠ²ΠΊΡƒ())