Скачиваний:
46
Добавлен:
01.05.2014
Размер:
177.66 Кб
Скачать

Документ "Изменение цен".

Мы уже упоминали, что документы при проведении могут изменять значения периодических реквизитов справочников. Разумеется, документы могут изменять значения и непериодических реквизитов, но это мало интересно. При изменении периодических, программа будет запоминать когда и с помощью чего меняли значения.

В справочнике "Номенклатура" мы имеем два реквизита интересующего нас типа: "ЦенаП" и "ЦенаР". В их свойствах мы указали, что они могут изменяться документами. Спроектируем такой документ.

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

Идентификатор: ИзменениеЦен Журнал: ИзменениеЦен Нумератор: Нет         Периодичность: Год Длина: 5         Тип: число Уникальность: да     Автонумерация: да Оперативный учет: нет Может являться основанием для документа любого вида?: нет

Является основанием для

Вводится на основании

Шапка

Реквизит

Описание

ТипЗначения

Доп.

Таблица

Реквизит

Описание

ТипЗначения

Доп.

Товар

Товар

С.Номенклатура

 

СтЦенаП

Старая цена прихода

Число 7.2

 

ЦенаП

Новая цена прихода

Число 7.2

 

СтЦенаР

Старая цена расхода

Число 7.2

 

ЦенаР

Новая цена расхода

Число 7.2

 

  1. Новый документ;

  2. Идентификатор – "ИзменениеЦен", Синоним – "Изменение цен", Комментарий – "изменение цен товара";

  3. Документ будет проводиться и перепроводиться;

  4. Новый журнал – "ИзменениеЦен";

  5. В окне свойств документа заполним позиции согласно таблицы;

  6. Создадим форму документа;

  7. Графы "СтЦенаП" и "СтЦенаР" – сделаем недоступными;

  8. На поле ввода "Товар" повесим формулу ВыбТовар();

  9. На поле ввода "ЦенаП" повесим формулу ЦенаП();

  10. В модуль формы добавим две процедуры: Процедура ВыбТовар()   СтЦенаП=Товар.ЦенаП.Получить(ДатаДок);   ЦенаП=Товар.ЦенаП.Получить(ДатаДок);   СтЦенаР=Товар.ЦенаР.Получить(ДатаДок);   ЦенаР=Товар.ЦенаР.Получить(ДатаДок); // Получаем значения периодических реквизитов справочника на дату документа КонецПроцедуры //----------------------------------------------- Процедура ЦенаП()   ЦенаР=Окр(ЦенаП*(1+(Константа.ПроцентНаценки/100)),2,1); КонецПроцедуры

  11. Перейдем к модулю документа;

  12. Напишем процедуру обработки проведения документа: Процедура ОбработкаПроведения()   ВыбратьСтроки();   Пока ПолучитьСтроку()=1 Цикл     УстановитьРеквизитСправочника(Товар,"ЦенаП",ЦенаП);     УстановитьРеквизитСправочника(Товар,"ЦенаР",ЦенаР); // Мы указываем периодические реквизиты элемента справочника, // указанного в поле Товар и значения, которые они будут теперь иметь   КонецЦикла; КонецПроцедуры

  13. Сохраним конфигурацию;

  14. Загрузим 1С:Предприятие;

  15. Введем новый документ "Изменение цен" №1 от 04.10.2000;

  16. В многострочную часть занесем товар;

  17. Укажем ему новую цену поступления – 6.50;

  18. Цена реализации изменилась, и составила теперь – 8.78;

  19. Подтвердим, что это нас устраивает нажатием на Enter, если нет, то можно отредактировать эту цену;

  20. Заведем еще один товар;

  21. Новая цена поступления – 18, цена реализации – 25;

  22. [ОК]. Проведем документ;

  23. Откроем журнал ИзменениеЦен. Мы журнал не редактировали, таким он выглядит в 1С по умолчанию. Если будет желание, можете поэкспериментировать с изменением внешнего вида этого журнала в Конфигураторе;

  24. Документ с галочкой. Галочка сиреневого цвета – документ проведен, но он не документ оперативного учета;

  25. Посмотрим какие движения вызвал наш документ;

  26. Он не изменял регистров, а внес изменения в реквизиты справочников;

  27. Мы видим четыре строки. Пиктограммки показывают, что это изменение периодического реквизита. Указано в каком справочнике, какой реквизит, у какого элемента, когда принял новое значение;

  28. Откроем теперь справочник "Номенклатура";

  29. Меню Действия команда "История значения". Выберем "ЦенаП";

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

  31. Первая строчка с изображением руки – мы ввели цену вручную, при создании этого товара;

  32. Вторая строка – листик с галочкой – мы изменили цену документом; Ручное изменение цены никогда не имеет времени. Оно всегда располагается в самом начале дня. Изменение цены документом отслеживает время документа. Оно может располагаться в начале, середине либо конце дня, как было указано при сохранении документа. Если в течении дня было несколько таких документов, они расположатся в зависимости от указанного в них времени.

  33. Закроем 1С:Предприятие;

Соседние файлы в папке Отчет по производственной практике