Имя: Пароль:
1C
1C 7.7
v7: где внешняя обработка хранит сохраненные значения
0 dbehterev
 
07.02.12
17:26
Всем привет. У клиента сменился путь к базе (грубо говоря, буква в пути), соответственно у ряда пользователей слетели сохраненные значения во внешних отчетах (в частности, фильтры МФ). Возможно где-то "подглядеть" и переправить. Понимаю, что где-то в реестре, а где?
Спасибо.
1 GLazNik
 
07.02.12
17:28
Это вроде хранится в каталоге пользователя
2 dbehterev
 
07.02.12
17:28
(1) понял, спасибо. Иду копать.
3 dbehterev
 
07.02.12
17:36
где-то еще хранится соответствии полного имени файла обработки и настроек. В каталоге пользователя нашел файлы типа *.lst, вроде похоже на сохраненные данные обработки, но полного пути к обработке в нем не содержится. Т.е. не понятно, каким образом механизм решает, что эти сохраненные данные "не для меня".
4 dbehterev
 
07.02.12
17:38
народ, кто знает, выручайте
5 iov
 
07.02.12
17:56
6 iov
 
07.02.12
17:56
не давай голодному рыбу дай удочку.
7 dbehterev
 
07.02.12
18:59
(5) все хорошо, но хочется универсального решения. Настройка для каждой обработки хранится в файле lst в каталоге пользователя и имеет уникальное имя в зависимости от пути и имени обработки. Универсальное решение тут:
Перенос настроек отчетов между пользователями
Вопрос закрыт.
8 Vladal
 
07.02.12
19:14
(6) Неправильно. Дай ему удочки в кредит.
9 Vladal
 
07.02.12
19:15
А ты про какие значения говоришь?
Которые по кнопке формы "Сохранить значение"?
Это?
10 Vladal
 
07.02.12
19:19
Если ты про системные кнопки спрашиваешь, то для каждой обработки/отчета в папке пользователя создаётся файл вида rhd1b40d.lst, который и скопируй в папку с новой базой. Но при этом можешь словить ошибки в заполнении.

Правильно бы делать сохранение настроек программно, а не доверить системе. Тогда можешь и контролировать процесс.
11 andrewks
 
07.02.12
19:31
(10) тут, как грится, есть один нюанс: если сменился ПОЛНЫЙ путь к внешней обработке/отчёту (т.е., например, тупо перекинули файл отчёта из одной папки в другую), то чексум слетает, и настройки, соответственно, тоже. так вот, в сабже именно об этом
12 dbehterev
 
07.02.12
19:36
(9) да, по кнопке Сохранить значение во внешних обработках.
(10) неверно, т.к. имя рассчитывается в зависимости от пути к обработке.
Сейчас получил обработкой (от Альфа) имя файла настроек, оно не совпадает ни с одной, что есть в папке пользователя.
Похоже, проще воспользоваться Filemon'ом от SysInternals, как говорили выше.
13 andrewks
 
07.02.12
19:37
(12)
"Сейчас получил обработкой (от Альфа) имя файла настроек"
"У клиента сменился путь к базе"

усёк?
14 dbehterev
 
07.02.12
19:40
(12) да, тупо расчет чексуммы не катит. Файлмон должен помочь. Но это как-то уж совсем "влоб".
15 dbehterev
 
07.02.12
19:43
блин, "обычные" пользователи на терминальном сервере, чтобы понять, куда смотрит 1С при считывании настроек внешних отчетов, надо дать еще привелегию Debug Processes.
16 dbehterev
 
07.02.12
20:14
в-общем, метод работает, но очень неудобен, т.к.:
1) нужно зайти нужным пользователем в старую базу, запустить внешнюю обработку; отловить файлмоном имя файла с настройками
2) то-же самое, что и в первом пункте, только заходим уже в базу по-новому пути, вносим любые настройки в форме обработки, жмем кнопку сохранить настройку. Файлмоном в этом случае не удалось отловить новое имя файла с настройками, поэтому просто смотрим в каталог пользователя на lst со свежей датой изменения
3) копируем файл с шага 1 в файл с именем из шага 2
17 dbehterev
 
07.02.12
20:15
Если у кого есть более универсальный способ, дайте знать.
18 Vladal
 
08.02.12
10:52
>> Если у кого есть более универсальный способ, дайте знать.

Их есть у меня!

Сохраняешь все настройки в список значений или таблицу значений, потом методом ЗначениеВФайл сохраняешь, а во второй базе методом ЗначениеИЗФайла загружаешь.

Это если у тебя справочники идентичны. Иначе будет каша - Сохранили одно, а загрузили другое.
19 Vladal
 
08.02.12
10:53
(15) Не надо никаких дебагов давать. Просто посмотри дату изенения файла и всё. Или я ошибаюсь?
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой