Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПИС.-All in one =). 1С.doc
Скачиваний:
34
Добавлен:
13.11.2018
Размер:
9.75 Mб
Скачать

3.9. Порядок работы с объектом конфигурации Перечисление

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

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

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

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

3.9.1. Реорганизация справочника "Номенклатура"

Откройте конфигуратор и создайте сначала новый объект конфигурации Перечисление с именем ВидыНоменклатуры.

На закладке Данные добавьте два значения перечисления: Материал и Услуга (рис. 75).

Рис. 75. Данные перечисления "ВидыНоменклатуры"

Затем добавьте в справочник Номенклатура новый реквизит ВидНоменклатуры с типом ПеречислениеСсылка.ВидыНоменклатуры (рис. 76).

Рис. 76. Данные справочника "Номенклатура"

После этого запустите 1С:Предприятие в режиме отладки и задайте для каждого элемента справочника Номенклатура соответствующее значение реквизита ВидНоменклатуры (рис. 77).

Рис. 77. Данные справочника "Номенклатура"

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

3.9.1. Изменение процедуры проведения документа "Оказание услуги"

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

Если ТекСтрокаПереченьНоменклатуры.Номенклатура.ВидНоменклатуры <>

Перечисления.ВидыНоменклатуры.Материал Тогда

Продолжить;

КонецЕсли;

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

Запустите 1С:Предприятие в режиме отладки и проверьте работу процедуры проведения документа ОказаниеУслуги.

Откройте документ Оказание услуги №1 и внесите в него следующие изменения (обратите внимание, что изменен не только состав номенклатуры в табличной части, но и время документа) – рис. 78.

Рис. 78. Измененный документ "Оказание услуги №1"

Перед тем как провести документ, откройте список регистра накопления Остатки материалов, содержащий движения этого документа. Для этого выполните команду Перейти –> Остатки материалов из командной панели списка документа.

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

Рис. 79. Записи регистра "ОстаткиМатериалов"