Имя: Пароль:
1C
1С v8
В 8ке есть аналог функции "Шаблон()" из 7.7 ?
0 andryuhin
 
05.04.13
15:48
Всем привет.
В 8ке есть аналог функции "Шаблон()" из 7.7 ?
1 ДенисЧ
 
05.04.13
15:49
Вычислить() ?
2 andryuhin
 
05.04.13
16:06
Не работает.

У меня в коде есть переменная:
НомерЗаказа = "ЗК015";

Есть также константа к конфигураторе:
Константы.тТема.получить() = "Заказ [НомерДока]";


Теперь хочу, чтобы в переменной Тема было следующее:
Тема = "Заказ ЗК015";

Как это сделать?
3 ДенисЧ
 
05.04.13
16:08
Константы.тТема.получить() = "Заказ " + НомерДока;
4 andryuhin
 
05.04.13
16:14
нет, не поняли меня.

Есть поле на форме, в которое пользователь вводит шаблон текста.  Пользователь ввел "Заказ [НомерЗаказа]"

Есть переменная НомерЗаказа, которая чего то содержит, например "ЗК015"

Пользователь давит на кнопку и должен получить "Заказ ЗК015"
5 viktor_vv
 
05.04.13
16:35
Выполнить() еще есть.
6 viktor_vv
 
05.04.13
16:38
Только пользователю надо вводить "Заказ "+НомерЗаказа. Или тебе надо введенный шаблон обрабатывать к необходимому виду.
7 andryuhin
 
05.04.13
16:50
Пользователю не объяснить, как ввести
"Заказ "+НомерЗаказа

Он как всегда ступит и ковычки пропустит
Научить проще вводить шаблон вида:
Заказ [НомерЗаказа] задержан по причине [ПричинаЗадержания]
и т.д.  
Т.е. переменные в квадратных скобках.

Все, сделал сам функцию:

Функция Шаблон(знач т)
   т = сокрЛП(т);
   т = стрЗаменить(т,"[","""+СокрЛП(");
   т = стрЗаменить(т,"]",")+""");
   т = стрЗаменить(т,Символы.ПС,"""+Символы.ПС+""");
   т = стрЗаменить(т,Символы.ВК,"""+Символы.ВК+""");
   т = """"+т+"""";
   т = Вычислить(т);
   возврат т;
КонецФункции    



Главное только, чтобы для этой функции были доступны все переменные, которые пользователь указывает в скобках
8 andryuhin
 
05.04.13
16:51
Эта функция работает в 8.2 так же, как в 7.7.