Отправляет email-рассылки с помощью сервиса Sendsay

1С учимся программировать

  Все выпуски  

Типы данных.


Опрос
Что вам хочется увидеть в следующих выпусках рассылки?
Готовые обработки, отчеты
Уроки по 1С
Примеры алгоритмов
Советы по установке, настройке 1С
Общую информацию
Типы данных.

Основным свойством некоторых объектов конфигурации (справочников, документов) является "Тип данных". Тип данных определяет какую информацию может содержать объект конфигурации. В системе 1С: Предприятие 8 поддерживается несколько типов данных:

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

Примитивный тип данных.

К нему относятся:

Число.

К числовому типу данных относится любое десятичное число. Над числом можно производить арифметические операции: сложение, вычитание, умножение и деление. Максимально допустимая разрядность числа 38 знаков. Для определении числового типа данных могут использоваться символы "+" и "-" и цифры от 0 до 9. В качестве разделителя целой и дробной части используется точка.

Пример:
a = 563.34;


Строка.

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

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

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

Пример:
d = "Привет";


Дата и время.

Значения данного типа содержит дату григорианского календаря (с 01 января 0001 года) и время с точностью до секунды. Этот тип представляет собой строку цифр, заключенная в одинарные кавычки вида: 'ГГГГММДДччммсс', где:

ГГГГ - четыре цифры года (включая тысячелетие и век);
ММ - две цифры месяца:
ДД - две цифры даты;
чч - две цифры часа (в 24-х часовом формате);
мм - две цифры минут;
сс - две цифры секунд;

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

Пример:
Дата = "20081031"; // -  31 октября 2008 года 


Булево (принимает 2 значения истина и ложь).

Значения данного типа имеют два значения "Истина" и "Ложь" и возвращаются в качестве результата вычисления логических выражений.

Пример:

Если Структура.Свойство(Значение) Тогда
    Отбор = Истина;
Иначе
    Отбор = Ложь;
КонецЕсли;


Тип.

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

Пример:
Если ТипЗнч(Объект) = Тип("СправочникСсылка.Номенклатура") Тогда
    ...
КонецЕсли;


Неопределено.

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

Пример:
ВалютаДокумента = Неопределено;


Null.

Данный тип используются для определения отсутствующего значения при работе с базой данных.

Пример:

Если (ПрежнееЗначение <> Null) Тогда
    Переключение = Истина;
Иначе
    Переключение = Ложь;
КонецЕсли;


Типы данных, которые встроенный язык поддерживает по умолчанию. К ним относятся :

Массив.

Это совокупность значений любого типа. Массивы могут быть одномерные и многомерные.

Доступен обход массива при помощи оператора Для каждого … Из … Цикл. При обходе выбираются значения элементов массива. Возможно обращение к значению массива при помощии оператора [...]. В качестве аргумента передается индекс значения.

Пример:

Массив = Новый Массив(2);
Массив.Добавить("Строка1");
Массив.Добавить(125);


Структура.

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

Пример:

Структ = Новый Структура;
Структ.Вставить("Настройка1", 10);
Структ.Вставить("Настройка2", 15);


Соответствие.

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

Пример:

Параметры = Новый Соответствие;
Параметры.Вставить("Дата начала", ДатаНач);
Параметры.Вставить("Дата конца", ДатаКон);


Список значений.

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

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

Пример:

Список = Новый СписокЗначений;

Справочники.Номенклатура.Выбрать();
Пока Выборка.Следующий() Цикл
    Список.Добавить(Выборка.Номенклатура, Выборка.Цена, Истина);
КонецЦикла;


Таблица значений.

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

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

Пример:

ТаблицаЗначений = Новый ТаблицаЗначений;
ТаблицаЗначений.Колонки.Добавить("Отдел",Описание"Отдел");
ТаблицаЗначений.Колонки.Добавить("Сотрудник",Описание,"Фамилия");
ТаблицаЗначений.Колонки.Добавить("Оклад",Описание,"Оклад");

//Добавляем строки в таблицу значений
Стр = ТаблицаЗначений.Добавить();
Стр.Отдел = "Бухгалтерия";
Стр.Сотрудник = "Максимов";
Стр.Оклад = 15600;


Дерево значений.

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

Пример:

Дерево = Новый ДеревоЗначений;
Для Каждого Колонка ИЗ ТаблицаРезультатов.Колонки Цикл
    Дерево.Колонки.Добавить(Колонка.Имя);
КонецЦикла;

Вы можете отправить любой вопрос по системе 1С предприятие 7.7, 8 по адресу vopros1C@yandex.ru. Ответ на вопрос будет опубликован в ближайшем выпуске рассылки и выслан на е-mail , с которого отправлен вопрос.
© Школа 1С.
Все материалы рассылки защищены авторским правом. Полное или частичное использование материалов рассылки в коммерческих целях возможна лишь с письменного согласия автора. При некоммерческом использовании ссылка на выпуск рассылки обязательна.

В избранное