Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Последовательность событий при записи элемента справочника из формы




Отбор.

Сортировка.

В форме списка справочника элементы могут быть отсортированы в различном порядке: по коду, по наименованию или по любому реквизиту, у которого в Конфигураторе установлен флажок Сортировка. Задать тип сортировки можно программно методом Сортировка (Способ, ФлагРазрешенияИзменения)

Процедура ПриОткрытии()
......СправочникСписок.Порядок.Установить("Наименование Asc, Карточка Asc");
......//вопрос читателям: как запретить пользователю изменять порядок сортировки?
КонецПроцедуры

 

В форме списка справочника элементы могут быть отфильтрованы, т.е. пользователю будут показаны только нужные элементы. Программно установить отбор можно методом УстановитьОтбор (Реквизит, Значение). Для этого у реквизита должен быть установлен флажок "Отбор по реквизиту" в Конфигураторе.

Процедура ПриОткрытии()
.......СправочникСписок.Отбор.Карточка.Установить(Год,1980);
.......//вопрос читателям: как запретить пользователю изменять условия отбора?
КонецПроцедуры

Примеры использования объектов:

 

// Пример 1

// Справочники

//Пример: Вывести все типы ссылок на элементы справочников,

//существующие в конфигурации

Массив= Справочники. ТипВсеСсылки().Типы();

Для Каждого ОчереднойТип из Массив Цикл

Сообщить(Очередной Тип);

КонецЦикла;

//Пример 2

//.<имя справочника>

// [<имя справочника>]

// Для Каждого … Из … Цикл … КонецЦикла;

//Пример: Создать новую группу справочника Номенклатура

НоваяГруппа=Справочники. Номенклатура. СоздатьГруппу();

НоваяГруппа.Наименование=“Моя новая группа”;

НоваяГруппа.Записать();

 

//Пример: Открыть форму выбора справочника Номенклатура

Форма=Справочники[“ Номенклатура ”].ПолучитьФормуВыбора();

Форма.Открыть();

//Пример3

// НайтиПоКоду()

// НайтиПоРеквизиту()

// ПустаяСсылка()

// ПолучитьСсылку()

//.<имя предопределенного элемента справочника>

//Пример: Проверить, помечен ли на удаление элемент справочника Номенклатура

//с кодом 13

Если Справочники.Номенклатура. НайтиПоКоду (13).ПометкаУдаления тогда

Сообщить(“Элемент с кодом 13 помечен на удаление”);

КонецЕсли;

 

//Пример: Является ли элемент справочника Номенклатура с наименованием

// «Услуги» группой

Если Справочники.Номенклатура

.НайтиПоНаименованию («Услуги», Истина).ЭтоГруппа тогда

Сообщить ( “Элемент Услуги является группой”);

КонецЕсли;

 

//Пример: Проверить, что для всех элементов задан вид номенклатуры

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

Если Не Справочники.Номенклатура .НайтиПоРеквизиту( “ВидНоменклатуры”.

ПустаяСсылкаПеречисления).Пустая() тогда

Сообщить(“Есть элементы для которых не задан вид номенклатуры”);

КонецЕсли;

 

//Пример: Передать пустую ссылку в параметр метода

Выборка=Справочники.Номенклатура

.Выбрать(Справочники.Номенклатура. ПустаяСсылка ());

//Пример 4

// Выбрать()

// ВыбратьИерархически()

//Пример: Вывести список элементов, расположенных в корне справочника

Выборка=Справочники.Номенклатура

. Выбрать (Справочники.Номенклатура.ПустаяСсылка());

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

Если Не Выборка.ЭтоГруппа тогда

Сообщить(Выборка);

КонецЕсли;

КонецЦикла;

 

//Пример: Удалить все элементы иерархического справочника

Выборка=Справочники.Номенклатура. ВыбратьИерархически();

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

Выборка.Удалить();

КонецЦикла;

 

//Пример 5

// СоздатьГруппу()

// СоздатьЭлемент()

 

// Пример: Создать новый элемент справочника Сотрудники

НовыйЭлемент=Справочники.Сотрудники.СоздатьЭлемент();

НовыйЭлемент.Наименование=”Смирнов Андрей Анатольевич”;

// Заполнить табличную часть

НоваяСтрокаТабличнойЧасти=НовыйЭлемент.ТрудоваяДеятельность.Добавить();

НоваяСтрокаТабличнойЧасти.Организация=”ООО НТЦ”;

НоваяСтрокаТабличнойЧасти.НачалоРаботы=Дата(2003,05,01);

НоваяСтрокаТабличнойЧасти.ОкончаниеРаботы=Дата(2003,12,31);

НоваяСтрокаТабличнойЧасти.Должность=”Программист”;

НовыйЭлемент.Записать();

//Пример 6

// Владелец

// Родитель

// Ссылка

// Пример: запретить изменение подчиненных элементов, если у владельца

//установлено соответствующее свойство «ИзменеияЗапрещены» в модуле

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

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

Если Владелец. ИзмененияЗапрещены Тогда

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

КонецЕсли;

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

//Пример 7

// ПолучитьОбъект()

// Скопировать()

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

Элемент=Справочники.Номенклатура.НайтиПоКоду(10). ПолучитьОбъект();

Элемент.Наименование=’’Мое новое наименование’’;

Элемент.Записать();

// Пример: Заполнить справочник текстовыми данными

Элемент=Справочники.Номенклатура.СоздатьЭлемент();

Элемент.Наименование=’’Текстовый элемент’’

Элемент.Записать();

Для ш=1 по 1000 Цикл

НовыйЭлемент=Элемент. Скопировать ();

НовыйЭлемент.Записать();

КонецЦикла;

//Пример 8

// Ссылка

 

// Пример: Заполнить табличную часть документа ПриходнаяНакладная всеми элементами

//из указанной группы справочника Номенклатура

Выборка=Справочники.Номенклатура.ВыбратьИерархически(ПолеВвода1);

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

СсылкаНаНоменклатуру=Выборка. Ссылка;

Если СсылкаНаНоменклатуру.ЭтоГруппа тогда

Продолжить;

КонецЕсли;

НоваяСтрока=Материалы.Добавить();

НоваяСтрока.Материал=СсылкаНаНоменклатуру;

КонецЦикла;

 

//Пример 9

// ПолучитьОбъект()

// Пример: пометить все элементы неиерархического справочника на удаление

Выборка = Справочники.Клиенты.Выбрать();

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

Выборка. ПолучитьОбъект(). УстановитьПометкуУдаления(Истина);

КонецЦикла;

 




Поделиться с друзьями:


Дата добавления: 2014-01-14; Просмотров: 903; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.