- Регистрация
- 04.04.2015
- Сообщения
- 1 763
- Благодарностей
- 1 391
- Баллы
- 113
---------
Уважаемые товарищи разработчики/модераторы ... ПРОБЛЕМА решена, ЭТО НЕ БАГ, а мое недопонимание механизма работы.
---------
Писал уже в ветке с ананосом 5.10.1.0, но дублирую здесь, так как тут тема более подходящая
Обнаружился такой вот баг.
Объясню на своем примере:
Есть список с названием promo.
Список promo с помощью кубика операции со списками привязывается к файлу.
Далее выполняем кубик C# который в цикле из привязанного к файлу списка N раз берет первый элемент (индекс 0), удаляет этот элемент, кладет его в конец это го же списка ... ну и так же добавляет этот элемент в еще один список promo_part (но это уже к делу не относится). Все работает как надо. Если тыркнуть по списку в панеле и нажать там просмотр содержимого, то все как и должно быть, как задумано ... НО в файле к которому привязан список promo никаких изменений не происходит ... т.е шаблон отработал, а файл так и остался в первоначальном виде, хотя по идее ведь должен был измениться т.к привязан.
Уважаемые товарищи разработчики/модераторы ... ПРОБЛЕМА решена, ЭТО НЕ БАГ, а мое недопонимание механизма работы.
---------
Писал уже в ветке с ананосом 5.10.1.0, но дублирую здесь, так как тут тема более подходящая
Обнаружился такой вот баг.
Объясню на своем примере:
Есть список с названием promo.
Список promo с помощью кубика операции со списками привязывается к файлу.
Далее выполняем кубик C# который в цикле из привязанного к файлу списка N раз берет первый элемент (индекс 0), удаляет этот элемент, кладет его в конец это го же списка ... ну и так же добавляет этот элемент в еще один список promo_part (но это уже к делу не относится). Все работает как надо. Если тыркнуть по списку в панеле и нажать там просмотр содержимого, то все как и должно быть, как задумано ... НО в файле к которому привязан список promo никаких изменений не происходит ... т.е шаблон отработал, а файл так и остался в первоначальном виде, хотя по идее ведь должен был измениться т.к привязан.
Код:
var list1 = project.Lists["promo"];
var list2 = project.Lists["promo_part"];
int n = int.Parse(project.Variables["promo_count"].Value);
if ( list1.Count > 0 && n > 0 ){
lock(SyncObjects.ListSyncer){
for(int i=0; i<n; i++){
var el = list1[0]; // берем 1-й элемент списка promo
list1.RemoveAt(0); // удаляем первый элемент списка promo
list1.Add(el); // кладем взятый первый элемент в конец списка promo
list2.Add(el); // кладем взятый первый элемент в список promo_part
}
}
}
Последнее редактирование: