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

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

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)}: Метод объекта не обнаружен (Очистить)                    СтрокаРеквизитов.СуммаОплаты.Очистить();

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

  • ***
  • Сообщений: 231
  • РЕПУТАЦИЯ: 37
  • КПД: 16%
  • Регистрация: 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

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

Оффлайн Marccc

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

Оффлайн Marccc

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

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

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

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


Теги:
 


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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
161 Сообщений
alex0402
76 Сообщений
oleg-x
68 Сообщений
AIFrame AIFrame
61 Сообщений
buketov.av buketov.av
44 Сообщений
wise wise
39 Сообщений
KOI8-R
35 Сообщений
Alter
29 Сообщений
Анюта17
29 Сообщений
ilyay ilyay
29 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal