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

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

95451


Конекстной ссылки на конвертировать в C# нет у этого кубика, к сожалению.
Братцы, помогите, плиз, не силен я в коде (((
 
на форуме, получение строки из списка.... ну просто 100500 рабочих примеров. Просто поиском надо воспользоваться
 
на форуме, получение строки из списка.... ну просто 100500 рабочих примеров. Просто поиском надо воспользоваться
так ее еще и внести надо в переменную, содержащую в себе переменную... Я еще не втыкаю, как правильно заменять код на нужный мне, только переменные переименовываю из сниппетов :D
 
мне нужно сохранить значение в переменную с другой переменной в названии... Есть заведомо неизвестное количество артикулов, я их высчитываю после запуска шаблона и присваиваю счетчику их количество в качестве значения. Соответственно, создаю сишарпом названия переменных, если их еще нет, а записывать в них в процессе работы данные планировалось по формуле типа вместо {-Variable.art1-} вставляем {-Variable.art{-Variable.countGoods-}-}
 
Сам спросил, сам и отвечу - вдруг кто наткнется...

Сохранил в переменную 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;
}
 
Сам спросил, сам и отвечу - вдруг кто наткнется...

Сохранил в переменную 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

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