масив 1с

Масив 1С - це простий набір значень. В один масив 1С можна додати значення різних типів. Після додавання наявність в масиві 1С значення можна перевірити вбудованим пошуком.

Масив 1С часто використовується:
А) Для відборів
Б) Для збереження списку значень, щоб далі використовувати його, наприклад, передати як параметр у функцію / процедуру.

Робота з масивами 1С

Створимо масив 1С з 2 значень:
Масив = Новий масив (); // масив без фіксованого кількості значень
ГСЧ = Новий ГенераторСлучайнихЧісел (); // будемо заповнювати випадковими числами

Массів.Добавіть (ГСЧ.СлучайноеЧісло (0 1000));
Массів.Добавіть (ГСЧ.СлучайноеЧісло (0 1000));

// цикл проходу кожного значення масиву 1С, скільки б їх не було
Для кожного ЗНЧ з Масив Цикл
Повідомити (ЗНЧ);
КонецЦікла;

Створимо масив 1С з 10 значень:
Масив = Новий масив (10); // масив з фіксованим кол-вом значень
ГСЧ = Новий ГенераторСлучайнихЧісел (); // будемо заповнювати випадковими числами

// індекс масиву починається з нуля, а не з одиниці
// 10 шт - це від 0 до 9
Для Сч = 0 по 9 Цикл
// звернення до масиву ІмяМассіва [Індекс]
Масив [Сч] = ГСЧ.СлучайноеЧісло (0 1000); // випадкове число від 0 до 1000
КонецЦікла;

// цикл проходу кожного значення масиву, скільки б їх не було
Для кожного ЗНЧ з Масив Цикл
Повідомити (ЗНЧ);
КонецЦікла;

// зверніть увагу - 10 значень масиву, це означає що їх за замовчуванням 10 шт і кожне значення дорівнює хто не визначився, поки ми не встановили інше
// це не означає, що ми не можемо додати ще одне значення, 11е, за допомогою ІмяМассіва.Добавіть ();

Створимо багатовимірний масив 1С 2х2. Багатовимірний масив 1С, значить кожна клітинка масиву 1С містить не значення, а також масив 1С.

Багатовимірний масив 1С не обов'язково повинен бути фіксованим. Зробимо багатовимірний масив 1С 2х2 без вказівки фіксованої кількості значень:

Створення масиву 1С з нуля

Отримання даних - витратна за часом і ресурсами процедура. Тому, якщо потрібно з отриманими даними працювати неодноразово - має сенс отримати їх один раз і зберегти в масив 1С, щоб далі працювати з уже отриманими і збереженими даними.

Наприклад - рядок версії програми виглядає наступним чином «11.0.9.5» - чотири числа, розділені крапками. Ми можемо перевести версію в «комп'ютерний» формат - масив з чотирьох числових значень. Тоді далі ми можемо порівнювати версії один з одним:

Отримання готового масиву 1С з даними

Масив 1С можна отримати зі списку значень за допомогою методу спСпісок.ВигрузітьЗначенія () і з таблиці значень за допомогою методу тТабліца.ВигрузітьКолонку ().

У прикладі нижче ми робимо запит - вибираємо все посилання документів з бази даних.

  • РезультатЗапроса = Запрос.Виполніть () // виконує запит
  • тзРезультат = РезультатЗапроса.Вигрузіть () // вивантажує результат в таблицю значень
  • мМассівСсилок = тзРезультат.ВигрузітьКолонку ( "ІмяКолонкі") // вивантажує колонку таблиці в масив

Отримання масиву 1С з інших об'єктів і використання в якості відбору в запиті

Коли на формі розташований список документів (або таблиця значень) - користувач може виділити курсором один рядок. Також можна дозволити виділяти кілька рядків одночасно. Щоб виділити кілька рядків (якщо не формі це дозволено) потрібно затиснути клавішу CTRL або SHIFT.

Додайте на форму товстого клієнта таблицю значень і в якості її типу виберіть ДокументСпісок.ІмяДокумента. В його властивості виберіть режим виділення - множинний.

масив 1с

Ми можемо програмно отримати список виділених рядків:

Якщо Ви використовуєте керовану форму, то потрібно спочатку додати реквізит форми з типом ДінаміческійСпісок, а в його властивостях виберіть основну таблицю - потрібний документ. Перетягніть реквізит на форму. У властивостях елементу форми (!) Виберіть також - режим виділення - множинний (встановлений так за замовчуванням).

масив 1с

Звернення до масиву 1С виділених рядків буде виглядати як:
Елементи.ІмяРеквізітаФорми. ВиделенниеСтрокі

Проголосувати за цей пост: