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

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

ВсС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ для Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… вСрсий ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3 ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹ Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с послСдними обновлСниями. Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ со ΡΡ‚Π°Ρ€ΡˆΠΈΠΌΠΈ Ρ€Π΅Π»ΠΈΠ·Π°ΠΌΠΈ (8.2 ΠΈΠ»ΠΈ 8.1), Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΠΈ β€” ΠΎΠ± этом ΠΌΡ‹ Ρ‚ΠΎΠΆΠ΅ упомянСм Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ….

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½Π° Π½ΡƒΠΆΠ½Π°

Π’Π°Π±Π»ΠΈΡ†Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ) β€” это динамичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² 1Π‘, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт собой Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. По сути, это Π°Π½Π°Π»ΠΎΠ³ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² памяти, которая Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ обращСния ΠΊ Π‘Π£Π‘Π” ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ быстрСС ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈ срСдних ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ прСимущСства Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

  • πŸ”Ή Высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ β€” всС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти.
  • πŸ”Ή Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ β€” ΠΌΠΎΠΆΠ½ΠΎ динамичСски Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ/ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΈ строки.
  • πŸ”Ή Удобство ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ β€” встроСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для поиска, сортировки, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ.
  • πŸ”Ή Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π°ΠΌΠΈ β€” Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ источники Π΄Π°Π½Π½Ρ‹Ρ… для Π‘ΠšΠ”.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ сцСнарии использования: 1) ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ расчёты (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сводных Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ записью Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚). 2) ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников (Excel, JSON, XML) ΠΏΠ΅Ρ€Π΅Π΄ сохранСниСм Π² Π±Π°Π·Ρƒ. 3) РСализация слоТной бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π΅ΠΉ манипуляций с Π½Π°Π±ΠΎΡ€Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для хранСния Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (ΡΠ²Ρ‹ΡˆΠ΅ 10 000 строк). Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ спСциализированныС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ инициализация Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² 1Π‘ ΠΌΠΎΠΆΠ½ΠΎ нСсколькими способами. Π‘Π°ΠΌΡ‹ΠΉ простой β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ конструктор Новый Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π”Π°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ структуру ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ, ΠΈΡ… Ρ‚ΠΈΠΏΡ‹ ΠΈ, ΠΏΡ€ΠΈ нСобходимости, Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ создания:

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

// ДобавляСм ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠ°

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НаимСнованиС", Новый ОписаниСВипов("Π‘Ρ‚Ρ€ΠΎΠΊΠ°"));

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", Новый ОписаниСВипов("Число"));

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π¦Π΅Π½Π°", Новый ОписаниСВипов("Число", 10, 2)); // Число с 2 Π·Π½Π°ΠΊΠ°ΠΌΠΈ послС запятой

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π”Π°Ρ‚Π°ΠŸΠΎΡΡ‚ΡƒΠΏΠ»Π΅Π½ΠΈΡ", Новый ОписаниСВипов("Π”Π°Ρ‚Π°"));

Для ускорСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ с большими Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ рСкомСндуСтся Π·Π°Ρ€Π°Π½Π΅Π΅ Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ΅ количСство строк:

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

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Код", Новый ОписаниСВипов("Π‘Ρ‚Ρ€ΠΎΠΊΠ°"));

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π‘ΡƒΠΌΠΌΠ°", Новый ОписаниСВипов("Число"));

// Π Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ 1000 строк

Π’Π—.Π Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ(1000);

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ способ β€” созданиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π½Π° основС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ (ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ структуры):

Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ’Π— = ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠ’Π°Π±Π»ΠΈΡ†ΡƒΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠΉΠ˜Π·ΠšΡƒΠ΄Π°Π’ΠΎ();

НоваяВЗ = Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ’Π—.Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ();

πŸ“Š Какой способ создания Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ Новый Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ
ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈΠ· запроса
Π”Ρ€ΡƒΠ³ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…

ПослС создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ значСния ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками:

ΠœΠ΅Ρ‚ΠΎΠ΄ ОписаниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ДобавляСт Π½ΠΎΠ²ΡƒΡŽ строку Π² ΠΊΠΎΠ½Π΅Ρ† Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ НоваяБтрока = Π’Π—.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();
НоваяБтрока.НаимСнованиС = "Π’ΠΎΠ²Π°Ρ€ 1";
Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ() ВставляСт строку Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Π’Π—.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(0); // Π’ Π½Π°Ρ‡Π°Π»ΠΎ
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ() УдаляСт строку ΠΏΠΎ индСксу Π’Π—.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(2); // УдаляСм Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ строку
ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() УдаляСт всС строки, сохраняя ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π’Π—.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ();
Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ() МассовоС Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ значСниями ΠΈΠ· массива Π’Π—.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ(ΠœΠ°ΡΡΠΈΠ²Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, "Π¦Π΅Π½Π°");

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ комплСксного заполнСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹:

// ДобавляСм 3 строки с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

Для Π‘Ρ‡ = 1 По 3 Π¦ΠΈΠΊΠ»

НоваяБтрока = Π’Π—.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

НоваяБтрока.НаимСнованиС = "Π’ΠΎΠ²Π°Ρ€ " + Π‘Ρ‡;

НоваяБтрока.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = Π‘Ρ‡ * 10;

НоваяБтрока.Π¦Π΅Π½Π° = 100 * Π‘Ρ‡;

НоваяБтрока.Π”Π°Ρ‚Π°ΠŸΠΎΡΡ‚ΡƒΠΏΠ»Π΅Π½ΠΈΡ = ВСкущаяДата() - Π‘Ρ‡;

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

// ИзмСняСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС

Π’Π—[0].Π¦Π΅Π½Π° = 150.50;

// УдаляСм Π²Ρ‚ΠΎΡ€ΡƒΡŽ строку (индСкс 1)

Π’Π—.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(1);

Для массового заполнСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· запроса ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ():

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

Запрос.ВСкст = "ВЫБРАВЬ

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

НомСнклатура.Артикул КАК Артикул

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

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

Π’Π—.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π—Π°ΠΏΡ€ΠΎΡΠ°);

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ массовым Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

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

Поиск ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Одной ΠΈΠ· самых вострСбованных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ являСтся поиск строк ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ критСриям. Π’ 1Π‘ для этого прСдусмотрСны нСсколько ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²:

1. ΠœΠ΅Ρ‚ΠΎΠ΄ НайтиБтроки() β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив строк, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ:

УсловиС = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("НаимСнованиС", "Π’ΠΎΠ²Π°Ρ€ 1");

НайдСнныСБтроки = Π’Π—.НайтиБтроки(УсловиС);

Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из НайдСнныСБтроки Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π°);

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

2. ΠœΠ΅Ρ‚ΠΎΠ΄ Найти() β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΉ строки ΠΈΠ»ΠΈ НСопрСдСлСно:

Π˜Π½Π΄Π΅ΠΊΡΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ = Π’Π—.Найти(Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("Артикул", "АРВ001"));

Если Π˜Π½Π΄Π΅ΠΊΡΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("НайдСна строка с индСксом: " + Π˜Π½Π΄Π΅ΠΊΡΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ);

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

3. Поиск с использованиСм ΠžΡ‚Π±ΠΎΡ€ β€” позволяСт Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ слоТныС условия:

ΠžΡ‚Π±ΠΎΡ€ = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°;

ΠžΡ‚Π±ΠΎΡ€.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("Π”Π°Ρ‚Π°ΠŸΠΎΡΡ‚ΡƒΠΏΠ»Π΅Π½ΠΈΡ", Новый УсловиСБравнСния(ВСкущаяДата() - 30, ВидБравнСния.Π‘ΠΎΠ»ΡŒΡˆΠ΅Π˜Π»ΠΈΠ Π°Π²Π½ΠΎ));

ΠžΡ‚Π±ΠΎΡ€.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", Новый УсловиСБравнСния(50, ВидБравнСния.МСньшС));

НайдСнныСБтроки = Π’Π—.НайтиБтроки(ΠžΡ‚Π±ΠΎΡ€);

Для ускорСния поиска Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ индСкс ΠΏΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅:

Π’Π—.Π˜Π½Π΄Π΅ΠΊΡΡ‹.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ИндСксПоНаимСнованию");

Π’Π—.Π˜Π½Π΄Π΅ΠΊΡΡ‹.ИндСксПоНаимСнованию.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НаимСнованиС");

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Π΄Π΅ΠΊΡΡ‹ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΠΊΠΎΡ€ΡΡŽΡ‚ поиск, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ памяти ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅. НС создавайтС индСксы для ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ поиск выполняСтся Ρ€Π΅Π΄ΠΊΠΎ.

Π’Π—.Π˜Π½Π΄Π΅ΠΊΡΡ‹.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π˜Π½Π΄Π΅ΠΊΡΠŸΠΎΠΡ€Ρ‚ΠΈΠΊΡƒΠ»ΡƒΠ˜Π”Π°Ρ‚Π΅");

Π’Π—.Π˜Π½Π΄Π΅ΠΊΡΡ‹.Π˜Π½Π΄Π΅ΠΊΡΠŸΠΎΠΡ€Ρ‚ΠΈΠΊΡƒΠ»ΡƒΠ˜Π”Π°Ρ‚Π΅.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Артикул", "Π”Π°Ρ‚Π°ΠŸΠΎΡΡ‚ΡƒΠΏΠ»Π΅Π½ΠΈΡ");-->

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° строк Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ выполняСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ(). МоТно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ нСсколько ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ для ΠΌΠ½ΠΎΠ³ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ сортировки:

// Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ Ρ†Π΅Π½Ρ‹, Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ наимСнования

Π’Π—.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ("Π¦Π΅Π½Π° Π£Π±Ρ‹Π², НаимСнованиС Π’ΠΎΠ·Ρ€");

Для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ(). Π­Ρ‚ΠΎ Π°Π½Π°Π»ΠΎΠ³ SQL-ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° GROUP BY:

// Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ "ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ" ΠΈ суммируСм количСство

Π’Π—.Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ("ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ", "ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", "Π‘ΡƒΠΌΠΌΠ°ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π°");

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ слоТной Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ с нСсколькими Π°Π³Ρ€Π΅Π³Π°Ρ‚Π½Ρ‹ΠΌΠΈ функциями:

ΠŸΡ€Π°Π²ΠΈΠ»Π°Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ = Новый Массив;

ΠŸΡ€Π°Π²ΠΈΠ»Π°Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ°Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ("ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ"));

ΠŸΡ€Π°Π²ΠΈΠ»Π°Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый АгрСгатнаяЀункцияВаблицыЗначСний("Π‘ΡƒΠΌΠΌΠ°(Π¦Π΅Π½Π°)", "Π¦Π΅Π½Π°"));

ΠŸΡ€Π°Π²ΠΈΠ»Π°Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый АгрСгатнаяЀункцияВаблицыЗначСний("ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ(ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ)", "ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ"));

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π’Π—.Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ(ΠŸΡ€Π°Π²ΠΈΠ»Π°Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ);

Для Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ отобраТСния иСрархичСских Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π°Ρ…) ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π˜Ρ‚ΠΎΠ³ΠΈ():

Π’Π—.Π˜Ρ‚ΠΎΠ³ΠΈ.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ", "Π‘ΡƒΠΌΠΌΠ°", Π’ΠΈΠΏΠ˜Ρ‚ΠΎΠ³ΠΎΠ²Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.Π‘ΡƒΠΌΠΌΠ°);

Π’Π—.Π˜Ρ‚ΠΎΠ³ΠΈ.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ", "ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", Π’ΠΈΠΏΠ˜Ρ‚ΠΎΠ³ΠΎΠ²Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ);

Π’Π—.ΠŸΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΠ˜Ρ‚ΠΎΠ³ΠΈ();

Π§Π΅ΠΌ отличаСтся Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ() ΠΎΡ‚ Π˜Ρ‚ΠΎΠ³ΠΈ()?

ΠœΠ΅Ρ‚ΠΎΠ΄ Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π˜Ρ‚ΠΎΠ³ΠΈ() добавляСт ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹Π΅ строки Π² ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π±Π΅Π· измСнСния Π΅Ρ‘ структуры. Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ() ΠΏΠΎΠ»Π΅Π·Π΅Π½ для Π°Π½Π°Π»ΠΈΠ·Π°, Π° Π˜Ρ‚ΠΎΠ³ΠΈ() β€” для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π°Ρ….

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими ΠΎΠ±ΡŠΡ‘ΠΌΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π²Π°ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Π’ΠΎΡ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ:

1. Π Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ памяти:

ВсСгда Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΠΉΡ‚Π΅ строки Π·Π°Ρ€Π°Π½Π΅Π΅, Ссли Π·Π½Π°Π΅Ρ‚Π΅ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΡ‘ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…:

Π’Π—.Π Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ(10000);

2. ΠœΠΈΠ½ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ:

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅/ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ послС заполнСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠ΅Ρ€Π΅Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ памяти. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠΉΡ‚Π΅ структуру Π·Π°Ρ€Π°Π½Π΅Π΅.

3. ИспользованиС индСксов:

Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡ‚Π΅ индСксы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ часто выполняСтся поиск. Π˜Π·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ индСксы Π·Π°ΠΌΠ΅Π΄Π»ΡΡŽΡ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строк.

4. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…:

Если Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 10 000 строк, рассмотритС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹:

- Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π½Π° нСсколько Ρ‚Π°Π±Π»ΠΈΡ†

- ИспользованиС Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

- ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π”Π΅Ρ€Π΅Π²ΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для иСрархичСских Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…:

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

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Код");

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НаимСнованиС");

// Π Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ΅ количСство

Π’Π—.Π Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ(50000);

// Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΡƒΡŽ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ

Запрос = Новый Запрос("ВЫБРАВЬ ΠŸΠ•Π Π’Π«Π• 50000 Код, НаимСнованиС Π˜Π— Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура");

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

Π’Π—.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚);

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π½ΠΈΠΆΠ΅ 8.3.10 ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ() ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° запроса Ρ€Π°Π±ΠΎΡ‚Π°Π» Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ старыС Ρ€Π΅Π»ΠΈΠ·Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†ΠΈΠΊΠ» с постраничной Π²Ρ‹Π±ΠΎΡ€ΠΊΠΎΠΉ.

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

Π”Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ошибки ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ΠΎΡ‚ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространённыС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ способы ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ:

1. Ошибка "ИндСкс Π²Π½Π΅ Π³Ρ€Π°Π½ΠΈΡ†"

Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ строкС. ВсСгда провСряйтС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Найти():

ИндСкс = Π’Π—.Найти(УсловиС);

Если ИндСкс = НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° случая, ΠΊΠΎΠ³Π΄Π° строка Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°

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

2. ΠŸΠΎΡ‚Π΅Ρ€Ρ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ свСрткС

ΠœΠ΅Ρ‚ΠΎΠ΄ Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ() Π½Π΅ сохраняСт исходныС Π΄Π°Π½Π½Ρ‹Π΅ β€” ΠΎΠ½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ. ВсСгда сохраняйтС ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π», Ссли ΠΎΠ½ Π΅Ρ‰Ρ‘ Π½ΡƒΠΆΠ΅Π½:

Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ’Π— = Π’Π—.Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ();

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π’Π—.Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ(...);

3. НСсовпадСниС Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅

ΠŸΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· запроса ΠΈΠ»ΠΈ массива ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ источников:

// Ошибка: пытаСмся Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ строку Π² Ρ‡ΠΈΡΠ»ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π¦Π΅Π½Π°", Новый ОписаниСВипов("Число"));

Π’Π—.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ(Новый Массив("100", "200"), "Π¦Π΅Π½Π°"); // ПадСниС!

4. Π£Ρ‚Π΅Ρ‡ΠΊΠΈ памяти

Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ. ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ освобоТдайтС рСсурсы:

Π’Π— = НСопрСдСлСно; // ОсвобоТдаСм ΠΏΠ°ΠΌΡΡ‚ΡŒ

5. НСэффСктивныС Ρ†ΠΈΠΊΠ»Ρ‹

Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ² ΠΏΠΎ строкам Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Для слоТных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

πŸ’‘

ВсСгда провСряйтС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² поиска (Найти(), НайтиБтроки()) Π½Π° НСопрСдСлСно ΠΈΠ»ΠΈ пустой массив. Π­Ρ‚ΠΎ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ ΠΎΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ошибок Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅: ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ· Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡

Рассмотрим нСсколько Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, Π³Π΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡ‹.

Π—Π°Π΄Π°Ρ‡Π° 1: Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ прайс-листа

НуТно ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ†Π΅Π½Ρ‹ Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Ρ‹ с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ скидок ΠΈ вывСсти Π² Excel.

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

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Артикул");

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НаимСнованиС");

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π¦Π΅Π½Π°Π‘ΠΎΠ‘ΠΊΠΈΠ΄ΠΊΠΎΠΉ");

// ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ запросом

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

Запрос.ВСкст = "ВЫБРАВЬ

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

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

ЦСныНомСнклатуры.Π¦Π΅Π½Π° * (1 - Π‘ΠΊΠΈΠ΄ΠΊΠΈ.ΠŸΡ€ΠΎΡ†Π΅Π½Ρ‚/100) КАК Π¦Π΅Π½Π°Π‘ΠΎΠ‘ΠΊΠΈΠ΄ΠΊΠΎΠΉ

Π˜Π— ...

Π“Π”Π• ...";

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

// Π’Ρ‹Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π² Excel

Π’Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΉΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ = Новый Π’Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΉΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚;

Π’Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΉΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.ВывСсти(Π’Π—);

Π’Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΉΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ("C:\Pricelist.xlsx", Π’ΠΈΠΏΠ€Π°ΠΉΠ»Π°Π’Π°Π±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.XLSX);

Π—Π°Π΄Π°Ρ‡Π° 2: Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… вСрсий Π΄Π°Π½Π½Ρ‹Ρ…

НуТно Π½Π°ΠΉΡ‚ΠΈ различия ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌΠΈ ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ остатками Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ².

Π’Π΅ΠΊΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ = ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠ’Π΅ΠΊΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ();

ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ = ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ();

// ДобавляСм ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ для ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

Π’Π΅ΠΊΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ИзмСнСниС");

// Π‘Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅ΠΌ ΠΏΠΎ Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Ρƒ

Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из Π’Π΅ΠΊΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ Π¦ΠΈΠΊΠ»

НайдСно = ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ.Найти(Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("Артикул", Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Артикул));

Если НайдСно <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

Если ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ[НайдСно].ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ <> Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π’ΠΎΠ³Π΄Π°

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ИзмСнСниС = "ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ измСнилось";

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

Π˜Π½Π°Ρ‡Π΅

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ИзмСнСниС = "Новый Ρ‚ΠΎΠ²Π°Ρ€";

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

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

Π—Π°Π΄Π°Ρ‡Π° 3: ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ динамичСского ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π°

Π€ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ ΡΠ²ΠΎΠ΄Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΏΡ€ΠΎΠ΄Π°ΠΆ ΠΏΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°ΠΌ ΠΈ катСгориям Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ².

ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ = ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠ”Π°Π½Π½Ρ‹Π΅ΠŸΡ€ΠΎΠ΄Π°ΠΆ();

// Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρƒ ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ

ΠŸΡ€Π°Π²ΠΈΠ»Π° = Новый Массив;

ΠŸΡ€Π°Π²ΠΈΠ»Π°.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ°Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ("ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€", "ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ"));

ΠŸΡ€Π°Π²ΠΈΠ»Π°.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый АгрСгатнаяЀункцияВаблицыЗначСний("Π‘ΡƒΠΌΠΌΠ°(Π‘ΡƒΠΌΠΌΠ°)", "Π‘ΡƒΠΌΠΌΠ°ΠŸΡ€ΠΎΠ΄Π°ΠΆ"));

ΠŸΡ€Π°Π²ΠΈΠ»Π°.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый АгрСгатнаяЀункцияВаблицыЗначСний("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°)", "ΠšΠΎΠ»Π²ΠΎΠ—Π°ΠΊΠ°Π·ΠΎΠ²"));

БводнаяВаблица = ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ.Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ(ΠŸΡ€Π°Π²ΠΈΠ»Π°);

// ДобавляСм ΠΈΡ‚ΠΎΠ³ΠΈ

БводнаяВаблица.Π˜Ρ‚ΠΎΠ³ΠΈ.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€", "Π‘ΡƒΠΌΠΌΠ°ΠŸΡ€ΠΎΠ΄Π°ΠΆ", Π’ΠΈΠΏΠ˜Ρ‚ΠΎΠ³ΠΎΠ²Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.Π‘ΡƒΠΌΠΌΠ°);

БводнаяВаблица.ΠŸΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΠ˜Ρ‚ΠΎΠ³ΠΈ();

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

Как ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ вмСстС со всСми Π΄Π°Π½Π½Ρ‹ΠΌΠΈ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ():

ΠšΠΎΠΏΠΈΡΠ’Π— = Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ’Π—.Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ();

Π­Ρ‚ΠΎ создаст ΠΏΠΎΠ»Π½ΡƒΡŽ копию со структурой ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ, индСксами ΠΈ всСми строками.

МоТно Π»ΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (справочники, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹)?

Π”Π°, Π½ΠΎ с ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΊΠ°ΠΌΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Ρ‚ΠΈΠΏ БправочникБсылка.НомСнклатура), Π½ΠΎ Π½Π΅ сами ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НомСнклатура", Новый ОписаниСВипов("БправочникБсылка.НомСнклатура"));

НоваяБтрока = Π’Π—.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

НоваяБтрока.НомСнклатура = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.НомСнклатура.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡŽ("Π’ΠΎΠ²Π°Ρ€ 1");

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ сСриализации (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ записи Π² Ρ„Π°ΠΉΠ») Ρ‚Π°ΠΊΠΈΠ΅ ссылки прСвратятся Π² пустыС значСния.

Как ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² JSON?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π—Π°ΠΏΠΈΡΡŒJSON:

Π—Π°ΠΏΠΈΡΡŒ = Новый Π—Π°ΠΏΠΈΡΡŒJSON;

Π—Π°ΠΏΠΈΡΡŒ.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΡƒ();

Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒJSON(Π—Π°ΠΏΠΈΡΡŒ, Π’Π—);

JSONΠ‘Ρ‚Ρ€ΠΎΠΊΠ° = Π—Π°ΠΏΠΈΡΡŒ.Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ();

Для ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π§Ρ‚Π΅Π½ΠΈΠ΅JSON.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Найти() Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ Π½Π° большой Ρ‚Π°Π±Π»ΠΈΡ†Π΅?

Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, Π½Π΅ создан индСкс ΠΏΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ выполняСтся поиск. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ индСкс:

Π’Π—.Π˜Π½Π΄Π΅ΠΊΡΡ‹.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π˜Π½Π΄Π΅ΠΊΡΠŸΠΎΠΡ€Ρ‚ΠΈΠΊΡƒΠ»Ρƒ");

Π’Π—.Π˜Π½Π΄Π΅ΠΊΡΡ‹.Π˜Π½Π΄Π΅ΠΊΡΠŸΠΎΠΡ€Ρ‚ΠΈΠΊΡƒΠ»Ρƒ.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Артикул");

Π’Π°ΠΊΠΆΠ΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ простой Ρ‚ΠΈΠΏ (строка, число, Π΄Π°Ρ‚Π°) β€” поиск ΠΏΠΎ составным Ρ‚ΠΈΠΏΠ°ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, БправочникБсылка) всСгда ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅.

Как ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ?

Π•ΡΡ‚ΡŒ нСсколько способов:

1. ΠœΠ΅Ρ‚ΠΎΠ΄ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() Π² Ρ†ΠΈΠΊΠ»Π΅:

Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ° Из Π’Π°Π±Π»ΠΈΡ†Π°2 Π¦ΠΈΠΊΠ»

НоваяБтрока = Π’Π°Π±Π»ΠΈΡ†Π°1.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡΠ‘Π²ΠΎΠΉΡΡ‚Π²(НоваяБтрока, Π‘Ρ‚Ρ€ΠΎΠΊΠ°);

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

2. ΠœΠ΅Ρ‚ΠΎΠ΄ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ() (быстрСС для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†):

Π’Π°Π±Π»ΠΈΡ†Π°1.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ(Π’Π°Π±Π»ΠΈΡ†Π°2);

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ структуры Ρ‚Π°Π±Π»ΠΈΡ† Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ (ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΈ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ).