Имя: Пароль:
1C
1С v8
Настройки отчета на СКД...
0 mua thu
 
20.11.13
15:12
Есть отчет Остатки на СКД, в котором есть несколько вариантов пользовательских настроек, скажем:
Настройка 1 - выводить поля Номенклатура,Артикул,Колво остаток
Настройка 2 - выводить поля Номенклатура,Колво остаток,Свободный остаток  

Я в отчете могу выбирать нужную настройку и отчет формируетя в соответствие настройке. Но если я его формирую программно и указываю настройку 1 он формируется нормально, если меняю на настройку 2 то выводит опять настройку 1...

Еще: я ради эксперимента изменил настройку 1: оставил там только поле Номенклатура, сохранил.  Отчет с настройкой 1 формируется правильно а вот когда формирую его программно то он видит старую настройку 1... Вот. По идее настройки лежат в справочнике Сохраненные настройки, там они есть, но ... не могу понять что делать чтобы при программном формировании он видел новый вариант настройки?

Спасибо!
1 mua thu
 
20.11.13
15:18
Программно формирую отчет так:
ОтчетОбъект = Отчеты.ДанныеОТоварахДляСайта.Создать();
    СохраненнаяНастройка = Справочники.СохраненныеНастройки.НайтиПоНаименованию("Настройка 1");
    Если Не СохраненнаяНастройка.Пустая() Тогда
        АдресСхемыКомпоновкиДанных = ПоместитьВоВременноеХранилище(ОтчетОбъект.СхемаКомпоновкиДанных,Новый УникальныйИдентификатор);
        СтруктураНастроек = СохраненнаяНастройка.ХранилищеНастроек.Получить();
        Если Не СтруктураНастроек = Неопределено Тогда
            ОтчетОбъект.КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемыКомпоновкиДанных));
            ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(СтруктураНастроек.НастройкиКомпоновщика);
            ЗаполнитьЗначенияСвойств(ОтчетОбъект, СтруктураНастроек);
        Иначе
            ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(ОтчетОбъект.СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
        КонецЕсли;
    Иначе
        ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(ОтчетОбъект.СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
    КонецЕсли;
    ОтчетОбъект.КомпоновщикНастроек.Восстановить();
    ТабДок = Новый ТабличныйДокумент;
    ОтчетОбъект.СкомпоноватьРезультат(ТабДок);
    ТабДок.ОтображатьЗаголовки = Ложь;
    ТабДок.Показать();
2 mua thu
 
20.11.13
16:19
Еще раз: Спасибо! =)
3 acsent
 
20.11.13
16:27
где в коде упоминается настройки1 и настройки2? вижу только по умолчанию
4 mua thu
 
20.11.13
16:53
Сорри так вроде ж получаю элемент справочника "Настройка 1" и
  СохраненнаяНастройка = Справочники.СохраненныеНастройки.НайтиПоНаименованию("Настройка 1");

  СтруктураНастроек = СохраненнаяНастройка.ХранилищеНастроек.Получить();
  
Именно для этого ж элемента вроде получаю настройки из хранилища? Если не так - прошу подсказать ибо с СКД особо не сталкивался..
5 samozvanec
 
20.11.13
17:08
так ты про вариант или про сохраненные настройки, которые пользовательские?
6 mua thu
 
20.11.13
17:12
Про сохраненные пользовательские настройки.
7 samozvanec
 
20.11.13
17:23
а что насчет (3) ?
8 samozvanec
 
20.11.13
17:24
+(7) точнее где ты получаешь настройку2?
9 samozvanec
 
20.11.13
17:25
+ как они хранятся и пишутся? в справочнике одна настройка с таким наименованием?
10 samozvanec
 
20.11.13
17:27
+ зачем восстанавливаешь?
11 mua thu
 
20.11.13
17:27
в смысле я в начале получаю настройку 1, потом меняю название

СохраненнаяНастройка = Справочники.СохраненныеНастройки.НайтиПоНаименованию("Настройка 2");

и получаю настройку 2.

Прикол в том что я изменил настройку 1 и когда интерактивно выполняю отчет с настройкой 1 то отчет правильный получается с последними изменениями, а вот программно обращаюсь к настройке 1 - почему-то формируется отчет со старой версией настройки 1...
12 mua thu
 
20.11.13
17:28
Да в справочнике точно одна настройка с таким наименованием
13 mua thu
 
20.11.13
17:29
Ну сохраняю так - на форме отчета нужную настройку - Сохрапнить как и выбираю имя настройки - 1 например.
14 mua thu
 
20.11.13
17:32
В справочник Сохраненные настройки
15 samozvanec
 
20.11.13
17:37
в отладчике настройка старая или новая?
16 mua thu
 
20.11.13
17:40
а вопрос - я отладчиком смотрю но тока не знаю где смотреть не вижу сами поля настройки..)))
17 mua thu
 
20.11.13
17:44
Смотрю СохраненнаяНастройка
18 mua thu
 
20.11.13
17:46
Здесь вроде все возможные поля выбора без фильтра:  

ОтчетОбъект.КомпоновщикНастроек.Настройки.ДоступныеПоляВыбора.Элементы
19 samozvanec
 
20.11.13
17:46
ну Выбор - твои выбранные поля, отборы - отборы и т.д.
20 samozvanec
 
20.11.13
17:47
настройки чем-нибудь отличаются?)
21 mua thu
 
20.11.13
17:49
Здесь вижу тоже все абсолютно поля (все возможные для выбора) без Настройки 1:  ОтчетОбъект.КомпоновщикНастроек.Настройки.Выбор.Элементы
22 mua thu
 
20.11.13
17:51
Ну ок еще раз внимательно проверю отличие может чего найду..
Спасибо большое! =)
23 samozvanec
 
20.11.13
17:55
(22) по сути либо ты не ту получаешь, либо не ту суешь, либо после восстановления они одинаковы(совпадение канеш, но чем черт не шутит), либо кешится настройка неведомым образом, что есть бред. удачи)
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.