Ошибка Β«Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ для значСния Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Β» Π² 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ β€” ΠΎΠ΄Π½Π° ΠΈΠ· самых Π·Π°Π³Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Она Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎ, часто ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈ оставляСт Π±Π΅Π· явных подсказок ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… синтаксичСских ошибок, здСсь ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π³Π»ΡƒΠ±ΠΆΠ΅ β€” Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с коллСкциями, массивами ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ систСма Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ.

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

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅:

  • πŸ” Π’ΠΎΡ‡Π½ΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ошибки ΠΈ Π΅Ρ‘ мСсто Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ 1Π‘
  • πŸ“Œ Π’ΠΎΠΏ-5 ΠΏΡ€ΠΈΡ‡ΠΈΠ½ возникновСния (с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΊΠΎΠ΄Π°)
  • πŸ› οΈ ΠŸΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ для Ρ€Π°Π·Π½Ρ‹Ρ… вСрсий ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹
  • ⚑ Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ Π»ΠΎΠ²ΡƒΡˆΠΊΠΈ, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ ΠΏΠΈΡˆΡƒΡ‚ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ

Если Π²Ρ‹ Π½Π΅ программист, Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ 1Π‘ β€” Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΠΉΡ‚Π΅ ΡΡ‚Π°Ρ‚ΡŒΡŽ! Π’ послСднСм Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ Π΄Π°Π΄ΠΈΠΌ простыС Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ошибка появилась Π² Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² 1Π‘:Π‘ΡƒΡ…Π³Π°Π»Ρ‚Π΅Ρ€ΠΈΠΈ ΠΈΠ»ΠΈ 1Π‘:Π—Π£ΠŸ).

Π§Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ Β«ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Β»?

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ β€” это ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ элСмСнты ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ (массива, списка, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Ρ‚.Π΄.). Π’ 1Π‘ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° стандартных Ρ‚ΠΈΠΏΠΎΠ², Π½ΠΎ Π½Π΅ для всСх. Ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° систСма пытаСтся ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ†ΠΈΠΊΠ» Для КаТдого... ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ:

  • 🚫 НС являСтся ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, число, строка, НСопрСдСлСно)
  • πŸ”„ Π˜ΠΌΠ΅Π΅Ρ‚ Π½Π΅ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ структуру (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ запроса Π±Π΅Π· явного привСдСния ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π΅)
  • πŸ›‘ Π‘Ρ‹Π» ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ Π² памяти (Ρ€Π΅Π΄ΠΊΠΎ, Π½ΠΎ встрСчаСтся ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ:

ΠŸΠ΅Ρ€Π΅ΠΌ ΠΠ΅ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Π°ΡΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ;

Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из ΠΠ΅ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Π°ΡΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚);

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

Π—Π΄Π΅ΡΡŒ ΠΠ΅ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Π°ΡΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ НСопрСдСлСно, ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ для Π½Π΅Ρ‘ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€. Аналогичная ситуация ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚, Ссли ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰Π΅ΠΉ NULL, ΠΈΠ»ΠΈ строку Π±Π΅Π· привСдСния Π΅Ρ‘ ΠΊ массиву символов.

πŸ“Š Π‘ ΠΊΠ°ΠΊΠΎΠΉ вСрсиСй 1Π‘ Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅?
8.2
8.3 (обычная)
8.3 (управляСмыС Ρ„ΠΎΡ€ΠΌΡ‹)
9.0 (ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ)
НС знаю

Π’ΠΎΠΏ-5 ΠΏΡ€ΠΈΡ‡ΠΈΠ½ ошибки Π² 1Π‘

Π Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнныС сцСнарии, приводящиС ΠΊ ошибкС, с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΈ пояснСниями.

  1. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ

    ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠ°Ρ ошибка Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…: пСрСмСнная объявлСна, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° НСопрСдСлСно послС Π½Π΅ΡƒΠ΄Π°Ρ‡Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

    ΠŸΠ΅Ρ€Π΅ΠΌ ΠœΠΎΡΠ’Π°Π±Π»ΠΈΡ†Π°;
    

    Если НС Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(ΠœΠΎΡΠ’Π°Π±Π»ΠΈΡ†Π°) Π’ΠΎΠ³Π΄Π°

    Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из ΠœΠΎΡΠ’Π°Π±Π»ΠΈΡ†Π° Π¦ΠΈΠΊΠ» // ← Π—Π΄Π΅ΡΡŒ ошибка

    // ...

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

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

  2. Π Π°Π±ΠΎΡ‚Π° с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ запроса Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ

    Запросы Π² 1Π‘ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π—Π°ΠΏΡ€ΠΎΡΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сам ΠΏΠΎ сСбС Π½Π΅ являСтся ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ. НуТно явно ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ() ΠΈΠ»ΠΈ привСсти ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

    Запрос = Новый Запрос("ВЫБРАВЬ ΠŸΠ΅Ρ€Π²Ρ‹Π΅ 10 НомСнклатура");
    

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

    Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π¦ΠΈΠΊΠ» // ← Ошибка!

    Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°.НомСнклатура);

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

  3. Ошибки ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

    Если Π²Ρ‹ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ 1Π‘ с внСшними систСмами (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Excel ΠΈΠ»ΠΈ Word), Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ, Π΄Π°ΠΆΠ΅ Ссли Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ выглядят ΠΊΠ°ΠΊ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ.

  4. НСявноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ²

    Иногда ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° оТидаСтся массив, Π° пСрСдаСтся строка ΠΈΠ»ΠΈ число.

  5. ΠŸΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² памяти

    Π’ Ρ€Π΅Π΄ΠΊΠΈΡ… случаях (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ послС Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ сСанса) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² памяти ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌ состоянии, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкам ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ

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

Как ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ: ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹Π΅ инструкции

Алгоритм устранСния зависит ΠΎΡ‚ контСкста. НиТС β€” ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ шаги ΠΈ спСцифичСскиС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ для Ρ€Π°Π·Π½Ρ‹Ρ… случаСв.

1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° НСопрСдСлСно/NULL

ВсСгда добавляйтС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄ Ρ†ΠΈΠΊΠ»ΠΎΠΌ:

Если Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(ΠœΠΎΡΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ) Π’ΠΎΠ³Π΄Π°

Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из ΠœΠΎΡΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ Π¦ΠΈΠΊΠ»

// ...

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

Π˜Π½Π°Ρ‡Π΅

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ пуста ΠΈΠ»ΠΈ Π½Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π°!");

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

2. Π Π°Π±ΠΎΡ‚Π° с запросами

Для Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² запросов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ():

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

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

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

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.НомСнклатура);

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

3. ΠžΡ‚Π»Π°Π΄ΠΊΠ° COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Excel ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ COM:

Excel = Новый COMΠžΠ±ΡŠΠ΅ΠΊΡ‚("Excel.Application");

Лист = Excel.Workbooks(1).Sheets(1);

// ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ

Если Π’ΠΈΠΏΠ—Π½Ρ‡(Лист.UsedRange) = Π’ΠΈΠΏ("COMΠžΠ±ΡŠΠ΅ΠΊΡ‚") Π’ΠΎΠ³Π΄Π°

// Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ COM для ΠΎΠ±Ρ…ΠΎΠ΄Π°, Π° Π½Π΅ Для КаТдого

Π”Π°Π½Π½Ρ‹Π΅ = Лист.UsedRange.Value;

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

πŸ’‘

Если ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡŽ запросов Π² настройках ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Ρ‹. Иногда это ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ.

Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ Π»ΠΎΠ²ΡƒΡˆΠΊΠΈ ΠΈ Π½Π΅Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½ΡŽΠ°Π½ΡΡ‹

НСкоторыС особСнности ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ Π½Π΅ описаны Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ошибкС ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ:

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° РСшСниС
Π Π°Π±ΠΎΡ‚Π° с БоотвСтствиС Π’ вСрсиях 8.3.10–8.3.12 ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ для БоотвСтствиС ΠΌΠΎΠ³ вСсти сСбя Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈ динамичСском ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π² Ρ†ΠΈΠΊΠ»Π΅. Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡ‚Π΅ копию ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ: Копия = Новый БоотвСтствиС(Π˜ΡΡ…ΠΎΠ΄Π½ΠΎΠ΅Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅).
ИспользованиС Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π² Ρ†ΠΈΠΊΠ»Π°Ρ… Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ, Π½ΠΎ Ссли ΠΊΠ»ΡŽΡ‡ содСрТит спСцсимволы, ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ошибка ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ элСмСнту. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ провСряйтС ΠΊΠ»ΡŽΡ‡ΠΈ: Если Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°.Бвойство("ΠšΠ»ΡŽΡ‡") Π’ΠΎΠ³Π΄Π°....
Π Π°Π±ΠΎΡ‚Π° с Π”Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅ ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ Π”Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ массив Π±Π°ΠΉΡ‚ΠΎΠ² Π±Π΅Π· явного привСдСния. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠŸΠΎΡ‚ΠΎΠΊΠ’ΠŸΠ°ΠΌΡΡ‚ΠΈ ΠΈΠ»ΠΈ Π§Ρ‚Π΅Π½ΠΈΠ΅Π”Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ…Π”Π°Π½Π½Ρ‹Ρ…().
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ вСрсиях 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3.20+ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Массив с пустыми элСмСнтами) Π±Ρ‹Π»ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ. Если Π²Ρ‹ обновляли ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с коллСкциями Π² ΠΊΠΎΠ΄Π΅, написанном для старых вСрсий.

Ошибка Π² Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ: Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ?

Если Π²Ρ‹ Π½Π΅ программист, Π° ошибка Β«ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Β» появилась Π² стандартной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π° Π² 1Π‘:Π‘ΡƒΡ…Π³Π°Π»Ρ‚Π΅Ρ€ΠΈΠΈ 3.0 ΠΈΠ»ΠΈ 1Π‘:Π—Π£ΠŸ 3.1), слСдуйтС этому Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ:

  1. ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ

    Π’ мСню Π‘ΠΏΡ€Π°Π²ΠΊΠ° β†’ О ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ вСрсии. Если ΠΎΠ½ΠΈ устарСли, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ администратору ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Ρƒ 1Π‘ для обновлСния.

  2. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅

    Ошибка ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ΠΈΠ·-Π·Π° ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½Π½Ρ‹Ρ… справочников ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅:

    • πŸ”„ ВСстированиС ΠΈ исправлСниС Π˜Π‘ (АдминистрированиС β†’ ВСстированиС ΠΈ исправлСниС)
    • πŸ“Š ΠŸΠ΅Ρ€Π΅ΡΡ‡Π΅Ρ‚ ΠΈΡ‚ΠΎΠ³ΠΎΠ² (ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ β†’ Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° β†’ ΠŸΠ΅Ρ€Π΅ΡΡ‡Π΅Ρ‚ ΠΈΡ‚ΠΎΠ³ΠΎΠ²)
  • ВосстановитС ΠΈΠ· Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ

    Если ошибка появилась послС обновлСния ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±Π°Π·Π΅, ΠΎΡ‚ΠΊΠ°Ρ‚ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ вСрсии ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ.

  • ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ Π² ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ

    Π‘ΠΎΠ±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ для спСциалистов:

    • πŸ“ Π’ΠΎΡ‡Π½ΠΎΠ΅ мСсто возникновСния ошибки (Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°)
    • πŸ–₯️ ВСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ
    • πŸ“‹ Π›ΠΎΠ³ΠΈ ошибок (АдминистрированиС β†’ Π–ΡƒΡ€Π½Π°Π» рСгистрации)
  • ⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: НС ΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€, Ссли Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² своих дСйствиях! Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ со стороны 1Π‘ ΠΈ ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ΠΎΠ².
    ΠŸΠΎΡ‡Π΅ΠΌΡƒ ошибка ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΡ‡Π΅Π·Π°Ρ‚ΡŒ послС пСрСзапуска 1Π‘?

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

    ΠŸΡ€ΠΎΡ„ΠΈΠ»Π°ΠΊΡ‚ΠΈΠΊΠ° ошибок ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Π² 1Π‘

    Π§Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ риск возникновСния ошибки, слСдуйтС этим рСкомСндациям:

    • πŸ›‘οΈ ВсСгда провСряйтС ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π½Π° пустоту ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ() ΠΈΠ»ΠΈ Π’ΠΈΠΏΠ—Π½Ρ‡().
    • πŸ“¦ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ явноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ², особСнно ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ запросов ΠΈΠ»ΠΈ внСшними Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.
    • πŸ”„ Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π² процСссС ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, добавлСния/удалСния элСмСнтов Π² Ρ†ΠΈΠΊΠ»Π΅ Для КаТдого).
    • πŸ“š Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² коммСнтариях ΠΊ функциям ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°ΠΌ.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивом:

    ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΠœΠ°ΡΡΠΈΠ²(ΠœΠ°ΡΡΠΈΠ²Π”Π°Π½Π½Ρ‹Ρ…)
    

    Если НЕ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(ΠœΠ°ΡΡΠΈΠ²Π”Π°Π½Π½Ρ‹Ρ…) Π’ΠΎΠ³Π΄Π°

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

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

    Если Π’ΠΈΠΏΠ—Π½Ρ‡(ΠœΠ°ΡΡΠΈΠ²Π”Π°Π½Π½Ρ‹Ρ…) <> Π’ΠΈΠΏ("Массив") Π’ΠΎΠ³Π΄Π°

    Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Ошибка: оТидался массив!");

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

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

    Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из ΠœΠ°ΡΡΠΈΠ²Π”Π°Π½Π½Ρ‹Ρ… Π¦ΠΈΠΊΠ»

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

    // ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° элСмСнта

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

    Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ–ΡƒΡ€Π½Π°Π»Π Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ(НБтр("ru = 'Ошибка ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ элСмСнта: '") + ОписаниСОшибки());

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

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

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

    πŸ’‘

    ИспользованиС конструкции ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°...Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с коллСкциями позволяСт "ΠΏΠΎΠΉΠΌΠ°Ρ‚ΡŒ" ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΅Ρ‘ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Π½Π΅ прСрывая Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

    FAQ: ЧастыС вопросы ΠΏΠΎ ошибкС ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°

    ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ΠΈΠ·-Π·Π° обновлСния ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘?

    Π”Π°, Π² Π½ΠΎΠ²Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с коллСкциями. НапримСр, Π² 1Π‘ 8.3.20 Π±Ρ‹Π»ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ пустых элСмСнтов массивов, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ³Π»ΠΎ привСсти ΠΊ ошибкам Π² старом ΠΊΠΎΠ΄Π΅, Π³Π΄Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎΡΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ НСопрСдСлСно Π² ячСйках. ВсСгда тСстируйтС ΠΊΠΎΠ΄ послС обновлСния!

    Как ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ошибок Π² 1Π‘?

    Ошибка Β«ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ для значСния Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Β» ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ тСкст ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» Для КаТдого... ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ€ΠΎΠ΄Π΅ Найти(), ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ() для нСсовмСстимых Ρ‚ΠΈΠΏΠΎΠ². Π”Ρ€ΡƒΠ³ΠΈΠ΅ ошибки (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Β») связаны с отсутствиСм самого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π° Π½Π΅ с Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°.

    МоТно Π»ΠΈ ΠΎΡ‚Π»ΠΎΠ²ΠΈΡ‚ΡŒ эту ΠΎΡˆΠΈΠ±ΠΊΡƒ Π·Π°Ρ€Π°Π½Π΅Π΅, Π΄ΠΎ выполнСния ΠΊΠΎΠ΄Π°?

    К соТалСнию, статичСский Π°Π½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π° Π² 1Π‘ Π½Π΅ позволяСт Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ всС случаи ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ошибок ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ. Однако Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅:

    • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Vanessa-BDD для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ тСстирования.
    • Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ ЗамСдлСнная ΠΎΡ‚Π»Π°Π΄ΠΊΠ° Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ (БСрвис β†’ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ β†’ ΠžΡ‚Π»Π°Π΄ΠΊΠ°), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹Π΅ участки.
    • Π”ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΈΠΏΠΎΠ² Π² критичСски Π²Π°ΠΆΠ½Ρ‹Ρ… мСстах ΠΊΠΎΠ΄Π°.
    ΠŸΠΎΡ‡Π΅ΠΌΡƒ ошибка появляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° сСрвСрС, Π½ΠΎ Π½Π΅ Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅?

    Π­Ρ‚ΠΎ типичная ситуация, связанная с:

    • πŸ–₯️ Π Π°Π·Π½Ρ‹ΠΌΠΈ вСрсиями ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈ сСрвСрС.
    • πŸ“‘ ΠžΡ‚Π»ΠΈΡ‡ΠΈΡΠΌΠΈ Π² Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° сСрвСрС Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ NULL ΠΈΠ· Π±Π°Π·Ρ‹).
    • πŸ”’ ΠŸΡ€Π°Π²Π°ΠΌΠΈ доступа β€” Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСдоступны Π½Π° сСрвСрС.

    Для диагностики:

    1. Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ (Π‘ΠΏΡ€Π°Π²ΠΊΠ° β†’ О ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅).
    2. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π»ΠΎΠ³ΠΈ сСрвСра (АдминистрированиС β†’ Π–ΡƒΡ€Π½Π°Π» рСгистрации).
    3. ВоспроизвСдитС ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠžΡ‚Π»Π°Π΄ΠΊΠ΅ Π½Π° сСрвСрС (доступно Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅).
    Π•ΡΡ‚ΡŒ Π»ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ функция для бСзопасной ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ?

    Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

    Ѐункция Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°ΡΠ˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ(ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ, ДСйствиС)
    

    Если НЕ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ) Π’ΠΎΠ³Π΄Π°

    Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π›ΠΎΠΆΡŒ;

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

    Π’ΠΈΠΏΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ = Π’ΠΈΠΏΠ—Π½Ρ‡(ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ);

    Если Π’ΠΈΠΏΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ = Π’ΠΈΠΏ("Массив") Π˜Π›Π˜

    Π’ΠΈΠΏΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ = Π’ΠΈΠΏ("Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ") Π˜Π›Π˜

    Π’ΠΈΠΏΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ = Π’ΠΈΠΏ("БписокЗначСний") Π’ΠΎΠ³Π΄Π°

    Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ Π¦ΠΈΠΊΠ»

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

    ДСйствиС(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚);

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

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

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

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

    Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π˜ΡΡ‚ΠΈΠ½Π°;

    Π˜Π½Π°Ρ‡Π΅

    Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("НСвозмоТно ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ°: " + Π’ΠΈΠΏΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ);

    Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π›ΠΎΠΆΡŒ;

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

    ΠšΠΎΠ½Π΅Ρ†Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ

    // ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования:

    Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°ΡΠ˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ(МойМассив, Новый ДСйствиС("Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚)"));