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

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° очистки зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Π²Ρ‹ управляСтС: это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ встроСнный ДинамичСскийБписок Ρ„ΠΎΡ€ΠΌΡ‹, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° со списком. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ очисткС ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкам выполнСния ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌΡƒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅.

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

ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ динамичСского списка Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ 1Π‘

Π’ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ΄ динамичСским списком Ρ‡Π°Ρ‰Π΅ всСго понимаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π±Π°Π·Ρ‹ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹. Однако Π² контСкстС программирования Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ‚Π°ΠΊ Π»ΡŽΠ±ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π½Π°ΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡƒΡŽ Π² runtime.

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² источникС Π΄Π°Π½Π½Ρ‹Ρ…. Настоящий ДинамичСскийБписок привязан ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… (справочнику, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρƒ) ΠΈ управляСтся систСмой. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя, Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² ΠΊΠΎΠ΄Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ управлСния ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ строк.

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ систСмный динамичСский список Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Бписок.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ связи с источником Π΄Π°Π½Π½Ρ‹Ρ…. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Рассмотрим основныС Ρ‚ΠΈΠΏΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ очистки:

  • πŸ“„ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ создаваСмая структура для хранСния Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….
  • πŸ“‹ БписокЗначСний β€” коллСкция для хранСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΎΡ‚Π±ΠΎΡ€ΠΎΠ² ΠΈΠ»ΠΈ пСрСчислСний.
  • πŸ–₯️ Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‚ΠΈΠΏΠ° Π’Π°Π±Π»ΠΈΡ†Π° β€” ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° экранС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
πŸ’‘

ВсСгда провСряйтС Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠ΅Ρ€Π΅Π΄ очисткой. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π’ΠΈΠΏΠ—Π½Ρ‡() для опрСдСлСния Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ очистка Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Π‘Π°ΠΌΡ‹ΠΉ распространСнный сцСнарий β€” Ρ€Π°Π±ΠΎΡ‚Π° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром ΠΈΠ»ΠΈ для формирования ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ². ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° выполняСтся стандартным ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ.

Для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ удалСния всСх строк ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ(). Он Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ Π΄Π°ΠΆΠ΅ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… массивов Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ просто обнуляСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ ссылку Π½Π° массив строк, Π½Π΅ удаляя структуру ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½Ρ‹ΠΉ нюанс: ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ, ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ записи.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° для сСрвСрной части модуля:

Π’Π°Π±Π»ΠΈΡ†Π°Π”Π°Π½Π½Ρ‹Ρ… = Новый Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ;

Π’Π°Π±Π»ΠΈΡ†Π°Π”Π°Π½Π½Ρ‹Ρ….Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НомСнклатура");

Π’Π°Π±Π»ΠΈΡ†Π°Π”Π°Π½Π½Ρ‹Ρ….Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ");

// Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ...

// ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…

Π’Π°Π±Π»ΠΈΡ†Π°Π”Π°Π½Π½Ρ‹Ρ….ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ();

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

Алгоритм Π²Ρ‹Π±ΠΎΡ€ΠΎΡ‡Π½ΠΎΠΉ очистки выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • ❌ Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΡ‚Π±ΠΎΡ€ для Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.
  • βš™οΈ УстанавливаСм условиС ΠΎΡ‚Π±ΠΎΡ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎ Π΄Π°Ρ‚Π΅ ΠΈΠ»ΠΈ статусу).
  • πŸ—‘οΈ Π’Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ() Ρƒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° строк.

β˜‘οΈ Алгоритм Π²Ρ‹Π±ΠΎΡ€ΠΎΡ‡Π½ΠΎΠΉ очистки

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

Π Π°Π±ΠΎΡ‚Π° со списком Π²Ρ‹Π±ΠΎΡ€Π° Π² полях Π²Π²ΠΎΠ΄Π°

Частая Π·Π°Π΄Π°Ρ‡Π° ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ интСрфСйсов β€” очистка списка Π²Ρ‹Π±ΠΎΡ€Π° (Drop-down list) Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠ³ Ρ€Π°Π½Π΅Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· справочника, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ трСбуСтся ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ список ΠΈΠ»ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½ΠΎΠ²Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² зависимости ΠΎΡ‚ контСкста.

Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ свойство БписокВыбора Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° поля Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΡ€ΠΈΡΠ²ΠΎΠ΅Π½ΠΈΠ΅ этому свойству Π½ΠΎΠ²ΠΎΠ³ΠΎ пустого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° БписокЗначСний ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список.

Π’Π°ΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ эти дСйствия Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Ссли список формируСтся динамичСски Π² зависимости ΠΎΡ‚ дСйствий ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ здСсь ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ, Ρ‡Ρ‚ΠΎ ΡƒΡ…ΡƒΠ΄ΡˆΠΈΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΎΠΏΡ‹Ρ‚.

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

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

Бписок = Новый БписокЗначСний;

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.БписокВыбора = Бписок;

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ очисткС списка Π²Ρ‹Π±ΠΎΡ€Π° ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля Π²Π²ΠΎΠ΄Π° Π½Π΅ становится нСдопустимым. Если Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ отсутствуСт Π² Π½ΠΎΠ²ΠΎΠΌ пустом спискС, ΠΏΠΎΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄ΡΠ²Π΅Ρ‚ΠΈΡ‚ΡŒΡΡ красным ΠΈΠ»ΠΈ Π²Ρ‹Π΄Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ со списком Π²Ρ‹Π±ΠΎΡ€Π°:

ДСйствиС ΠœΠ΅Ρ‚ΠΎΠ΄ / Бвойство ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ выполнСния
Полная очистка БписокВыбора = Новый БписокЗначСний() ΠšΠ»ΠΈΠ΅Π½Ρ‚
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта БписокВыбора.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ΠšΠ»ΠΈΠ΅Π½Ρ‚ / Π‘Π΅Ρ€Π²Π΅Ρ€
ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ значСния Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠšΠ»ΠΈΠ΅Π½Ρ‚
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° наличия ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡŽ() ΠšΠ»ΠΈΠ΅Π½Ρ‚
πŸ“Š Π“Π΄Π΅ Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚Π΅ΡΡŒ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ очистки списков?
Π’ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ…
Π’ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ…
Π’ справочниках
Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ… Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ

ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс

НС всСгда очистка Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ написания ΠΊΠΎΠ΄Π°. Π’ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… конфигурациях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ 1Π‘:БухгалтСрия ΠΈΠ»ΠΈ 1Π‘:Π£Π’, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ динамичСскиС списки (Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Π΅ части Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²) Ρ‡Π΅Ρ€Π΅Π· стандартный интСрфСйс.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ всСх строк ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ клавиш Ctrl+A ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши Delete. Π­Ρ‚ΠΎΡ‚ способ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятСн ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΈ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°.

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

РСализация Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сводится ΠΊ Π²Ρ‹Π·ΠΎΠ²Ρƒ сСрвСрной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, которая ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°:

&НаБСрвСрС

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒΠ’Π°Π±Π»ΠΈΡ‡Π½ΡƒΡŽΠ§Π°ΡΡ‚ΡŒ()

ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ();

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

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

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ctrl+Delete Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ?

ΠŸΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ строк Ρ‡Π΅Ρ€Π΅Π· интСрфСйс происходит пСрСсчСт ΠΈΡ‚ΠΎΠ³ΠΎΠ², ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ экранных Ρ„ΠΎΡ€ΠΌ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ цСлостности для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() Π΄Π΅Π»Π°Π΅Ρ‚ это ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠ΅ΠΉ.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими списками

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими объСмами Π΄Π°Π½Π½Ρ‹Ρ… (Π±ΠΎΠ»Π΅Π΅ 10 000 строк) ΠΌΠ΅Ρ‚ΠΎΠ΄ очистки становится ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹ΠΌ для ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ систСмы. ΠŸΡ€ΠΎΡΡ‚ΠΎΠ΅ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ строк Π² Ρ†ΠΈΠΊΠ»Π΅ β€” это Ρ…ΡƒΠ΄ΡˆΠΈΠΉ сцСнарий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ любой Ρ†Π΅Π½ΠΎΠΉ.

КаТдая итСрация Ρ†ΠΈΠΊΠ»Π° удалСния Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ рСгистрации ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΏΡ€Π°Π² доступа ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ индСксов. Π­Ρ‚ΠΎ создаСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° сСрвСр 1Π‘ ΠΈ Π‘Π£Π‘Π”.

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

Если Π²Ρ‹ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚Π΅ список Π·Π°Π½ΠΎΠ²ΠΎ, эффСктивнСС ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ‡Π΅ΠΌ ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ старый. Π­Ρ‚ΠΎ позволяСт сборщику мусора ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ быстрСС ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π·Π°Π½ΡΡ‚ΡƒΡŽ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

  • πŸš€ ΠœΠ΅Ρ‚ΠΎΠ΄ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() β€” ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠ΅ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ всСх строк, структура сохраняСтся.
  • πŸ—‘οΈ Π¦ΠΈΠΊΠ» с ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ β€” ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, создаСт Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΆΡƒΡ€Π½Π°Π».
  • πŸ†• Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° β€” ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎ, Ссли структура ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‚ΠΎΠΆΠ΅ мСняСтся.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ. ΠŸΡ€ΠΈ очисткС Ρ‚Π°Π±Π»ΠΈΡ† Π½Π° сСрвСрС Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ, особСнно Ссли Ρ‚Π°Π±Π»ΠΈΡ†Π° являСтся рСгистром свСдСний.

πŸ’‘

Никогда Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†ΠΈΠΊΠ» "Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ" для удалСния строк ΠΈΠ· ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ. Π­Ρ‚ΠΎ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ ΠΈ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкам ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() ΠΈΠ»ΠΈ ΠžΡ‚Π±ΠΎΡ€.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ().

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ способы ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ошибки ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ списки, связанныС с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. НапримСр, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ список Ρ„ΠΎΡ€ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ ДинамичСскийБписок, Ρ‡Π΅Ρ€Π΅Π· прямоС ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ свойству Π‘Ρ‚Ρ€ΠΎΠΊΠΈ.

Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π²Ρ‹Π΄Π°Π΅Ρ‚ сообщСниС: "ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ»ΠΈ свойство". Π­Ρ‚ΠΎ происходит ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ динамичСский список являСтся wrapper-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, Π° Π½Π΅ прямой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π±ΠΎΡ€Ρ‹ самого динамичСского списка. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΡ‚Π±ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ выполняСтся Π½ΠΈ для ΠΎΠ΄Π½ΠΎΠΉ записи (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Бсылка = NULL), Ρ‡Ρ‚ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ очистит список Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅.

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

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° распространСнная ошибка β€” очистка списка Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, ΠΊΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ сСрвСрной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Если список наполняСтся запросом ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, простая очистка клиСнтской ΠΊΠΎΠΏΠΈΠΈ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ состояниС Π½Π° сСрвСрС. ΠŸΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Π΅ появятся снова.

Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ сравнСния ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для Ρ€Π°Π·Π½Ρ‹Ρ… ситуаций:

Битуация Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Риск ошибки
ВрСмСнная Ρ‚Π°Π±Π»ΠΈΡ†Π° Π² ΠΊΠΎΠ΄Π΅ Π’Π°Π±Π»ΠΈΡ†Π°.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() Низкий
Вабличная Ρ‡Π°ΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π§Π°ΡΡ‚ΡŒ.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ (Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ)
Бписок Π²Ρ‹Π±ΠΎΡ€Π° (ComboBox) ПолС.БписокВыбора = Новый... Низкий
ДинамичСский список Ρ„ΠΎΡ€ΠΌΡ‹ Установка ΠΎΡ‚Π±ΠΎΡ€Π° Высокий (ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ)
МоТно Π»ΠΈ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ динамичСский список Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ?

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

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() ΠΈ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ()?

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

ΠŸΠΎΡ‡Π΅ΠΌΡƒ послС очистки списка Ρ„ΠΎΡ€ΠΌΠ° зависаСт?

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

Как ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π½Π΅ удаляя ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ(). Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ удаляСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строки Π΄Π°Π½Π½Ρ‹Ρ…, оставляя структуру ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ (ΠΈΠΌΠ΅Π½Π°, Ρ‚ΠΈΠΏΡ‹, Π΄Π»ΠΈΠ½Ρƒ) Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ.

БСзопасно Π»ΠΈ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ БписокЗначСний полю Ρ„ΠΎΡ€ΠΌΡ‹?

Π”Π°, это стандартная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°. ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° БписокЗначСний свойству БписокВыбора элСмСнта Ρ„ΠΎΡ€ΠΌΡ‹ бСзопасно ΠΈ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ обновляСт Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список.