Файл: Настройка конфигурации, подсистем, справочников, перечислений.pdf

ВУЗ: Не указан

Категория: Учебное пособие

Дисциплина: Программирование

Добавлен: 21.10.2018

Просмотров: 5899

Скачиваний: 18

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

50 

 

5. Создать ресурс Цена, тип – число, длина -15, точность -2. Неотрицатель-

ное. 

6. Обновить базу данных и запустить 1С:Предприятие. Посмотреть, как рабо-

тает регистр Цены. В панели навигации в разделах Оказание услуг, Учет матери-

алов и Бухгалтерия появился регистр сведений Цены (рис. 3.15). 

 

Рисунок 3.15 Команда для открытия периодического регистра «Цены» 

7. Добавим новые записи в регистр сведений Цены (рис.3.16). Период задать 

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

нуться в режим конфигуратора. 

 

 

Рисунок 3.16 Цены на услуги в регистре сведений «Цены» 

Задание 3.5.  Разработать автоматическую подстановку цены в документ Оказание 

Услуги при выборе номенклатуры. 


background image

51 

 

Порядок работы: 

1. Создать функцию РозничнаяЦена(). Эта функция будет возвращать акту-

альную розничную цену номенклатуры и поместить ее в общий модуль конфигура-

ции. В конфигураторе открыть ветку Общие/Общие модули, добавить объект 

конфигурации Модуль, назвать модуль РаботаСоСправочником, настроить его 

свойства (рис.3.17). 

 

Рисунок 3.17 Свойства модуля РаботаСоСправочников 

 

У модуля установлен флажок Сервер. Это означает, что экземпляры этого 

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

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

2. В окне общего модуля поместить листинг функции РозничнаяЦена() (ли-

стинг 3.3). 

Листинг 3.3. Функция РозничнаяЦена() 

Функция РозничнаяЦена(АктуальнаяДата,ЭлементНоменклатуры) Экспорт 

 

Отбор=Новый Структура("Номенклатура",ЭлементНоменклатуры); 

 

ЗначенияРесур-

сов=РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата,Отбор); 

 

Возврат ЗначенияРесурсов.Цена; 

 

КонецФункции 

3. Открыть форму документа  ОказаниеУслуги. Дважды щелкнуть по эле-

менту формы ПереченьНоменклатурыНоменклатура (рис.3.18) 


background image

52 

 

 

Рисунок 3.18 Форма документа ОказаниеУслуги 

 

4. Открывается палитра свойств. Прокрутить список свойств и найти событие 

ПриИзменении. Нажать на иконку – лупа. 

5. Вставить в пустую процедуру ПереченьНоменклатурыНоменклату-

раПриИзменении(Элемент)  текст листинга 3.4: 

Листинг 3.4. Процедура ПереченьНоменклатурыНоменклатураПриИзменении 

(Элемент) 

СтрокаТабличнойЧасти=элементы.ПереченьНоменклатуры.ТекущиеДанные; 

СтрокаТабличнойЧасти.Цена=РаботаСоСправочником.РозничнаяЦена (Объ-

ект.Дата,СтрокаТабличнойЧасти.Номенклатура); 

РаботаСДокументами.РассчитатьСумма(СтрокаТабличнойЧасти); 

6. Обновить базу данных и запустить 1С:Предприятие. Открыть регистр све-

дений. Добавить в этот регистр с другой датой новую цену для транзистора 

(рис.3.19). 

 

Рисунок 3.19 Добавление транзистора с новой ценой 


background image

53 

 

7. В подсистеме Оказание Услуг открыть документ Оказание Услуги. Оста-

вить дату документа без изменения. Повторить выбор транзистора в колонке Но-

менклатура.  

8. Изменить дату документа на дату документа занесения новой цены. Вновь 

повторить выбор транзистора. Посмотрите, с какой ценой выбирается транзистор.  

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

кументе Приходная накладная

Задание 3.6. Сформировать регистрацию расхода только той номенклатуры, кото-

рая является материалом. Доработать документ ОказаниеУслуги таким образом, 

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

материалов. 

Порядок работы: 

1. Правой кнопкой мыши вызвать контекстное меню документа Оказание-

Услуги. Выбрать пункт Открыть модуль объекта. Отображается модуль проце-

дуры ОбработкаПроведения

2. Отредактировать модуль процедуры,  добавив в него строки, которые поз-

воляют выбирать только материал (листинг 3.5). 

Листинг 3.5. Процедура ОбработкаПроведения документа Оказание услуги 

Процедура ОбработкаПроведения(Отказ, Режим) 

 

Движения.ОстаткиМатериалов.Записывать = Истина; 

 

Для Каждого ТекСтрокаПереченьНоменклатуры Из ПереченьНоменклатуры Цикл 

 

 

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

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

 

 

Движение = Движения.ОстаткиМатериалов.Добавить(); 

 

 

Движение.ВидДвижения = ВидДвиженияНакопления.Расход; 

 

 

Движение.Период = Дата; 

Движение.материал = ТекСтрокаПереченьНоменклатуры.номенклатура; 

 

 

Движение.склад = Склад; 

Движение.количество = ТекСтрокаПереченьНоменклатуры.количество; 

 

Конецесли; 

КонецЦикла; 

КонецПроцедуры 


background image

54 

 

3. Обновить базу данных и в режиме 1С Предприятие открыть документ Ока-

зание Услуги №1, изменить дату документа на текущую дату. Удалить из таблич-

ной части транзистор Phillips, добавить услугу, подключение воды (1 шт.) и доба-

вить материал Шланг резиновый (1 м.), (рис.3.20).  Нажать на кнопку Провести и 

закрыть

 

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

4. Открыть регистр Остатки материалов. В регистре видно, что в записи 

Оказание услуги стоит только запись по материалу Шланг (рис.3.21). вернуться в 

режим конфигуратора. 

 

Рисунок 3.21 Движения по регистру Остатки материалов 

Задание 3. 7. Сформировать проведение документов по нескольким регистрам. 

Кроме регистра ОстаткиМатериалов создадим еще один регистр СтомостьМа-

териалов и по двум регистрам проведем оба документа. 

Порядок работы: 

1. Создать регистр накопления Стоимость материалов. Установить в поле 

Расширенное представление списка Движения по регистру стоимость материа-

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

2. На закладке Подсистемы отметить, что этот регистр будет отображаться в 

подсистемах Бухгалтерия, Учет материалов, Оказание услуг