- Guesto.ru
- Guesto notes
- 1С. Очистка произвольных настроек из хранилища системных настроек
- Задача
- Решение
- Комментарии 1
- Как очистить кэш 1С
- Кеш 1С
- Первый способ — почистить кэша 1С вручную
- Второй способ очистки временных файлов 1С — удаление базы из списка
- Третий способ — параметр ClearCache
- Сброс настроек текущего пользователя
Guesto.ru
Guesto notes
1С. Очистка произвольных настроек из хранилища системных настроек
Задача
В ИБ с конфигурацией УТ 11 у всех пользователей очистить настройки формы элемента справочника «Номенклатура».
Решение
В конфигурациях на БСП есть утилита копирования/очистки настроек пользователя, но в некоторых ситуациях, обработка очищает не все настройки.
Настройки хранятся в хранилище системных настроек, получим выборку и в цикле будем сообщать значения настроек.
В окне сообщение получим примерный текст:
Проанализировав текст дописываем в наш код проверку на ключа объекта и при необходимости будем удалять настройку
Комментарии 1
У процедуры Удалить() хранилища системных настроек есть 3 обязательных параметра, но в эти параметры можно передать значение Неопределено. В этом случае будут удалены все данные. Код по удалению настроек из последнего листинга можно заменить строкой ХранилищеСистемныхНастроек.Удалить(Неопределено, Неопределено, Неопределено);
Как очистить кэш 1С
Очень часто у пользователей появляются странные ошибки: у одного пользователя программа работает правильно, у другого, рядом, на другом компьютере, совершенно иначе. Зачастую после долгих разбирательств оказывается, что причина таких «глюков» в 1С 8 — кэш.
Ниже расскажу, что такое кэш 1С и как его почистить.
Кеш 1С
Кеширивание — процесс создания буфера часто используемой и, как правило, статичной информации. Кеширование используется для ускорения работы программы, в частности, в 1С на компьютер пользователя подгружаются файлы конфигурации, чтобы не запрашивать их с сервера при каждом обращении.
Однако очень часто платформа 1С неправильно отрабатывает кеширование конфигурации, и в результате мы получаем неадекватное поведение конфигурации.
Причины некорректного поведения могут быть разные: динамическое обновление конфигурации, программные или аппаратные сбои.
Первый способ — почистить кэша 1С вручную
Для решения проблем и «глюков» 1С обычно помогает очистка кеша платформы 1C 8.3.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Получите 267 видеоуроков по 1С бесплатно:
Делается это следующим образом:
Найти каталог, где хранятся временные файлы 1С, их можно увидеть в меню настройки в списке ИБ:
C:\Documents and Settings\username\Application Data\1C\1Cv82\tmplts\1c
Папки с кэшем расположены по адресу
C:\Documents and Settings\username\Application Data\1C\1Cv82\
*где username — имя пользователя системы, а папка 1Cv82 может отличаться в зависимости от версии платформы 1С
Зайдя туда, мы находим множество (количество папок равно количеству конфигураций) интересных папок:
Все выделенные каталоги являются кешем БД 1С, их можно смело удалять. Перед удалением обязательно необходимо выйти из ИБ.
Если Вам не хочется искать, где расположены файлы, Вы можете воспользоваться специальной программой (бат-файл), которая очищает папки с временными файлами — скачать ОчисткаКеша.bat. Не забывайте, что Вы пользуетесь ими на свой страх и риск. Они содержат следующую команду:
rmdir «%AppData%\1C\1Cv8» /S /Q
rmdir «%LOCALAPPDATA%\1C\1Cv8» /S /Q
Второй способ очистки временных файлов 1С — удаление базы из списка
Второй способ более простой, однако он не совсем правильный. Для очистки достаточно удалить эту конфигурацию и создать новую с тем же путем к ИБ.
Вследствие этого старая папка с кэшем «отвяжется» от этой ИБ, и создастся новый каталог.
Можно делать и так, кеш очищается, однако временные файлы так и остаются на жестком диске.
Третий способ — параметр ClearCache
Рекомендую использовать, если глюки из-за наличия временных файлов появляются постоянно. Однако данный способ снижает производительность системы. Подходит только для тонкого клиента.
Необходимо в дополнительных параметрах запуска (в списке баз кнопка Изменить, последняя закладка) прописать команду /ClearCache. Пример использования:
Видео по очистке кэша в программах 1С:
Если же «глюки» в 1С не пропали после очистки кэша, и 1С работает не так, как хотелось бы, Вы можете обратиться к квалифицированному программисту 1С.
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
Другие статьи по 1С:
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
Поддержите нас, расскажите друзьям!
ClearCache ключ работает только для чистки кэша тонкого клиента. Некоторые особо квалифицированные считают ClearCache программой! и требуют ее скачать .
очень интересная и полезная статья мне понравилось кое какие полезные моменты я узнал для себя спасибо за статью
А если в BAT-файл первой строчкой поставить копирование папок Ext.. и tmplts а так же профилей по маске *.pfl в какую-нибудь корневую временную папку и после выполнения удаления — возврат из временной папки обратно — это более безопасный вариант?
If Exist %USERPROFILE%\AppData\Roaming\1C\1Cv82 (
rem Удаляем все файлы
Del /F /Q %USERPROFILE%\AppData\Roaming\1C\1Cv82\*.*
Del /F /Q %USERPROFILE%\AppData\Local\1C\1Cv82\*.*
rem Удаляем все каталоги
for /d %%i in («%USERPROFILE%\AppData\Roaming\1C\1Cv82\*») do rmdir /s /q «%%i»
for /d %%i in («%USERPROFILE%\AppData\Local\1C\1Cv82\*») do rmdir /s /q «%%i»
)
Спасибо за ценнейший комментарий :))
Кстати, ищем авторов для новых статей!)))
for /d %i in («%USERPROFILE%\AppData\Roaming\1C\1cv8», «%USERPROFILE%\AppData\Local\1C\1cv8») do (pushd %i & rd . /s /q & popd)
Спасибо. Пригодился способ 3. А главное работает.
Спасибо. Все получилось по второму способу.
C моей точки зрения, удалить конфигурацию и создать с тем же путем — занимает 2 минуты максимум, доступен пользователю с любой подготовкой. Именно поэтому должен быть первым.
Второй способ, поиски путей, папок с кэшем, выборочное удаление — доступно не всем. Плюс в статье не сказано что в пути «C:\Documents and Settings\USERNAME\Application Data\1C\1Cv82\» компонент «USERNAME» может быть другим. Предлагаю поправить.
Спасибо за замечание, добавил 🙂
В УТ 11 в кэш запихали настройки оборудования и если удалять папки вашим способом, то ни сканировать, ни печатать чеки и пр. вы не сможете пока не настроите их заново в торговом оборудовании…
Можно уточнить откуда информация и для какой версии УТ11 это актуально?
Из личного опыта: настройка подключаемого оборудования привязывается к рабочему месту (связка [компьютер]+[пользователь компьютера]), а к пользователю 1С не имеет никакого отношения. На кассе работают
10 кассиров, а торговое оборудование я настраивал только один раз (из под своей учётки 1С).
Забыл уточнить: настраивалось на УТ11.1 (11.1.9.55).
ОЧЕНЬ верное и полезное замечание !
Здравствуйте.
Подскажите, пожалуйста, подробнее последовательность действий по второму способу
«Второй способ более простой, однако он не совсем правильный. Для очистки достаточно удалить эту конфигурацию и создать новую с тем же путем к ИБ»
А как-нибудь можно параметр ClearCache записать в файл списка информационных баз v8i?
Сам нашел посмотрев в %AppData%\1C\1CEStart\ibases.v8i
Нужно прописать
AdditionalParameters=/ClearCache
Огромное спасибо. Способ 1 очень пригодился.
Легче всего найти кэш через поиск файлов(Ctrl+F).
В настройках поиска ставим искать в скрытых и системных файлах и ставим на поиск файл: 1cv8.pfl.
Способ 1, шаг 1… У меня путь к шаблонам такой:
c:\=1с\=шаблоны\
А под GNU/Linux вообще другой.
То, что кэш там рядом не валялся — очевидно. Не поленитесь, напишите нормально, где и как его найти.
Попробуйте найти так: системный диск(где Windows установлена):\Пользователи (или Users)\Нужный пользователь\AppData\Local\1c
А как очистить КЭШ для самого вёб-сервера ?
Ведь в базу за данными лезет именно он — и «залипнуть» может и в этом моменте.
У нас к примеру сейчас постоянно «версия программы обновлена», при том что всё обновлено и все возможные кешы почистили и службу презапустили.
Для ускорения работы 1С сделайте RAM-диск (диск в системе, который на самом деле находится в оперативной памяти) и присвойте букву R
В автозапуск всем пользователям поставить следующий скрипт ram_disk.bat
rem Удаляет кэш на RAM диске
rd /s /q «R:\%USERNAME%»
rem Создаем каталоги на RAM-диске и связываем их с папками пользователя
rem Работает для всех версий 1С ред 8
mkdir R:\%USERNAME%\Local\1C
rd /s /q «C:\Users\%USERNAME%\AppData\Local\1C»
mklink /j «C:\Users\%USERNAME%\AppData\Local\1C» «R:\%USERNAME%\Local\1C»
rem в Roaming находится список баз пользователя, поэтому удаляем только эти подпапки и создаем новые на RAM диске
mkdir R:\%USERNAME%\Roaming\1C\1cv8
rd /s /q «C:\Users\%USERNAME%\AppData\Roaming\1C\1cv8»
mklink /j «C:\Users\%USERNAME%\AppData\Roaming\1C\1cv8» «R:\%USERNAME%\Roaming\1C\1cv8»
mkdir R:\%USERNAME%\Roaming\1C\1cv81
rd /s /q «C:\Users\%USERNAME%\AppData\Roaming\1C\1cv81»
mklink /j «C:\Users\%USERNAME%\AppData\Roaming\1C\1cv81» «R:\%USERNAME%\Roaming\1C\1cv81»
mkdir R:\%USERNAME%\Roaming\1C\1cv82
rd /s /q «C:\Users\%USERNAME%\AppData\Roaming\1C\1cv82»
mklink /j «C:\Users\%USERNAME%\AppData\Roaming\1C\1cv82» «R:\%USERNAME%\Roaming\1C\1cv82»
Сброс настроек текущего пользователя
Добрый день!
Пишу простенькую обработку для сброса настроек пользователя 1С 8.3. По кнопке на форме следующий код:
Выводить документы в зависимости от текущего пользователя
Доброго времени суток! Проблема вот в чем. Существует список документов,созданных разными.
Вывод на макет отчета текущего пользователя
Здравствуйте. Платформа 1С: Предприятие 8.3. Управляемая форма. Подскажите в таком вопросе.
Отображение текущего пользователя в отчётах и печатных формах документа
Добрый день, подскажите , как отобразить в отчёте а так же в печатной форме документа, текущего.
Определение текущего пользователя
Версия серверная, пишу в ПриНачалеРаботыСистемы() ТекушийПользователь =.
Глобальный контекст (Global context)
ОчиститьНастройкиПользователя (ClearUserSettings)
Вариант синтаксиса: По пользователю информационной базы
Тип: ПользовательИнформационнойБазы.
Пользователь информационной базы, для которого выполняется очистка настроек.
Вариант синтаксиса: По имени
Тип: Строка.
Имя пользователя информационной базы.
Описание:
Очищает настройки пользователя, принадлежащие информационной базе и конкретному пользователю в ней.
Толстый клиент.
Примечание:
Также удаляются настройки пользователя из системного хранилища настроек.
Пример:
Переписал следующим образом
Yanush, с вашим кодом тоже ошибки
Текущего пользователя определяю теперь так:
Затем отрабатывает событие по кнопке
и все равно выдает ошибку
emkaa, даже во внешнюю обработка ради теста закинул — все работает.
Всего лишь одна функция. Никаких ошибок. Запускать приложение нужно в режиме толстого клиента.
Что вы делаете не так я хз.
Yanush, спасибо! Действительно работает.
Только вот эта процедура как оказалось, не очищается настройки внешнего вида справочников. Например при выборе в справочнике Сотрудники сортировки по группам, она сохраняется после действия этой процедуры
Yanush, изначальная проблема вот в чем. Захожу в справочник «Сотрудники» -> Вид списка -> при установке вида «по группам», 1С вылетает, и при повторной попытке зайти в справочник «Сотрудники» 1С так же вылетает, т.к. вид списка сохранился — «по группам». По умолчанию вид списка должен быть =»Все сотрудники».
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.
Изменение названия конфигурации на текущего пользователя
Добрый день, уважаемые форумчане! Возник следующий вопрос: как сделать так, чтобы в шапке, вместо.
Запрос с условием сравнения значений перечисления с именем текущего пользователя
1С:Предприятие 8.3 (8.3.6.1999). Управляемые формы. Здравствуйте. Есть справочник «Сотрудники» с.
Сброс настроек
Я уже на изводе,не могу создать даже программу,которая выводит hello word в VS2008 c++.Выдает.
Сброс настроек
Народ такая проблема сбрасываются настройке на роутере TP-Link TD-W8101G подключён по кабелю к ПК и.
Сброс до заводских настроек
После сброса Windows до заводских настроек что будет с программами и файлами которые на дисках? Они.
Сброс настроек приложения
возможно ли это, без файла настроек? чтобы возвратиться к тем настройкам прораммы, если это ее.