Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Пока ВыборкаПодразделений.Следующий() Цикл





СтрокаСПодразделением = СтрокаДерева.Строки.Добавить();

СтрокаСПодразделением.Ссылка = ВыборкаПодразделений.Ссылка;

ДобавитьУровеньПодразделений(

СтрокаСПодразделением,

ВыборкаПодразделений.Ссылка,

ВладелецПодразделения);

КонецЦикла;

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


 

 

Листинг ю_9.1

 

// Модуль справочника "ОсновныеСредства"

//УстановитьКод() - устанавливает новый код

//для записи в справочнике

Процедура УстановитьКод() Экспорт

Если ЭтоГруппа=Ложь Тогда

// это элемент справочника

УстановитьНовыйКод(Фирма.Префикс+"-");

КонецЕсли;

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

Затем исправьте модуль формы:

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

УстановитьКод();

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


 

Листинг ю_9.2

 

//ПриИзмененииГруппыОС - управляет видимостью

// реквизита "ЕстьДетали" и страницы "СписокДеталей"

Процедура ПриИзмененииГруппыОС(Элемент) Экспорт

_Видимость = (ГруппаОС

=Перечисления.ГруппыОС.МашиныИОборудование);

ЭлементыФормы.ЕстьДетали.Видимость =_Видимость;

ЭлементыФормы.Панель1.Страницы.СписокДеталей.Видимость =

_Видимость;

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


 

 

Листинг ю_9.3

 

//НаборДанныеОСПередНачаломДобавления – проверяет

// возможность добавления новой строки

Процедура НаборДанныеОСПередНачаломДобавления(Элемент, Отказ,

Копирование)

Если ЭтоНовый() Тогда

// откажем в добавлении строки:

Отказ = Истина;

Предупреждение("Прежде чем добавлять запись необходимо

записать элемент справочника!");

КонецЕсли;

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

 

 

Листинг ю_9.4

 

//НаборДанныеОСПриНачалеРедактирования - заполняет реквизит

// ОС ссылкой на текущий элемент справочника


Процедура НаборДанныеОСПриНачалеРедактирования(Элемент, НоваяСтрока)


Если НоваяСтрока Тогда

ТекСтрока = ЭлементыФормы.НаборДанныеОС.ТекущаяСтрока;

ТекСтрока.ОС = Ссылка;

КонецЕсли;

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


 

Листинг ю_9.5.

 

//СписокДеталейПередОкончаниемРедактирования - проверяет

// правильность заполнения строки

Процедура СписокДеталейПередОкончаниемРедактирования(Элемент,

НоваяСтрока, ОтменаРедактирования,Отказ)

// Если пользователь отказался от ввода новой строки

Если НоваяСтрока И ОтменаРедактирования Тогда

// то нам все равно

Возврат;

КонецЕсли;

// Если пользователь подтерждает ввод строки

Если Не ОтменаРедактирования Тогда

ТекСтрока = ЭлементыФормы.СписокДеталей.ТекущаяСтрока;

Если ТекСтрока.Деталь.Ссылка.Пустая() Тогда

Предупреждение("Не выбрана деталь!");

Отказ = Истина;

Возврат;

КонецЕсли;

КонецЕсли;

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


 

 

Листинг ю_9.6.

 

Процедура ПриОткрытии()

Если ЭтоНовый() Тогда

// Заполним реквизиты нового объекта начальными значениями

Фирма = Константы.ОсновнаяФирма.Получить();

УстановитьКод();

КонецЕсли;

// Установим свойство видимость у элементов диалога перед его

Открытием

ПриИзмененииГруппыОС(Неопределено);

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


 

 

Листинг ю_9.7.

 

//ЕстьОшибка() - возвращает имя реквизита с ошибкой

//Если ошибок нет, то: ""

Функция ЕстьОшибка() Экспорт

 

// Группу записываем всегда!

Если ЭтоГруппа Тогда

Возврат "";

КонецЕсли;

//Ошибкой будем считать пустые реквизиты

//"Фирма" и "ГруппаОС"

Если Фирма.Ссылка.Пустая() Тогда

Возврат "Фирма";

КонецЕсли;

Если ГруппаОС.Пустая() Тогда

Возврат "ГруппаОС";

КонецЕсли;

// ошибок нет

Возврат "";

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


 

 

Листинг ю_9.8.

 

// Проверяет правильность заполнения элемента справочника

Процедура ПередЗаписью(Отказ)

Имя = ЕстьОшибка();

Если Имя = "" Тогда

Возврат; //ошибок нет

КонецЕсли;

Сообщить("Реквизит"+Имя+" не содержит данных!",

СтатусСообщения.Важное);

Сообщить("Запись "+ ЭтотОбъект+" справочника не записана!",

СтатусСообщения.ОченьВажное);

Отказ = Истина;

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


 

 

Листинг ю_9.9.

 

//ПередЗаписью - проверяет правильность заполнения элемента

Справочника

Процедура ПередЗаписью(Отказ)

Имя = ЕстьОшибка();

Если Имя = "" Тогда

Возврат; // т.к. нет ошибок

КонецЕсли;

Предупреждение("Реквизит"+Имя+" не содержит данных!");

// установим курсор в нужное поле;

ТекущийЭлемент = ЭлементыФормы[Имя];

Отказ = Истина;

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


 

 

Листинг ю_9.10.

 

//ПриЗаписи - записывает набор записей регистра сведений

Процедура ПриЗаписи(Отказ)

Попытка

НаборДанныеОС.Обновить();

Исключение

Предупреждение("Не удалось сохранить""Данные ОС""!");

Отказ = Истина

КонецПопытки;

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


 

 

Листинг ю_9.11.

 

//ПослеЗаписи() - переустанавливает отбор после записи

Процедура ПослеЗаписи()

НаборДанныеОС.Отбор.ОС.Установить(Ссылка);

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


 

 

Листинг ю_9.12.

 

//ПолеКартинкиНажатие - читает картинку в поле картинки

Процедура ПолеКартинкиНажатие(Элемент)

// Открем диалог выбора файла

Диалог = Новый

ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);

Диалог.Заголовок = "Выберите файл картинки";

Диалог.ПредварительныйПросмотр = Истина;

Диалог.Фильтр = "Точечный рисунок(*.jpg)|*.jpg";

// Если пользователь сделал выбор тогда

Если Диалог.Выбрать() Тогда

// Прочитаем картинку в ОП

НоваяКартинка = Новый Картинка(Диалог.ПолноеИмяФайла);

// и отобразим в форме:

ЭлементыФормы.ПолеКартинки.Картинка =НоваяКартинка;

Изображение = Новый ХранилищеЗначения(НоваяКартинка);

КонецЕсли;

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


 

 

Листинг ю_9.13.

 

// ПриОткрытии - действия в момент открытия формы

Процедура ПриОткрытии()

Если ЭтоНовый() Тогда

// Заполним реквизиты нового объекта начальными значениями

Фирма = Константы.ОсновнаяФирма.Получить();

УстановитьКод();

// запишем пустую картинку

Изображение = Новый ХранилищеЗначения(Новый Картинка());

КонецЕсли;

// Установим свойство видимость у элементов диалога перед его


//


Открытием


ПриИзмененииГруппыОС(Неопределено);

// отобразим картинку

ЭлементыФормы.ПолеКартинки.Картинка = Изображение.Получить();

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


 

 

Листинг ю_9.14.

 

//Печать - печатает записи из справочника "ОсновныеСредства"

// и срез записей из регистра сведений "ДанныеОС"

Процедура Печать(Элемент)

ТабДок = Новый ТабличныйДокумент;

Макет =

Справочники.ОсновныеСредства.ПолучитьМакет("Печать");

// Получение среза

 

ТаблицаСреза =

РегистрыСведений.ДанныеОС.СрезПоследних(РабочаяДата);

// Заголовок

Секция = Макет.ПолучитьОбласть("Заголовок");

ТабДок.Вывести(Секция);

// Шапка

Секция = Макет.ПолучитьОбласть("Шапка");

ТабДок.Вывести(Секция);

Выборка =

Справочники.ОсновныеСредства.ВыбратьИерархически();

Пока Выборка.Следующий() Цикл

Объект = Выборка.ПолучитьОбъект();

Если Объект.ЭтоГруппа Тогда

Секция = Макет.ПолучитьОбласть("Группа");

Секция.Параметры.Код = Объект.Код;

Секция.Параметры.Наименование =

Объект.Наименование;

ТабДок.Вывести(Секция);

Иначе

Секция = Макет.ПолучитьОбласть("Элемент");

Секция.Параметры.Код = Объект.Код;

Секция.Параметры.Наименование =

Объект.Наименование;

Секция.Параметры.Фирма = Объект.Фирма;

Секция.Параметры.ГруппаОС = Объект.ГруппаОС;

Секция.Параметры.ДатаВвода = Объект.ДатаВвода;

Секция.Параметры.ДатаСписания =

Объект.ДатаСписания;

// Найдем строку содержащую ОС в таблице значений

СтрокаСреза = ТаблицаСреза.Найти(Объект.Ссылка,"ОС");

Если СтрокаСреза<>Неопределено Тогда

Секция.Параметры.БалансоваяСтоимость=

СтрокаСреза.БалансоваяСтоимость;








Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем...

Что делать, если нет взаимности? А теперь спустимся с небес на землю. Приземлились? Продолжаем разговор...

Что будет с Землей, если ось ее сместится на 6666 км? Что будет с Землей? - задался я вопросом...

Система охраняемых территорий в США Изучение особо охраняемых природных территорий(ООПТ) США представляет особый интерес по многим причинам...





Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2024 zdamsam.ru Размещенные материалы защищены законодательством РФ.