Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 сен 2024, 22:28

Периодические регистры сведений. Корректность кода

Автор Panhead, 08 авг 2024, 14:00

0 Пользователей и 1 гость просматривают эту тему.

Panhead

Здравствуйте!

Помогите пожалуйста решить проблему.
У меня есть задание:

1. Добавьте документ для установки цен номенклатуры в разных магазинах сети. (УстановкаЦенМагазина)

2. Создайте регистр сведений для хранения цены номенклатуры (ЦеныТоваров: Измерения: Товар, Магазин. Ресурсы: Цена. Режим записи регистра: Подчинённый регистратору (а именно УстановкаЦенМагазина))

3. Создайте движение документа по новому регистру

4. Добавьте в документ «Продажа» автоматическую установку актуальной цены при выборе товара. Обратите внимание, что цена может поменяться не только в случае смены товара, но и при смене магазина.


Окажите пожалуйста консультацию, что не так?
У меня максимум работало изменение цен по изменению даты. Был код такой
Функция РозничнаяЦена(АктуальнаяДата, ЭлементТовара) Экспорт
    // Создать вспомогательный объект "Отбор".
    // "Товар" - имя измерения регистра сведения
    // ЭлементНоменклатуры - параметр созданный в функции
    Отбор = Новый Структура("Товар", ЭлементТовара);
    // Получить актуальные значения ресурсов регистра.   
    // .ЦеныТоваров - ресурс регистра сведений
    ЗначенияРесурсов = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(АктуальнаяДата, Отбор);
    Возврат ЗначенияРесурсов.Цена;
КонецФункции 


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




С уважением, Panhead!


Модуль объекта УстановкаЦенТоваров.png
Общий модуль РаботаСоСправочниками.png
Общий модуль РасчётСтоимости.png
модуль формы документа Продажа (регистры накопления).png
Модуль объекта документа Продажа (регистры накопления).png     

Panhead


antoneus

Функция РозничнаяЦена(АктуальнаяДата, ЭлементТовара, НазваниеМагазина) Экспорт
    Отбор = Новый Структура("Товар, Магазин", ЭлементТовара, НазваниеМагазина);
    ....

...ПриИзменении(Элемент)

....
    СтрокаТабличнойЧасти.Цена = РаботаСоСправочниками.РозничнаяЦена(Объект.Дата, СтрокаТабличнойЧасти.Товар, Объект.Магазин);
....

LexaK

Panhead, так для получения цены еще надо учитывать Магазин, примерно так

Функция РозничнаяЦена(АктуальнаяДата, Товар, Магазин ) Экспорт
    Отбор = Новый Структура("Товар,Магазин", Товар, Магазин);
    // Получить актуальные значения ресурсов регистра.   
    // .ЦеныТоваров - ресурс регистра сведений
    ЗначенияРесурсов = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(АктуальнаяДата, Отбор);
    Возврат ЗначенияРесурсов.Цена;
КонецФункции 

ну и нет кода который делает записи в регистр при проведении документа  УстановкаЦенМагазина
если помогло нажмите: Спасибо!

Теги: Документы 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск