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

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

1. ΠžΡΠ½ΠΎΠ²Ρ‹ синтаксиса ΠΊΠΎΠΌΠ°Π½Π΄ Π² 1Π‘: Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ с нуля

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

  • πŸ“Œ Π Π΅Π³ΠΈΡΡ‚Ρ€ΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ: ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ рСгистру. НапримСр, Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ() ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒΡΡ‚Ρ€ΠΎΠΊΠΈ() β€” это ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅. Однако для удобства чтСния ΠΊΠΎΠ΄Π° рСкомСндуСтся ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ стиля (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, CamelCase для ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²).
  • πŸ“Œ Π’ΠΎΡ‡ΠΊΠ° с запятой: Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ставится ;. Π­Ρ‚ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, хотя ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π΅Ρ‘ отсутствиС Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.
  • πŸ“Œ ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ: однострочныС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с //, многострочныС β€” с / ... /. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ, Π½ΠΎ критичСски Π²Π°ΠΆΠ½Ρ‹ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΊΠΎΠ΄Π°.
  • πŸ“Œ Випизация: ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠŸΠ΅Ρ€Π΅ΠΌ ΠœΠΎΡΠ”Π°Ρ‚Π° Π’ΠΈΠΏ Π”Π°Ρ‚Π°;) ΠΈΠ»ΠΈ динамичСскими (Ρ‚ΠΈΠΏ опрСдСляСтся ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ).

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ 1Π‘ β€” Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π½Π° клиСнтский (выполняСтся Π½Π° сторонС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ) ΠΈ сСрвСрный (выполняСтся Π½Π° сСрвСрС 1Π‘). НапримСр, ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° сСрвСрС, ΠΈΠ½Π°Ρ‡Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ контСкста:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠšΠΎΠΌΠ°Π½Π΄Ρ‹()

// ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ ΠΊΠΎΠ΄

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Начало выполнСния");

// Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ²

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ”Π°Π½Π½Ρ‹Π΅Π‘Π΅Ρ€Π²Π΅Ρ€();

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

&НаБСрвСрС

Ѐункция ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ”Π°Π½Π½Ρ‹Π΅Π‘Π΅Ρ€Π²Π΅Ρ€()

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

Запрос.ВСкст = "ВЫБРАВЬ ΠŸΠ΅Ρ€Π²Ρ‹Π΅ 10 НомСнклатура.НаимСнованиС КАК Π’ΠΎΠ²Π°Ρ€";

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

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

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

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ ошибка Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²: ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ запрос ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π² клиСнтском ΠΊΠΎΠ΄Π΅. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ "Ошибка ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° контСкста (Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ)". ВсСгда раздСляйтС Π»ΠΎΠ³ΠΈΠΊΡƒ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ части!

2. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ: Π²Ρ‹Π±ΠΎΡ€ΠΊΠ°, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅

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

2.1. Запросы ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…

Для Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Запрос. Π•Π³ΠΎ синтаксис Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ SQL, Π½ΠΎ с особСнностями 1Π‘. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ простого запроса:

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

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

"ВЫБРАВЬ

| Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹.НаимСнованиС КАК ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚,

| Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹.ИНН КАК ИНН

|Π˜Π—

| Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹ КАК ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹

|Π“Π”Π•

| ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹.ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ°Π£Π΄Π°Π»Π΅Π½ΠΈΡ = Π›ΠžΠ–Π¬

|Π£ΠŸΠžΠ Π―Π”ΠžΠ§Π˜Π’Π¬ ПО

| ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚";

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

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

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π°:

  • πŸ”Ή ИспользованиС символа | для пСрСноса строки Π² тСкстС запроса (ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ).
  • πŸ”Ή ΠŸΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ‹ ΠΏΠΎΠ»Π΅ΠΉ (КАК ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚) ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹, Ссли имя поля совпадаСт с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом.
  • πŸ”Ή УсловиС ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ°Π£Π΄Π°Π»Π΅Π½ΠΈΡ = Π›ΠžΠ–Π¬ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Π°Π½Π°Π»ΠΎΠ³ WHERE Π² SQL).

2.2. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…

Для ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π² справочник:

ΠΠΎΠ²Ρ‹ΠΉΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹.Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠ­Π»Π΅ΠΌΠ΅Π½Ρ‚();

ΠΠΎΠ²Ρ‹ΠΉΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.НаимСнованиС = "ООО Ромашка";

ΠΠΎΠ²Ρ‹ΠΉΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.ИНН = "1234567890";

ΠΠΎΠ²Ρ‹ΠΉΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ();

Для измСнСния ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта:

ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡŽ("ООО Ромашка");

Если ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.ΠŸΡƒΡΡ‚Π°Ρ() Π’ΠΎΠ³Π΄Π°

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

Π˜Π½Π°Ρ‡Π΅

ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.АдрСс = "Π³. Москва, ΡƒΠ». Π›Π΅Π½ΠΈΠ½Π°, 1";

ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ();

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

πŸ“Š Какой Ρ‚ΠΈΠΏ запросов Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
Π’Ρ‹Π±ΠΎΡ€ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅/ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅
Π‘Π»ΠΎΠΆΠ½Ρ‹Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Π΅ запросы

2.3. Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ: ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…

Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Если ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄ Π² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ ошибкой, всС измСнСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½Ρ‹. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

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

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹.Π—Π°ΠΊΠ°Π·ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Ρ.Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚();

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡŽ("ООО Ромашка");

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π”Π°Ρ‚Π° = ВСкущаяДата();

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

// Если здСсь ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Ρ‘Ρ‚ ошибка, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ записан

Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

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

ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π”Π»ΠΈΠ½Π½Ρ‹Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ (Π±ΠΎΠ»Π΅Π΅ 10 сСкунд) ΠΌΠΎΠ³ΡƒΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Π Π°Π·Π±ΠΈΠ²Π°ΠΉΡ‚Π΅ слоТныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π° мСньшиС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒΠ”Π°Π½Π½Ρ‹Ρ…() для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

3. Π Π°Π±ΠΎΡ‚Π° с коллСкциями ΠΈ массивами: ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…

Π’ 1Π‘ часто приходится ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… β€” Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ запроса, элСмСнты справочников ΠΈΠ»ΠΈ массивы. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ†ΠΈΠΊΠ»Ρ‹, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ ΠΈ спСциализированныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

3.1. Π¦ΠΈΠΊΠ»Ρ‹ Для КаТдого ΠΈ Пока

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ±Ρ…ΠΎΠ΄Π° Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΈΠ· запроса:

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

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

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ + " (ИНН: " + Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.ИНН + ")");

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

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами:

ΠœΠ°ΡΡΠΈΠ²Π’ΠΎΠ²Π°Ρ€ΠΎΠ² = Новый Массив;

ΠœΠ°ΡΡΠΈΠ²Π’ΠΎΠ²Π°Ρ€ΠΎΠ².Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Молоко");

ΠœΠ°ΡΡΠΈΠ²Π’ΠΎΠ²Π°Ρ€ΠΎΠ².Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π₯Π»Π΅Π±");

Для КаТдого Π’ΠΎΠ²Π°Ρ€ Из ΠœΠ°ΡΡΠΈΠ²Π’ΠΎΠ²Π°Ρ€ΠΎΠ² Π¦ΠΈΠΊΠ»

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π’ΠΎΠ²Π°Ρ€: " + Π’ΠΎΠ²Π°Ρ€);

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

3.2. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ

Π£ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΈΠΏΠ° Массив, Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΈΠ»ΠΈ БоотвСтствиС Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹:

  • πŸ“¦ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() β€” добавляСт элСмСнт Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ.
  • πŸ” Найти() β€” ΠΈΡ‰Π΅Ρ‚ элСмСнт ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ.
  • 🧹 ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ() β€” удаляСт всС элСмСнты.
  • πŸ”„ Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ() β€” сортируСт массив.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ для хранСния ΠΏΠ°Ρ€ "ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅":

Π”Π°Π½Π½Ρ‹Π΅ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π° = Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°;

Π”Π°Π½Π½Ρ‹Π΅ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("ИНН", "1234567890");

Π”Π°Π½Π½Ρ‹Π΅ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ("АдрСс", "Π³. Москва, ΡƒΠ». Π›Π΅Π½ΠΈΠ½Π°, 1");

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(Π”Π°Π½Π½Ρ‹Π΅ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°.ИНН); // Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚: 1234567890

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ коллСкция Π½Π΅ пустая (Массив.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() > 0)

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°...Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ элСмСнтам ΠΏΠΎ индСксу

Для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… массивов (>1000 элСмСнтов) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Пока вмСсто Для КаТдого (быстрСС)

ΠžΡ‡ΠΈΡ‰Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ послС использования, Ссли ΠΎΠ½ΠΈ большС Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ (ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ())

-->

3.3. АгрСгатныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Для Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π² коллСкциях ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Ѐункция ОписаниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€
ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠœΠ°ΠΊΡΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Массив.ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ();
ΠœΠΈΠ½ΠΈΠΌΡƒΠΌ() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠœΠΈΠ½Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Массив.ΠœΠΈΠ½ΠΈΠΌΡƒΠΌ();
Π‘ΡƒΠΌΠΌΠ°() Π‘ΡƒΠΌΠΌΠΈΡ€ΡƒΠ΅Ρ‚ элСмСнты Π˜Ρ‚ΠΎΠ³ΠΎ = Массив.Π‘ΡƒΠΌΠΌΠ°();
Π‘Ρ€Π΅Π΄Π½Π΅Π΅() ВычисляСт срСднСС арифмСтичСскоС Π‘Ρ€Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Массив.Π‘Ρ€Π΅Π΄Π½Π΅Π΅();

4. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ рСгистрами

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ рСгистры β€” основа ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… систСм Π² 1Π‘. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ свои особСнности, связанныС с ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΊΠ°ΠΌΠΈ, двиТСниями ΠΈ бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ.

4.1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ создания Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° "РСализация Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² ΠΈ услуг":

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

Π”ΠΎΠΊ.Π”Π°Ρ‚Π° = ВСкущаяДата();

Π”ΠΎΠΊ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡŽ("ООО Ромашка");

// ДобавляСм строку Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части

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

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

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

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ².Π¦Π΅Π½Π° = 50;

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ².Π‘ΡƒΠΌΠΌΠ° = Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ².ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ * Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ².Π¦Π΅Π½Π°;

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

Π”ΠΎΠΊ.ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ();

Π’Π°ΠΆΠ½Ρ‹ΠΉ нюанс: ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ() Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ двиТСния ΠΏΠΎ рСгистрам. Если Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Ρ‘Π½, измСнСния Π² рСгистрах Π½Π΅ примСнятся!

4.2. Π Π°Π±ΠΎΡ‚Π° с рСгистрами накоплСния

РСгистры накоплСния хранят Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ остатках ΠΈ ΠΎΠ±ΠΎΡ€ΠΎΡ‚Π°Ρ…. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ записи Π² рСгистр "ВоварыНаБкладах":

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ = ДвиТСния.ВоварыНаБкладах.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅.ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ = ВСкущаяДата();

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅.Π‘ΠΊΠ»Π°Π΄ = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.Π‘ΠΊΠ»Π°Π΄Ρ‹.ОсновнойБклад;

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

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 10;

Для чтСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· рСгистра ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ запрос:

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

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

"ВЫБРАВЬ

| РСгистрНакоплСния.ВоварыНаБкладах.НомСнклатура КАК Π’ΠΎΠ²Π°Ρ€,

| БУММА(РСгистрНакоплСния.ВоварыНаБкладах.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) КАК ΠžΡΡ‚Π°Ρ‚ΠΎΠΊ

|Π˜Π—

| РСгистрНакоплСния.ВоварыНаБкладах КАК ВоварыНаБкладах

|Π“Π”Π•

| ВоварыНаБкладах.Π‘ΠΊΠ»Π°Π΄ = &Π‘ΠΊΠ»Π°Π΄

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

| ВоварыНаБкладах.НомСнклатура";

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("Π‘ΠΊΠ»Π°Π΄", Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.Π‘ΠΊΠ»Π°Π΄Ρ‹.ОсновнойБклад);

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с рСгистрами ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ. НапримСр, Ссли рСгистр ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ "ΠΏΠΎ дням", запрос Π±Π΅Π· указания ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π²Π΅Ρ€Π½Ρ‘Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π° вСсь ΠΏΠ΅Ρ€ΠΈΠΎΠ΄, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ остаткам.

5. ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок: ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для диагностики

Ошибки Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… 1Π‘ β€” нСизбСТная Ρ‡Π°ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π£ΠΌΠ΅Π½ΠΈΠ΅ ΠΈΡ… Π΄ΠΈΠ°Π³Π½ΠΎΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ сэкономит часы Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Рассмотрим ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ инструмСнты.

5.1. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°...Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ способ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° ошибок:

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

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

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹.Π—Π°ΠΊΠ°Π·ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Ρ.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠΎΠΌΠ΅Ρ€Ρƒ("000123");

Если Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.ΠŸΡƒΡΡ‚Π°Ρ() Π’ΠΎΠ³Π΄Π°

Π’Ρ‹Π·Π²Π°Ρ‚ΡŒΠ˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ "Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½!";

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

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

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

// Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ошибки Π² ΠΆΡƒΡ€Π½Π°Π»

Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ’Π–ΡƒΡ€Π½Π°Π»Π Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ(ОписаниСОшибки(), Π£Ρ€ΠΎΠ²Π΅Π½ΡŒΠ–ΡƒΡ€Π½Π°Π»Π°.Ошибка);

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

5.2. ΠžΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ 1Π‘: ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для пошагового выполнСния

Для запуска ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅:

  • πŸ› οΈ ΠžΡ‚Π»Π°Π΄ΠΊΠ°.Π’ΠΎΡ‡ΠΊΠ°ΠžΡΡ‚Π°Π½ΠΎΠ²Π°(); β€” установит Ρ‚ΠΎΡ‡ΠΊΡƒ останова Π² ΠΊΠΎΠ΄Π΅.
  • πŸ› οΈ ΠžΡ‚Π»Π°Π΄ΠΊΠ°.ΠŸΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ(); β€” приостановит Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
  • πŸ› οΈ ΠžΡ‚Π»Π°Π΄ΠΊΠ°.ВывСсти(ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ); β€” Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.

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

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π’Π΅ΡΡ‚ΠΎΠ²Π°ΡΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°()

ΠŸΠ΅Ρ€Π΅ΠΌ Π°, Π±;

Π° = 10;

Π± = 0;

ΠžΡ‚Π»Π°Π΄ΠΊΠ°.Π’ΠΎΡ‡ΠΊΠ°ΠžΡΡ‚Π°Π½ΠΎΠ²Π°(); // Π—Π΄Π΅ΡΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ прСрвётся

// ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π° / Π±; // Π”Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ноль

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

5.3. Π–ΡƒΡ€Π½Π°Π» рСгистрации

Для логирования ошибок ΠΈ событий ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ’Π–ΡƒΡ€Π½Π°Π»Π Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ():

Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ’Π–ΡƒΡ€Π½Π°Π»Π Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ(

"Ошибка ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° " + Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.НомСр,

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

,

,

"ΠœΠΎΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ.ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈΠ”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚()"

);

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΆΡƒΡ€Π½Π°Π» ΠΌΠΎΠΆΠ½ΠΎ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅: АдминистрированиС β†’ Π–ΡƒΡ€Π½Π°Π» рСгистрации.

πŸ’‘

Если ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρƒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π΅Π³ΠΎ ΠΏΡ€Π°Π²Π° Π² ролях. Часто ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π½Π΅ Π² ΠΊΠΎΠ΄Π΅, Π° Π² нСдостаточных Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ… Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, отсутствуСт ΠΏΡ€Π°Π²ΠΎ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ справочника).

6. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄: ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ эффСктивный ΠΊΠΎΠ΄

НСоптимизированныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ 1Π‘, особСнно Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π±Π°Π·Π°Ρ…. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ совСты ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

6.1. Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ Π»ΠΈΡˆΠ½ΠΈΡ… ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ Π±Π°Π·Π΅

ΠŸΠ»ΠΎΡ…ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ (ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ справочнику):

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

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

Если Π’ΠΎΠ²Π°Ρ€.ΠŸΡƒΡΡ‚Π°Ρ() Π’ΠΎΠ³Π΄Π°

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ;

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

// ... ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

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

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ (Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° всСх Π΄Π°Π½Π½Ρ‹Ρ… Π·Π° ΠΎΠ΄ΠΈΠ½ запрос):

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

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

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

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ’ΠΎΠ²Π°Ρ€ΠΎΠ² = Новый БоотвСтствиС;

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

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

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ’ΠΎΠ²Π°Ρ€ΠΎΠ².Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.НаимСнованиС, Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Бсылка);

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

6.2. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Для слоТных ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ… ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Они ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π² памяти ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ быстрСС, Ρ‡Π΅ΠΌ постоянныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹.

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

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

"ВЫБРАВЬ

| Π’ΠΎΠ²Π°Ρ€Ρ‹.НомСнклатура КАК Π’ΠΎΠ²Π°Ρ€,

| БУММА(Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) КАК Π˜Ρ‚ΠΎΠ³ΠΎ

|ΠŸΠžΠœΠ•Π‘Π’Π˜Π’Π¬ Π’Π’_Π˜Ρ‚ΠΎΠ³ΠΈΠŸΠΎΠ’ΠΎΠ²Π°Ρ€Π°ΠΌ

|Π˜Π—

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

|Π“Π”Π•

| Π’ΠΎΠ²Π°Ρ€Ρ‹.Бсылка Π”ΠΠ’ΠΠ’Π Π•ΠœΠ― > &ΠΠ°Ρ‡Π°Π»ΠΎΠŸΠ΅Ρ€ΠΈΠΎΠ΄Π°

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

| Π’ΠΎΠ²Π°Ρ€Ρ‹.НомСнклатура";

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("ΠΠ°Ρ‡Π°Π»ΠΎΠŸΠ΅Ρ€ΠΈΠΎΠ΄Π°", НачалоДня(ВСкущаяДата()));

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

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Π’Π’_Π˜Ρ‚ΠΎΠ³ΠΈΠŸΠΎΠ’ΠΎΠ²Π°Ρ€Π°ΠΌ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… запросах.

6.3. ΠšΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Если ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, курсы Π²Π°Π»ΡŽΡ‚ ΠΈΠ»ΠΈ справочники) Ρ€Π΅Π΄ΠΊΠΎ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ, ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² памяти:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠšΡƒΡ€ΡΠ’Π°Π»ΡŽΡ‚Ρ‹(Π’Π°Π»ΡŽΡ‚Π°) Экспорт

Если ΠšΡƒΡ€ΡΡ‹Π’Π°Π»ΡŽΡ‚ = НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

ΠšΡƒΡ€ΡΡ‹Π’Π°Π»ΡŽΡ‚ = Новый БоотвСтствиС;

Запрос = Новый Запрос("ВЫБРАВЬ Π’Π°Π»ΡŽΡ‚Π°, ΠšΡƒΡ€Ρ Π˜Π— РСгистрБвСдСний.ΠšΡƒΡ€ΡΡ‹Π’Π°Π»ΡŽΡ‚");

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

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

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

ΠšΡƒΡ€ΡΡ‹Π’Π°Π»ΡŽΡ‚.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π’Π°Π»ΡŽΡ‚Π°, Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.ΠšΡƒΡ€Ρ);

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

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

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠšΡƒΡ€ΡΡ‹Π’Π°Π»ΡŽΡ‚[Π’Π°Π»ΡŽΡ‚Π°];

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

πŸ’‘

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π² 1Π‘ β€” это Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, Π½ΠΎ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° сСрвСр. ВсСгда провСряйтС, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ количСство запросов ΠΊ Π±Π°Π·Π΅ ΠΈΠ»ΠΈ пСрСнСсти вычислСния Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ сторону.

7. Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΏΡ€ΠΈ написании ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΠΊΠ°ΠΊ ΠΈΡ… ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ

Π”Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π΅Π΄ΡƒΡ‚ ΠΊ падСнию систСмы ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ. Π Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ самыС распространённыС.

7.1. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ использованиС контСкста

Ошибка: ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ сСрвСрный ΠΊΠΎΠ΄ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅.

// ΠΠ•ΠŸΠ ΠΠ’Π˜Π›Π¬ΠΠž: запрос ΠΊ Π±Π°Π·Π΅ Π² клиСнтском ΠΊΠΎΠ΄Π΅

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°ΡΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°()

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

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Запрос.Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ(); // ΠžΠ¨Π˜Π‘ΠšΠ!

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

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠ°ΡΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°()

Π”Π°Π½Π½Ρ‹Π΅ = ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ”Π°Π½Π½Ρ‹Π΅Π‘Π΅Ρ€Π²Π΅Ρ€(); // Π’Ρ‹Π·ΠΎΠ² сСрвСрной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

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

&НаБСрвСрС

Ѐункция ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ”Π°Π½Π½Ρ‹Π΅Π‘Π΅Ρ€Π²Π΅Ρ€()

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

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

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

7.2. Π—Π°Π±Ρ‹Ρ‚Ρ‹Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ

Если транзакция Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚Π° (Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ() ΠΈΠ»ΠΈ ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ()), это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ Π±Π°Π·Ρ‹.

ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

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

// ... ΠΊΠΎΠ΄

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚; // Π—Π°Π±Ρ‹Π»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ!

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

ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ();

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

7.3. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π° с Π΄Π°Ρ‚Π°ΠΌΠΈ

Π’ 1Π‘ Π΄Π°Ρ‚Ρ‹ хранятся Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Π”Π°Ρ‚Π°, Π° Π½Π΅ Π‘Ρ‚Ρ€ΠΎΠΊΠ°. Частая ошибка β€” сравнСниС Π΄Π°Ρ‚ ΠΊΠ°ΠΊ строк:

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

Если ВСкущаяДата() > "01.01.2023" Π’ΠΎΠ³Π΄Π° // Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ строки ΠΈ Π΄Π°Ρ‚Ρ‹!

// ...

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

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

Если ВСкущаяДата() > Π”Π°Ρ‚Π°(2023, 1, 1) Π’ΠΎΠ³Π΄Π°

// ...

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

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

Если Π½Π΅ ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΡƒΡ‚Π΅Ρ‡ΠΊΠ°ΠΌ памяти. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ:

Π§Ρ‚Π΅Π½ΠΈΠ΅ = Новый ЧтСниСВСкста;

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

Π§Ρ‚Π΅Π½ΠΈΠ΅.ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ("C:\temp\file.txt");

ВСкст = Π§Ρ‚Π΅Π½ΠΈΠ΅.ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ();

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

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Ошибка чтСния Ρ„Π°ΠΉΠ»Π°!");

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

Π§Ρ‚Π΅Π½ΠΈΠ΅.Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ(); // Π’Π°ΠΆΠ½ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ»!

Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚, Ссли Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ?

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

8. ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡

1Π‘ позволяСт Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Π’ΠΎΡ‚ нСсколько ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сэкономят врСмя.

8.1. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ массового провСдСния Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π·Π° ΠΏΠ΅Ρ€ΠΈΠΎΠ΄:

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

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

"ВЫБРАВЬ

| Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π—Π°ΠΊΠ°Π·ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Ρ.Бсылка КАК Бсылка

|Π˜Π—

| Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π—Π°ΠΊΠ°Π·ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Ρ КАК Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚

|Π“Π”Π•

| Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π”Π°Ρ‚Π° ΠœΠ•Π–Π”Π£ &Начало И &ΠšΠΎΠ½Π΅Ρ†

| И Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ = Π›ΠžΠ–Π¬";

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("Начало", НачалоДня(ВСкущаяДата() - 30));

Запрос.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€("ΠšΠΎΠ½Π΅Ρ†", ΠšΠΎΠ½Π΅Ρ†Π”Π½Ρ(ВСкущаяДата()));

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

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

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

Π”ΠΎΠΊ = Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Бсылка.ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠžΠ±ΡŠΠ΅ΠΊΡ‚();

Π”ΠΎΠΊ.ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ();

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

8.2. Экспорт ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ экспорта Π΄Π°Π½Π½Ρ‹Ρ… Π² Excel:

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

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

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

// ЗаполняСм Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

// ...

// Экспорт Π² Excel

Excel = Новый Excel8Document;

Excel.WriteTable(Π’Π°Π±Π»ΠΈΡ†Π°);

Excel.Save("C:\temp\ΠΎΡ‚Ρ‡Ρ‘Ρ‚.xlsx");

8.3. Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ чтСния ΠΈ записи тСкстовых Ρ„Π°ΠΉΠ»ΠΎΠ²:

// Π—Π°ΠΏΠΈΡΡŒ Π² Ρ„Π°ΠΉΠ»

Π—Π°ΠΏΠΈΡΡŒ = Новый Π—Π°ΠΏΠΈΡΡŒΠ’Π΅ΠΊΡΡ‚Π°;

Π—Π°ΠΏΠΈΡΡŒ.ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ("C:\temp\log.txt", "Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅");

Π—Π°ΠΏΠΈΡΡŒ.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΡƒ("ВСстовая строка");

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

// Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°

Π§Ρ‚Π΅Π½ΠΈΠ΅ = Новый ЧтСниСВСкста;

Π§Ρ‚Π΅Π½ΠΈΠ΅.ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ("C:\temp\log.txt");

ВСкст = Π§Ρ‚Π΅Π½ΠΈΠ΅.ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ();

Π§Ρ‚Π΅Π½ΠΈΠ΅.Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ();

8.4. ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° email ΠΈΠ· 1Π‘

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ письма Ρ‡Π΅Ρ€Π΅Π· SMTP:

ΠŸΠΎΡ‡Ρ‚Π° = Новый ΠŸΠΎΡ‡Ρ‚Π°;

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ = Новый ΠŸΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ΅Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅;

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅.АдрСсат = "example@mail.ru";

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅.Π’Π΅ΠΌΠ° = "ΠžΡ‚Ρ‡Ρ‘Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ°ΠΌ";

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅.ВСкст = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚! Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΡ‚Ρ‡Ρ‘Ρ‚.";

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅.ВлоТСния.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("C:\temp\ΠΎΡ‚Ρ‡Ρ‘Ρ‚.xlsx");

ΠŸΠΎΡ‡Ρ‚Π°.ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ(Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅, "smtp.mail.ru", 25, "login", "password");

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с внСшними сСрвисами (email, API) ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅ настройки антивируса ΠΈ Ρ„Π°Π΅Ρ€Π²ΠΎΠ»Π°. Они ΠΌΠΎΠ³ΡƒΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исходящиС соСдинСния ΠΈΠ· 1Π‘. Π’Π°ΠΊΠΆΠ΅ Π½Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π² ΠΊΠΎΠ΄Π΅ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

FAQ: ЧастыС вопросы ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Π² 1Π‘

Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ для Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… с Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ Π“Π Π£ΠŸΠŸΠ˜Π ΠžΠ’ΠΠ’Π¬ ПО Π² запросС. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

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

"ВЫБРАВЬ

| НомСнклатура.НаимСнованиС КАК Π’ΠΎΠ²Π°Ρ€,

| БУММА(Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) КАК Π˜Ρ‚ΠΎΠ³ΠΎ

|Π˜Π—

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

|Π“Π”Π•

| Π’ΠΎΠ²Π°Ρ€Ρ‹.Бсылка Π”ΠΠ’ΠΠ’Π Π•ΠœΠ― > &На