Меню

Метод сортировки таблицы значений

Метод сортировки таблицы значений

Таблица значений — специальный объект в программировании 1С 8.3, который позволяет хранить промежуточные значения в виде двумерного массива со строками и колонками. Таблицы значений можно использовать как источник данных в запросе.

Таблицу значений, как любую коллекцию, можно обойти циклом. Например:

Получить нужную строку можно по индексу, например:

Индексы в 1С начинается с 0 (нуля).

Рассмотрим основные свойства и методы этого объекта на примерах.

Создание и использование таблиц значений 1С в примерах

Создать таблицу можно следующим образом:

Добавить колонки в таблицу значений 1С:

Крайне рекомендую указывать кроме первого еще и второй параметр — тип данных. Он поможет избежать некоторых ошибок.

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

После создания колонок добавим несколько новых строк и заполним колонки:

Добавим еще одну колонку:

Которую мы можем заполнить одинаковыми значениями двумя способами — перебором таблицы или функцией ЗаполнитьЗначения:

Сообщим пользователю название первой в списке программы (индекс таблицы значений в 1С начинается с «0»:

Скопировать строку таблицы значений 1С, для примера — первую:

Поиск в таблице значений 1С с ценой «17400» с помощью структуры:

Сортировка программ в таблице по цене:

Количество строк в таблице:

Выгрузить колонку таблицы значений в массив 1С:

Чтобы удалить строку в таблице значений, нужно передать саму строку или индекс в метод «Удалить». Два варианта:

Полностью скопировать таблицу значений 1С можно так:

Просуммировать итог по колонке таблицы значений:

Свернуть таблицу можно так:

При этом в таблице останутся только различные значения из колонки «ВерсияПлатформы» с суммированными полями «Цена».

Ну и напоследок очистим строки таблицы значений 1С 8.3 полностью:

И удалим все колонки:

Если Вы начинаете изучать 1С программирование, рекомендуем наш курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Источник



Сортировка данных в Excel

На первый взгляд выполнить сортировку данных в Excel легко, но даже опытные пользователи сталкиваются с вопросом, как это делать. В сегодняшней инструкции мы расскажем, что представляет данная опция и какова ее функция в электронной книге. Также рассмотрим на примере, каким образом ее выполнить.

Что такое сортировка и ее назначение

Сортировка — это удобный инструмент в приложении Excel, который помогает корректно отображать данные в таблицах, числовые и буквенные данные. После применения данного фильтра вы можете выводить документ на печать или использовать его электронную версию для презентации и других целей.

Как открыть утилиту в Excel: два метода

Чтобы попасть в меню «Сортировка», вам необходимо открыть документ с таблицей.

Первый метод

  1. Наведите мышь на таблицу с данными и кликните правой кнопкой. Перед вами появится всплывающее окно с доступными возможностями для этой таблицы. Вы выбираете «Сортировка».
  1. Открывается еще одно окошко, в котором нужно выбрать способ, как будет выполняться сортировка данных.
Читайте также:  Шаблон таблицы для тренировок

Второй метод

Вы можете увидеть необходимый фильтр прямо на панели инструментов, когда открываете документ.

  1. Для использования «Сортировки» оставайтесь во вкладке «Главная», отсюда переходите в блок «Редактирование» и кликайте мышью на «Сортировка и фильтр».
  1. Перед вами откроется окошко с вариантами выбора. Кликаете на нужную утилиту и смотрите что изменилось.

Сортировка по цвету будет выполняться только при условии, если в таблице применен инструмент «Заливка» или же шрифт отмечен другим цветом.

Варианты сортировки для таблиц: как их сделать

Один из распространенных способов сортировки данных в таблице — многоуровневая сортировка. С ее помощью можно одновременно использовать все фильтры. Рассмотрим подробнее.

  1. Переходите в блок «Редактирование» на вкладке «Главная», кликаете мышью на «Сортировка и фильтр». В появившемся окошке выбираете «Настраиваемая сортировка».
  1. Перед вами откроется окно «Мастера сортировки». В нем вы можете выбрать сортировку ячеек по «Названию столбца», «Цвету ячеек», «Алфавиту» и другим фильтрам одновременно.
  1. Обратите внимание на то, как изменилась ситуация в таблице. Теперь ячейки с одинаковой палитрой размещены рядом.

При использовании каждого способа упорядочивания информации необходим ключ сортировки. Он представляет собой название поля, которое берется за основу в процессе сортировки

Как выполнить сортировку данных по столбцам

Сортировка по столбцам — это один из простейших вариантов оформления по заданному порядку. Чтобы выполнить эту процедуру, переходим к пошаговой инструкции.

  1. Заходим на вкладку «Главная», перемещаемся в блок «Редактирование» и кликаем по иконке «Сортировка и фильтры», предварительно выделив всю таблицу. Затем переходим в «Настраиваемая сортировка».
  1. В появившемся окне «Мастера сортировки» перемещаемся во вкладку «Параметры».
  1. Открывается окно, в котором нужно установить флажок «Столбцы диапазона» и нажать «Ок». После этого данные в таблице переместятся.

Для сортировки другими способами можно использовать встроенные функции. С их помощью можно редактировать таблицы, как с вычислением промежуточных данных, так и с форматированием в случайном порядке. Инструмент «Сортировка» подойдет для тех, кто часто работает с электронными таблицами и базами данных.

Источник

Таблица значений в 1С 8.3 — примеры работы

Содержание

Таблица значений — это универсальная коллекция, объект встроенного языка, который используется для работы с данными в табличном виде. Этот объект не сохраняется в базе данных, а размещается в оперативной памяти. У таблицы значений в общем случае может быть произвольное количество колонок, при этом допускается как типизация колонок, так и размещение в колонках значений произвольных типов.

Таблица значений имеет свойства и методы для работы с колонками и строками, которые рассмотрены в ниже.

Создание таблицы значений

// Создание таблицы значений
ТабЗнач = Новый ТаблицаЗначений;

Добавление колонок

// Добавление колонок в таблицу значений без указания типа
ТабЗнач.Колонки.Добавить(«Сотрудник»);
ТабЗнач.Колонки.Добавить(«Должность»);
ТабЗнач.Колонки.Добавить(«Оклад»);

// Добавление колонки с явным указанием типа значения и заголовком
ОписаниеПремия = Новый ОписаниеТипов(«Число», Новый КвалификаторыЧисла( 10 , 2));
ТабЗнач.Колонки.Добавить(«ПроцентПремии», ОписаниеПремия, «Процент премии»);
ТабЗнач.Колонки.Добавить(«Премия», ОписаниеПремия, «Премия»);

Добавление новой строки, заполнение реквизитов

// Добавление новой строки в таблицу значений
СтрокаТЗ = ТабЗнач.Добавить();

// Заполнение строки по именам реквизитов
СтрокаТЗ.Сотрудник = «Иванов Иван»;
СтрокаТЗ.Должность = «Программист 1С»;
СтрокаТЗ.Оклад = 100000;

Читайте также:  Таблица два имени одного

СтрокаТЗ = ТабЗнач.Добавить();
// Заполнение строки таблицы значений по индексам колонок
СтрокаТЗ[0] = «Петров Петр»;
СтрокаТЗ[1] = «Тестировщик»;
СтрокаТЗ[2] = 80000;

Обращение к строке таблицы значений по индексу

ТабЗнач.Добавить();
// Обращение к строке таблицы значений по индексу
ТабЗнач[2].Сотрудник = «Федоров Василий»;

// Работа с таблицей как с двумерным массивом
ТабЗнач[2][1] = «Программист 1С»;

// Обращение к строке таблицы значений при помощи метода Получить
ТабЗнач.Получить(2).Оклад = 90000;

Вставить новую строку в нужное место и заполнить значения этой строки

// Вставить новую строку в указанную позицию в таблицу значений
ВставленнаяСтрока = ТабЗнач.Вставить(1);

// Заполнить строку значениями
// В качестве источника данных заполнения могут быть объекты с именованными свойствами
// — Структура, строка таблицы значений, объект, и т.п.
// метод производит сопоставление свойств по именам,
// и заполняет значения у совпавших свойств приемника — в нашем случае строки таблицы значений
ЗаполнитьЗначенияСвойств(ВставленнаяСтрока, СтрокаТЗ);
ВставленнаяСтрока.Сотрудник = «Сидоров Александр»;

Заполнить колонку таблицы одним значением для всех строк

// Заполнение колонки для всех строк таблицы значений
ТабЗнач.ЗаполнитьЗначения(10.5, «ПроцентПремии»);

Перебор строк и колонок таблицы значений

// Коллекция строк и коллекция колонок по своему поведению похожи на массивы,
// и работать с ними можно схожим образом
// Перебрать все колонки таблицы значений и вывести заголовки,
// а если не заполнен заголовок — то имя колонки
Для Каждого Колонка из ТабЗнач.Колонки Цикл
Сообщить(?(ЗначениеЗаполнено(Колонка.Заголовок),Колонка.Заголовок, Колонка.Имя));
КонецЦикла;

// Перебрать все строки и произвести какие-то вычисления,
// например, посчитать премию, как Оклад * процент премии /100
Для Каждого СтрокаТЗ из ТабЗнач Цикл
СтрокаТЗ.Премия = СтрокаТЗ.Оклад * СтрокаТЗ.ПроцентПремии / 100;
КонецЦикла;

Копирование таблицы значений в 1С — примеры

// Создать полную копию таблицы
КопияТЗ = ТабЗнач.Скопировать();
// Создать копию таблицы значений по нужным колонкам
КопияДолжностиОклады = ТабЗнач.Скопировать(,«Должность,Оклад»);

//Создать копию таблицы значений с отбором нужных строк
Отбор = Новый Структура(«Должность», «Тестировщик»);
КопияТЗТестировщики = ТабЗнач.Скопировать(Отбор);

// Создать пустую таблицу значений с такими же колонками как у исходной
ПустаяКопияТЗ = ТабЗнач.СкопироватьКолонки();

Сортировка таблицы значений в 1С 8

// Сортировать таблицу значений по колонке в 1С 8
КопияТЗ.Сортировать(«Оклад»);

// Сортировать таблицу значений по нескольким колонкам в 1С 8
КопияТЗ.Сортировать(«Должность Убыв, Оклад Возр»);

Свернуть таблицу значений

// Просуммировать значения в одних колонках, свернув таблицу значений в разрезе других колонок
// При использовании метода Свернуть, все не использованные в методе колонки удалятся!
// Первым параметром идет список колонок через запятую, по которым мы хотим получить группировки
// Вторым параметром идет список колонок, значения в которых нужно просуммировать
// В этом примере в таблице значений КопияТЗ останутся только колонки Должность и Оклад
КопияТЗ.Свернуть(«Должность», «Оклад»);

Удаление строк табличной части по условию. Обратный обход таблицы значений снизу вверх

// Удаление строк из таблицы значений по условию. Обратный перебор таблицы значений в 1С
КопияДляУдаления = ТабЗнач.Скопировать();ВсегоСтрок = КопияДляУдаления.Количество() — 1;
Для Сч = — ВсегоСтрок по 0 Цикл
Если КопияДляУдаления[-Сч].Оклад > 80000 Тогда
// Удаление строки таблицы значений.
// В качестве параметра может быть как конкретная строка таблицы значений, так и индекс строки.
КопияДляУдаления.Удалить(-Сч);
КонецЕсли;
КонецЦикла;
// В результате останутся только строки, где оклад меньше или равен 80000

// Обратный перебор таблицы значений — второй вариант
КопияДляУдаленияВариант2 = ТабЗнач.Скопировать();
Сч = КопияДляУдаленияВариант2.Количество() — 1;
Пока Сч >= 0 Цикл
Если КопияДляУдаленияВариант2[Сч].Должность = «Тестировщик» Тогда
КопияДляУдаленияВариант2.Удалить(Сч);
КонецЕсли;
Сч = Сч — 1;
КонецЦикла;
// В результате останутся только строки, где должность не равна «Тестировщик»

Читайте также:  Как заполнить таблицу значения сторон a и b

Поиск строк в таблице значений 1С

// Найти одну строку в таблице значений по значению во всех колонках.
// Метод целесообразно использовать для поиска уникальных значений
НайденнаяСтрока = ТабЗнач.Найти(«Федоров Василий»);

// Найти строку по значению с поиском по определенным колонкам
// При поиске по неуникальным значениям следует учитывать, что метод вернет первую попавшуюся строку
НайденнаяСтрока = ТабЗнач.Найти(10.5, «Премия, ПроцентПремии»);

Удалить все строки из таблицы значений

// Удалить все строки из таблицы значений
ТабЗнач.Очистить();

Получить навыки разработки в 1С, и составить целостное представление о платформе 1С Предприятие 8 вы можете, пройдя мой курс «Разработчик 1С с нуля».

Источник

Работа с таблицей значений в 1С 8.3

Таблица значений — специальный объект в программировании 1С 8.3, который позволяет хранить промежуточные значения в виде двумерного массива со строками и колонками. Таблицы значений можно использовать как источник данных в запросе.

Таблицу значений, как любую коллекцию, можно обойти циклом. Например:

Получить нужную строку можно по индексу, например:

Индексы в 1С начинается с 0 (нуля).

Рассмотрим основные свойства и методы этого объекта на примерах.

Создание и использование таблиц значений 1С в примерах

Создать таблицу можно следующим образом:

Добавить колонки в таблицу значений 1С:

Крайне рекомендую указывать кроме первого еще и второй параметр — тип данных. Он поможет избежать некоторых ошибок.

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

После создания колонок добавим несколько новых строк и заполним колонки:

Добавим еще одну колонку:

Которую мы можем заполнить одинаковыми значениями двумя способами — перебором таблицы или функцией ЗаполнитьЗначения:

Сообщим пользователю название первой в списке программы (индекс таблицы значений в 1С начинается с «0»:

Скопировать строку таблицы значений 1С, для примера — первую:

Поиск в таблице значений 1С с ценой «17400» с помощью структуры:

Сортировка программ в таблице по цене:

Количество строк в таблице:

Выгрузить колонку таблицы значений в массив 1С:

Чтобы удалить строку в таблице значений, нужно передать саму строку или индекс в метод «Удалить». Два варианта:

Полностью скопировать таблицу значений 1С можно так:

Просуммировать итог по колонке таблицы значений:

Свернуть таблицу можно так:

При этом в таблице останутся только различные значения из колонки «ВерсияПлатформы» с суммированными полями «Цена».

Ну и напоследок очистим строки таблицы значений 1С 8.3 полностью:

И удалим все колонки:

Если Вы начинаете изучать 1С программирование, рекомендуем наш курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Источник

Adblock
detector