Ошибка работы с переменными

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Есть 10 однотипных шаблонов, каждый шаблон сохраняет данные в свою табличку.
Путь к табличке прописываю вот так {-Project.Directory-}logged_profiles\result_bot_{-Variable.number_bots-}.xlsx
переменную номер бота задаю через входные настройки, до этого задавал явно, было поле номер бота и переменная {-Variable.number_bots-}, но поднадоело постоянно заносить данные, сделал загрузку входных данных одной строчкой, пример, номер_бота&логин&пароль&прокся. в первом же кубике C# делаю сплит по & и разношу по разным переменным, вот номер бота, вот так
C#:
string number_bots_loc = project.Variables["number_bots"].Value = project.Variables["input_data"].Value.Split('&')[1];
Потом бот работает работает, и когда нужно сохраниться сохраняет вот сюда
{-Project.Directory-}logged_profiles\result_bot_.xlsx
а должен вот сюда
{-Project.Directory-}logged_profiles\result_bot_{-Variable.number_bots-}.xlsx
Получается теряется эта переменная, подскажите, как заставить корректно сохранять, если входные передаю одной строчкой.
Спасибо
 

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Самое интересное что внутри других кубиков все работает корректно
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Я бы искал проблему где-то в шаблоне - возможно в какой-то момент Вы обнуляете значение переменной с номером бота. Если шаблон очень большой, что визуально тяжело найти проблему, то расставьте экшены Оповещение с выводом в лог переменной {-Variable.number_bots-} , таким образом сможете понять в каком месте затирается значение. Один лучше поставить сразу после обработки строки из входных настроек, чтоб удостовериться, что переменная не пустая.

Ещё одно: код, который Вы привели, из такой строки номер_бота&логин&пароль&прокся будет брать логин, а не номер_бота. Возможно в этом дело.
 

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Я бы искал проблему где-то в шаблоне - возможно в какой-то момент Вы обнуляете значение переменной с номером бота. Если шаблон очень большой, что визуально тяжело найти проблему, то расставьте экшены Оповещение с выводом в лог переменной {-Variable.number_bots-} , таким образом сможете понять в каком месте затирается значение. Один лучше поставить сразу после обработки строки из входных настроек, чтоб удостовериться, что переменная не пустая.

Ещё одно: код, который Вы привели, из такой строки номер_бота&логин&пароль&прокся будет брать логин, а не номер_бота. Возможно в этом дело.
Странно просто если задаешь явно, то работает корректно, если делаешь перед всеми кубиками еще один и там делаешь раскидку переменных, появляются ошибки, самое интересное что в кубиках все работает корректно, с точки зрения кода, привел для примера, знаю что индекс начанается с 0. Может ли быть это баг софта?
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Странно просто если задаешь явно, то работает корректно, если делаешь перед всеми кубиками еще один и там делаешь раскидку переменных
Вы разбиваете строку один раз?
Сразу после этого отправьте в лог все значения переменных, которым присваиваете значение. Иногда бывает, что при копи-пасте забываешь что-то где-то переименовать.
Или, если можете, пришлите код разбивки входной строки по переменным.

Может ли быть это баг софта?
Полностью этого исключать нельзя. Но я на 95% уверен, что не баг :-)
 

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Вы разбиваете строку один раз?
Сразу после этого отправьте в лог все значения переменных, которым присваиваете значение. Иногда бывает, что при копи-пасте забываешь что-то где-то переименовать.
Или, если можете, пришлите код разбивки входной строки по переменным.


Полностью этого исключать нельзя. Но я на 95% уверен, что не баг :-)
72049
72051
72052
тут все ок, но при сохранении есть ошибка
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Разбросайте по коду и проекту вывод в лог этой переменной, чтоб понять в какой момент теряется значение.
 

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Разбросайте по коду и проекту вывод в лог этой переменной, чтоб понять в какой момент теряется значение.
ошибка не там. Создал тестовый шаб из 2 кубиков, ошибка повторяется, ничего не затирается))) Все же это баг или я что то не понимаю?
 

Вложения

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Во входных настройках не надо использовать пользовательские переменные. Т.к. они [входные настройки] инициализируются в самом начале работы шаблона, когда пользовательские переменные ещё пусты.

Воспользуйтесь экшеном Операции над таблицей - Привязать к файлу (в настройках таблицы удалите путь).
 
  • Спасибо
Реакции: arbplv

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Во входных настройках не надо использовать пользовательские переменные. Т.к. они [входные настройки] инициализируются в самом начале работы шаблона, когда пользовательские переменные ещё пусты.

Воспользуйтесь экшеном Операции над таблицей - Привязать к файлу (в настройках таблицы удалите путь).
Да, так сработало, это мне и надо было
72054
 

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Во входных настройках не надо использовать пользовательские переменные. Т.к. они [входные настройки] инициализируются в самом начале работы шаблона, когда пользовательские переменные ещё пусты.

Воспользуйтесь экшеном Операции над таблицей - Привязать к файлу (в настройках таблицы удалите путь).
Подскажите, а как сохранить профиль? С табличками решили, теперь новая проблемка?
72059
 

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Подскажите, а как сохранить профиль? С табличками решили, теперь новая проблемка?
А в чём проблема? :-)
Сначала выполняете экшен C# в котором парсится строка и записываются значения в переменные. Потом сохраняете профиль.

Если что-то не так, то лучше приложите тестовый шаблон.
 
  • Спасибо
Реакции: arbplv

arbplv

Client
Регистрация
28.03.2020
Сообщения
373
Благодарностей
23
Баллы
18
Подсказали решение через project.Profile.Save();
Вопрос закрыт. Спасибо
 

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