8.х Автоматическая подстановка цены в документ при выборе номенклатуры

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Filipovich, 17 май 2016.

  1. TopicStarter Overlay
    Filipovich
    Offline

    Filipovich

    Регистрация:
    4 июл 2015
    Сообщения:
    7
    Симпатии:
    1
    Баллы:
    1
    Ребят помогите пожалуйста с чертовщиной которая у меня происходит. Дело в том что я читаю книгу Радченко , и остановился на 258 странице. Повторяю все как указано в книге а цена сама не подставляется. Добавил функцию в общий модуль как сказано, но все равно не получается. Вот листинг из документа при изменении:
    &НаКлиенте
    Процедура ПереченьНоменклатурыКоличествоПриИзменении(Элемент)
    СтрокаТабличнойЧасти = Элементы.ПереченьНоменклатуры.ТекущиеДанные;
    СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
    КонецПроцедуры
    &НаКлиенте
    Процедура ПереченьНоменклатурыЦенаПриИзменении(Элемент)
    СтрокаТабличнойЧасти = Элементы.ПереченьНоменклатуры.ТекущиеДанные;
    СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
    КонецПроцедуры

    Процедура ПереченьНоменклатурыНоменклатураПриИзменении()
    //Получить текущую строку табличной части.
    СтрокаТабличнойЧасти = Элементы.ПереченьНоменклатуры.ТекущиеДанные;
    //Установить Цену.
    СтрокаТабличнойЧасти.Цена = РаботаСоСправочниками.РозничнаяЦена(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура);
    //Пересчитать сумму строки.
    СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество
    *СтрокаТабличнойЧасти.Цена;
    КонецПроцедуры


    Вот из общего модуля:


    Функция РозничнаяЦена(АктуальнаяДата, ЭлементНоменклатуры) Экспорт

    // Cозадть вспомогательный объект Отбор.
    Отбор = Новый Структура("Номенклатура", ЭлементНоменклатуры);

    //Получить актуальные значения ресурсов регистра.
    ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата,Отбор);
    Возврат ЗначенияРесурсов.Цена;

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

    Пожалуйста ребят помогите! Я уже неделю почти убил в поисках решений данной проблемы...
  2. Aston
    Offline

    Aston Опытный в 1С

    Регистрация:
    6 июн 2012
    Сообщения:
    467
    Симпатии:
    3
    Баллы:
    29
    Первое поставь точку останова на
    СтрокаТабличнойЧасти.Цена = РаботаСоСправочниками.РозничнаяЦена(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура);
    Измени номенклатуру и потом нажимай F11 и проверяй чему у тебя равны значения и что возвращается в ЗначенияРесурсов. Мне кажется он не находит записи и возвращается Неопределено.
  3. Svb
    Offline

    Svb Опытный в 1С Команда форума

    Регистрация:
    12 янв 2011
    Сообщения:
    980
    Симпатии:
    19
    Баллы:
    29
    В конфигураторе проверить привязку процедуры ПереченьНоменклатурыНоменклатураПриИзменении к событию таблицы формы;
    В режиме исполнения проверить что заданы цены на дату документа.
  4. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.438
    Симпатии:
    373
    Баллы:
    104
    вот эту ещё книжку почитайте
    http://v8.1c.ru/metod/books/book.jsp?id=231
    Разработка управляемого интерфейса (+CD). Серия "1С:Профессиональная разработка" (артикул 4601546069634)

    в ней точно работают примеры по подстановке цен и реквизитов и пересчёта сумм :) и полезное по оптимизации сразу найдёте
  5. TopicStarter Overlay
    Filipovich
    Offline

    Filipovich

    Регистрация:
    4 июл 2015
    Сообщения:
    7
    Симпатии:
    1
    Баллы:
    1
    Ребят большое спасибо Вам всем тем кто откликнулся! Я решил проблему, проблема была в том , что функция не могла понять где общий модуль на клиенте или сервере. Добавил &НаКлиенте перед процедурой и все заработало. Она автоматом добавляется, но не знаю может я ее стер случайно или не добавилась она у меня! Вот в такой мелочи была вся суть проблемы! Спасибо Всем!
    alexburn нравится это.

Поделиться этой страницей