Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Простейшая конвертация валюты , Присвоение данных полям и и арифметические функции          
hveydrung Подменю пользователя
сообщение 31.10.19, 23:59
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 1
Спасибо сказали: 0 раз
Рейтинг: 0

1с 8.2 Пишу с 0. Так как нужна самая минимальная функция.

Кто подскажет как осуществить задуманное.


Есть три поля
Объект.ЦінаОптова -Объект.ЦінаРознічна -Объект.ЦінаДоллар

Задумка такая чтобы- цена выставлялась в поле Объект.ЦінаДоллар и потом от этой цены выставлялись остальные цены как ниже я привел. Сделал пока так Так как уже не знаю где рыть чтобы курс валюты указывался из поля. Ставил поле ссылкой из другого справочника данные не считываются.

Процедура ЦінаДолларПриИзменении(Элемент)
    Объект.ЦінаОптова=Объект.ЦінаДоллар*27-24;
    Объект.ЦінаРознічна=Объект.ЦінаДоллар*27;


Так все работает но есть один нюанс. ЧТо оно работает пока не изменяется в модуле цена за доллар. И чтобы сработала процедура нужно снова заходить в карточку товара.
Пробовал сделать так

Процедура ПередНачаломРаботыСистемы()
    Объект.ЦінаОптова=Объект.ЦінаДоллар*100-24;
    Объект.ЦінаРознічна=Объект.ЦінаДоллар*100;
КонецПроцедуры


матерится

Цитата
{МодульУправляемогоПриложения(2,2)}: Переменная не определена (Объект)
<<?>>Объект.ЦінаОптова=Объект.ЦінаДоллар*100-24; (Проверка: Тонкий клиент)
{МодульУправляемогоПриложения(2,20)}: Переменная не определена (Объект)
Объект.ЦінаОптова=<<?>>Объект.ЦінаДоллар*100-24; (Проверка: Тонкий клиент)
{МодульУправляемогоПриложения(3,2)}: Переменная не определена (Объект)
<<?>>Объект.ЦінаРознічна=Объект.ЦінаДоллар*100; (Проверка: Тонкий клиент)
{МодульУправляемогоПриложения(3,22)}: Переменная не определена (Объект)
Объект.ЦінаРознічна=<<?>>Объект.ЦінаДоллар*100; (Проверка: Тонкий клиент)


В итоге 2 вопроса.
1. Как сделать чтобы пользователь мог сам назчать цену за доллар (из справочника или другого источника)
2. Как сделать чтобы процедура срабатывала при загрузке базы данных и пересчитывала цены.

Сообщение отредактировал Vofka - 01.11.19, 8:52

denis84 Подменю пользователя
сообщение 01.11.19, 8:23
Сообщение #2

Оратор
Иконка группы
Группа: Местный
Сообщений: 431
Из: Украина
Спасибо сказали: 137 раз
Рейтинг: 138.5

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

Процедура СуммаВалПриИзменении(Элемент)
    Сумма = СуммаВал/100*КурсВалюты;
КонецПроцедуры


Сообщение отредактировал Vofka - 01.11.19, 8:53

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 24.04.24, 1:21
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!