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

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π’ΠΈΠΏΠ—Π½Ρ‡ ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π΅Π³ΠΎ нСльзя просто ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² строку

Ѐункция Π’ΠΈΠΏΠ—Π½Ρ‡(<Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅>) Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° ОписаниСВипа, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит ΠΌΠ΅Ρ‚Π°ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ. Π­Ρ‚ΠΎΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ структуру: для ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² (число, строка, Π΄Π°Ρ‚Π°) ΠΎΠ½ простой, Π° для слоТных (справочники, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹) β€” Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя описаниС Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ², Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… элСмСнтов.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ Π½Π΅ прСдоставляСт встроСнного ΠΌΠ΅Ρ‚ΠΎΠ΄Π° для прямого прСобразования ОписаниСВипа Π² строку. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅)) ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС "НСдопустимый Ρ‚ΠΈΠΏ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ '+'". Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ОписаниСВипа Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ интСрфСйс для нСявного привСдСния ΠΊ строкС.

  • πŸ”Ή ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹: Число, Π‘Ρ‚Ρ€ΠΎΠΊΠ°, Π”Π°Ρ‚Π°, Π‘ΡƒΠ»Π΅Π²ΠΎ β€” ΠΈΡ… ОписаниСВипа содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π°Π·ΠΎΠ²ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΈΠΏΠ΅.
  • πŸ“„ БсылочныС Ρ‚ΠΈΠΏΡ‹: БправочникБсылка, ДокумСнтБсылка β€” Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ справочникС ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ (имя Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, синоним).
  • πŸ—ƒ Π‘Π»ΠΎΠΆΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹: Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π”Π΅Ρ€Π΅Π²ΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° β€” содСрТат описания ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ, Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ².
  • βš™ Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ: Массив, БоотвСтствиС, БписокЗначСний β€” ΠΈΡ… ОписаниСВипа ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΈΠΏΠ°Ρ… элСмСнтов.
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.2 ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… вСрсиях структура ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ОписаниСВипа ΠΎΡ‚Π»ΠΈΡ‡Π°Π»Π°ΡΡŒ. НСкоторыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π² 8.3, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСдоступны Π² ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… Ρ€Π΅Π»ΠΈΠ·Π°Ρ…. ВсС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 8.3.20+.

Бпособы прСобразования Π’ΠΈΠΏΠ—Π½Ρ‡ Π² строку: ΠΎΡ‚ простого ΠΊ слоТному

БущСствуСт нСсколько ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² для получСния строкового прСдставлСния Ρ‚ΠΈΠΏΠ° значСния. Π’Ρ‹Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈ: Π½ΡƒΠΆΠ½Π° Π»ΠΈ Π²Π°ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ базовая информация (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "Число") ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ΅ описаниС со всСми Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "БправочникБсылка.НомСнклатура").

1. ΠœΠ΅Ρ‚ΠΎΠ΄ ПолноСИмяВипа() β€” Π±Π°Π·ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅

Π‘Π°ΠΌΡ‹ΠΉ простой способ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнный ΠΌΠ΅Ρ‚ΠΎΠ΄ ПолноСИмяВипа(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку с ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ‚ΠΈΠΏΠ°. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ для всСх вСрсий ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 8.3 ΠΈ ΠΏΠΎΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ 90% практичСских Π·Π°Π΄Π°Ρ‡:

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

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΈΠΏΠ° = Π’ΠΈΠΏ.ПолноСИмяВипа(); // Π’Π΅Ρ€Π½Π΅Ρ‚ "БправочникБсылка.НомСнклатура"

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°:

  • πŸ”  Для ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ стандартныС ΠΈΠΌΠ΅Π½Π°: "Число", "Π‘Ρ‚Ρ€ΠΎΠΊΠ°", "Π”Π°Ρ‚Π°".
  • πŸ“‹ Для ссылочных Ρ‚ΠΈΠΏΠΎΠ² Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ имя ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "ДокумСнтБсылка.РСализацияВоваровУслуг").
  • 🚫 НС ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°Ρ… ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частях β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ.

2. РСкурсивный ΠΎΠ±Ρ…ΠΎΠ΄ для слоТных Ρ‚ΠΈΠΏΠΎΠ²

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΠ΅ описаниС Ρ‚ΠΈΠΏΠ° со всСми Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ элСмСнтами (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° с Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ частями), придСтся ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠ²Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ:

Ѐункция ПолноСОписаниСВипа(ОписаниСВипа, Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ = 0) Экспорт

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = "";

Если Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ > 0 Π’ΠΎΠ³Π΄Π°

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ + Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Новый Массив(Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ, " ")) + "|- ";

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

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ + ОписаниСВипа.ПолноСИмяВипа() + Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹.ПБ;

Если ОписаниСВипа.Π’ΠΈΠΏ = Π’ΠΈΠΏ("ОписаниСВипов") Π’ΠΎΠ³Π΄Π°

Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из ОписаниСВипа.Π’ΠΈΠΏΡ‹ Π¦ΠΈΠΊΠ»

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ + ПолноСОписаниСВипа(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚, Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ + 1);

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

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ ОписаниСВипа.Π’ΠΈΠΏ = Π’ΠΈΠΏ("ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅Π’ΠΈΠΏΠΎΠ²Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹") Π’ΠΎΠ³Π΄Π°

Для КаТдого Бвойство Из ОписаниСВипа.Бвойства Π¦ΠΈΠΊΠ»

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ + Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Новый Массив(Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ + 1, " ")) + "|- " + Бвойство.Имя + ": " + Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹.ПБ;

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ + ПолноСОписаниСВипа(Бвойство.Π’ΠΈΠΏ, Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ + 2);

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

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

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚;

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

Π­Ρ‚Π° функция Π²Π΅Ρ€Π½Π΅Ρ‚ Π΄Π΅Ρ€Π΅Π²ΠΎ Ρ‚ΠΈΠΏΠΎΠ² с отступами, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ДокумСнтБсылка.Π—Π°ΠΊΠ°Π·ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Ρ

|- НомСр: Число

|- Π”Π°Ρ‚Π°: Π”Π°Ρ‚Π°

|- ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚: БправочникБсылка.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹

|- Π’ΠΎΠ²Π°Ρ€Ρ‹:

|- НомСнклатура: БправочникБсылка.НомСнклатура

|- ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ: Число

|- ЦСна: Число

πŸ“Š Какой способ прСобразования Π’ΠΈΠΏΠ—Π½Ρ‡ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
ПолноСИмяВипа()
РСкурсивный ΠΎΠ±Ρ…ΠΎΠ΄
ΠœΠ΅Ρ‚ΠΎΠ΄ ИмяВипа()
БобствСнная функция

3. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹: ИмяВипа() ΠΈ Π’ΠΈΠΏΠšΠ°ΠΊΠ‘Ρ‚Ρ€ΠΎΠΊΠ°()

Помимо ПолноСИмяВипа(), ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ОписаниСВипа ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹:

ΠœΠ΅Ρ‚ΠΎΠ΄Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠšΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ
ИмяВипа()ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ имя Ρ‚ΠΈΠΏΠ° Π±Π΅Π· ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…"БправочникБсылка"Когда Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ имя Ρ‚ΠΈΠΏΠ°
ПолноСИмяВипа()ПолноС имя с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…"БправочникБсылка.НомСнклатура"Для Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ‚ΠΈΠΏΠ°
Π­Ρ‚ΠΎNull()Π˜ΡΡ‚ΠΈΠ½Π°/Π›ΠΎΠΆΡŒΠ›ΠΎΠΆΡŒΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Null-Ρ‚ΠΈΠΏ
БоотвСтствуСтВипу()Π˜ΡΡ‚ΠΈΠ½Π°/Π›ΠΎΠΆΡŒΠ’ΠΈΠΏΠ—Π½Ρ‡(10).БоотвСтствуСтВипу(Π’ΠΈΠΏ("Число"))ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° совмСстимости Ρ‚ΠΈΠΏΠΎΠ²

Для упрощСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ:

Ѐункция Π’ΠΈΠΏΠšΠ°ΠΊΠ‘Ρ‚Ρ€ΠΎΠΊΠ°(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) Экспорт

Если Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ "НСопрСдСлСно";

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

Π’ΠΈΠΏ = Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

Если Π’ΠΈΠΏ.Π­Ρ‚ΠΎNull() Π’ΠΎΠ³Π΄Π°

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

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

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π’ΠΈΠΏ.ПолноСИмяВипа();

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

πŸ’‘

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ слоТных структур Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, JSON-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²) ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π’ΠΈΠΏΠ—Π½Ρ‡() с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°Π’Π‘Ρ‚Ρ€ΠΎΠΊΡƒ() ΠΈΠ· стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π’ΠΈΠΏΠ—Π½Ρ‡ ΠΈ ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Π”Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ 1Π‘ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ камнями ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ². Π’ΠΎΡ‚ самыС распространСнныС ошибки ΠΈ способы ΠΈΡ… ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ:

1. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡΠ»ΠΎΠΆΠΈΡ‚ΡŒ Π’ΠΈΠΏΠ—Π½Ρ‡ со строкой Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠ°Ρ ошибка Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ + для ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ:

// ΠΠ•ΠŸΠ ΠΠ’Π˜Π›Π¬ΠΠž!

Π‘Ρ‚Ρ€ΠΎΠΊΠ°ΠžΡˆΠΈΠ±ΠΊΠΈ = "Π’ΠΈΠΏ значСния: " + Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅); // Ошибка выполнСния

РСшСниС: всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ОписаниСВипа:

// ΠŸΠ ΠΠ’Π˜Π›Π¬ΠΠž

Π‘Ρ‚Ρ€ΠΎΠΊΠ°ΠžΡˆΠΈΠ±ΠΊΠΈ = "Π’ΠΈΠΏ значСния: " + Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).ПолноСИмяВипа();

2. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ²

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со структурами ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ часто Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΡ… элСмСнты ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ собствСнныС Ρ‚ΠΈΠΏΡ‹. НапримСр:

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

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

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

Π’ΠΈΠΏΠ’Π°Π±Π»ΠΈΡ†Ρ‹ = Π’ΠΈΠΏΠ—Π½Ρ‡(Π’Π°Π±Π»ΠΈΡ†Π°);

// Π’ΠΈΠΏΠ’Π°Π±Π»ΠΈΡ†Ρ‹.ПолноСИмяВипа() Π²Π΅Ρ€Π½Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ "Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ", Π±Π΅Π· ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°Ρ…!

РСшСниС: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ рСкурсивный ΠΎΠ±Ρ…ΠΎΠ΄ (см. Ρ€Π°Π·Π΄Π΅Π» Π²Ρ‹ΡˆΠ΅) ΠΈΠ»ΠΈ спСциализированныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Π°Π½Π°Π»ΠΈΠ·Π° структур.

3. ΠŸΡƒΡ‚Π°Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π’ΠΈΠΏ() ΠΈ Π’ΠΈΠΏΠ—Π½Ρ‡()

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π’ΠΈΠΏ() ΠΈ Π’ΠΈΠΏΠ—Π½Ρ‡() часто ΠΏΡƒΡ‚Π°ΡŽΡ‚, хотя ΠΎΠ½ΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

  • πŸ”Ή Π’ΠΈΠΏ() β€” создаСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ОписаниСВипа для ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π’ΠΈΠΏ("Число")).
  • πŸ”Ή Π’ΠΈΠΏΠ—Π½Ρ‡() β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ фактичСский Ρ‚ΠΈΠΏ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ значСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π’ΠΈΠΏΠ—Π½Ρ‡(10) Π²Π΅Ρ€Π½Π΅Ρ‚ описаниС Ρ‚ΠΈΠΏΠ° для числа).

Ошибка проявляСтся ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ…:

// ΠΠ•ΠŸΠ ΠΠ’Π˜Π›Π¬ΠΠž: сравниваСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° с описаниСм Ρ‚ΠΈΠΏΠ° значСния

Если Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) = Π’ΠΈΠΏ("Число") Π’ΠΎΠ³Π΄Π° // Ошибка! Π‘Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

// ΠŸΠ ΠΠ’Π˜Π›Π¬ΠΠž: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ БоотвСтствуСтВипу()

Если Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).БоотвСтствуСтВипу(Π’ΠΈΠΏ("Число")) Π’ΠΎΠ³Π΄Π°

Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ссли ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² Π’ΠΈΠΏΠ—Π½Ρ‡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Null?

Ѐункция Π’ΠΈΠΏΠ—Π½Ρ‡() ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Null-значСния. Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ОписаниСВипа с ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π­Ρ‚ΠΎNull(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π΅Ρ€Π½Π΅Ρ‚ Π˜ΡΡ‚ΠΈΠ½Π°. ΠŸΡ€ΠΈ этом ПолноСИмяВипа() для Null Π²Π΅Ρ€Π½Π΅Ρ‚ ΠΏΡƒΡΡ‚ΡƒΡŽ строку, Π° ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ свойства ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π’ΠΈΠΏΠ—Π½Ρ‡ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ… ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ…

ΠŸΡ€ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ динамичСском Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ запросов ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΡƒΠ·ΠΊΠΈΠΌ мСстом ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ² для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ:

1. ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ описаний Ρ‚ΠΈΠΏΠΎΠ²

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ описания Ρ‚ΠΈΠΏΠΎΠ² для ΠΎΠ΄Π½ΠΈΡ… ΠΈ Ρ‚Π΅Ρ… ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΏΠΎ строкам Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹), ΠΊΡΡˆΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹:

КэшВипов = Новый БоотвСтствиС;

Ѐункция ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ’ΠΈΠΏΠšΠ°ΠΊΠ‘Ρ‚Ρ€ΠΎΠΊΡƒ(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅)

Если КэшВипов.Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚(Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅)) Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ КэшВипов[Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅)];

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

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).ПолноСИмяВипа();

КэшВипов.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅), Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚);

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚;

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

2. ИспользованиС ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ²

Для часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, справочников ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²) Π·Π°Ρ€Π°Π½Π΅Π΅ создавайтС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ОписаниСВипа:

// Π’ Π½Π°Ρ‡Π°Π»Π΅ модуля

ΠŸΠ΅Ρ€Π΅ΠΌ ВипНомСнклатура;

ΠŸΠ΅Ρ€Π΅ΠΌ ВипДокумСнтРСализация;

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅()

ВипНомСнклатура = Π’ΠΈΠΏ("БправочникБсылка.НомСнклатура");

ВипДокумСнтРСализация = Π’ΠΈΠΏ("ДокумСнтБсылка.РСализацияВоваровУслуг");

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

// Π”Π°Π»Π΅Π΅ Π² ΠΊΠΎΠ΄Π΅

Если Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).БоотвСтствуСтВипу(ВипНомСнклатура) Π’ΠΎΠ³Π΄Π°

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Ρ‹

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

3. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ для Π‘ΠšΠ” (БистСма Компоновки Π”Π°Π½Π½Ρ‹Ρ…)

Π’ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ… Π½Π° основС Π‘ΠšΠ” для динамичСского формирования ΠΏΠΎΠ»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ выраТСния Π²ΠΈΠ΄Π°:

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ = "ВЫБРАВЬ

| " + Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΈΠΏΠ° + " КАК Π’ΠΈΠΏΠ”Π°Π½Π½Ρ‹Ρ…

|Π˜Π—

| " + Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠ”Π°Π½Π½Ρ‹Ρ…;

Π“Π΄Π΅ Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΈΠΏΠ° получаСтся Ρ‡Π΅Ρ€Π΅Π·:

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΈΠΏΠ° = "Π’Π«Π ΠΠ—Π˜Π’Π¬(" + Π’ΠΈΠΏΠ—Π½Ρ‡(ПолС).ПолноСИмяВипа() + " КАК Π‘Ρ‚Ρ€ΠΎΠΊΠ°)";

β˜‘οΈ ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π’ΠΈΠΏΠ—Π½Ρ‡

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

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

Π Π°Π·Π±Π΅Ρ€Π΅ΠΌ нСсколько Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… сцСнариСв, Π³Π΄Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π’ΠΈΠΏΠ—Π½Ρ‡ Π² строку оказываСтся ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ.

1. Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ошибок с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠΎΠ²

ΠŸΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сообщСниС ΠΎΠ± ошибкС, Π½ΠΎ ΠΈ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊ Π½Π΅ΠΉ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ:

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

// Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ

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

Π’ΠΈΠΏΠžΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠ³ΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡ = "";

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

Π’ΠΈΠΏΠžΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠ³ΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡ = Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).ПолноСИмяВипа();

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

Π’ΠΈΠΏΠžΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠ³ΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡ = "НС ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ";

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

Π—Π°ΠΏΠΈΡΡŒΠ–ΡƒΡ€Π½Π°Π»Π°Π Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ("Ошибка ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ",

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒΠ–ΡƒΡ€Π½Π°Π»Π°Π Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ.Ошибка,

,

,

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ = "Π’ΠΈΠΏ значСния: " + Π’ΠΈΠΏΠžΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠ³ΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡ + "; Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅: " + ОписаниСОшибки());

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

2. ДинамичСскоС Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ запросов

ΠŸΡ€ΠΈ построСнии запросов с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ автоматичСски Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ²:

Ѐункция ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π”Π»ΡΠ—Π°ΠΏΡ€ΠΎΡΠ°(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°)

Π’ΠΈΠΏ = Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

Если Π’ΠΈΠΏ.БоотвСтствуСтВипу(Π’ΠΈΠΏ("Число")) Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°) + " = &" + Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°;

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ Π’ΠΈΠΏ.БоотвСтствуСтВипу(Π’ΠΈΠΏ("Π‘Ρ‚Ρ€ΠΎΠΊΠ°")) Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°) + " = &" + Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° + " (Π’Π«Π ΠΠ—Π˜Π’Π¬(&" + Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° + " КАК Π‘Ρ‚Ρ€ΠΎΠΊΠ°(255)))";

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ Π’ΠΈΠΏ.БоотвСтствуСтВипу(Π’ΠΈΠΏ("Π”Π°Ρ‚Π°")) Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°) + " = Π”ΠΠ’ΠΠ’Π Π•ΠœΠ―(&" + Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° + ")";

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

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

3. ГСнСрация Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹ΠΌ

Для автоматичСского создания описания структуры Π±Π°Π·Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ рСкурсивно ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ всС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΡ… Ρ‚ΠΈΠΏΡ‹:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ВывСстиБтруктуруБправочника(Π˜ΠΌΡΠ‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ°)

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ = ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅.Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ[Π˜ΠΌΡΠ‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ°];

Для КаТдого Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ Из Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹ Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚.Имя + ": " + Π’ΠΈΠΏΠ—Π½Ρ‡(Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚.Π’ΠΈΠΏ).ПолноСИмяВипа());

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

Для КаТдого Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒ Из Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.ВабличныСЧасти Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Вабличная Ρ‡Π°ΡΡ‚ΡŒ: " + Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒ.Имя);

Для КаТдого Колонка Из Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒ.Колонки Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(" " + Колонка.Имя + ": " + Π’ΠΈΠΏΠ—Π½Ρ‡(Колонка.Π’ΠΈΠΏ).ПолноСИмяВипа());

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

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

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

πŸ’‘

Для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π’ΠΈΠΏΠ—Π½Ρ‡() с ΠΎΠ±Ρ…ΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅.Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ, ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅.Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Π Π°Π±ΠΎΡ‚Π° с Π’ΠΈΠΏΠ—Π½Ρ‡ Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅

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

1. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ОписаниСВипа нСльзя Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром. ВмСсто этого ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅ строковоС прСдставлСниС Ρ‚ΠΈΠΏΠ° ΠΈ восстанавливайтС Π΅Π³ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ сторонС:

На сСрвСрС:

Ѐункция ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ’ΠΈΠΏΠšΠ°ΠΊΠ‘Ρ‚Ρ€ΠΎΠΊΡƒΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) Экспорт

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).ПолноСИмяВипа();

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

На ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΠ’ΠΈΠΏΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅(Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΈΠΏΠ°)

// Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ строку для Π»ΠΎΠ³ΠΈΠΊΠΈ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅

Если Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΈΠΏΠ° = "БправочникБсылка.НомСнклатура" Π’ΠΎΠ³Π΄Π°

// ...

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

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

2. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ Π² Ρ‚ΠΎΠ½ΠΊΠΎΠΌ ΠΈ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅

Π’ Ρ‚ΠΎΠ½ΠΊΠΎΠΌ ΠΈ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ… Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ОписаниСВипа ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСдоступны ΠΈΠ·-Π·Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. НапримСр:

  • 🚫 ΠœΠ΅Ρ‚ΠΎΠ΄ БоотвСтствуСтВипу() ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ для слоТных Ρ‚ΠΈΠΏΠΎΠ².
  • 🚫 РСкурсивный ΠΎΠ±Ρ…ΠΎΠ΄ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкам ΠΈΠ·-Π·Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Π½Π° Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ стСка.

РСшСниС: пСрСноситС ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π½Π° сСрвСр, Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

3. ДинамичСскоС Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹

ΠŸΡ€ΠΈ динамичСском создании элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ…) ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ для настройки отобраТСния:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Π€ΠΎΡ€ΠΌΡ‹ΠŸΠΎΠ’ΠΈΠΏΡƒ(Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ, Π˜ΠΌΡΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Π°, Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅)

Π’ΠΈΠΏ = Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

Если Π’ΠΈΠΏ.БоотвСтствуСтВипу(Π’ΠΈΠΏ("Число")) Π’ΠΎΠ³Π΄Π°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ = Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ.Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π˜ΠΌΡΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Π°, Π’ΠΈΠΏ("ΠŸΠΎΠ»Π΅Π’Π²ΠΎΠ΄Π°"), Π˜ΡΡ‚ΠΈΠ½Π°);

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.ВипЗначСния = Π’ΠΈΠΏ("Число");

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ Π’ΠΈΠΏ.БоотвСтствуСтВипу(Π’ΠΈΠΏ("Π”Π°Ρ‚Π°")) Π’ΠΎΠ³Π΄Π°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ = Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ.Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π˜ΠΌΡΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Π°, Π’ΠΈΠΏ("ΠŸΠΎΠ»Π΅ΠšΠ°Π»Π΅Π½Π΄Π°Ρ€Ρ"), Π˜ΡΡ‚ΠΈΠ½Π°);

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ Π’ΠΈΠΏ.БоотвСтствуСтВипу(Π’ΠΈΠΏ("БправочникБсылка")) Π’ΠΎΠ³Π΄Π°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ = Π ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ.Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π˜ΠΌΡΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚Π°, Π’ΠΈΠΏ("ΠŸΠΎΠ»Π΅Π’Π²ΠΎΠ΄Π°"), Π˜ΡΡ‚ΠΈΠ½Π°);

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.ВипЗначСния = Π’ΠΈΠΏ;

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.Π’Ρ‹Π±ΠΎΡ€Π˜Π·Π‘ΠΏΠΈΡΠΊΠ° = Π˜ΡΡ‚ΠΈΠ½Π°;

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… динамичСскоС созданиС элСмСнтов с привязкой ΠΊ Ρ‚ΠΈΠΏΠ°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ошибкам Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ, Ссли Ρ‚ΠΈΠΏ значСния Π½Π΅ соотвСтствуСт Ρ‚ΠΈΠΏΡƒ элСмСнта Ρ„ΠΎΡ€ΠΌΡ‹. ВсСгда провСряйтС ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ созданиСм элСмСнтов.

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹: ΠΊΠΎΠ³Π΄Π° Π’ΠΈΠΏΠ—Π½Ρ‡ Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях использованиС Π’ΠΈΠΏΠ—Π½Ρ‡() ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎ ΠΈΠ»ΠΈ нСэффСктивно. Рассмотрим Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

1. Ѐункция ВипЗначСния() для ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ²

Для простых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (число, строка, Π΄Π°Ρ‚Π°) ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ВипЗначСния() ΠΈΠ· глобального контСкста:

Π’ΠΈΠΏ = ВипЗначСния(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

// Π’Π΅Ρ€Π½Π΅Ρ‚ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

// "Число", "Π‘Ρ‚Ρ€ΠΎΠΊΠ°", "Π”Π°Ρ‚Π°", "Π‘ΡƒΠ»Π΅Π²ΠΎ", "Null", "НСопрСдСлСно"

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ:

  • πŸ”Ή НС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ со ссылочными Ρ‚ΠΈΠΏΠ°ΠΌΠΈ (справочники, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹).
  • πŸ”Ή НС прСдоставляСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ°Ρ….

2. ИспользованиС ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… для ссылочных Ρ‚ΠΈΠΏΠΎΠ²

Для ссылочных Ρ‚ΠΈΠΏΠΎΠ² (справочников, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²) ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΠ· ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…:

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

ИмяВипа = Бсылка.ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅().Имя; // Π’Π΅Ρ€Π½Π΅Ρ‚ "НомСнклатура"

ПолноСИмя = Бсылка.ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅().ПолноСИмя(); // Π’Π΅Ρ€Π½Π΅Ρ‚ "Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура"

3. БСриализация Π² JSON для слоТных структур

Для слоТных структур (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ) ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π² JSON:

Ѐункция Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°Π’JSONΠ‘ΠΎΠ’ΠΈΠΏΠ°ΠΌΠΈ(Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°)

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°();

Для КаТдого ΠšΠ»ΡŽΡ‡ Из Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π¦ΠΈΠΊΠ»

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°[ΠšΠ»ΡŽΡ‡];

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(ΠšΠ»ΡŽΡ‡,

Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅,Π’ΠΈΠΏ",

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅,

Π’ΠΈΠΏΠ—Π½Ρ‡(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).ПолноСИмяВипа()));

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

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

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

Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΈΠΏΠ°Ρ… вмСстС со значСниями, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ систСмами.

4. ИспользованиС Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚

Для ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… сцСнариСв (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, гСнСрация Swagger-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ для HTTP-сСрвисов) ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшниС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹:

  • πŸ”§ 1Script.TypeDescription β€” Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ.
  • πŸ”§ Vanessa-ADD β€” Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ для Π°Π½Π°Π»ΠΈΠ·Π° Ρ‚ΠΈΠΏΠΎΠ² Π² тСстах.
  • πŸ”§ JSON Schema Generator β€” для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ схСм Π½Π° основС ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… 1Π‘.
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²Π°Ρ‚ΡŒ с обновлСниями ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘. ΠŸΠ΅Ρ€Π΅Π΄ использованиСм провСряйтС ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с вашСй вСрсиСй 8.3.x ΠΈ тСстируйтС Π² Π½Π΅Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π±Π°Π·Π΅.

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

МоТно Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ описаниС Ρ‚ΠΈΠΏΠ° для динамичСски созданного ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Π΅Ρ€Π΅Π· Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ())?

Π”Π°, Π½ΠΎ с ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΊΠ°ΠΌΠΈ. Для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², созданных Ρ‡Π΅Ρ€Π΅Π· Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ(), функция Π’ΠΈΠΏΠ—Π½Ρ‡() Π²Π΅Ρ€Π½Π΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ описаниС Ρ‚ΠΈΠΏΠ°, ΠΎΠ΄Π½Π°ΠΊΠΎ:

  • Для динамичСски созданных справочников ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² имя Ρ‚ΠΈΠΏΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ прСфикс "ДинамичСский" (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "БправочникБсылка.ДинамичСскийБправочник1").
  • ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²Ρ€ΠΎΠ΄Π΅ ПолноСИмяВипа() Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свойства (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, связанныС с ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ) ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСдоступны.

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

Π’Π΅ΠΊΡΡ‚ΠšΠΎΠ΄Π° = "ΠŸΠ΅Ρ€Π΅ΠΌ Π”ΠΈΠ½Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ; Π”ΠΈΠ½Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠ‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ(""ВСстовый"");";

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ(Π’Π΅ΠΊΡΡ‚ΠšΠΎΠ΄Π°);

Π’ΠΈΠΏ = Π’ΠΈΠΏΠ—Π½Ρ‡(Π”ΠΈΠ½Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ); // Π’Π΅Ρ€Π½Π΅Ρ‚ "БправочникБсылка.ВСстовый"

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ?

Для ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ свойство ВипЗначСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠšΠΎΠ»ΠΎΠ½ΠΊΠ°Π’Π°Π±Π»ΠΈΡ†Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

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

Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π”Π°Ρ‚Π°", Π’ΠΈΠΏ("Π”Π°Ρ‚Π°"));

Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π‘ΡƒΠΌΠΌΠ°", Π’ΠΈΠΏ("Число"));

Для КаТдого Колонка Из Π’Π°Π±Π»ΠΈΡ†Π°.Колонки Π¦ΠΈΠΊΠ»

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

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Колонка.ВипЗначСния ΡƒΠΆΠ΅ являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ОписаниСВипа, поэтому Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π’ΠΈΠΏΠ—Π½Ρ‡() для Π½Π΅Π³ΠΎ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π’ΠΈΠΏΠ—Π½Ρ‡() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ для ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… ссылок?

Π­Ρ‚ΠΎ связано с ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π² 1Π‘. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π² транзакциях) ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ экзСмпляры ОписаниСВи