Блокировка перезаписи переменной

1. 1c_uZer 09.06.17 13:24 Сейчас в теме
Здравствуйте! Подскажите кто знает...вопрос звучит просто. У меня есть переменная, в неё записывается некоторое значение и мне нужно чтобы более значение данной переменной не перезаписывалось...скажите можно ли такое реализовать?
+
По теме из базы знаний
Найденные решения
8. iskdv 09.06.17 13:48 Сейчас в теме
если флаг=ложь тогда // проверка -- а нужно ли лесть
  если б=истина тогда
    в=123;
    флаг=истина;//что-бы больше не лезла

  конецесли;

конецесли;
+
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Dream_kz 129 09.06.17 13:37 Сейчас в теме
(1)
чтобы более значение данной переменной не перезаписывалось

Кем? Переменная локальная/глобальная? Не перезаписывалось всегда/только на время сеанса/только если она заполнена?
+
3. 1c_uZer 09.06.17 13:40 Сейчас в теме
ВНешняя обработка.

Имеется кусок кода:

Если Сотр.Количество() = 0 Тогда 
		Сообщить ("Все сотрудники работают на своих местах");	
	Иначе
		//---
		//НачРез = Число(Строка(ДокОбъект.РаспределениеРезультатовНачислений[0].Результат));
		ГлавноеЗначение = ДокОбъект.РаспределениеРезультатовНачислений[0].Результат;
		ПервоеЗначение = ГлавноеЗначение;
		Для Каждого ЭлементМассива Из Массив Цикл


Мне нужно, чтобы переменная ГлавноеЗначение брала свое начальное значение и в дальнейшем в процессе выполнения обработки она не перезаписывалась.
+
4. Dream_kz 129 09.06.17 13:42 Сейчас в теме
(3) Кем она перезапишется то?
+
6. 1c_uZer 09.06.17 13:45 Сейчас в теме
(4)
Если (ЭлементТЧ.Начисление.Наименование = "Надбавка за выслугу лет") Тогда
					Сообщить(Массив[Счетчик].Сотрудник);
						Сообщить(Счетчик);
						//Для Счетчик=0 По Массив.Количество() - 1 Цикл
						НовСтр = ДокОбъект.РаспределениеРезультатовНачислений.Добавить();
						НовСтр.ИдентификаторСтроки = ЭлементТЧ.НомерСтроки;
						НачРез = ДокОбъект.РаспределениеРезультатовНачислений[Индекс].Результат;
						НовСтр.Результат = НачРез * ЭлементМассива.КоэффициентЧасы;
						ДокОбъект.РаспределениеРезультатовНачислений[Индекс].Результат = НачРез - НовСтр.Результат;
						//НовСтр.ИдентификаторСтроки = СтрокаТЧ.НомерСтроки;
						НовСтр.СпособОтраженияЗарплатыВБухучете = ЭлементМассива.СпособОтражения;
						НовСтр.СтатьяФинансирования = ДокОбъект.РаспределениеРезультатовНачислений[Индекс].СтатьяФинансирования;
						//Индекс = Индекс + 1;
					КонецЕсли
Показать



Здесь ДокОбъект.РаспределениеРезультатовНачислений[Индекс].Результат при Индексе = 0 она перезапишется выходит, а мне бы не хотелось...хотя может этот способ не самый адекватный
+
10. Dream_kz 129 09.06.17 13:50 Сейчас в теме
(6) Если индекс = 0 не перезаписывать? Можно простым условием. Просто не могу понять логику, переменными управляет программист, и что в них пишется, блокировать от себя что-то, ну такое себе ..
+
11. 1c_uZer 09.06.17 13:52 Сейчас в теме
(10)простыми словами эта переменная при запуске берет значение из табличной части...то значение которое мне нужно, позже оно перезаписывается и расчеты идут не очень корректно) вот я и подумал что было бы неплохо её не перезаписывать.
+
5. iskdv 09.06.17 13:45 Сейчас в теме
можно рядом с переменной обозначить переменную-флаг. ставить ее в истину. а затем при дольнейшей проверке она -- истина то переменную не перезаписываем.
+
7. 1c_uZer 09.06.17 13:46 Сейчас в теме
(5) а можете привести маленький пример?
+
8. iskdv 09.06.17 13:48 Сейчас в теме
если флаг=ложь тогда // проверка -- а нужно ли лесть
  если б=истина тогда
    в=123;
    флаг=истина;//что-бы больше не лезла

  конецесли;

конецесли;
+
9. 1c_uZer 09.06.17 13:49 Сейчас в теме
(8) во) это супер) думаю мне подходит) спасибо)
+
12. dmitrichenko.ivan 6 09.06.17 13:52 Сейчас в теме
Если Не ЗначениеЗаполнено(ГлавноеЗначение) Тогда
ГлавноеЗначение = ДокОбъект.РаспределениеРезультатовНачислений[0].Результат;
КонецЕсли;
+
13. 1c_uZer 09.06.17 13:55 Сейчас в теме
(12) так и сделаю) спасибо)
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот