gifts2017

Автоматическое создание типов цен при сохранении нового товара.

Опубликовал Sergey Ponomarev (SPonomareff) в раздел Обработки - Ценообразование, прайсы

Мне надоело создавать каждый тип цен для товара... И вышло что-то вот такое. Приведенный код вставить в справочник "Номенклатура" между функцией СохранитьЕдиницы() и процедурой ДобавитьВТаблицу(Табл, Товар, ТипЦены). После этого при сохранении нового товара для него создаются типы цен с нулевой ценой.

!

! Вложенная обработка создает типы цен для товара, который уже сохранен в базе.

!

//автоматическое создание типов цен

Функция СоздатьТипыЦен()

    Если Выбран() = 0 Тогда

       Возврат 0;

    КонецЕсли;

    С = СоздатьОбъект("Справочник.Цены");

    СТЦ = СоздатьОбъект("Справочник.ТипыЦен");

    СТЦ.ВыбратьЭлементы();

    Пока СТЦ.ПолучитьЭлемент() = 1 Цикл

        С.ИспользоватьВладельца(ТекущийЭлемент());

        Если С.НайтиПоРеквизиту("ТипЦен", СТЦ.ТекущийЭлемент(), 0)  = 0 Тогда

            С.Новый();   

            С.ТипЦен = СТЦ.ТекущийЭлемент();

            С.Валюта = Константа.ВалютаБухУчета;

            С.Записать(); 

            П = СоздатьОбъект("Периодический"); 

            П.ИспользоватьОбъект("Единица", С.ТекущийЭлемент()); 

            П.ДатаЗнач = '01.01.1980'; 

            П.Значение = БазоваяЕдиница; 

            П.Записать(); 

            П.ИспользоватьОбъект("Цена", С.ТекущийЭлемент()); 

            П.ДатаЗнач = '01.01.1980'; 

            П.Значение = 99999999; 

            П.Записать();

            Рез = 1; 

        Иначе

            Рез = 1;

        КонецЕсли;

    КонецЦикла;

    Возврат Рез;

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

//------------------------

Может кому и пригодиться.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Создать цены
.ert 93,50Kb
04.11.14
12
.ert 93,50Kb 12 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Khaliff (Khaliff) 24.05.11 11:00
Протестировал на копии своей базы 7.7 Комплексная,
создались цены 99 999 999 руб,
и кроме нужных типов цен, создались типы цен, которые должны быть "вычисляемыми" от базовых, а это ошибка!
2. Sergey Ponomarev (SPonomareff) 25.05.11 13:19
создались типы цен, которые должны быть "вычисляемыми" от базовых - это действительно так... но у меня нет вычисляемых типов, так что меня устраивает.
3. Sergey Ponomarev (SPonomareff) 25.05.11 13:23
прошу прощения. надо убрать строчки:

П.ИспользоватьОбъект("Цена", С.ТекущийЭлемент());
П.ДатаЗнач = '01.01.1980';
П.Значение = 99999999;
П.Записать();
4. Sergey Ponomarev (SPonomareff) 02.06.11 16:46
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа