8.х Программно перезаполнить цены

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

  1. TopicStarter Overlay
    OlgaOsipova
    Offline

    OlgaOsipova Опытный в 1С

    Регистрация:
    14 сен 2010
    Сообщения:
    273
    Симпатии:
    1
    Баллы:
    29
    Здравствуйте!
    Конфигурация УТ 10.3.7 последней цифры сейчас не вспомню

    Программно установила в документе реализация товаров и услуг другой тип цен.
    А вот как программно перезаполнить цены в табличном документе? Может есть уже в конфе что нибудь написанное?
  2. TopicStarter Overlay
    OlgaOsipova
    Offline

    OlgaOsipova Опытный в 1С

    Регистрация:
    14 сен 2010
    Сообщения:
    273
    Симпатии:
    1
    Баллы:
    29
    Простым циклом сделала.
    Получение последних значений на дату документа, с отбором по структуре. Хотелось конечно найти встроенный механизм...
  3. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Под табличным документом Вы подразумеваете табличную часть?

    Из встроенных механизмов есть обработка табличной части "Товары". Вызывается, когда нажимаете на кнопку "Изменить" в документе реализации. Там есть возможность установить цены по определенному типу.
  4. steach
    Offline

    steach

    Регистрация:
    16 авг 2007
    Сообщения:
    33
    Симпатии:
    0
    Баллы:
    1
    Дабы не плодить темы, подниму вопрос. Как реализовать? Скажем перед записью документа в режиме проведения, установлю свой тип цен поставщика, но табличная часть не пересчитывается, как ее пересчитить чтобы цены изменились на нужные?
  5. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    А почему перед записью?
    Допустим, пользователь создал документ, установил в нем тип цен, начинает записывать..И тут - хоп - тип цен изменился.
    Или Вам именно это и надо?

    Надо обходить строки табличной части в цикле, устанавливая нужные цены.
  6. steach
    Offline

    steach

    Регистрация:
    16 авг 2007
    Сообщения:
    33
    Симпатии:
    0
    Баллы:
    1
    я решил проблему гораздо проще:

    Код:
        // установим тип цен для нашего приходника
    СпособЗаполненияЦен = Перечисления.СпособыЗаполненияЦен.ПоЦенамНоменклатурыКонтрагентов;
    
    // Задать набор реквизитов для редактирования.
    СтруктураРеквизитовДокумента = Ценообразование.ПолучитьСтруктуруРеквизитовДокументаДляЦенообразования(Док);
    СтруктураРеквизитовДокумента.Вставить("НДСВключенВСтоимость");
    СтруктураЗапрещенных = Неопределено;
    Если Договор.ВидДоговора = Перечисления.ВидыДоговоровКонтрагентов.СКомитентом Тогда
    
    СтруктураЗапрещенных = Новый Структура("НДСВключенВСтоимость");
    
    КонецЕсли;
    
    // Вызов общей формы "Цены и валюта" и пересчеты по результатам выбора в этой форме.
    СтруктураЗначений = Ценообразование.ОткрытьФормуЦеныИВалюта(Док, СтруктураРеквизитовДокумента, мВалютаРегламентированногоУчета,
    СтруктураЗапрещенных, "Товары");
    Если СтруктураЗначений <> Неопределено Тогда
    ЗаполнениеДокументов.ИзменитьЦеныВалюту(Док, СпособЗаполненияЦен, СтруктураРеквизитовДокумента, СтруктураЗапрещенных, "Товары", мВалютаРегламентированногоУчета, , СтруктураЗначений);
    КонецЕсли;
    
    // конец установки типа цен
    
    
    В модкль обработки (модуль объекта) прописать:

    Код:
    	Перем мВалютаРегламентированногоУчета Экспорт;
    
    

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