Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 20:09
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: ПовторноеНажатиеНаКнопку  (Прочитано 4497 раз)

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

Оффлайн Marccc

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-28
  • Сайт: 
  • Профессия: Программист 8.1
Друзья, нужна помощь, чтобы при повторном нажатии на кнопку, у меня дважды процент не считался, а оставался таким же как после 1 нажатия , не могу понять=)
Процедура РассчитатьСуммуОплатыДляПоселенияПослеБронированияНажатие(Элемент)
СтрокаРеквизитов = ЭлементыФормы;
Если РаботаСоСправочниками.ВыборкаПоБроне(СтрокаРеквизитов.ДатаЗаселения.Значение, СтрокаРеквизитов.Постоялец.Значение) = СтрокаРеквизитов.Постоялец.Значение Тогда             СтрокаРеквизитов.СуммаОплаты.Очистить();
СтрокаРеквизитов.СуммаОплаты.Значение = СтрокаРеквизитов.СуммаОплаты.Значение + СтрокаРеквизитов.СуммаОплаты.Значение * ( Константы.ПроцентПослеБронирования.Получить() /100)  ;                   
КонецЕсли;
КонецПроцедуры


Оффлайн primus

  • **
  • Сообщений: 71
  • РЕПУТАЦИЯ: 2
  • КПД: 3%
  • Регистрация: 2011-08-01
  • Сайт: 
  • Профессия: Программист 1С
В других средах это делалось счетчиком нажатий - булевая переменная, через хранимые переменные. Может что-то можно и здесь.

Оффлайн Marccc

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-28
  • Сайт: 
  • Профессия: Программист 8.1
пробовал, СтрокаРеквизитов.СуммаОплаты.Очистить(); следующее
 
{Документ.Поселение.Форма.ФормаДокумента(3)}: Метод объекта не обнаружен (Очистить)                    СтрокаРеквизитов.СуммаОплаты.Очистить();

Оффлайн Андрей Федотов

  • ***
  • Сообщений: 212
  • РЕПУТАЦИЯ: 36
  • КПД: 17%
  • Регистрация: 2011-07-07
  • Компания: Future IT Solutions
  • Профессия: Разработчик 1С
Хм, а что вы хотите сделать то?
Может быть вместо
СтрокаРеквизитов.СуммаОплаты.Очистить();

надо написать
СтрокаРеквизитов.СуммаОплаты.Значение = Число(0);

Для наглядности также предлагаю изменить строку:
СтрокаРеквизитов.СуммаОплаты.Значение = СтрокаРеквизитов.СуммаОплаты.Значение + СтрокаРеквизитов.СуммаОплаты.Значение * ( Константы.ПроцентПослеБронирования.Получить() /100)  ;
на
СтрокаРеквизитов.СуммаОплаты.Значение = СтрокаРеквизитов.СуммаОплаты.Значение* (1+ Константы.ПроцентПослеБронирования.Получить() /100);
С уважением,
Андрей Федотов
Future IT Solutions

Оффлайн Marccc

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-28
  • Сайт: 
  • Профессия: Программист 8.1
У меня есть СуммаОплаты, при нажатии на кнопку, считается процент от неё, и выводится в тоже окошко, при повторном нажатии ещё раз увеличивается сумма =) хочу чтобы она заморозилась =)

Оффлайн Marccc

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-28
  • Сайт: 
  • Профессия: Программист 8.1
 разобрался, к нулю так и не понял зачем вообще приравнивать, если объясните, буду благоарен!
Процедура РассчитатьСуммуОплатыДляПоселенияПослеБронированияНажатие(Элемент)
СтрокаРеквизитов = ЭлементыФормы;       
               Если РаботаСоСправочниками.ВыборкаПоБроне(СтрокаРеквизитов.ДатаЗаселения.Значение, СтрокаРеквизитов.Постоялец.Значение) = СтрокаРеквизитов.Постоялец.Значение Тогда               
СтрокаРеквизитов.СуммаОплаты.Значение = СтрокаРеквизитов.КоличествоДнейПроживания.Значение * СтрокаРеквизитов.Цена.Значение;
СтрокаРеквизитов.СуммаОплаты.Значение = СтрокаРеквизитов.СуммаОплаты.Значение  * (1 + Константы.ПроцентПослеБронирования.Получить() /100)  ;
КонецЕсли;
КонецПроцедуры

 
Я  тут заного подсчитал ЗначениеПоля СуммаОплаты, хотя чувствую есть какой-то правильнее вариант

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Зачем это?
СтрокаРеквизитов = ЭлементыФормы;

Оффлайн Marccc

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-28
  • Сайт: 
  • Профессия: Программист 8.1
СтрокаРеквизитов = ЭлементыФормы;
ну в книгах так пишут...впринципе незачем)

Оффлайн Marccc

  • *
  • Сообщений: 26
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-28
  • Сайт: 
  • Профессия: Программист 8.1
параметр это обычный

Оффлайн Андрей Федотов

  • ***
  • Сообщений: 212
  • РЕПУТАЦИЯ: 36
  • КПД: 17%
  • Регистрация: 2011-07-07
  • Компания: Future IT Solutions
  • Профессия: Разработчик 1С
разобрался, к нулю так и не понял зачем вообще приравнивать, если объясните, буду благоарен!

Извините, я Вас не правильно понял первоначально.
Сделайте следующее: сохраните текущее значение СуммаОплаты в переменную (до выполнения процедуры).
А далее значение этой переменной используйте при нажатии кнопки.
С уважением,
Андрей Федотов
Future IT Solutions


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
172 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
39 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 359
  • Точка Скрытых: 0
  • Точка Пользователей: 6
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal