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

Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ зависит ΠΎΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ. ΠΠ΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ сущСствСнному замСдлСнию Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, особСнно ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ΠΎΠ². Π’ этом ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ основныС способы ΠΎΠ±Ρ…ΠΎΠ΄Π° элСмСнтов справочника, рассмотрим Π½ΡŽΠ°Π½ΡΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ВыборкаБписка ΠΈ Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°Π”Π΅Ρ€Π΅Π²Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ΄Π΅Π»ΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ вопросам ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со справочниками Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ 7.7

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ 1Π‘ 7.7 прСдставляСт собой ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ структуру Π΄Π°Π½Π½Ρ‹Ρ…, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· элСмСнтов ΠΈ Π³Ρ€ΡƒΠΏΠΏ. Для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ доступа ΠΊ этим Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ инициализируСтся Ρ‡Π΅Ρ€Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠžΠ±ΡŠΠ΅ΠΊΡ‚(). Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ сам ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ справочника слуТит лишь Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Ρ…ΠΎΠ΄Π°; для нСпосрСдствСнного доступа ΠΊ записям Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° всСгда начинаСтся с получСния ссылки Π½Π° сам справочник. Π­Ρ‚ΠΎ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ шаг, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ запрос ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹Ρ… запросов Π² Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… вСрсиях, здСсь ΠΌΡ‹ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ COM-Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, спСцифичными для срСды выполнСния сСдьмой вСрсии.

Рассмотрим Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ для любого сцСнария ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

Π‘ΠΏΡ€ = Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠžΠ±ΡŠΠ΅ΠΊΡ‚("Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура");

Если Π‘ΠΏΡ€.ΠŸΡƒΡΡ‚ΠΎΠΉ() = 1 Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ ΠΈΠ»ΠΈ пуст");

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

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

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

πŸ’‘

ВсСгда провСряйтС сущСствованиС справочника ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΎΠΉ создания Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ критичСских ошибок выполнСния Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ прСдприятия.

ΠœΠ΅Ρ‚ΠΎΠ΄ ВыборкаБписка для плоского ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°

НаиболСС распространСнным способом ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… являСтся использованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ВыборкаБписка(). Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚, ΠΊΠΎΠ³Π΄Π° иСрархия справочника Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния, ΠΈ трСбуСтся ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ всС элСмСнты ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, игнорируя ΠΈΡ… ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊ Ρ‚Π΅ΠΌ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹ΠΌ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ. Алгоритм Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ плоский список всСх записСй, доступных ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ согласно ΠΏΡ€Π°Π²Π°ΠΌ доступа.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ этим ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ стандартный интСрфСйс Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠŸΠ΅Ρ€Π²Π°Ρ() для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ ΠΈ Π‘Π»Π΅Π΄() для пСрСмСщСния ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ записи. Π¦ΠΈΠΊΠ» продолТаСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘Π»Π΅Π΄() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ истину, сигнализируя ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° всСх элСмСнтов Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Ρ‹:

Π‘ΠΏΡ€ = Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠžΠ±ΡŠΠ΅ΠΊΡ‚("Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура");

Π’Ρ‹Π±ΠΎΡ€ΠΊΠ° = Π‘ΠΏΡ€.ВыборкаБписка();

Пока Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π‘Π»Π΅Π΄() = 1 Π¦ΠΈΠΊΠ»

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

Если Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π­Ρ‚ΠΎΠ“Ρ€ΡƒΠΏΠΏΠ°() = 0 Π’ΠΎΠ³Π΄Π°

// Π›ΠΎΠ³ΠΈΠΊΠ° для элСмСнта

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

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ИспользованиС ВыборкаБписка() ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏ. Если ваша Π»ΠΎΠ³ΠΈΠΊΠ° зависит ΠΎΡ‚ структуры Π΄Π΅Ρ€Π΅Π²Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, расчСт сСбСстоимости ΠΏΠΎ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ), этот ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

Π˜Π΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΎΠ±Ρ…ΠΎΠ΄ Ρ‡Π΅Ρ€Π΅Π· Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°Π”Π΅Ρ€Π΅Π²Π°

Когда структура Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°Π”Π΅Ρ€Π΅Π²Π°(). Он позволяСт traversing (ΠΎΠ±Ρ…ΠΎΠ΄) справочника с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ влоТСнности. Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для Π·Π°Π΄Π°Ρ‡, Π³Π΄Π΅ порядок ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ зависит ΠΎΡ‚ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΡƒΠ·Π»ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ расчСтС ΠΈΡ‚ΠΎΠ³ΠΎΠ² ΠΏΠΎ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ ΠΈΠ»ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² со слоТной структурой.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π΅Ρ€Π΅Π²Π° ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ свойствами, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ ΠΈ Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ. Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ влоТСнности Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ элСмСнта. ΠŸΡ€ΠΈ использовании этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° систСма автоматичСски управляСт ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ ΠΈ элСмСнтами Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½ΠΈΡ….

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики иСрархичСского ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°:

  • 🌳 БохраняСт структуру влоТСнности элСмСнтов справочника.
  • πŸ“‚ ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΈ элСмСнты с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π­Ρ‚ΠΎΠ“Ρ€ΡƒΠΏΠΏΠ°().
  • πŸ” ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.
  • ⚑ ΠœΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ плоского списка ΠΈΠ·-Π·Π° слоТности Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π΅Ρ€Π΅Π²ΠΎΠΌ часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ рСкурсивной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π₯отя встроСнныС срСдства 7.7 ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ это Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ влоТСнности ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ чистый ΠΊΠΎΠ΄. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π³Ρ€ΡƒΠΏΠΏ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ уровня, Ρ„ΠΎΠΊΡƒΡΠΈΡ€ΡƒΡΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° листовых элСмСнтах.

πŸ“Š Какой ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
ВыборкаБписка
Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°Π”Π΅Ρ€Π΅Π²Π°
Π§Π΅Ρ€Π΅Π· запрос SQL
НС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΡŽ Π² 1Π‘ 7.7

Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΡ‚Π±ΠΎΡ€ элСмСнтов

ΠŸΠ΅Ρ€Π΅Π±ΠΎΡ€ всСго справочника "Π² Π»ΠΎΠ±" часто нСцСлСсообразСн с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ позволяСт ΡΡƒΠ·ΠΈΡ‚ΡŒ ΠΊΡ€ΡƒΠ³ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… записСй Π΅Ρ‰Π΅ Π½Π° этапС формирования Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Ρ‡Ρ‚ΠΎ сущСствСнно экономит рСсурсы процСссора ΠΈ врСмя выполнСния.

Для установки Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ свойство Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ”Π°Ρ‚Ρƒ (для пСриодичСских справочников) ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ установки ΠΎΡ‚Π±ΠΎΡ€Π°, зависящиС ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°. Π’ 1Π‘ 7.7 Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ часто рСализуСтся Ρ‡Π΅Ρ€Π΅Π· установку условий ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ условий Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ.

Рассмотрим Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с основными ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ, доступными для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ:

ΠœΠ΅Ρ‚ΠΎΠ΄ / Бвойство НазначСниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ”Π°Ρ‚Ρƒ(Π”Π°Ρ‚Π°) Π’Ρ‹Π±ΠΎΡ€ΠΊΠ° Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π΄Π°Ρ‚Ρƒ Π‘ΠΏΡ€.Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ”Π°Ρ‚Ρƒ(Π”Π°Ρ‚Π°ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ)
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ ΠΎΠ΄ΠΈΡ‚Π΅Π»Ρ(Бсылка) Π’Ρ‹Π±ΠΎΡ€ΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ элСмСнтов ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ Π‘ΠΏΡ€.Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ ΠΎΠ΄ΠΈΡ‚Π΅Π»Ρ(Π“Ρ€ΡƒΠΏΠΏΠ°)
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ’ΠΈΠ΄(Π’ΠΈΠ΄) ΠžΡ‚Π±ΠΎΡ€ ΠΏΠΎ Π²ΠΈΠ΄Ρƒ элСмСнта (для Π²ΠΈΠ΄ΠΎΠ²Ρ‹Ρ… справочников) Π‘ΠΏΡ€.Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ’ΠΈΠ΄(ВидНомСнклатуры)
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠŸΠΎΠΌΠ΅Ρ‚ΠΊΡƒΠ£Π΄Π°Π»Π΅Π½ΠΈΡ(Π€Π»Π°Π³) Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… Π½Π° ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π‘ΠΏΡ€.Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠŸΠΎΠΌΠ΅Ρ‚ΠΊΡƒΠ£Π΄Π°Π»Π΅Π½ΠΈΡ(0)

Π“Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎΠ΅ использованиС этих инструмСнтов позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ лишнСй Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° систСму. ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ тысячи записСй ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ условиС Если Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°, Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡ‚ΡΠ΅Ρ‡ΡŒ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ запроса ΠΊ Π±Π°Π·Π΅. Π­Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ "Π·ΠΎΠ»ΠΎΡ‚ΠΎΠ³ΠΎ стандарта" ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° Π² 1Π‘.

πŸ’‘

ВсСгда устанавливайтС ΠΎΡ‚Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π° ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°

Одной ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° справочника являСтся ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ содСрТащихся Π² Π½Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ 1Π‘ 7.7 процСсс записи ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ являСтся Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ, Π½ΠΎ измСнСния Π½Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ автоматичСски. Для фиксации Π½ΠΎΠ²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ явно Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ().

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

Алгоритм бСзопасного измСнСния Π΄Π°Π½Π½Ρ‹Ρ… выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • πŸ“ Π‘Ρ‡ΠΈΡ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ значСния Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°.
  • πŸ”„ ВычислСниС Π½ΠΎΠ²ΠΎΠ³ΠΎ значСния согласно бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ΅.
  • βœ… ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° валидности Π½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….
  • πŸ’Ύ Π’Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ() для сохранСния.

Если Π² процСссС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка, транзакция (Ссли ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ) ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΠ°Ρ‚Π°Π½Π°. Π’ 7.7 ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ транзакциями осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ() ΠΈ Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ(). Π­Ρ‚ΠΎ позволяСт Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π»ΠΈΠ±ΠΎ всС измСнСния Π±ΡƒΠ΄ΡƒΡ‚ сохранСны, Π»ΠΈΠ±ΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ примСнится Π² случаС сбоя.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ИзмСнСниС ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² (Код, НаимСнованиС) Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ нСпрСдсказуСмому повСдСнию Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Ссли ΠΎΠ½Π° зависит ΠΎΡ‚ сортировки ΠΏΠΎ этим полям.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ…

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

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈ самый Π²Π°ΠΆΠ½Ρ‹ΠΉ совСт β€” ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ количСство ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ диску. КаТдоС Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ свойства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Если Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ для вычислСний. Π’Π°ΠΊΠΆΠ΅ стоит ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°, Π³Π΄Π΅ ΠΎΠ΄ΠΈΠ½ справочник пСрСбираСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ.

Для слоТных Π²Ρ‹Π±ΠΎΡ€ΠΎΠΊ часто эффСктивнСС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ язык запросов (Ссли конфигурация ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚) ΠΈΠ»ΠΈ прямыС SQL-запросы, хотя Π² классичСской 7.7 основным инструмСнтом остаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ модСль. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ обновлСния интСрфСйса ΠΈ рСгистрации ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Π‘Π΅ΠΊΡ€Π΅Ρ‚ быстрой ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ обновлСния Ρ„ΠΎΡ€ΠΌ ΠΈ отлоТСнная запись ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π² 3-5 Ρ€Π°Π· Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… массивах Π΄Π°Π½Π½Ρ‹Ρ….

НС стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ индСксации ΠΏΠΎΠ»Π΅ΠΉ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ производится ΠΎΡ‚Π±ΠΎΡ€. Если Π²Ρ‹ часто Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚Π΅ справочник ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρƒ, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ для Π½Π΅Π³ΠΎ настроСн индСкс Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅. Π­Ρ‚ΠΎ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ мСняСт ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ формирования Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ситуаций

Π’ процСссС ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° справочника ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ошибки: ΠΎΡ‚ отсутствия ΠΏΡ€Π°Π² доступа Π΄ΠΎ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ записСй Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ. robust-ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Ρ‚Π°ΠΊΠΈΡ… ситуаций, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π»Π°ΡΡŒ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎ. Π’ 1Π‘ 7.7 для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ конструкции ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ(). Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Если запись Π½Π΅ ΡƒΠ΄Π°Π»Π°ΡΡŒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρƒ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ, Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠ»ΡŽΡ‡Π° ΠΈΠ»ΠΈ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€Π°Π² доступа. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

ΠšΠΎΠ΄Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° = Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ();

Если ΠšΠΎΠ΄Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° <> 0 Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Ошибка записи элСмСнта: " + Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.НаимСнованиС);

// Π›ΠΎΠ³ΠΈΠΊΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибки

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

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

МоТно Π»ΠΈ ΠΏΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ справочника досрочно?

Π”Π°, для досрочного Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠŸΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли Π½ΡƒΠΆΠ½Ρ‹ΠΉ элСмСнт Π½Π°ΠΉΠ΄Π΅Π½ ΠΈ дальнСйший поиск Π½Π΅ трСбуСтся, Π»ΠΈΠ±ΠΎ Ссли Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° критичСская ошибка, Π΄Π΅Π»Π°ΡŽΡ‰Π°Ρ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ бСссмыслСнным.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ВыборкаБписка ΠΈ Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°Π”Π΅Ρ€Π΅Π²Π°?

ВыборкаБписка ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡŽ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ всС элСмСнты плоским списком, Ρ‡Ρ‚ΠΎ быстрСС. Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°Π”Π΅Ρ€Π΅Π²Π° ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏ ΠΈ элСмСнтов, позволяя ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ влоТСнности, Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΈΠ·-Π·Π° слоТности Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ.

Как ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ элСмСнты, Π° Π½Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹?

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π­Ρ‚ΠΎΠ“Ρ€ΡƒΠΏΠΏΠ°(). Если ΠΎΠ½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ 0 (Π›ΠΎΠΆΡŒ), Π·Π½Π°Ρ‡ΠΈΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ являСтся элСмСнтом справочника, ΠΈ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ. Π“Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΡ€ΠΈ этом ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ справочника Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ?

МСдлСнная Ρ€Π°Π±ΠΎΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° отсутствиСм индСксов для ΠΏΠΎΠ»Π΅ΠΉ ΠΎΡ‚Π±ΠΎΡ€Π°, ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ΠΎΠΌ всСго массива Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ со стороны Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, лишними запросами ΠΊ Π‘Π”).