Свежая пресса
Изменения в законе «О бухгалтерском учете и финансовой отчетности в Украине»

Опубликовано: 2017.11.10

Уважаемые коллеги-бухгалтера! Спешим сообщить Вам, об изменениях в ЗУ «О бухгалтерском учете и финансовой отчетности в Украине», касающихся изменений некоторых положений, и вступит в силу с 01.01.2018, а уже с 01.01.2019 года вступят в силу тот абзац, касающийся предоставления финотчетности.

Подробнее...
Обновление программы EffectorSaver

Опубликовано: 2017.10.20

Уважаемые пользователи! Спешим сообщить вам о выходе новой версии программы Effector Saver! 

Подробнее...
Осенняя акция от компании FinSoft

Опубликовано: 2017.10.09

Что еще может так скрасить серые осенние будни, как не акция на программный продукт 1С от компании FinSoft

Подробнее...

Обучающие статьи. Урок 11 - Таблицы Значений в 1С

Опубликовано: 2017.01.23

Таблица значений в 1С

Сегодня нас встречает понедельник, и наша постоянная рубрика обучающих статей. Сегодня мы рассмотрим "Таблицы Значений" в 1С Предприятие

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

Листинг 16. Простая таблица значений:

Листинг кода 1 Урок 11

Посмотрим в отладке что получилось.

Пример таблицы значений

Все как мы и описали в коде. Колонки с нашими названиями и строки с нашими значениями.

Давайте перейдем к частичной визуализации наших решений в интерфейсе программы. Добавим вывод нашей таблицы значений на форму.

Листинг 17. Работа с элементами формы:

Листинг кода 2 Урок 11

Разберем новые значения.

ЭлементыФормы – это свойство интерфейса формы. У ЭлементыФормы есть свои методы, например добавить(). Этот метод добавляет новый элемент на форму. В первом параметре мы указываем тип элемента (если открыть синтаксис-помощник на методе добовить()то можно посмотреть какие еще типы можно указывать), во втором имя локальной переменной типа, в данном примере это «Таб», в строковом представлении. И в третьем указываем видимость.

После добавления элемента работаем уже непосредственно с ним ЭлементыФормы.Таб.

Указываем ширину, высоту, расположение (отсчет координат начинается с верхнего левого угла).

Далее используем метод СоздатьКолонки() – он удалит старые колонки, если они были и создаст новые.

Далее укажем для примера ширину первой колонки как 50 (не забываем, что нумерация идет с нуля). Так же включим чередование цвета в строках. Посмотрим, что получится.

Пример вывода таблицы значений

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

Метод Вставить() – Вставляет строку на указанный индекс строки. В отличии от предыдущих коллекций значений тут добавляется целая строка, а не значение в конкретной строке.

Листинг 18. Таблица значений метод Вставить()

Листинг кода 3. Урок 11

Таким образом, мы добавим строку перед строкой с яблоком.

Пример с добавленными строками

МетодВыбратьСтроку() - нужен в том случае если вы хотите взаимодействовать с пользователем.

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

Листинг 19. Таблица значений работа с выбранной строкой:

Листинг кода 4 Урок 11

Этот метод сам генерирует таблицу для визуализации вопроса пользователю. Результат выбора будет доступен в переменной ВыбраннаяСтрока, в ней же мы можем работать со значениями.

Метод ВыгрузитьКолонку() – Нужен если вы хотите получить отдельную колонку, для передачи например в запрос или загрузки в другую таблицу значений или еще куда-то.

Метод ЗагрузитьКолонку() – обратный методу ВыгрузитьКолонку(). Загружает массив в указанную колонку, в параметрах обязательно указывать имя колонки как и загружаемый массив.

Метод ЗаполнитьЗначения() – нужен для быстрого заполнения значений строки из например выборки запроса, при условии что названия колонок будут совпадать.

Метод Итог() – очень полезный метод если вам нужно получить сумму числовой колонки.

Метод Найти() – нужен для поиска строки с искомым значением. Можно так же указать, в каких колонках искать значения. В итоге мы получим одну строку с искомым значением.

Метод НайтиСтроки() – если мы ищем несколько строк, то будем использовать этот метод. Его отличие от метода Найти() в том, что он используется совместно с типом данных Структура.

Листинг 20. Таблица значений отбор строк:

Листинг кода 5 Урок 11

Результат такого поиска:

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

Так же стоит отметить, что возвращается в результате поиска массив.

Метод Количество(), Индекс(), Получить(), Очистить() – аналогичны предыдущим типам универсальных коллекций.

Метод Скопировать() – копирует всю таблицу значений, в параметрах можно указать строки и колонки для копирования.

Метод СкопироватьКолонки() – копирует только колонки таблицы значений, без самих значений этих колонок, т.е. строки скопированы не будут.

Метод Сортировать() – сортирует значения в указанных колонках указанным методом. Например, для сортировки по убыванию: "Убыв" и "Возр" для возрастания.

Метод Сдвинуть() – сдвигает строку на указанное количество вверх по таблице или в низ. Для сдвига вниз Таблица.Сдвинуть(0, 1), и в обратную сторону Таблица.Сдвинуть(0, -1);

Метод Свернуть() – очень полезный метод если у вас есть несколько повторяющихся значений. Как и в методе Итог() мы получим таблицу с итогом по одной или нескольких числовых колонках.

Например, у нас есть список сотрудников и их оклад за некоторое время и нам нужно быстро посчитать сумму их дохода.

Листинг 21. Таблица значений метод Свернуть():

Листинг кода 7 Урок 11

До сворачивания наша таблица будет иметь такой вид:

Таблица значений до сворачивания

После сворачивания:

Таблица значений после сворачивания

Метод, во-первых удалил колонку, которой не было в параметрах, колонка месяц была удалена, во-вторых по сотруднику «Петя» были просуммированы значения в колонке сумма.

Почему только по Пете, а остальных никак не тронуло?

Все просто, в первой части параметров мы указали, какие колонки и их значения считать уникальными. Т.е. у нас изначально было три строки со значением «Петя», но т.к. они одинаковы и мы указали эту колонку в параметрах, метод соединил все строки с одинаковыми значениями, и просуммировал последнюю колонку «Сумма», т.к. мы указали ее как суммируемую.

 

Так же, наша компания проводит обучение по трем курсам:

 Обучение проводится в вечернее время, что позволит вам не отрываться от работы или обучения, практикующим программистом нашей компании.

 От вас требуются уверенные знания ПК, и желание научиться чему-то новому.