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

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

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΊΠ°ΠΊ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ программистам 1Π‘, Ρ‚Π°ΠΊ ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ спСциалистам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хотят ΡΠΈΡΡ‚Π΅ΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ знания ΠΈΠ»ΠΈ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹. ВсС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° протСстированы Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3 (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ 8.3.23).

1. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ синтаксис: доступ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ

Π‘Π°ΠΌΡ‹ΠΉ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ ΠΈ распространённый способ β€” ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ послС указания Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятСн ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π²ΠΎ всСх контСкстах: Π² модулях ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Ρ„ΠΎΡ€ΠΌΠ°Ρ…, ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π°Ρ… ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ….

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

  • πŸ“„ Для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°: Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Π’ΠΎΠ²Π°Ρ€Ρ‹.
  • πŸ“Š Для справочника: Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура.Π¦Π΅Π½Ρ‹.Π¦Π΅Π½Π°ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ β€” ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Ρ†Π΅Π½Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Π¦Π΅Π½Ρ‹.
  • πŸ”„ Для Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π² Ρ†ΠΈΠΊΠ»Π΅: Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ² Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ» ... Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ².ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ... ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°.

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

  • βœ… ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° ΠΈ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°.
  • βœ… ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° автозаполнСния Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅.
  • βœ… Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ‚ΠΎΠ½ΠΊΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ Π±Π΅Π· ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ.
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ доступС 1Π‘ автоматичСски создаёт Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ для хранСния ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Если табличная Ρ‡Π°ΡΡ‚ΡŒ содСрТит тысячи строк, частыС обращСния Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ() (см. Ρ€Π°Π·Π΄Π΅Π» 4).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ всСх строк:

Для КаТдого Π’ΠΎΠ²Π°Ρ€ Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Если Π’ΠΎΠ²Π°Ρ€.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ > 10 Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ партия: " + Π’ΠΎΠ²Π°Ρ€.НомСнклатура.НаимСнованиС);

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

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

2. Доступ ΠΏΠΎ индСксу строки ΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ

Иногда трСбуСтся ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ строки ΠΏΠΎ Π΅Ρ‘ Π½ΠΎΠΌΠ΅Ρ€Ρƒ (индСксу). Π­Ρ‚ΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников, Π³Π΄Π΅ извСстны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ порядковыС Π½ΠΎΠΌΠ΅Ρ€Π° записСй.

Бинтаксис:

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹[Π˜Π½Π΄Π΅ΠΊΡΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ].ИмяКолонки;

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ:

  • πŸ”’ Π˜Π½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡ строк начинаСтся с 0 (пСрвая строка β€” индСкс 0).
  • πŸ“Œ Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ индСкс, 1Π‘ выбросит ΠΎΡˆΠΈΠ±ΠΊΡƒ "ИндСкс Π²Π½Π΅ Π³Ρ€Π°Π½ΠΈΡ† ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ".
  • πŸ” Имя ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ строку (ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для динамичСского доступа).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ с динамичСским ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ:

ИмяКолонки = "ЦСна";

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹[0][ИмяКолонки]; // ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Ρ†Π΅Π½Ρƒ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строки

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании строковых ΠΈΠΌΡ‘Π½ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ 1Π‘ Π½Π΅ провСряСт ΠΈΡ… сущСствованиС Π½Π° этапС компиляции. Ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя выполнСния, Ссли ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° с Ρ‚Π°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ отсутствуСт. ВсСгда добавляйтС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ:
Если Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.Найти(ИмяКолонки) <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

// Код Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΎΠΉ

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

πŸ“Š Какой способ доступа ΠΊ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
Π§Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ (Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ)
По индСксу строки
Π§Π΅Ρ€Π΅Π· Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ()
Запросы ΠΊ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части
Π”Ρ€ΡƒΠ³ΠΎΠΉ

3. Π Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Колонки

КаТдая табличная Ρ‡Π°ΡΡ‚ΡŒ Π² 1Π‘ ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Колонки, которая позволяСт ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ столбцах: ΠΈΡ… ΠΈΠΌΠ΅Π½Π°, Ρ‚ΠΈΠΏΡ‹, порядок слСдования. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для динамичСской ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΠ³Π΄Π° Π·Π°Ρ€Π°Π½Π΅Π΅ нСизвСстно, ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Колонки:

ΠœΠ΅Ρ‚ΠΎΠ΄ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ()Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ число ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΠΈΠšΠΎΠ»Π²ΠΎΠšΠΎΠ»ΠΎΠ½ΠΎΠΊ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ();
ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ(ИндСкс)Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΏΠΎ индСксу (начиная с 0)ΠŸΠ΅Ρ€Π²Π°ΡΠšΠΎΠ»ΠΎΠ½ΠΊΠ° = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ(0);
Найти(Имя)Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΠ΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎΠšΠΎΠ»ΠΎΠ½ΠΊΠ°Π¦Π΅Π½Π° = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.Найти("Π¦Π΅Π½Π°");
Π˜ΠΌΡΠ‘Π²ΠΎΠΉΡΡ‚Π²ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰Π΅Π΅ Π΅Ρ‘ имяИмя = КолонкаЦСна.Имя;
ВипЗначСнияВозвращаСт Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ (Π’ΠΈΠΏ("Число"), Π’ΠΈΠΏ("Π‘Ρ‚Ρ€ΠΎΠΊΠ°") ΠΈ Ρ‚.Π΄.)Π’ΠΈΠΏ = КолонкаЦСна.ВипЗначСния;

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠΌΡ‘Π½ всСх ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части:

Для Инд = 0 По Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1 Π¦ΠΈΠΊΠ»

Колонка = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ(Инд);

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Колонка.Имя + " (" + Колонка.ВипЗначСния + ")");

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

Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌ ΠΏΡ€ΠΈ создании ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ частями. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая экспортируСт Π»ΡŽΠ±ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π² Excel, Π½Π΅ зная Π·Π°Ρ€Π°Π½Π΅Π΅ Π΅Ρ‘ структуры.

ПослСдняяКолонка = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ(Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1);

Π­Ρ‚ΠΎ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ ΠΎΡ‚ ошибок ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ числа ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.-->

4. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ: ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ()

Когда табличная Ρ‡Π°ΡΡ‚ΡŒ содСрТит сотни ΠΈΠ»ΠΈ тысячи строк, поэлСмСнтный доступ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΈΠ»ΠΈ индСкс ΠΌΠΎΠΆΠ΅Ρ‚ сущСствСнно Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π° ΠΎΠ΄ΠΈΠ½ Π²Ρ‹Π·ΠΎΠ² Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ всСй ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ.

Бинтаксис:

ΠœΠ°ΡΡΠΈΠ²Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ(ИмяКолонки);

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π°:

  • ⚑ Π’ 5–10 Ρ€Π°Π· быстрСС поэлСмСнтного доступа ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΡ‘ΠΌΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….
  • πŸ“¦ Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π²ΠΈΠ΄Π΅ массива, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ†ΠΈΠΊΠ»Π°Ρ… ΠΈΠ»ΠΈ функциях Π²Ρ€ΠΎΠ΄Π΅ Найти(), ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ().
  • πŸ”„ ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ динамичСскиС ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ (ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ с ΠΈΠΌΠ΅Π½Π΅ΠΌ).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: поиск максимального количСства Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части:

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π° = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ");

ΠœΠ°ΠΊΡΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = ΠœΠ°ΡΡΠΈΠ²ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ(ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π°);

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("МаксимальноС количСство: " + ΠœΠ°ΠΊΡΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ);

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠœΠ΅Ρ‚ΠΎΠ΄ Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ копию Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π°. Если Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ значСния Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части послС Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ, массив Π½Π΅ обновится автоматичСски. Для Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ‹Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (тСст Π½Π° 10 000 строках):

ΠœΠ΅Ρ‚ΠΎΠ΄ доступаВрСмя выполнСния (мс)ΠŸΠ°ΠΌΡΡ‚ΡŒ (Кб)
ΠŸΠΎΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π½Ρ‹ΠΉ доступ (Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ)12004500
Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ() + Ρ€Π°Π±ΠΎΡ‚Π° с массивом1503200
Запрос ΠΊ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части802800
πŸ’‘

Для Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй с Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ 1000 строк Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ() β€” ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠΏΠΎ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ скорости ΠΈ простоты ΠΊΠΎΠ΄Π°.

5. ИспользованиС запросов для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ

Запросы Π² 1Π‘ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй, Π½ΠΎ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π½Π°Π΄ Π½ΠΈΠΌΠΈ слоТныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡŽ, Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΡƒ, соСдинСниС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ особСнно ΠΏΠΎΠ»Π΅Π·Π΅Π½ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° трСбуСтся Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ нСскольким критСриям.

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ синтаксис запроса ΠΊ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части:

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

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

"ВЫБРАВЬ

| Π’ΠΎΠ²Π°Ρ€Ρ‹.НомСнклатура КАК НомСнклатура,

| Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ КАК ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ,

| Π’ΠΎΠ²Π°Ρ€Ρ‹.Π¦Π΅Π½Π° КАК Π¦Π΅Π½Π°

|Π˜Π—

| Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.РСализацияВоваровУслуг.Π’ΠΎΠ²Π°Ρ€Ρ‹ КАК Π’ΠΎΠ²Π°Ρ€Ρ‹

|Π“Π”Π•

| Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ > 10";

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

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ возмоТности:

  • πŸ” Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ условиям (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ > 10).
  • πŸ“Š Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ Π°Π³Ρ€Π΅Π³Π°Ρ‚Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (БУММА, МАКБИМУМ).
  • πŸ”— Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, справочником НомСнклатура).
  • πŸ“ˆ Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² (Π£ΠŸΠžΠ Π―Π”ΠžΠ§Π˜Π’Π¬ ПО ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π£Π‘Π«Π’).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ ΠΈ суммированиСм:

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

"ВЫБРАВЬ

| Π’ΠΎΠ²Π°Ρ€Ρ‹.НомСнклатура КАК НомСнклатура,

| БУММА(Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) КАК Π˜Ρ‚ΠΎΠ³ΠΎΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ,

| БУММА(Π’ΠΎΠ²Π°Ρ€Ρ‹.Π‘ΡƒΠΌΠΌΠ°) КАК Π˜Ρ‚ΠΎΠ³ΠΎΠ‘ΡƒΠΌΠΌΠ°

|Π˜Π—

| Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.РСализацияВоваровУслуг.Π’ΠΎΠ²Π°Ρ€Ρ‹ КАК Π’ΠΎΠ²Π°Ρ€Ρ‹

|Π‘Π“Π Π£ΠŸΠŸΠ˜Π ΠžΠ’ΠΠ’Π¬ ПО

| Π’ΠΎΠ²Π°Ρ€Ρ‹.НомСнклатура";

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: запросы ΠΊ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌ частям Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ конструкции, доступныС для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. НапримСр, нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ:

  • 🚫 ВНУВРЕННЕЕ Π‘ΠžΠ•Π”Π˜ΠΠ•ΠΠ˜Π• (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π›Π•Π’ΠžΠ• Π‘ΠžΠ•Π”Π˜ΠΠ•ΠΠ˜Π•).
  • 🚫 ΠŸΠΎΠ΄Π·Π°ΠΏΡ€ΠΎΡΡ‹ Π² сСкции Π“Π”Π•.
  • 🚫 Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Ρ‚Π°ΠΌΠΈ Π²Ρ€ΠΎΠ΄Π΅ ΠΠΠ§ΠΠ›ΠžΠŸΠ•Π Π˜ΠžΠ”Π (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ Π”Π°Ρ‚Π°).
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ структуры Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ/ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ) запросы ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. ВсСгда провСряйтС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»Π΅ΠΉ Π² запросС послС обновлСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.
Как ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ запрос ΠΊ большой Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ индСксированныС ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² условиях Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ. НапримСр, Ссли Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° НомСнклатура (ссылка Π½Π° справочник), Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π΅Ρ‘ Π² условиС Π“Π”Π•:

Π“Π”Π• Π’ΠΎΠ²Π°Ρ€Ρ‹.НомСнклатура = &НомСнклатура

Π­Ρ‚ΠΎ заставит 1Π‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ индСксы Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ ускорит Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² 2–3 Ρ€Π°Π·Π°.

6. ДинамичСскоС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… сцСнариях трСбуСтся ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ структуру Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Π½Π° Π»Π΅Ρ‚Ρƒ β€” Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π²ΠΎ врСмя выполнСния ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ΠΈ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ() ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Колонки.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ добавлСния Π½ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ:

НоваяКолонка = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π‘ΠΊΠΈΠ΄ΠΊΠ°ΠŸΡ€ΠΎΡ†Π΅Π½Ρ‚");

НоваяКолонка.ВипЗначСния = Новый ОписаниСВипов("Число", Новый ΠšΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹Π§ΠΈΡΠ»Π°(10, 2));

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ динамичСских ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ:

  • πŸ†• Колонка добавляСтся ΠΊΠΎ всСм строкам Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅.
  • πŸ”„ ЗначСния Π½ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” НСопрСдСлСно (для числовых Ρ‚ΠΈΠΏΠΎΠ²) ΠΈΠ»ΠΈ пустыС строки.
  • 🚫 НС ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… послС записи Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, Ссли ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° Π½Π΅ Π±Ρ‹Π»Π° заявлСна Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.
  • πŸ“Œ Для сохранСния динамичСских ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ трСбуСтся модификация ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ использованиС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ удалСния ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ:

ΠšΠΎΠ»ΠΎΠ½ΠΊΠ°Π”Π»ΡΠ£Π΄Π°Π»Π΅Π½ΠΈΡ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.Найти("Π‘Ρ‚Π°Ρ€Π°ΡΠšΠΎΠ»ΠΎΠ½ΠΊΠ°");

Если ΠšΠΎΠ»ΠΎΠ½ΠΊΠ°Π”Π»ΡΠ£Π΄Π°Π»Π΅Π½ΠΈΡ <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(ΠšΠΎΠ»ΠΎΠ½ΠΊΠ°Π”Π»ΡΠ£Π΄Π°Π»Π΅Π½ΠΈΡ);

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠΎ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ сСанса. ВсС Π΄Π°Π½Π½Ρ‹Π΅ Π² этой ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ утСряны. Если ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° объявлСна Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, Π΅Ρ‘ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ ошибкС ΠΏΡ€ΠΈ записи ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Π±Π°Π·Ρƒ.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ случай: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ для Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… расчётов:

// ДобавляСм ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ для хранСния ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ВрСмСннаяБумма");

Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ВрСмСннаяБумма = Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π° (1 - Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π‘ΠΊΠΈΠ΄ΠΊΠ°/100);

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

Колонка с Ρ‚Π°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π½Π΅ сущСствуСт|Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ соотвСтствуСт Π·Π°Π΄Π°Ρ‡Π΅|Π£Ρ‡Ρ‚Π΅Π½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ сохранСния Π΄Π°Π½Π½Ρ‹Ρ… послС записи|ΠŸΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ влияниС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ (для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†)-->

7. Π Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ…

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

Бпособы доступа:

  • πŸ“± Π§Π΅Ρ€Π΅Π· Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹:
    Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒ = Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΎΠ²Π°Ρ€Ρ‹;
  • πŸ”— Π§Π΅Ρ€Π΅Π· ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ (Ссли Ρ„ΠΎΡ€ΠΌΠ° привязана ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρƒ/справочнику):
    Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒ = ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹;
  • πŸ–±οΈ Π§Π΅Ρ€Π΅Π· Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку Π² событии (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ):
    ВСкущаяБтрока = Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΎΠ²Π°Ρ€Ρ‹.ВСкущаяБтрока;

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ измСнСния количСства Π² Ρ„ΠΎΡ€ΠΌΠ΅:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π’ΠΎΠ²Π°Ρ€Ρ‹ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚)

ВСкущаяБтрока = Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΎΠ²Π°Ρ€Ρ‹.ВСкущаяБтрока;

Если ВСкущаяБтрока.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ > 100 Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("ΠŸΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ΠΎ максимальноС количСство!");

ВСкущаяБтрока.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 100;

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

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

Π’Π°ΠΆΠ½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹:

  • πŸ”„ ИзмСнСния Π² Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π½Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ автоматичСски Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Для записи ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ().
  • 🚫 НСльзя Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ/ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ динамичСски Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… β€” структура Ρ„ΠΎΡ€ΠΌΡ‹ фиксирована.
  • πŸ“± Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с большими Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ частями (>1000 строк) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠΎΡΡ‚Ρ€Π°Π½ΠΈΡ‡Π½ΡƒΡŽ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ (ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΠŸΠΎΡΡ‚Ρ€Π°Π½ΠΈΡ‡Π½ΠΎ = Π˜ΡΡ‚ΠΈΠ½Π°).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ настройки постраничного отобраТСния:

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΠŸΠΎΡΡ‚Ρ€Π°Π½ΠΈΡ‡Π½ΠΎ = Π˜ΡΡ‚ΠΈΠ½Π°;

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎΠ‘Ρ‚Ρ€ΠΎΠΊΠΠ°Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π΅ = 50;

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

Π”Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ 1Π‘ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ошибки ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй. Рассмотрим самыС распространённыС ΠΈΠ· Π½ΠΈΡ… ΠΈ способы ΠΈΡ… прСдотвращСния.

Ошибка 1: ΠŸΡ€ΡΠΌΠΎΠ΅ сравнСниС с НСопрСдСлСно Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΈΠΏΠ°

НСкоррСктно:

Если Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

// Ошибка! Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ с НСопрСдСлСно Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ оТидаСтся.

ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ:

Если Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) Π’ΠΎΠ³Π΄Π°

// Колонка содСрТит Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

Π˜Π½Π°Ρ‡Π΅

// Колонка пустая ΠΈΠ»ΠΈ НСопрСдСлСно

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

Ошибка 2: Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ пустых ссылок

Если ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° содСрТит ссылку Π½Π° справочник (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, НомСнклатура), всСгда провСряйтС Π΅Ρ‘ Π½Π° ΠŸΡƒΡΡ‚Π°ΡΠ‘ΡΡ‹Π»ΠΊΠ°():

Если НЕ Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.НомСнклатура.ΠŸΡƒΡΡ‚Π°ΡΠ‘ΡΡ‹Π»ΠΊΠ°() Π’ΠΎΠ³Π΄Π°

// Π Π°Π±ΠΎΡ‚Π°Π΅ΠΌ со ссылкой

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

Ошибка 3: ИзмСнСниС ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² Ρ†ΠΈΠΊΠ»Π΅ Π±Π΅Π· привязки ΠΊ строкС

НСкоррСктно (мСняСм ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ строку ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ):

Для КаТдого Π’ΠΎΠ²Π°Ρ€ Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 10; // Ошибка! МСняСм ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ Π²ΠΎ всСх строках!

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

ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ:

Для КаТдого Π’ΠΎΠ²Π°Ρ€ Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Π’ΠΎΠ²Π°Ρ€.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 10; // МСняСм Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку

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

Ошибка 4: Π—Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΎ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΈ массовых измСнСниях

ΠŸΡ€ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ большого числа строк ΠΎΠ±Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ Π² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ:

ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°

Для КаТдого Π’ΠΎΠ²Π°Ρ€ Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Π’ΠΎΠ²Π°Ρ€.Π¦Π΅Π½Π° = Π’ΠΎΠ²Π°Ρ€.Π¦Π΅Π½Π° * 1.1; // ΠŸΠΎΠ²Ρ‹ΡˆΠ°Π΅ΠΌ Ρ†Π΅Π½Ρ‹ Π½Π° 10%

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

Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Ошибка: " + ОписаниСОшибки());

ΠšΠΎΠ½Π΅Ρ†ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ;

Ошибка 5: НС ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ рСгистр ΠΈΠΌΡ‘Π½ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ

1Π‘ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Π° ΠΊ рСгистру ΠΏΡ€ΠΈ доступС ΠΊ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ Ρ‡Π΅Ρ€Π΅Π· строковыС ΠΈΠΌΠ΅Π½Π°. НапримСр, "количСство" ΠΈ "ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ" β€” Ρ€Π°Π·Π½Ρ‹Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ. ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΈΠ· ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ….

ΠžΡˆΠΈΠ±ΠΊΠ°ΠŸΠΎΡΠ»Π΅Π΄ΡΡ‚Π²ΠΈΡΠšΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ
Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ с НСопрСдСлСно Ρ‡Π΅Ρ€Π΅Π· =Π›ΠΎΠΆΠ½Ρ‹Π΅ срабатывания ΡƒΡΠ»ΠΎΠ²ΠΈΠΉΠ˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ()
ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠŸΡƒΡΡ‚Π°ΡΠ‘ΡΡ‹Π»ΠΊΠ°()Ошибка "НСдопустимоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° Бсылка"ВсСгда ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ссылки
ИзмСнСниС ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π±Π΅Π· привязки ΠΊ ΡΡ‚Ρ€ΠΎΠΊΠ΅ΠœΠ°ΡΡΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ всСх ΡΡ‚Ρ€ΠΎΠΊΠ Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ВСкущаяБтрока ΠΈΠ»ΠΈ Π’ΠΎΠ²Π°Ρ€ Π² Ρ†ΠΈΠΊΠ»Π΅
ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉΠŸΠΎΡ‚Π΅Ρ€Ρ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…ΠžΠ±Π΅Ρ€Π½ΡƒΡ‚ΡŒ массовыС измСнСния Π² ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ()
НСсовпадСниС рСгистра ΠΈΠΌΡ‘Π½ΠžΡˆΠΈΠ±ΠΊΠ° "ПолС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΎ"ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ ΠΈΠ· ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π°
πŸ’‘

90% ошибок ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй связаны с Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (НСопрСдСлСно, ΠŸΡƒΡΡ‚Π°ΡΠ‘ΡΡ‹Π»ΠΊΠ°) ΠΈΠ»ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ контСкстом измСнСния (Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΎ ВСкущаяБтрока). ВсСгда тСстируйтС ΠΊΠΎΠ΄ Π½Π° пустых ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

FAQ: ЧастыС вопросы ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список всСх ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Π² Π²ΠΈΠ΄Π΅ массива?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Колонки ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ():

МассивКолонок = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Колонки.Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ();

Для КаТдого Колонка Из МассивКолонок Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Колонка.Имя);

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

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ динамичСски?

НСт, Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ задаётся ΠΏΡ€ΠΈ Π΅Ρ‘ создании ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½ динамичСски. Если трСбуСтся Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ, ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΈ создайтС Π½ΠΎΠ²ΡƒΡŽ с Π½ΡƒΠΆΠ½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ.

Как ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ значСния ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ?

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ копирования Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π¦Π΅Π½Π°Π—Π°ΠΊΡƒΠΏΠ° Π² Π¦Π΅Π½Π°ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ:

Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π°ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ = Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π°Π—Π°ΠΊΡƒΠΏΠ° * 1.2; // НацСнка 20%

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

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€ΠΈ доступС ΠΊ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка "ПолС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΎ"?

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹:

  • ΠžΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠ° Π² ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ (ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ рСгистр!).
  • Колонка ΡƒΠ΄Π°Π»Π΅Π½Π° ΠΈΠ· ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ ΠΊΠΎΠ΄ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½.
  • Π’Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ Π΄ΠΎ Π΅Ρ‘ добавлСния Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ.
Как ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π½Π° 100 000 строк?

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ() вмСсто поэлСмСнтного доступа.
  2. Π Π°Π·Π±Π΅ΠΉΡ‚Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΏΠΎ 1000–5000 строк с Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠŸΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ(0) ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ.
  3. Для слоТных расчётов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² запросах.
  4. ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π½Π° врСмя массовых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.