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

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

  1. TopicStarter Overlay
    iceborn
    Offline

    iceborn Опытный в 1С

    Регистрация:
    17 июн 2010
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    26
    Подскажите код автоматического заполнения цены, использую я Перечисления. Раньше делал процедуру ПриИзменении когда выбирал товар с табличной части документы. А сейчас мне необходимо сделать заполнение цены когда я выбираю Тариф с помощью перечисления. Цены хранятся в РегистреСведений ЦеныНаТариы - Измерение Тариф Ресурс Цена. Создаю событие Перечислению Тариф а дальше подскажите код пожалуйста.
    [​IMG]
  2. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    1) Почему Тариф у вас это "Перечисление", а не "Справочник"? Каждый раз когда у вас появится новый тариф - вы собираетесь в конфигуратор лезть, менять перечисление?
    2) Регистр сведений - периодический?
  3. TopicStarter Overlay
    iceborn
    Offline

    iceborn Опытный в 1С

    Регистрация:
    17 июн 2010
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    26
    На данный момент нужно именно перечисление.
    РегистрСведений переодичность в пределах секунды
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Ну дык, в чем проблема?
    Код:
    Запрос = Новый Запрос;
    Запрос.Текст = 
    "ВЫБРАТЬ
    |	ЦеныНаТарифыСрезПоследних.Цена
    |ИЗ
    |	РегистрСведений.ЦеныНаТарифы.СрезПоследних(&Дата, Тариф = &Тариф) КАК ЦеныНаТарифыСрезПоследних";
    
    Запрос.УстановитьПараметр("Дата", Дата);
    Запрос.УстановитьПараметр("Тариф", Тариф);
    
    Результат = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    ВыборкаДетальныеЗаписи.Следующий();
    
    
    Будет приблизительно так.
    После выполнения данного кода ваша цена будет в "ВыборкаДетальныеЗаписи.Цена". Ну а дальше присваивайте, чему там хотите.

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