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

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

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΊΠ°ΠΊ Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ осваиваСт 1Π‘ 8.3, Ρ‚Π°ΠΊ ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ программистам, ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΠΌ ΡΠΈΡΡ‚Π΅ΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои знания. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ рассмотрим Π½ΡŽΠ°Π½ΡΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… β€” ΠΈ Π² управляСмом ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΈ Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ инструкции ΠΏΠΎΠ΄ свою Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

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

Π’Π°Π±Π»ΠΈΡ†Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Π’Π—) β€” это Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π² памяти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ справочников ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя сСанса Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ идСально подходят для:

  • πŸ“Š ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… расчСтов (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ²);
  • πŸ”„ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ ΠΈΠ»ΠΈ модулями;
  • πŸ“ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄ записью Π² Π±Π°Π·Ρƒ;
  • πŸ” Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ массивов Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· измСнСния исходных справочников.

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

  • πŸš€ БыстродСйствиС: всС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти, Π±Π΅Π· ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ Π±Π°Π·Π΅;
  • πŸ› οΈ Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: ΠΌΠΎΠΆΠ½ΠΎ динамичСски Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ/ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΈ строки;
  • πŸ”„ Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ: ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… (число, строка, Π΄Π°Ρ‚Π°, ссылка ΠΈ Π΄Ρ€.).

Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ…, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ… ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…. НапримСр, ΠΏΠ΅Ρ€Π΅Π΄ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π’Π—, ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ…, Π° Π·Π°Ρ‚Π΅ΠΌ вывСсти Π½Π° ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ мноТСства запросов ΠΊ Π±Π°Π·Π΅ ΠΈ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ систСмы.

πŸ“Š Как часто Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² 1Π‘?
Π•ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ
НСсколько Ρ€Π°Π· Π² нСдСлю
Π Π΅Π΄ΠΊΠΎ
Никогда нС использовал

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ: пошаговая инструкция

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² 1Π‘ 8.3 ΠΌΠΎΠΆΠ½ΠΎ нСсколькими способами: Ρ‡Π΅Ρ€Π΅Π· конструктор Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнного языка. Рассмотрим ΠΎΠ±Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°.

Бпособ 1: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· конструктор (Π±Π΅Π· программирования)

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ быстро ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π’Π— для Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… расчСтов ΠΈΠ»ΠΈ тСстирования:

  1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π»ΡŽΠ±ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅;
  2. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ Π”Π°Π½Π½Ρ‹Π΅ (ΠΈΠ»ΠΈ Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹, Π² зависимости ΠΎΡ‚ вСрсии);
  3. НаТмитС Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ β†’ Π’Π°Π±Π»ΠΈΡ†Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ;
  4. Π—Π°Π΄Π°ΠΉΡ‚Π΅ имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π’Π°Π±Π»ΠΈΡ†Π°Π’ΠΎΠ²Π°Ρ€ΠΎΠ²);
  5. Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ, ΡƒΠΊΠ°Π·Π°Π² для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ:
    • πŸ“Œ Имя (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, НаимСнованиС);
    • πŸ“Œ Π’ΠΈΠΏ (строка, число, Π΄Π°Ρ‚Π°, ссылка Π½Π° справочник ΠΈ Ρ‚.Π΄.);
    • πŸ“Œ Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ (ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ΅ имя Π² интСрфСйсС).

ПослС сохранСния Ρ‚Π°Π±Π»ΠΈΡ†Π° Π±ΡƒΠ΄Π΅Ρ‚ доступна для заполнСния Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ΄.

Бпособ 2: ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ созданиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ создания Ρ‚Π°Π±Π»ΠΈΡ† ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ Π½Π° встроСнном языкС 1Π‘:

// Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

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

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

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

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

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

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

// ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ способ (короткая запись)

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ указания Ρ‚ΠΈΠΏΠ° для числовых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ: ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ β€” общая Π΄Π»ΠΈΠ½Π° числа, Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” количСство Π·Π½Π°ΠΊΠΎΠ² послС запятой. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ отобраТСния ΠΈ расчСтов.

πŸ’‘

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· запроса), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ(). Π­Ρ‚ΠΎ сэкономит врСмя ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими структурами Π΄Π°Π½Π½Ρ‹Ρ….

Как Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ строки ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅

ПослС создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΅Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Рассмотрим основныС способы добавлСния строк ΠΈ рСдактирования ячССк.

Π ΡƒΡ‡Π½ΠΎΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс

Если Ρ‚Π°Π±Π»ΠΈΡ†Π° создана Ρ‡Π΅Ρ€Π΅Π· конструктор ΠΈ отобраТаСтся Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅:

  1. Π”Π²Π°ΠΆΠ΄Ρ‹ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов;
  2. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ячСйки Π² Π½ΠΎΠ²ΠΎΠΉ строкС;
  3. Для добавлСния Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ строки ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ дСйствиС ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Insert;
  4. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ строку, Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ Π΅Π΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π½ΡƒΠΆΠ½Ρ‹Π΅ ячСйки.

Π’ управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… для удобства ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ рСдактирования "Π² строкС" Ρ‡Π΅Ρ€Π΅Π· свойства Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ поля.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строк

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

// Бпособ 1: Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строки ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ

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

НоваяБтрока.НаимСнованиС = "ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ 24\"";

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

НоваяБтрока.Π¦Π΅Π½Π° = 12500.50;

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

// Бпособ 2: Массовая Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· массива)

Π”Π°Π½Π½Ρ‹Π΅ = Новый Массив;

Π”Π°Π½Π½Ρ‹Π΅.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("НаимСнованиС,ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ,Π¦Π΅Π½Π°", "ΠšΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°", 10, 1200));

Π”Π°Π½Π½Ρ‹Π΅.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("НаимСнованиС,ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ,Π¦Π΅Π½Π°", "ΠœΡ‹ΡˆΡŒ", 15, 800));

Π’Π°Π±Π»ΠΈΡ†Π°.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π”Π°Π½Π½Ρ‹Π΅);

// Бпособ 3: ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строк ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

ДругаяВаблица = ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠ’Π°Π±Π»ΠΈΡ†ΡƒΠ˜Π·Π“Π΄Π΅Π’ΠΎ();

Π’Π°Π±Π»ΠΈΡ†Π°.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(ДругаяВаблица.Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ());

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с большими объСмами Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(), Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстрСС, Ρ‡Π΅ΠΌ поэлСмСнтноС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅.

Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… строк

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ строкС, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ Π½Π΅ΠΉ ΠΏΠΎ индСксу ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Найти():

// ИзмСнСниС ΠΏΠΎ индСксу (нумСрация с 0)

Π’Π°Π±Π»ΠΈΡ†Π°[0].Π¦Π΅Π½Π° = 13000; // ИзмСнили Ρ†Π΅Π½Ρƒ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС

// Поиск ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

НайдСннаяБтрока = Π’Π°Π±Π»ΠΈΡ†Π°.Найти("ΠœΡ‹ΡˆΡŒ", "НаимСнованиС");

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

НайдСннаяБтрока.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 20;

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

Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ всС ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² числовых полях Π½Π΅Ρ‚ тСкста)

Π£Π΄Π°Π»ΠΈΡ‚Π΅ пустыС строки, Ссли ΠΎΠ½ΠΈ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ массовых измСнСниях-->

Π Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ²

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π΅ статична β€” Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ динамичСски ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π­Ρ‚ΠΎ особСнно ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π·Π°Ρ€Π°Π½Π΅Π΅ нСизвСстСн ΠΏΠΎΠ»Π½Ρ‹ΠΉ состав Π΄Π°Π½Π½Ρ‹Ρ….

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ:

// ДобавляСм ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ Π² ΠΊΠΎΠ½Π΅Ρ†

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

// ДобавляСм ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ (индСкс указываСтся ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠ΅ΠΉ вставки)

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

ПослС добавлСния ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ всС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ строки автоматичСски ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ пустыС значСния Π² Π½ΠΎΠ²Ρ‹Ρ… ячСйках. Для ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‚ΠΈΠΏΠ° Число пустым Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ 0, для строк β€” пустая строка, для Π΄Π°Ρ‚ β€” '00010101' (минимальная Π΄Π°Ρ‚Π°).

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ

Для измСнСния структуры Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹:

// Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ

Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Найти("Π‘ΠΊΠΈΠ΄ΠΊΠ°"));

// ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ

КолонкаЦСна = Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Найти("Π¦Π΅Π½Π°");

КолонкаЦСна.Имя = "Π¦Π΅Π½Π°Π—Π°Π•Π΄ΠΈΠ½ΠΈΡ†Ρƒ";

КолонкаЦСна.Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ = "Π¦Π΅Π½Π° Π·Π° Π΅Π΄., Ρ€ΡƒΠ±.";

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ всС Π΄Π°Π½Π½Ρ‹Π΅ Π² Π½Π΅ΠΉ Π±ΡƒΠ΄ΡƒΡ‚ Π±Π΅Π·Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π½ΠΎ утСряны. Если ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² расчСтах ΠΈΠ»ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ…, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сохранитС Π΅Π΅ значСния Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΠ»ΠΈ массивС.

ИзмСнСниС Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ

Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Π½ΠΎ это Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ остороТности:

Колонка = Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Найти("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ");

Колонка.Π’ΠΈΠΏ = Новый ОписаниСВипов("Π‘Ρ‚Ρ€ΠΎΠΊΠ°"); // Π’Π΅ΠΏΠ΅Ρ€ΡŒ вмСсто числа Π±ΡƒΠ΄Π΅Ρ‚ строка

ΠŸΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠ° 1Π‘ попытаСтся автоматичСски ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅. Однако это Π½Π΅ всСгда Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ:

- Число ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² строку, Π½ΠΎ Π½Π΅ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚;

- Π”Π°Ρ‚Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² строку, Π½ΠΎ строку Π² Π΄Π°Ρ‚Ρƒ β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ совпадаСт;

- Бсылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ Π² строку ΠΏΠΎΡ‚Π΅Ρ€ΡΡŽΡ‚ свою Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Новый Ρ‚ΠΈΠΏ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ прСобразования ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅
Число Π‘Ρ‚Ρ€ΠΎΠΊΠ° УспСшно Число 123 станСт строкой "123"
Π‘Ρ‚Ρ€ΠΎΠΊΠ° Число Ошибка ΠΈΠ»ΠΈ 0 Если строка Π½Π΅ являСтся числом (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "abc"), Π±ΡƒΠ΄Π΅Ρ‚ ошибка
Π”Π°Ρ‚Π° Π‘Ρ‚Ρ€ΠΎΠΊΠ° УспСшно Π”Π°Ρ‚Π° прСобразуСтся Π² строку Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Π΄Π΄.ΠΌΠΌ.Π³Π³Π³Π³
Бсылка Π‘Ρ‚Ρ€ΠΎΠΊΠ° УспСшно Бсылка станСт строкой с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π½ΠΎ потСряСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ°, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΈ поиск Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Одной ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… возмоТностСй Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ являСтся гибкая Ρ€Π°Π±ΠΎΡ‚Π° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ: сортировка, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΈ быстрый поиск. Π­Ρ‚ΠΎ позволяСт эффСктивно ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ большиС массивы ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

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

Для сортировки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ(), ΡƒΠΊΠ°Π·Π°Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ (ΠΈΠ»ΠΈ массив ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ) ΠΈ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅:

// Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ (ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ)

Π’Π°Π±Π»ΠΈΡ†Π°.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ("Π¦Π΅Π½Π°");

// Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎ нСскольким ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ

МассивКолонок = Новый Массив;

МассивКолонок.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("НаимСнованиС"); // По Π°Π»Ρ„Π°Π²ΠΈΡ‚Ρƒ

МассивКолонок.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π”Π°Ρ‚Π°ΠŸΠΎΡΡ‚ΡƒΠΏΠ»Π΅Π½ΠΈΡ Π£Π±Ρ‹Π²"); // По Π΄Π°Ρ‚Π΅ (ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ)

Π’Π°Π±Π»ΠΈΡ†Π°.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ(МассивКолонок);

// ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ синтаксис

Π’Π°Π±Π»ΠΈΡ†Π°.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π’ΠΎΠ·Ρ€, НаимСнованиС Π£Π±Ρ‹Π²");

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° выполняСтся "Π½Π° мСстС" β€” исходная Ρ‚Π°Π±Π»ΠΈΡ†Π° измСняСтся. Если Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ порядок, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ создайтС копию Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ().

Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ строк

Для ΠΎΡ‚Π±ΠΎΡ€Π° строк ΠΏΠΎ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ() с конструкциСй Пока ΠΈΠ»ΠΈ ΠžΡ‚Π±ΠΎΡ€:

// Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ с использованиСм ΠžΡ‚Π±ΠΎΡ€

ΠžΡ‚Π±ΠΎΡ€ = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("Π¦Π΅Π½Π°", Новый Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ΠžΡ‚Π±ΠΎΡ€Π°(">= 10000"));

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π’Π°Π±Π»ΠΈΡ†Π°.Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ(,, ΠžΡ‚Π±ΠΎΡ€);

Пока Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ() Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.НаимСнованиС + ": " + Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.Π¦Π΅Π½Π°);

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

// ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ способ (созданиС Π½ΠΎΠ²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ)

Π€ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Π½Π½Π°ΡΠ’Π°Π±Π»ΠΈΡ†Π° = Π’Π°Π±Π»ΠΈΡ†Π°.Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ(ΠžΡ‚Π±ΠΎΡ€);

Для слоТных условий Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСсколько ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π²:

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

ΠžΡ‚Π±ΠΎΡ€.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", Новый Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ΠžΡ‚Π±ΠΎΡ€Π°("> 5"));

ΠžΡ‚Π±ΠΎΡ€.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("Π”Π°Ρ‚Π°ΠŸΠΎΡΡ‚ΡƒΠΏΠ»Π΅Π½ΠΈΡ", Новый Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ΠžΡ‚Π±ΠΎΡ€Π°(">= '01.01.2023'"));

Поиск строк ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ

Для быстрого поиска ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Найти() ΠΈΠ»ΠΈ НайтиБтроку():

// Поиск ΠΏΠ΅Ρ€Π²ΠΎΠΉ строки с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ

НайдСннаяБтрока = Π’Π°Π±Π»ΠΈΡ†Π°.Найти("ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€", "НаимСнованиС");

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

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("НайдСно: " + НайдСннаяБтрока.Π¦Π΅Π½Π°);

Π˜Π½Π°Ρ‡Π΅

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π’ΠΎΠ²Π°Ρ€ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½!");

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

// Поиск по нСскольким колонкам

НайдСннаяБтрока = Π’Π°Π±Π»ΠΈΡ†Π°.НайтиБтроку(

Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("НаимСнованиС,ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", "ΠœΡ‹ΡˆΡŒ", 15)

);

ΠœΠ΅Ρ‚ΠΎΠ΄ Найти() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ НСопрСдСлСно, Ссли строка Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, поэтому всСгда провСряйтС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ использованиСм.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Ссли поиск Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ?

Если Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит тысячи строк, Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ поиск ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Найти() ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСэффСктивным. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях:

1. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ отсортируйтС Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΏΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΡ‰Π΅Ρ‚Π΅;

2. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ поиск с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° НайтиБтрокуНачинаяБ() (Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ отсортированной Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹);

3. Для слоТных условий создайтС индСкс с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ() (доступно Π² послСдних вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹).

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Рассмотрим Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ сцСнарии, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡ‹.

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

Допустим, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ прайс-лист с Ρ‚ΠΎΠ²Π°Ρ€Π°ΠΌΠΈ, Ρ†Π΅Π½Π°ΠΌΠΈ ΠΈ остатками:

// 1. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ

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

ΠŸΡ€Π°ΠΉΡΠ›ΠΈΡΡ‚.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Артикул", Новый ОписаниСВипов("Π‘Ρ‚Ρ€ΠΎΠΊΠ°"));

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

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

ΠŸΡ€Π°ΠΉΡΠ›ΠΈΡΡ‚.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ", Новый ОписаниСВипов("Число"));

// 2. ЗаполняСм Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· справочника НомСнклатура

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

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

Π‘Ρ‚Ρ€ΠΎΠΊΠ° = ΠŸΡ€Π°ΠΉΡΠ›ΠΈΡΡ‚.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Артикул = Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Артикул;

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.НаимСнованиС = Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.НаимСнованиС;

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π° = Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π¦Π΅Π½Π°ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ;

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ = Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ;

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

// 3. Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠΎ наимСнованию

ΠŸΡ€Π°ΠΉΡΠ›ΠΈΡΡ‚.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ("НаимСнованиС");

// 4. Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚)

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

Π’Π°Π±Π”ΠΎΠΊ.ВывСсти(ΠŸΡ€Π°ΠΉΡΠ›ΠΈΡΡ‚);

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2: ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ записью Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚

ΠŸΠ΅Ρ€Π΅Π΄ созданиСм Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° РСализацияВоваровУслуг ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

// 1. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· внСшнСго источника (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Excel)

Π’Π½Π΅ΡˆΠ½ΠΈΠ΅Π”Π°Π½Π½Ρ‹Π΅ = ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠ”Π°Π½Π½Ρ‹Π΅Π˜Π·Excel();

// 2. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅

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

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

Π’Π°Π±Π»ΠΈΡ†Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ");

Π’Π°Π±Π»ΠΈΡ†Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π¦Π΅Π½Π°");

Π’Π°Π±Π»ΠΈΡ†Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π’Π½Π΅ΡˆΠ½ΠΈΠ΅Π”Π°Π½Π½Ρ‹Π΅);

// 3. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅

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

Если Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ <= 0 Π’ΠΎΠ³Π΄Π°

Π’Π°Π±Π»ΠΈΡ†Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°);

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π° = 0 Π’ΠΎΠ³Π΄Π°

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π° = ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ¦Π΅Π½ΡƒΠŸΠΎΠ£ΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°.НомСнклатура);

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

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

// 4. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈ заполняСм Π΅Π³ΠΎ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ

Π”ΠΎΠΊ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹.РСализацияВоваровУслуг.Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚();

Π”ΠΎΠΊ.Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒΠ’ΠΎΠ²Π°Ρ€Ρ‹.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π’Π°Π±Π»ΠΈΡ†Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°);

Π”ΠΎΠΊ.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ();

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 3: АгрСгация Π΄Π°Π½Π½Ρ‹Ρ… для ΠΎΡ‚Ρ‡Π΅Ρ‚Π°

Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ для ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… расчСтов Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ…:

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

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

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

"ВЫБРАВЬ

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

| БУММА(ДокумСнтРСализацияВоваровУслугВовары.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) КАК ΠŸΡ€ΠΎΠ΄Π°Π½ΠΎ

|Π˜Π—

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

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

| НомСнклатура.НаимСнованиС";

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

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

// 2. Π—Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

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

Π’Π°Π±Π»ΠΈΡ†Π°ΠžΡ‚Ρ‡Π΅Ρ‚Π°.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°);

// 3. ДобавляСм расчСтный столбСц (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, доля ΠΎΡ‚ ΠΎΠ±Ρ‰Π΅Π³ΠΎ количСства)

ΠžΠ±Ρ‰Π΅Π΅ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = Π’Π°Π±Π»ΠΈΡ†Π°ΠžΡ‚Ρ‡Π΅Ρ‚Π°.Π˜Ρ‚ΠΎΠ³("ΠŸΡ€ΠΎΠ΄Π°Π½ΠΎ");

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

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("Доля", Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠŸΡ€ΠΎΠ΄Π°Π½ΠΎ / ΠžΠ±Ρ‰Π΅Π΅ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ * 100);

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

πŸ’‘

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

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

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ приводят ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Рассмотрим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнныС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ способы ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

Ошибка 1: ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° обращСния ΠΊ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅

Если Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ сущСствуСт, 1Π‘ выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ. ВсСгда провСряйтС Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ с Π½Π΅ΠΉ:

// ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ (выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ, Ссли ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ "Π‘ΠΊΠΈΠ΄ΠΊΠ°" Π½Π΅Ρ‚)

Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Найти("Π‘ΠΊΠΈΠ΄ΠΊΠ°").Π’ΠΈΠΏ = Новый ОписаниСВипов("Число");

// ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ

Если Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Найти("Π‘ΠΊΠΈΠ΄ΠΊΠ°") <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Найти("Π‘ΠΊΠΈΠ΄ΠΊΠ°").Π’ΠΈΠΏ = Новый ОписаниСВипов("Число");

Π˜Π½Π°Ρ‡Π΅

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

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

Ошибка 2: ИзмСнСниС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²ΠΎ врСмя ΠΎΠ±Ρ…ΠΎΠ΄Π°

Если Π²Ρ‹ добавляСтС ΠΈΠ»ΠΈ удаляСтС строки Π²ΠΎ врСмя Ρ†ΠΈΠΊΠ»Π° Для КаТдого, это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ нСпрСдсказуСмым Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ ΠΈΠ»ΠΈ ошибкам. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΈΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΠΉΡ‚Π΅ с ΠΊΠΎΠΏΠΈΠ΅ΠΉ:

// ΠžΠΏΠ°ΡΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ (ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкС)

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

Если Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 0 Π’ΠΎΠ³Π΄Π°

Π’Π°Π±Π»ΠΈΡ†Π°.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°); // Ошибка! ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ измСняСтся Π²ΠΎ врСмя ΠΎΠ±Ρ…ΠΎΠ΄Π°

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

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

// БСзопасный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 1: ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ»

Для Инд = Π’Π°Π±Π»ΠΈΡ†Π°.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1 По 0 Π¦ΠΈΠΊΠ»

Если Π’Π°Π±Π»ΠΈΡ†Π°[Инд].ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 0 Π’ΠΎΠ³Π΄Π°

Π’Π°Π±Π»ΠΈΡ†Π°.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Инд);

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

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

// БСзопасный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ 2: Ρ€Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠΏΠΈΠ΅ΠΉ

Π’Π°Π±Π»ΠΈΡ†Π°ΠšΠΎΠΏΠΈΡ = Π’Π°Π±Π»ΠΈΡ†Π°.Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ();

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

Если Π‘Ρ‚Ρ€ΠΎΠΊΠ°.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 0 Π’ΠΎΠ³Π΄Π°

Π’Π°Π±Π»ΠΈΡ†Π°.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°);

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

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

Ошибка 3: НСучСт рСгистра ΠΏΡ€ΠΈ поискС

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ поиск Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ чувствитСлСн ΠΊ рСгистру. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ строку нСзависимо ΠΎΡ‚ рСгистра, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ НРСг():

// Поиск Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° рСгистра

НайдСннаяБтрока = Π’Π°Π±Π»ΠΈΡ†Π°.НайтиБтроку(

Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("НаимСнованиС", НРСг("ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€"))

);

Ошибка 4: ΠŸΠΎΡ‚Π΅Ρ€Ρ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ² ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ

Как ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ Ρ€Π°Π½Π΅Π΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. ВсСгда Π΄Π΅Π»Π°ΠΉΡ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π°ΠΊΠΈΠΌΠΈ опСрациями:

// БСзопасноС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ

Π Π΅Π·Π΅Ρ€Π²Π½Π°ΡΠšΠΎΠΏΠΈΡ = Π’Π°Π±Π»ΠΈΡ†Π°.Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ();

Колонка = Π’Π°Π±Π»ΠΈΡ†Π°.Колонки.Найти("Π¦Π΅Π½Π°");

Колонка.Π’ΠΈΠΏ = Новый ОписаниСВипов("Π‘Ρ‚Ρ€ΠΎΠΊΠ°");

// Если Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ пошло Π½Π΅ Ρ‚Π°ΠΊ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅

Если ΠΡƒΠΆΠ½ΠΎΠ’ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π’ΠΎΠ³Π΄Π°

Π’Π°Π±Π»ΠΈΡ†Π°.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ();

Π’Π°Π±Π»ΠΈΡ†Π°.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π Π΅Π·Π΅Ρ€Π²Π½Π°ΡΠšΠΎΠΏΠΈΡ.Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ());

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ послСдних вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3 появились Π½ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ() для ускорСния поиска). Однако ΠΈΡ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… (управляСмоС/ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅). ΠŸΠ΅Ρ€Π΅Π΄ использованиСм ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π² вашСй ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с большими Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Если ваша Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит тысячи строк, стандартныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌΠΈ. Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ рассмотрим способы ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Бпособ 1: ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² массовой Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ

ВмСсто поэлСмСнтного добавлСния строк ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ() ΠΈ Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ():

// ΠœΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ способ (для 10 000 строк Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ»Π³ΠΎ)

Для Инд = 1 По 10000 Π¦ΠΈΠΊΠ»

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

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.НаимСнованиС = "Π’ΠΎΠ²Π°Ρ€ " + Инд;

Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Π¦Π΅Π½Π° = Инд * 100;

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

// Быстрый способ

Π”Π°Π½Π½Ρ‹Π΅ = Новый Массив;

Для Инд = 1 По 10000 Π¦ΠΈΠΊΠ»

Π”Π°Π½Π½Ρ‹Π΅.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("НаимСнованиС,Π¦Π΅Π½Π°", "Π’ΠΎΠ²Π°Ρ€ " + Инд, Инд * 100));

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

Π’Π°Π±Π»ΠΈΡ†Π°.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ(Π”Π°Π½Π½Ρ‹Π΅);

Π Π°Π·Π½ΠΈΡ†Π° Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ 10-50 Ρ€Π°Π· ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими объСмами Π΄Π°Π½Π½Ρ‹Ρ….

Бпособ 2: ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ автосортировки

Если Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½Π° автоматичСская сортировка ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ строк, ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π΅Π΅:

Π’Π°Π±Π»ΠΈΡ†Π°.АвтоБортировка = Π›ΠΎΠΆΡŒ;

Бпособ 3: ИспользованиС ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ с простыми Ρ‚ΠΈΠΏΠ°ΠΌΠΈ

Колонки со слоТными Ρ‚ΠΈΠΏΠ°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹) Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‡Π΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ с простыми Ρ‚ΠΈΠΏΠ°ΠΌΠΈ (строка, число, Π΄Π°Ρ‚Π°). Если Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ простыС Ρ‚ΠΈΠΏΡ‹:

// МСдлСннСС (ссылка Π½Π° справочник)

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

// БыстрСС (Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ΠΈΠ»ΠΈ наимСнования)

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

Бпособ 4: Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†

Если Ρ‚Π°Π±Π»ΠΈΡ†Π° становится слишком большой (дСсятки тысяч строк), рассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ раздСлСния Π΅Π΅ Π½Π° нСсколько ΠΌΠ΅Π½ΡŒΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†. НапримСр, вмСсто ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π·Π° Π³ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ 12 Ρ‚Π°Π±Π»ΠΈΡ† ΠΏΠΎ мСсяцам.

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

Для ΠΊΡ€Π°ΠΉΠ½Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ… (сотни тысяч строк) вмСсто Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ цСлСсообразно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…:

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

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

"ВЫБРАВЬ

| Π’ΠΎΠ²Π°Ρ€Ρ‹.Бсылка