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

автоматическое заполнение цены

Автор Элина, 30 авг 2018, 18:32

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

Элина

всем доброго времени суток!
пишу конфигурацию для автомойки, я-новичок в этом деле.
помогите с решением следующей проблемы:
пытаюсь выполнить автоматическую постановку цены из регистра сведений, в общем модуле прописываю код:

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

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

первая функция для автохимии, а вторая уже для услуг
далее в форме самого документа заказ-наряд:

&НаКлиенте
Процедура ИспользованыеМатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ИспользованыеМатериалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

&НаКлиенте
Процедура ИспользованыеМатериалыЦенаПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ИспользованыеМатериалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

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


&НаКлиенте
Процедура ОказанныеУслугиКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ОказанныеУслуги.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

&НаКлиенте
Процедура ОказанныеУслугиЦенаПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ОказанныеУслуги.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

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


все работает для автохимии, но возникают какие-то проблемы с услугами, никаких ошибок, просто не подставляет цену автоматом
может ли это быть из-за того, что в регистре сведений два измерения: услуги и вид тс?
если да, то как тогда все это дело прописывать?

Элина

Цитата: Элина от 30 авг 2018, 18:32
всем доброго времени суток!
пишу конфигурацию для автомойки, я-новичок в этом деле.
помогите с решением следующей проблемы:
пытаюсь выполнить автоматическую постановку цены из регистра сведений, в общем модуле прописываю код:

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

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

первая функция для автохимии, а вторая уже для услуг
далее в форме самого документа заказ-наряд:

&НаКлиенте
Процедура ИспользованыеМатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ИспользованыеМатериалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

&НаКлиенте
Процедура ИспользованыеМатериалыЦенаПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ИспользованыеМатериалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

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


&НаКлиенте
Процедура ОказанныеУслугиКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ОказанныеУслуги.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

&НаКлиенте
Процедура ОказанныеУслугиЦенаПриИзменении(Элемент)
СтрокаТабличнойЧасти = Элементы.ОказанныеУслуги.ТекущиеДанные;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

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


все работает для автохимии, но возникают какие-то проблемы с услугами, никаких ошибок, просто не подставляет цену автоматом
может ли это быть из-за того, что в регистре сведений два измерения: услуги и вид тс?
если да, то как тогда все это дело прописывать?

все, разобралась
кому интересно, проблема была очень простая: не выставлена была периодичность

alexandr_ll

Эвелина! Почему вы все вопросы задаете в разделе 1С предприятие 7.7?

Теги:

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

Рейтинг@Mail.ru

Поиск