Сишарп - как сохранить значение в переменную с другой переменной в ее имени?

Регистрация
26.05.2020
Сообщения
495
Благодарностей
172
Баллы
43
Хороший кубик, но не хватает возможности в последнем блоке настроек ("Положить в переменную") возможность указать переменную в названии переменной - у меня там обратный счетчик.

95451


Конекстной ссылки на конвертировать в C# нет у этого кубика, к сожалению.
Братцы, помогите, плиз, не силен я в коде (((
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 718
Баллы
113
на форуме, получение строки из списка.... ну просто 100500 рабочих примеров. Просто поиском надо воспользоваться
 
Регистрация
26.05.2020
Сообщения
495
Благодарностей
172
Баллы
43
на форуме, получение строки из списка.... ну просто 100500 рабочих примеров. Просто поиском надо воспользоваться
так ее еще и внести надо в переменную, содержащую в себе переменную... Я еще не втыкаю, как правильно заменять код на нужный мне, только переменные переименовываю из сниппетов :D
 
Регистрация
26.05.2020
Сообщения
495
Благодарностей
172
Баллы
43
мне нужно сохранить значение в переменную с другой переменной в названии... Есть заведомо неизвестное количество артикулов, я их высчитываю после запуска шаблона и присваиваю счетчику их количество в качестве значения. Соответственно, создаю сишарпом названия переменных, если их еще нет, а записывать в них в процессе работы данные планировалось по формуле типа вместо {-Variable.art1-} вставляем {-Variable.art{-Variable.countGoods-}-}
 
Регистрация
26.05.2020
Сообщения
495
Благодарностей
172
Баллы
43
Сам спросил, сам и отвечу - вдруг кто наткнется...

Сохранил в переменную temp нужное значение, а потом просто кубиком из сниппетов "создать переменную при ее отсутствии" прогнал в нужную мне переменную

C#:
string vParamName = "art"+project.Variables["countGoods"].Value;
string vParamValue = project.Variables["temp"].Value;
//проверяем существование переменной, если нет то создаем новую
if (project.Variables.Keys.Contains(vParamName)){
    project.SendInfoToLog("Переменная "+vParamName+" уже существует - присваиваем ей значение");                   
    project.Variables[vParamName].Value = vParamValue;
} else {
    project.SendInfoToLog("Создаем переменную "+vParamName+" и присваиваем ей значение");
    object obj = project.Variables;
    obj.GetType().GetMethod("QuickCreateVariable").Invoke(obj,new Object[]{vParamName});
    project.Variables[vParamName].Value = vParamValue;
}
 

lesha076

Новичок
Регистрация
10.08.2014
Сообщения
6
Благодарностей
2
Баллы
3
Сам спросил, сам и отвечу - вдруг кто наткнется...

Сохранил в переменную temp нужное значение, а потом просто кубиком из сниппетов "создать переменную при ее отсутствии" прогнал в нужную мне переменную

C#:
string vParamName = "art"+project.Variables["countGoods"].Value;
string vParamValue = project.Variables["temp"].Value;
//проверяем существование переменной, если нет то создаем новую
if (project.Variables.Keys.Contains(vParamName)){
    project.SendInfoToLog("Переменная "+vParamName+" уже существует - присваиваем ей значение");                  
    project.Variables[vParamName].Value = vParamValue;
} else {
    project.SendInfoToLog("Создаем переменную "+vParamName+" и присваиваем ей значение");
    object obj = project.Variables;
    obj.GetType().GetMethod("QuickCreateVariable").Invoke(obj,new Object[]{vParamName});
    project.Variables[vParamName].Value = vParamValue;
}
благодарю тебя от души
 
  • Спасибо
Реакции: Андрейка2020
Регистрация
26.05.2020
Сообщения
495
Благодарностей
172
Баллы
43

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)