как получить список переменных из профиля?

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16
переменную сохарнил, переменную по имени могу вытащить, а узнать что хранится в профиле без знания имени переменной не могу. как быть?
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 458
Благодарностей
8 682
Баллы
113
переменную сохарнил, переменную по имени могу вытащить, а узнать что хранится в профиле без знания имени переменной не могу. как быть?
Профиль это zip-файл, внутри текстовые файлы с данными, можете извлечь из него файлик, где хранятся переменные, и распарсить их имена и значения.
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
316
Благодарностей
230
Баллы
43
Приблизительно так:
C#:
return string.Join("; ",  project.Variables.Keys);
 
  • Спасибо
Реакции: djaga и linkod

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16

Alex733

Client
Регистрация
27.11.2017
Сообщения
316
Благодарностей
230
Баллы
43
Например?
 

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16
например те, которые были сохранены ранее. Если в проекте переменная не объявлена, то данный метод ее не увидит.
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
316
Благодарностей
230
Баллы
43
Не совсем понятно.
Если переменные проекта объявляются в процессе работы шаблона, то можно запустить этот код в конце проекта.
 

Nike59

Client
Регистрация
05.08.2011
Сообщения
122
Благодарностей
121
Баллы
43
Выкладывали уже вот это, если надо, то можно распарсить:

Код:
string profile = project.Profile.ToString();
return profile;
 
  • Спасибо
Реакции: Sergodjan

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16
Не совсем понятно.
Если переменные проекта объявляются в процессе работы шаблона, то можно запустить этот код в конце проекта.
вопрос во том, чтобы узнать все возможные переменные внутри профиля.
 

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16
Профиль это zip-файл, внутри текстовые файлы с данными, можете извлечь из него файлик, где хранятся переменные, и распарсить их имена и значения.
а есть какой-нибудь супер сниппет? на эту тему
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
316
Благодарностей
230
Баллы
43

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 458
Благодарностей
8 682
Баллы
113
а есть какой-нибудь супер сниппет? на эту тему
Помню что то было на форуме, причем попадалось буквально сегодня.
В закладки еще хотел поместить, помня интерес в этом топике. :-)
Попробую поискать еще раз.

PS: (нашел)
https://zennolab.com/discussion/threads/zip-arxiv-v-zennoposter.46311/
https://zennolab.com/discussion/threads/kak-poluchit-proksi-iz-profilja-v-proekte-bez-brauzera.24517/#post-169435
 
  • Спасибо
Реакции: linkod

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16
Может переменные, которые используются внутри шаблона в с# кубиках?
возможно. Скорее всего вы имеете в виду локальные или глобальные переменные проекта. Я почти кубиками не пользуюсь. Долго ))
Пока переменные не указаны в проекте, я не могу видеть их вообще, а значение я могу видеть, когда будет произведен их вызов шаблоном.
Вот такая логика работы у зенки. :D
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
316
Благодарностей
230
Баллы
43
Если сослаться на стартпост, то я запускаю шаблон, нажимаю F2 и вижу все переменные в профиле. Вам было предложено несколько решений, которые помогли частично с задачей.

Само собой, что пока переменную не объявить, её нельзя использовать, и что значения этих переменных я могу увидеть только в процессе выполнения.

О каких переменных вообще речь идёт?
переменную по имени могу вытащить, а узнать что хранится в профиле без знания имени переменной не могу
Судя по выше сказанному - это те переменные, которые объявляются пользователем руками и видны по F2.

только есть один момент. показывает объявленные переменные. А в профиле много чего может храниться )
Что имеется в виду: пользовательские (которые так же называются "свои" при вызове по F2) , глобальные, переменные в общем коде или локальные переменные в C# экшене (кубике, прямоугольнике и т.п., как ни крути, но хоть один "кубик" в шаблоне, который создается в PM будет), авто переменные, окружение, Json или XML переменные?
Еще видел способ, где-то на форуме как создавать "свои" переменные на этапе выполнения проекта, может вы их хотите вытащить?
Что еще такого хранится в профиле, что никак не увидеть, не извлечь программно или не распарсить из зип архива шаблона или профиля?
Уже интересно вашу задачу решить, возможно пригодится, когда-нибудь.

Я почти кубиками не пользуюсь. Долго ))
- интересно, а где вы пишите код? (вопрос риторический)

Просто, если это еще актуально, конкретизируйте, что именно нужно с учетом выше сказанного.
 

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16
Если сослаться на стартпост, то я запускаю шаблон, нажимаю F2 и вижу все переменные в профиле. Вам было предложено несколько решений, которые помогли частично с задачей.
Да эти переменные. Вскрыть архив профиля помогает. Они там.


- интересно, а где вы пишите код? (вопрос риторический)
ну почти не пользуюсь. Кубик кода, еще общий код часто использую и иногда стандартные кубики быстрее использовать. К примеру, чтобы переменные в профиль сохранить.
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
316
Благодарностей
230
Баллы
43

linkod

Пользователь
Регистрация
11.10.2018
Сообщения
118
Благодарностей
1
Баллы
16
Что тогда не вытаскивает этот код?
Это не ко мне вопрос. ) Ваша команда показывает те переменные, которые видны по нажатию F2.

Вообще, логично бы было получать список таких переменных обращаясь к профилю, т.е. что-то типа
Код:
project.profile.variables
Налицо задел для разрабов.
 

Ivan_B_1

Client
Регистрация
12.07.2019
Сообщения
74
Благодарностей
12
Баллы
8
Очень хочется иметь возможность вызывать переменные профиля как-нибудь через c#
 

Skrine

Client
Регистрация
05.02.2020
Сообщения
87
Благодарностей
17
Баллы
8
Добавили функцию, если кому надо, вызываются так
return project.Profile.Login;
return project.Profile.Name + project.Profile.Surname;
Типо того
 
Последнее редактирование:

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