1С использование функций

1. Общие механизмы, понятия и термины

1.1 С помощью чего осуществляется разработка бизнес-приложений в системе 1С:Предприятие 8?

  1. 1. Технологическая платформа
  2. Конфигурация
  3. Информационная база
  4. СУБД

1.2 Где определяется структура создаваемого бизнес-приложения в системе 1С:Предприятие 8?

  1. Технологическая платформа
  2. 2. Конфигурация
  3. Информационная база
  4. СУБД

1.3 Где хранятся учетные данные бизнес-приложения в системе 1С:Предприятие 8?

  1. Технологическая платформа
  2. Конфигурация
  3. 3. Информационная база

1.4 С помощью чего система 1С:Предприятие 8 работает с данными?

  1. Технологическая платформа
  2. Конфигурация
  3. Информационная база
  4. 4. СУБД

1.5 С какими СУБД работает система 1С:Предприятие 8?

1.6 Какого вида клиентского приложения не существует в системе 1С:Предприятие 8?

  1. 1. Отладочный клиент
  2. Толстый клиент
  3. Топкий клиент
  4. Веб-клиент
  5. Не существует 2 и 3 вариантов

1.7 Для каких целей может использоваться «Толстый клиент»?

  1. Использование прикладного решения
  2. Отладка прикладного решения
  3. Разработка прикладного решения
  4. Верпы варианты 1 и 2
  5. 5. Верны все варианты

1.8 Для каких целей может использоваться «Тонкий клиент»?

  1. Использование прикладного решения
  2. Отладка прикладного решения
  3. Разработка прикладного решения
  4. 4. Верны варианты 1 и 2
  5. Верны все варианты

1.9 На компьютерах с какой операционной системой могут работать пользователи системы 1С:Предприятия 8.2?

  1. На всех версиях Windows
  2. На всех версиях Windows и Linux
  3. 3. На Windows с использованием толстого клиента и тонкого, на Linux -через интернет браузер — Веб-клиент
  4. На Windows — Толстый клиент, на Linux — Тонкий и Веб-клиент

1.10 Если рабочие серверы кластера 1С:Предприятие работают с использованием разных операционных систем то:

  1. ни каких ограничений на используемые СУБД нет
  2. с MS SQL сервер можно работать с рабочего сервера под управлением операционных систем Windows, с другими СУБД только из под Linux
  3. 3. с MS SQL сервер можно работать с рабочего сервера под управлением операционных систем Windows, с другими СУБД как из под Windows, так и из под Linux

1.11 Что разрешено разработчикам прикладных решений в системе 1С:Предприятие 8?

  1. Изменять функциональность типовых тиражных решений
  2. Создавать собственные прикладные решения
  3. Изменять функциональность технологической платформы
  4. 4. Правильны ответы I и 2
  5. Верны все варианты

1.12 Какие компоненты типовой поставки в системе 1С:Предприятие 8 защищены аппаратным ключом?

  1. Клиентское приложение
  2. Типовое тиражное решение
  3. Сервер 1С:Предприятия
  4. 4. Правильны ответы 1 и 3
  5. Правильны ответы 1 и 2
  6. Верны все варианты

1.13 Для каких компонент существуют сетевые ключи защиты?

  1. 1. Клиентское приложение
  2. Типовые тиражные решения
  3. Сервер 1С:Предприятия
  4. Правильны ответы 1 и 3
  5. Правильны ответы 1 и 2
  6. Верны все варианты

1.14 Сколько конфигураций обязательно должно существовать в прикладном решении?

  1. Одна
  2. 2. Две
  3. Три
  4. Сколько угодно

1.15 Сколько информационных баз может быть с одной и той же конфигурацией?

  1. Только одна
  2. Только две (рабочая и демонстрационная)
  3. 3. Неограниченно
  4. Определяется комплектом поставки прикладного решения
  5. Определяется в настройках конфигурации

1.16 Какую конфигурацию можно изменять интерактивно в конфигураторе?

  1. 1. Основная конфигурация
  2. Конфигурация базы данных
  3. Конфигурация поставщика
  4. Внешние конфигурации

1.17 Из чего состоит конфигурация?

  1. 1. Объекты конфигурации
  2. Объекты встроенного языка
  3. Объекты информационной базы
  4. Верны ответы I и 3
  5. Верны все варианты

1.18 Какие объекты используются в алгоритмах?

  1. Объекты конфигурации
  2. Объекты встроенного языка
  3. Объекты информационной базы
  4. Верны ответы I и 3
  5. 5. Верны все варианты

1.19 В каком объекте содержится редактируемая пользователем информация?

  1. Объект конфигурации
  2. Объект встроенного языка
  3. 3. Объект информационной базы
  4. Верны ответы I и 3
  5. Верны все варианты

1.20 Что содержится в объекте информационной базы при редактировании нового элемента справочника с табличными частями?

  1. Данные реквизитов
  2. Ссылка на элемент справочника
  3. Строки табличных частей
  4. 4. Верны ответы I и 3
  5. Верпы все варианты

1.21 Что содержится в объекте информационной базы при редактировании существующего в базе элемента справочника с табличными частями?

  1. Данные реквизитов
  2. Ссылку на элемент справочника
  3. Строки табличных частей
  4. Верны ответы 1 и 3
  5. 5. Верны все варианты

1.22 Для включения отборов в списках по содержимому табличных частей объектов и их свойств, неотображаемых в форме:

  1. ничего дополнительно настраивать не надо, все реализовано на уровне платформы
  2. реализуется только запросами
  3. осуществляется только с помощью дополнительной настройки форм
  4. 4. необходимо создать объект критерии отбора

1.23 Параметры сеанса инициируются:

  1. при запуске системы
  2. при программном обращении
  3. во время работы интерактивно
  4. 4. Верны варианты I и 2
  5. Верны все варианты

1.24 Роль, как объект конфигурации, отражает…

1. статус и сферу ответственности ее носителя как сотрудника компании

  1. совокупность доступных определенному пользователю объектов в среде » I С:Предприятие»
  2. 3. совокупность нрав действий в среде «1С:11редприятис» с возможностью присвоения конкретному пользователю
  3. набор параметров пользователя

1.25 Доступ к данным может задаваться…

  1. для видов объектов информационной базы
  2. па объекты информационной базы
  3. на свойства объектов информационной базы
  4. на стандартные реквизиты объектов информационной базы
  5. Верны варианты I и 2
  6. 6. Верпы все варианты

1.26 При настройке ограничения прав доступа на уровне записей и полей базы данных значения параметров для условий определяются.,.

  1. как переменные, определенные в модуле приложения
  2. как переменные, определенные в модуле приложения с ключевым словом Экспорт
  3. 3. как параметры сеанса
  4. как константы
  5. как переменные определяемые в соответствующем обработчике события

1.27 Ограничения, накладываемые на работу с объектами (полученные при настройке ролей) действуют…

  1. только на интерактивные действия пользователя
  2. только па программные действия, выполняемые в контексте пользователя с данной ролью
  3. одновременно на интерактивные действия и программные механизмы
  4. 4. в зависимости от выбранного права, либо на интерактивные действия, либо на программные механизмы, выполняемые в контексте пользователя е данной ролью

1.28 Для запрета режима непосредственного удаления объектов пользователем необходимо…

  1. в свойствах конфигурации снять флаг «Разрешить непосредственное удаление объектов»
  2. при определении роли для соответствующих объектов снять отметку у флага «Удаление»
  3. 3. при определении роли для соответствующих объектов снять отметку у флага «Интерактивное удаление»
  4. в свойствах роли снять отметку у флага «Разрешить удаление объектов»
  5. в свойствах роли снять отметку у флага «Разрешить интерактивное удаление объектов»

1.29 При настройке ограничений прав доступа (в ролях), при определении шаблонов:

  1. в них можно определить один параметр, значение которого будет передаваться при указании шаблона в конкретном ограничении доступа к данным
  2. 2. в них можно определить любое количество параметров, значение которых будет передаваться при указании шаблона в конкретном ограничении доступа к данным
  3. параметры в шаблонах использовать нельзя
  4. при описании ограничений правд доступа пет возможности использовать шаблоны

1.30 Картинки для прикладного решения могут браться из …

  1. библиотеки картинок технологической платформы
  2. библиотеки картинок конфигурации
  3. из файловой системы
  4. верны варианты i и 2
  5. 5. верны все варианты

1.31 Для возможности переключения пользователем интерфейсного языка прикладного решения необходимо:

  1. в настройках пользователя выбрать возможный язык, из списка дополнительных интерфейсов
  2. 2. в настройках пользователя выбрать возможный язык, из списка языков интерфейсов, заданных в ветви метаданных языки
  3. в настройках пользователя выбрать возможный язык, из списка предопределенных в платформе языков
  4. верпы варианты i и 2
  5. верны все варианты

1.32 В механизме полнотекстового поиска для поиска с учетом синонимов слова «алый» используется выражение:

  1. 1. !алый
  2. ‘алый’
  3. (алый)
  4. «алый»

1.33 Для нечеткого поиска данных (с одной ошибкой) в механизме полнотекстового поиска используется выражение:

  1. !манолит
  2. 2. #манолит
  3. манолит*
  4. «манолит»

1.34 Данные какого-либо созданного объекта (элемента справочника для которого включен механизм полнотекстового поиска) попадают в полнотекстовый индекс

  1. при записи объекта
  2. при выполнении специального метода встроенного языка системы
  3. при выполнении команды из пункта меню «Операции/…»
  4. 4. верны варианты 2,3

1.35 При необходимости внести в механизм полнотекстового поиска свой дополнительный словарь (синонимы, специфичные для какого-либо рода деятельности) его можно включить в конфигурацию:

  1. как константу
  2. как общий макет
  3. как параметр сеанса
  4. 4. верны ответы 1,2
  5. верны ответы 1,2,3

1.36 В механизме полнотекстового поиска индексированию не подлежат реквизиты следующих типов:

  1. Дата
  2. Хранилище значений
  3. 3. Булево
  4. верны ответы 2,3
  5. верны ответы 1,2,3

1.37 Хранение бинарных данных в конфигурации:

  1. не возможно
  2. реализовано с помощью макетов
  3. обеспечивается константами и реквизитами с типом данных «Хранилище значений»
  4. 4. верны варианты 2 и 3

1.38 Для определения значений констант форма ввода…

  1. может создаваться автоматически платформой
  2. может определяться разработчиком в общих формах
  3. определяется в ветке формы для набора констант
  4. 4. верны варианты I и 2
  5. верны варианты I и 3
  6. верны все варианты

1.39 Произвольная классификация объектов конфигурации осуществляется с помощью …

  1. свойства Комментарий у объекта конфигурации
  2. создания реквизита «Классификация»
  3. 3. с помощью объекта конфигурация Подсистемы
  4. верпы варианты I и 2
  5. верны все варианты

1.40 Какой из вариантов лучше всего предложить пользователю, чтобы привести учет, контролируемый последовательностью, в актуальное состояние?

  1. 1. Воспользоваться режимом восстановления последовательности из диалога «Операции» / «Проведение документов…» / «Восстановление последовательностей»
  2. Перепровести в хронологической последовательности все документы
  3. Перепровести в хронологической последовательности все документы, принадлежащие последовательности
  4. Перепровести в хронологической последовательности все документы, принадлежащие последовательности, начиная с границы последовательности. Границу последовательности определить через «Табло» по формуле: Последовательности.ИмяПоследовательности.ПолучитьГраницу().Ссылка

1.41 Определите отличие между вводом документа копированием и вводом «на основании»

  1. 1. Копирование — создание нового объекта копированием существующего, причем того же типа и с идентичными данными, а ввод на основании обычно создаст объект другого типа, данные которого лишь функционально зависят от «объекта-основания»
  2. Между этими операциями пет отличия
  3. При копировании документ создается и сразу записывается в информационную базу, а при вводе на основании пользователь может изменить скопированные во вновь созданный объект данные («на основании» своих соображений) и только затем записать объект

1.42 Объект конфигурации Константа…

  1. предназначен для хранения предположительно не изменяющейся информации
  2. для хранения значений во времени необходимо установить признак периодичности
  3. в платформе 8 не поддерживает признак периодичности, необходимо использовать периодический регистр сведений
  4. верны ответы 1 и 2
  5. 5. верпы ответы 1 и 3

1.43 Какие виды иерархии существуют в системе 1С:Предприятие 8?

  1. Иерархия групп
  2. Иерархия элементов
  3. Иерархия групп и элементов
  4. Верны ответы 1 и 3
  5. 5. Верны ответы 2 и 3
  6. Верны все указанные ответы

1.44 Какие варианты подчинения существуют в системе 1С:Предприятие 8?

  1. группам
  2. элементам
  3. группам и элементам
  4. Верпы ответы I и 3
  5. Верны ответы 2 и 3
  6. 6. Верны все указанные ответы

1.45 В какое значение можно установить свойство «Серии кодов» объекта конфигурации «Справочник»?

  1. Во всем справочнике
  2. В пределах подчинения
  3. В пределах подчинения владельцу
  4. 4. Верпы все указанные ответы
  5. Верны ответы 1 и 2

1.46 Объект конфигурации Перечисление…

  1. прикладной объект, значения которого задаются в Конфигураторе.
  2. может хранить различные типы значений
  3. для него может быть заданы форма списка и выбора
  4. верны все указанные ответы
  5. 5. верны ответы I и 3

1.47 Назовите основное назначение объектов типа «Документ»?

  1. 1. Предназначены для хронологического отражения в системе событий предметной области, например, хозяйственных операций предприятия, контактов с покупателями
  2. Предназначены для отражение в системе условно-постоянной информации, например, карточек контрагентов
  3. Предназначены только для отражения хозяйственных операций в регистрах учета, например, в регистрах бухгалтерии
  4. Предназначены только для печати на бумажных носителях унифицированных форм, например, счетов-фактур, расходных накладных
  5. Предназначены только для обработки больших объемов данных в целях получения информации нового качества, например, формирование книги покупок, книги продаж по учету НДС

1.48 Какое максимальное количество видов документов позволяет создать система 1С:Предприятие 8 в процессе конфигурирования?

  1. 1. Неограниченное
  2. Ограничивается свойством конфигурации «Количество видов документов»
  3. 256, т.к. система не позволяет обрабатывать более 256 таблиц объектов одного типа
  4. 50, т.к. максимальная длина номера документа равна 50 символов

1.49 Назовите основное назначение объектов типа «ЖурналДокументов»

  1. 1. Регистрация в единой таблице документов различных видов, собранных по принципу общности отражаемых событий предметной области и предоставляемых пользователю в едином, упорядоченном по хронологии списке
  2. Журнал представляет собой список документов определенного вида, упорядоченный по хронологии. Каждый вид документа должен быть зарегистрирован в одном из журналов документов, иначе пользователь не сможет работать со списком документов этого вида
  3. Журнал документов представляет собой таблицу для хранения всех документов в едином списке, упорядоченном по хронологии. Отличаются же журналы друг от друга только составом дополнительных граф
  4. В системе уже есть предопределенный объект типа «ЖурналДокументов», называемый «Общий журнал документов», назначение которого — регистрация в единой таблице документов всех видов в упорядоченном по хронологии виде. Разработчик не может создавать свои журналы документов

1.50 Объект конфигурации Отчет…

  1. может быть сохранён в составе конфигурации и как внешняя обработка
  2. может сравниваться с внешней обработкой, формируя отчет в печатной форме
  3. может быть добавлен в конфигурацию из внешней обработки
  4. 4. верны все указанные ответы

1.51 Внешние обработки используются:

  1. 1. На стадии отладки, для более быстрого внесения изменений в обработку
  2. Для разграничения прав доступа к обработке
  3. Для возможности редактирования обработки пользователем в режиме 1С:Предприятие

1.52 Внешняя обработка может быть включена в состав конфигурации:

  1. Как отчет
  2. Как обработка
  3. 3. Верны ответы 1 и 2

1.53 Выберите верный набор ассоциаций «Объект» — «тип файла»:

1.54 Назовите основную функцию нумератора документов?

1. Сквозная нумерация документов разного вида

  1. Чтобы при конфигурировании легче было определять свойства нумерации документов
  2. Только для обеспечения уникальности номеров документов в пределах года
  3. Он используется только для нумерации тех документов, у которых спят флажок свойства «Автонумерация»

1.55 При создании нового документа и отказа от его записи номер документа:

  1. освобождается (он может автоматически назначаться другому экземпляру документа в этом периоде)
  2. не освобождается (он не будет автоматически назначаться другому экземпляру документа в этом периоде)
  3. 3. освобождается или не освобождается зависит от значения соответствующего свойства конфигурации

1.56 Назовите основное назначение объекта «Последовательность документов»?

  1. 1. Автоматизация контроля над хронологическим порядком проведения документов тех видов, которые указаны в последовательности
  2. Чтобы запрещать пользователю непоследовательное проведение документов
  3. Чтобы запрещать пользователю проведение документов «задним числом»
  4. Автоматизация разрешения коллизий при одновременной записи в информационную базу нескольких документов, принадлежащих последовательности
  5. Этот объект позволяет вести список тех документов, которые были проведены «задним числом»

1.57 Какими данными и с какой целью обеспечивает пользователя «Граница последовательности документов»?

  1. 1. Моментом времени, начиная с которого перепроведение документов последовательности в хронологическом порядке, восстановит правильность (актуальность) учета, контролируемого последовательностью
  2. Датой, начиная с которой перепроведение всех документов в хронологическом порядке, восстановит правильность (актуальность) учета, контролируемого последовательностью
  3. Ссылкой на документ последовательности, начиная с которого перепроведение документов последовательности в хронологическом порядке, восстановит правильность (актуальность) учета, контролируемого последовательностью

1.58 С помощью какого свойства можно определить, какому документу принадлежит запись регистра?

  1. 1. Регистратор
  2. Документ
  3. ТекущийДокумент
  4. Специального свойства у записи регистра нет. Для этих целей можно определить у регистра реквизит типа «ДокументСсылка»

1.59 Ограничен ли состав тех регистров учета, в которых документ может выступать в качестве регистратора движения?

  1. 1. Да, ограничен специальным списком. Документ может выступать в качестве регистратора движения только у тех регистров, которые отмечены на закладке «Движения» окна редактирования объекта
  2. Да, ограничен. Документ может выступать в качестве регистратора движения только в одном регистре, который отмечен на закладке движения окна редактирования объекта
  3. Да, ограничен типом регистра. Документ может выступать в качестве регистратора движения только в регистрах накопления, бухгалтерии и расчета
  4. Нет, не ограничен. Документ может выступать в качестве регистратора движения в любых регистрах

1.60 Какие условия предметной области могут повлиять на установку свойства «Оперативное проведение» документа в значение «Разрешить»?

  1. 1. Когда документ ориентируется на проведение в реальном (настоящем) времени
  2. Когда проведение документа не зависит от времени его регистрации
  3. Когда документ ориентируется на проведение прошлым временем («задним числом»)
  4. Когда документ ориентируется па проведение будущим временем

1.61 Для каких объектов конфигурации возможен ввод предопределенных значений?

  1. Справочники
  2. документы
  3. Планы видов характеристик, планы счетов, планы видов расчета
  4. Все вышеперечисленные
  5. 5. Справочники, планы видов характеристик, планы счетов, планы видов расчета

1.62 Для объектов конфигурации «Бизнес-процесс» и «Задача» выберите верное утверждение:

  1. В конфигурации может быть только один Бизнес-процесс и одна Задача
  2. Бизнес-процесс может связываться одновременно с несколькими Задачами
  3. 3. Каждая Задача может использоваться в нескольких Бизнес-процессах
  4. При конфигурировании нет возможности определить связь между Бизнес-процессами и Задачами (она реализуется программно)

1.63 Отчет и обработка…

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

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

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

  1. 1. Свойство «Тип значения характеристик»
  2. Свойство «Дополнительные значения характеристик»
  3. Оба свойства могут быть не заполнены
  4. Обязательно должны быть заполнены свойства «Тип значения характеристик» и «Дополнительные значения характеристик»

1.65 Какое максимальное количество общих реквизитов может быть определено для документов?

1. Для документов не вводится такое понятие как «Общий реквизит документов»

  1. Количество общих реквизитов документов не ограничено
  2. Максимальное количество общих реквизитов ограничивается в свойстве конфигурации «Количество общих реквизитов»
  3. Количество общих реквизитов зависит от варианта работы е информационной базой. В файловом — до 50 реквизитов, в клиент-серверном — неограниченно

1.66 Для каких целей служат табличные части справочников?

  1. Для хранения подчиненных сущностей, имеющих объектную природу
  2. 2. Для храпения подчиненных сущностей, не имеющих объектную природу
  3. Для формирования печатных форм элементов справочника

1.67 Какое максимальное количество реквизитов документа позволяет определить система 1С:Предприятие 8?

  1. 1. Количество реквизитов документа пе ограничено
  2. Максимальное количество реквизитов ограничивается в свойстве «Количество реквизитов»
  3. Количество реквизитов документа не ограничено, но при этом реквизитов ссылочного типа не может быть больше 10
  4. Количество реквизитов зависит от варианта работы с информационной базой. В файловом — до 50 реквизитов, в клиент-серверном — неограниченно

1.68 Какое максимальное количество табличных частей документа позволяет определить система 1С:Предприятие 3?

  1. 1. Количество табличных частей документа пе ограничено
  2. Максимальное количество табличных частей ограничивается в свойстве «Количество табличных частей»
  3. У документа может быть только одна табличная часть
  4. Количество табличных частей зависит от варианта работы с информационной базой. В файловом — до 50, в клиент-серверном — неограниченно

1.69 У объекта «Табличная часть» в качестве подчиненных объектов могут быть…

  1. 1. реквизиты
  2. табличные части
  3. верно 1 и 2
  4. верно 1, 2, а так же — подчиненные документы, элементы справочников, планы видов характеристик, планы счетов, планы видов расчетов

1.70 Каким может быть тип данных ресурса у регистра сведений?

  1. Один из примитивных типов данных
  2. Ссылочные типы данных
  3. Хранилище значений
  4. Составной тип данных
  5. 5. Верны все перечисленные ответы
  6. Верны ответы 1 и 2

2. Редакторы и инструменты общие

2.1 HTML-редактор можно использовать:

  1. Для создания текстовых документов
  2. 2. Для создания HTML- документов
  3. Для создания документов в формате XML
  4. Верны ответы 1, 2 и 3

2.2 Вызов HTML-редактора можно осуществить:

  1. Через пункт главного меню «Файл-Новый-HTML-документ»
  2. Через пункт главного меню «Файл-Открыть…»
  3. По кнопке «Справочная информация» окна свойств объекта конфигурации
  4. Верны ответы 1 и 2
  5. 5. Верны ответы 1, 2 и 3

2.3 Закладка «Текст» HTML-редактора предназначена:

  1. 1. Для редактирования создаваемого документа в формате HTML
  2. Для редактирования создаваемого документа в формате XML
  3. Для редактирования создаваемого документа в визуальном режиме

2.4 Можно ли в HTML-документ помещать картинки?

  1. Нет, нельзя
  2. 2. Можно, в любой части HTML-документа
  3. Можно, но только в тексте HTML-документа

2.5 Редактор HTML-страниц…

  1. 1. Включен в платформу «1С:Предприятия 8»
  2. Поставляется в качестве дополнения
  3. Поставляется в комплекте с компонентой WEB-расширение

2.6 Редактор HTML-страниц:

2.7 Для редактирования текста модуля формы используется:

  1. Специальный редактор модулей
  2. 2. Редактор текстов и модулей
  3. Выбор редактора зависит от типа значения основного реквизита формы
  4. Верны ответы 1 и 2

2.8 Как можно настроить выделение цветом синтаксических конструкций?

  1. Выделение цветом синтаксических конструкций установлено по умолчанию и изменению не подлежит
  2. 2. «Сервис» — «Параметры» закладка «Редактирование» на странице «Тексты модулей», группа параметров «Выделение цветом синтаксических конструкций»
  3. В 1С:11редприятии 8 не реализована возможность выделения цветом синтаксических конструкций

2.9 Для чего в 1С:Предприятия 8 реализовано выделение цветом синтаксических конструкций?

  1. Для правильной работы синтаксического контроля модуля
  2. 2. Для удобства редактирования ‘текстов модулей
  3. Верно все вышеперечисленное

2.10 Для чего в меню конфигуратора введен признак «Встроенный язык»?

  1. Для включения режима выделения цветом синтаксических конструкций в тексте модуля
  2. 2. Для включения режима выделения цветом синтаксических конструкций в тексте модуля и в текстовом документе
  3. Правильный ответ не перечислен

2.11 В каких случаях можно выполнять синтаксический контроль модуля?

!. В любой момент редактирования модуля, выбрав команду контекстного меню «Синтаксический контроль»

  1. При закрытии модуля
  2. При сохранении всей конфигурации
  3. 4. В любой момент редактирования модуля, выбрав команду контекстного меню «Синтаксический контроль», а также (при включенном режиме автоматического выполнения синтаксического контроля модуля) при закрытии текста модуля или сохранении всей конфигурации

2.12 Для чего используется синтаксический контроль?

  1. Для проверки выделенного фрагмента модуля на правильность использования синтаксических конструкций встроенного языка
  2. 2. Для проверки программных модулей на правильность использования синтаксических конструкций встроенного языка
  3. Нет правильного ответа

2.13 Что используется для создания и редактирования текстовых документов?

  1. HTML — редактор.
  2. 2. Редактор текстов и модулей
  3. HTML — редактор или редактор текстов
  4. Табличный ред… Продолжение »

О чем эта статья

Эта статья продолжает цикл статей «Первые шаги в разработке на 1С». В ней будут рассмотрены следующие вопросы:

  • Что такое процедуры и функции и когда их нужно использовать?
  • В чем отличие процедуры от функции?
  • Что такое параметр процедуры (функции) и как его передать?
  • В каком случае передавать параметр по ссылке, а в каком по значению?
  • Как быстро посмотреть список процедур текущего модуля?

Применимость

Материал полностью актуален для платформы «1С:Предприятие 8» редакций 8.2. и 8.3.

Процедуры и функции

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

При этом мы избавляемся от дублирования кода, заменив его вызовом процедуры (функции). Если возникает потребность внести изменения в алгоритм, то эти изменения будет достаточно внести в одном месте.

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

В итоге облегчается сопровождение прикладного решения.

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

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

Функция, в отличии от процедуры, может иметь возвращаемое значение. В теле функции для того, чтобы вернуть значение, нужно использовать оператор Возврат и указать то значение, которое будет возвращаться.

Процедура, в отличии от функции, не может иметь возвращаемое значение. Она просто вызывается и выполняет какие-то действия.

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

Процедура или функция начинает описываться со слова Процедура (Функция). Далее следует Имя процедуры (функции). После имени обязательно указываются круглые скобки. Внутри скобок могут находиться описываемые параметры.

Данные параметры нужно будет передавать при вызове (при обращении к процедуре). После круглых скобок может стоять слово Экспорт (экспортная функция).

Потом следует тело процедуры (функции), т.е. последовательность из любого количества операторов.

В теле могут находиться вызовы других процедур и функций данного модуля или других модулей, которые доступны из текущего программного модуля. Обязательным является наличие заключительного слова КонецПроцедуры (КонецФункции).

После описания процедуры или функции точку с запятой ставить не нужно. При этом Платформа не считает ошибкой, если точка с запятой стоит после последней процедуры (функции) в модуле.

Однако со временем эта процедура (функция) в результате действий программиста может стать не последней, и тогда будет выдаваться сообщение об ошибке. Примерный вид процедуры и функции представлен на рисунке.

Параметры, переданные в процедуру (функцию) при ее вызове, могут быть использованы при формировании возвращаемого результата функцией или при выборе используемого алгоритма в процедуре.

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

В том случае, если при вызове процедуры (функции) значение параметра будет не задано, то оно примет значение, используемое по умолчанию.

Таким образом, параметры, для которых указано значение по умолчанию, являются необязательными для указания при вызове. В описании процедуры(функции) вначале следуют обязательные параметры, а потом необязательные.

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

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

Т.е. при вызове процедуры (функции) мы передавали параметр с одним значением, а после отработки вызываемой процедуры (функции) значение параметра изменилось.

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

В этом случае вызывается новая область памяти, отличная от предыдущей, и меняется именно она. Исходное значение параметра не меняется.

По умолчанию все параметры передаются по ссылке. Чтобы передать параметр по значению, в описании процедуры перед параметром нужно поставить ключевое слово Знач.

Следует сказать, что в некоторые процедуры-обработчики передается такой параметр, как Отказ. Значение данного параметра по умолчанию – Ложь.

Если в теле процедуры-обработчика установить данному параметру значение Истина, то процедура не отработает.

Порядок следования процедур и функций в модуле 1С:Предприятие 8 значения не имеет. Из любой процедуры (функции) модуля можно вызывать любую другую процедуру или функцию данного модуля.

Чтобы обратиться к списку процедур текущего модуля в панели конфигуратора можно нажать на кнопку в виде лупы с надписью «PROC» или использовать горячие клавиши (Ctrl+Alt+P).

Откроется диалоговое окно, в котором описаны функции F(x) и процедуры P( ). К ним возможно обращаться.

Список может быть отсортирован в алфавитном порядке (для этого устанавливается галочка «Сортировка»).

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

Кроме процедур и функций в списке для разных модулей будут доступны разные стандартные обработчики. При выборе обработчика двойным кликом мыши в модуле создается шаблон соответствующей процедуры (обработчика события).

Если в диалоговом окне «Процедуры и функции» выбрать процедуру и нажать на кнопку Перейти, то мы окажемся в начале выбранной процедуры (функции).

Справа от кнопки с надписью «PROC» располагается поле. В этом поле указано имя текущей процедуры (функции).

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

PDF-версия статьи

Мы ведем группу ВКонтакте – http://vk.com/kursypo1c.

Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.

Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)

Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кеш браузера или подписаться через другой браузер.

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

  • Что такое универсальные коллекции, когда и в каких случаях их необходимо использовать?
  • Что общего у всех универсальных коллекций? Какие приемы можно использовать для работы со всеми ними?
  • Что такое массив, как и когда его использовать? Какие у него есть методы?
  • Зачем использовать структуру? В чем её отличие от массива?
  • В каких случаях использовать список значений? Как отобразить его на форме?
  • Соответствие – что это и когда его использовать? В чем преимущества относительно структуры?
  • Для чего используется таблица значений? Как описать ее структуру? Как добавить/удалить строки? Как вывести ее на форму?
  • Дерево значений – для чего используется? Как заполнить и вывести на форму? Как с ним работать?

В статье рассматривается платформа 1С:Предприятие 8.3 актуальной редакции.

Как в 1С работать с универсальными коллекциями

  • Дополнительные методы для Массива
  • Универсальная коллекция Структура
  • Универсальная коллекция Список значений
  • Универсальная коллекция Соответствие
  • Универсальная коллекция Таблица значений
  • Универсальная коллекция Дерево значений

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

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

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

Существуют различные виды универсальных коллекций: Массив, Структура, Соответствие, Фиксированный массив, Таблица значений, Табличная часть и т.д. Но у всех коллекций есть схожесть поведения.

Коллекция может создаваться в результате работы какой-либо функции (функция возвращает в качестве значения универсальную коллекцию).

Можно получить новую коллекцию вручную, обратившись к конструктору и создав экземпляр класса.

Например: НашМассив = Новый Массив;

Конструкторы для многих универсальных коллекций являются параметризованными.

Так, в конструкторе для Массива можно указать количество элементов в соответствующих измерениях. Т.е. можно сразу же объявлять многомерные Массивы.

Соответствующее описание конструктора есть в синтакс-помощнике.

Таким образом, используя параметры конструктора, можно сразу задать желаемое поведение данного объекта.

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

Почти любую универсальную коллекцию можно создать с помощью конструктора (исключением являются табличные части, которые выступают в качестве объектов конфигурации).

Для универсальных коллекций существуют такие общие понятия, как индекс и номер. Каждый элемент коллекции имеет индекс. При этом индекс начинается с нуля.

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

Например, НашМассив. Обратите внимание, в этом случае система возвращает элемент Массива с индексом 3, а по порядку это четвертый элемент Массива.

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

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

Для всех коллекций используется обход элементов коллекции. Обход возможен двумя способами: циклом Для и циклом Для каждого из.

Для большинства универсальных коллекций применимы методы: Количество, Индекс, Добавить, Вставить, Удалить и Найти.

Количество – это функция, которая возвращает количество элементов коллекции. Она может использоваться перед циклом Для, как представлено на рисунке.

Метод Индекс существует не у всех коллекций, а только у тех, на элементы которой можно сослаться. В качестве примера можно привести ТаблицуЗначений.

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

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

Метод Индекс позволяет определить, какой индекс соответствует данной строке (т.е. текущую позицию строки в таблице). Значения индекса начинаются с нуля.

Методы добавления новых значений в данную коллекцию существуют практически у любой универсальной коллекции. На рисунке представлено, как заполнить Массив значениями от 0 до 10 двумя способами.

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

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

Синтаксис: Вставить (,)

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

Для удаления элементов из коллекции используется метод Удалить. В методе Удалить указывается по индексу, какой элемент мы будем удалять.

Синтаксис: Удалить()
Пример использования: НашМассив.Удалить(5);

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

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

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

Если значение найдено, то данный метод возвращает индекс или определенную строку. Если значение не найдено, возвращается значение типа Неопределено. Применительно к Массиву возвращается Индекс, либо значение Неопределено.

Пример использования: НашаПеременная = НашМассив.Найти(8);

Универсальные коллекции можно очень быстро очищать, т.е. удалить абсолютно все элементы. Для этого используется метод Очистить(), который удаляет элементы Массива, строки ТаблицыЗначений, либо данные других коллекций.

Дополнительные методы для Массива

Метод ВГраница() возвращает количество элементов минус один. Т.е. если мы используем цикл Для, то вместо метода Количество можем сразу использовать метод Граница().

В частности, переменную КоличествоВМассиве можно было определить иначе:

КоличествоВМассиве = НашМассив.ВГраница();
Тогда при описании самого цикла отнимать от данной переменной единицу не следует.

Метод Установить позволяет присвоить значение элементу Массива по индексу.

Синтаксис: Установить(,)

Пример: НашМассив.Установить (2,8);

Альтернативный вариант: НашМассив = 8;

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

Синтаксис: Получить()

Пример: НашаПеременная = НашМассив.Получить(2);

Альтернативный вариант: НашаПеременная = НашМассив;

Универсальная коллекция Структура

Структура, так же как и Массив, может иметь неограниченное количество элементов, но вот содержание элемента отличается от Массива.

Структура представляет собой коллекцию, каждое значение которой состоит из пары. Первый элемент пары называется Ключ. Второй элемент пары – Значение.

Ключ – это строго строковый тип данных, который описывает значение. Например, Ключу «Код» может соответствовать значение 113; Ключу «Имя» значение «Вася». На само Значение ограничение типа данных не накладывается.

Структуру очень удобно использовать, если мы хотим создать некий список параметров. Если данная Структура называется НашаСтруктура, то обращаться к ее двум значениям мы будем следующим образом: НашаСтруктура.Код и НашаСтруктура.Имя.

Такое обращение гораздо удобнее, чем если бы мы все параметры определили в Массив и обращались к ним по индексу.

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

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

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

Тогда гораздо удобнее записать все параметры в Структуру и именно ее и передавать. Т.е. происходит «упаковка» параметров процедур и функций.

Отдельно следует отметить, что в качестве Ключа в Структуре может выступать не абсолютно любая строка. Накладываются определенные ограничения.

Ключ должен выступать в качестве идентификатора. Это означает, что в Ключе не должно быть пробелов и он не может начинаться с цифры.

Допустимо начало Ключа с буквы или знака подчеркивания. Таким образом, Ключ должен удовлетворять требованиям к созданию идентификаторов.

Отметим, чем еще Сруктура отличается от Массива. В Структуре есть метод Вставить, в Массиве есть два метода для вставки: Вставить (в определенную позицию) и Добавить (в конец списка). В Массиве все элементы являются упорядоченными.

Структура – это некое неупорядоченное множество. Именно поэтому для Структуры существует только метод вставки.

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

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

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

Как и Массив, конструктор Структуры может иметь параметры. Т.е. возможно описать само содержание Структуры, используя конструктор.

В отличие от Массива, где можно просто указать количество элементов для всех размерностей, в Структуре возможно задавать само содержание.

Например: НашаСтруктура = Новый Структура («Код,Имя”, 133, «Вася”);

Через запятую перечисляются сначала имена Ключей, а потом, соответственно, в той же последовательности значения параметров.

Для добавления в Структуру нового значения существует метод Вставить, который вставляет новую пару (Ключ и Значение).

Например: НашаСтруктура.Вставить(«ЧленовСемьи”,3);

Для Структуры характерен еще один метод, который используется достаточно часто. Это метод Свойство.

С помощью данного метода можно понять, а есть ли в этой Структуре такой элемент, у которого Ключ имеет такое-то имя.

Если существует такой элемент, то система вернет значение Истина, в противном случае – Ложь.

Например, выражение НашаСтруктура.Свойство («ЧленовСемьи”) будет равно значению Истина. Этот метод применяется достаточно часто при анализе Структуры.

Как и для любой универсальной коллекции, допустимо обращение к свойствам Структуры по индексу. Но индекс для Структуры – это строковое значение.

Например: Сообщить(НашаСтруктура);

Однако следует не забывать, что Структура – это не упорядоченное множество объектов, именно поэтому обращение по индексу 0, 1, 2 недопустимо.

Универсальная коллекция Список значений

СписокЗначений представляет собой линейный список элементов любого типа данных.

Каждый элемент состоит из нескольких значений. Схематично список значений можно представить в виде списка с четырьмя колонками.

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

Другая колонка – это картинка, которая может каким-то образом визуально изображать данный элемент, т.е. ставить в соответствие данной строке какую-либо картинку.

Третья колонка – само хранимое значение, т.е. это любой тип данных, причем в разных строках он может быть различным.

Четвертая колонка – это представление, т.е. это некое строковое описание данного значения. Представление будет выводиться пользователю, когда он будет просматривать данный элемент. При этом, если представление не задано, система будет пытаться сама получить представления для элемента, содержащегося в данной позиции.

СписокЗначений – это тот объект, с которым может визуально работать пользователь. Т.е. СписокЗначений можно вывести на форму.

Пользователь может выполнять с ним какие-то действия. Кроме этого, СписокЗначений можно вывести независимо, используя методы, т.е. показать на экран в некоторой ветке алгоритма (за исключением серверного кода), чтобы пользователь выбрал какую-то строчку или проставил какие-либо галочки.

Найдем СписокЗначений в ситакс-помощнике. Конструктор СпискаЗначений не параметризованный (нельзя задать какие-то значения по умолчанию).

Есть такие методы, как:

  • Вставить(, , , , ) ;
  • Добавить(, , , );
  • Количество();
  • Индекс().

Есть и специальные методы, например, ВыгрузитьЗначения(). При этом создается Массив, в который копируется список значений. Например:

МассивЭлементов = СписокТиповЦен.ВызрузитьЗначения();

Существует и обратный метод:
СписокТиповЦен.ЗагрузитьЗначения(МассивЭлементов);

Существуют методы поиска:
НайтиПоЗначению(); НайтиПоИдентификатору().

Есть метод копирования:
КопияСписка = СписокТиповЦен.Скопировать();
Данный метод предназначен для того, чтобы сделать какую-то модификацию с копией.

Существуют методы:
СортироватьПоЗначению();
СортироватьПоПредставлению().

Методы ВыбратьЭлемент(,) и ОтметитьЭлементы () вызывают модальное диалоговое окно, которое останавливает выполнение алгоритма, пока пользователь не закроет данное окно.

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

Пример кода, вызываемого из модуля Управляемого приложения:

Отображение данного кода в пользовательском режиме (модальное диалоговое окно).

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

Создаем новую команду ЗапонитьПодарки, переносим на форму и определяем для нее обработчик действия.

Обработчик действия в модуле формы:

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

При желании список можно редактировать: какие-то элементы добавить, какие-то – удалить.

Универсальная коллекция Соответствие

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

Главное отличие в том, что в качестве Ключа может указываться любой тип данных, равно как и для значения. В виду этой особенности обращаться к значению соответствия необходимо по индексу, в качестве значения индекса указывается значение ключа.

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

Конструктор Соответствия, в отличии от Структуры, не содержит возможности указания параметров.

Пример использования:

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

При вставке элементов в коллекцию Соответствие помимо метода Вставить(,) существует другой способ вставки значения – это использование обычного оператора присваивания.

Например: НашеСоответствие = Новый Соответствие;
Соответствие = 999;

Т.е. если элемент в коллекции не присутствовал, то с помощью оператора присваивания он будет добавлен, а если присутствовал, то будет обновлен.

Это является отличием от Структуры.

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

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

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

Отличия ТаблицыЗначений от двухмерного Массива:

  • это объект, с которым может работать пользователь (таблицу значений можно вывести на экран, пользователь может ее заполнять, в дальнейшем введенные данные можно читать);
  • построение индексов для быстрого поиска;
  • клонирование, заполнение определенным значением всей колонки, выгрузка все колонки в массив.

ТаблицаЗначений используется как некий буфер хранения информации. ТаблицаЗначений возвращается и принимается как параметр многими методами системы. К Таблице значений возможно построить запрос.

Итак, ТаблицаЗначений состоит из набора строк и набора колонок. И строки, и колонки представляют собой коллекции.

Т.е. внутри коллекции ТаблицаЗначений есть еще две коллекции. Обратимся к синтакс-помощнику и найдем ТаблицуЗначений.

Поддерживаемые типы данных: сама ТаблицаЗначений, которая состоит из строк. Каждая строка представлена типом данных СтрокаТаблицыЗначений, у которой есть свои свойства и свои методы. Имеется КоллекцияКолонок ТаблицыЗначений. КолонкаТаблицыЗначений также обладает определенными свойствами.

Важный момент! Процедура, которая формирует ТаблицуЗначений, должна компилироваться & НаСервере.

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

Например:

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

В описании ТаблицыЗначений в качестве элементов коллекции выступают именно СтрокиТаблицыЗначений.

В отличии от колонок, которые состоят только из свойств (Имя, Тип, Заголовок, Ширина), в СтрокеТаблицыЗначений существуют как свойства (обращение по имени колонки), так и методы (можно получать и устанавливать значение, работать с владельцами).

Чтобы добавить новую строку в таблицу нужно использовать метод либо Добавить(), либо Вставить(). Во втором случае следует указать, на какую позицию нужно выставлять требуемую строку.

Чтобы присвоить значение колонке, мы через точку обращаемся по имени колонки или по индексу (с помощью квадратных скобок).

Для заполнения ТаблицыЗначений могут использоваться следующие методы:

Очистить() – для удаления всех строк из ТаблицыЗначений.

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

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

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

Можно скопировать структуру ТаблицыЗначений. Для этого существует соответствующий метод СкопироватьКолонки(). Мы получим пустую ТаблицуЗначений с требуемой структурой.

В ТаблицеЗначений существует метод Итог(). Можно указать ту колонку, в которой нужно просуммировать числовые величины. Применительно к ранее показанному коду в Табло можно рассчитать значение: ТЗ.Итог(«Сумма”).

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

Применительно к ранее показанному коду в Табло можно рассчитать значение: ТЗ.Свернуть(«ДеньНедели”,»Сумма”).

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

Чтобы отобразить ТаблицуЗначений на экране, создадим реквизит формы и присвоим ему тип данных ТаблицаЗначений.

Далее у этого объекта («Таблица») нужно будет создать колонки с соответствующим именем и типом данных.

После чего полученную таблицу следует вывести на форму.

В модуле формы в конце ранее составленного алгоритма (в Процедуре СозданиеТаблицыЗначений) следует дописать:
ЗначениеВДанныеФормы(ТЗ, Таблица);

Универсальная коллекция Дерево значений

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

ДеревоЗначений тоже может быть отражено на экране. Дерево значений в явном виде состоит из коллекции строк и коллекции колонок. В дереве существуют такие два свойства как Строки и Колонки.

Поскольку строки могут быть подчинены друг другу, то для каждой строки может быть указан Родитель, а также подчиненные ей строки.

Создадим соответствующую команду Дерево и ее процедуру обработки.

Создадим ДеревоЗначений в котором одна родительская строка и две подчиненные.

Создадим реквизит формы ДерЗн (тип данных – ДеревоЗначений).

Для этого реквизита создадим колонки Год и Месяц.

Переместим соответствующий элемент ДерЗн на форму.

В конце Процедуры ДеревоНаСервере() допишем:

ЗначениеВДанныеФормы(ДеревоЗн, ДерЗн);

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

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

Чтобы обойти все элементы дерева значений, нам понадобится использовать рекурсию, т.е. вызов процедуры самой из себя. Например, обработка дерева значений может выглядеть так:

На этом мы завершаем наше первое знакомство с универсальными коллекциями.

В следующей статье рассмотрим, при помощи какого важного механизма разработчик может упростить обращение к элементу справочника из программного кода.

PDF-версия статьи для участников группы ВКонтакте

Мы ведем группу ВКонтакте – http://vk.com/kursypo1c.

Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.

Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)

Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кеш браузера или подписаться через другой браузер.