Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1С: Лабораторная работа №6.doc
Скачиваний:
44
Добавлен:
23.03.2016
Размер:
482.82 Кб
Скачать

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

В документе необходимо обеспечить заполнение поля Ответственный после выбора филиала и подразделения. Это действие необходимо производить при выборе в поле Подразделение номера подразделения. Для этого в окне свойств поля Подразделение необходимо воспользоваться событием ПриИзменении (Рис. 6).

Рис. 6. Форма документа ПоступлениеИзФилиалов в режиме конструктора

В процедуре (листинг 1) производится запрос к регистру сведений ОтветственныеЛица. Параметрами запроса являются Филиалы и Подразделение, которые в тексте запроса выделены префиксом &. Для установки значений параметров используется метод УстановитьПараметр (). В результате выполнения запроса может возникнуть две ситуации:

  • имеется единственная запись об интересующем нас человеке;

  • записи с указанными измерениями нет.

В первом случае информация записывается в поле Ответственный. В режиме «1С: Предприятие» необходимо убедится в работоспособности разработанной процедуры (Рис. 7).

Листинг 1. Процедура, выполняемая при выборе номера подразделения

&НаКлиенте

Процедура ПодразделениеПриИзменении(Элемент)

ПодразделениеПриИзмененииНаСервере();

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

&НаСервере

Процедура ПодразделениеПриИзмененииНаСервере()

Запрос = Новый Запрос ();

Запрос.Текст = "ВЫБРАТЬ

| ОтветственныеЛица.Филиал,

| ОтветственныеЛица.Подразделение,

| ОтветственныеЛица.Ответственный

|ИЗ

| РегистрСведений.ОтветственныеЛица КАК ОтветственныеЛица

|ГДЕ

| ОтветственныеЛица.Филиал = &Филиалы

| И ОтветственныеЛица.Подразделение = &Подразделение";

Запрос.УстановитьПараметр ("Филиалы",Объект.Филиал);

Запрос.УстановитьПараметр ("Подразделение", Объект.Подразделение);

Результат = Запрос.Выполнить().Выбрать();

Если Результат.Следующий () > 0 Тогда

Объект.Ответственный = Результат.Ответственный;

КонецЕсли;

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

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

Рис. 7. Заполнение поля документа информацией из регистра сведений

Задание для самостоятельного выполнения

  1. Создайте процедуры для установки ответственного в поле документа ПоступлениеИзФилиалов, воспользовавшись листингами процедур в приведенном выше примере.

  2. В режиме «1С: Предприятие» убедитесь в работоспособности созданных процедур.

Создание периодического регистра сведений Цены

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

  • в пределах секунды;

  • в пределах дня;

  • в пределах месяца;

  • в пределах квартала;

  • в пределах года;

  • в пределах регистратора (если установлен режим записи – Подчинение регистратору).

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

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

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

Задание для самостоятельного выполнения

  1. Создайте регистр сведений Цены с периодичностью – В пределах секунды.

  2. На закладке Данные создайте измерение Номенклатура (тип данных – СправочникСсылка.Номенклатура), данное поле является ведущим (Рис.8).

  3. Создайте в регистре ресурс Цена (тип данных – Число) (Рис.8).

  4. В режиме «1С: Предприятие» внесите несколько записей.

Рис. 8. Закладка Данные регистра Цена