Ошибки
- Получение данных из нескольких источников данных недопустимо
- Пустой буфер при использовании лhtmlfile.parentWindow.clipboardData.getData(“text”)
- Невозможно применить фиксированные настройки. Пересекаются элементы отбора.
- Недостаточно памяти для записи файла формата Base64
- Ошибка “….database disk image is malformed…PRAGMA journal_mode = OFF…”
- Debug protocol mismatch. Server protocol: http, application protocol: tсp
- Отключение предупреждения при открытии внешних обработок “Рекомендуется обращать внимание на источник, из которого был получен данный файл”
- Ошибка SDBL: Ожидается простое наименование таблицы или поля (pos=82)
- Ошибка “Неправильный запрос” в WEB интерфейсе
- Ошибка формата потока (при открытии внешней обработки 1С)
- Ошибка получения параметров информационной базы.
- Ошибка: Значение “00000X” поля “Код” не уникально
- Ошибка: При обновлении данных после последней реструктуризации произошла критическая ошибка
- Ошибка при попытке помещения объекта в хранилище конфигурации. по причине: Превышен максимально допустимый размер внутреннего файла ‘XXX//1cv8ddb.1CD’
- Приложению Word не удалось прочитать документ. Возможно, он поврежден
- Ошибка вызова сервиса лицензирования: Не найдено ни одного сервера с размещенным сервисом serviceName=LicenseService
- Недопустимая строка с указанием класса V8.Application
- Пользователь ИБ не идентифицирован
Получение данных из нескольких источников данных недопустимо
При помещении выборки из внешнего источника данных во временную таблицу появляется ошибка “Получение данных из нескольких источников данных недопустимо”
Решение: необходимо указывать полный путь к этой временной таблице на источнике данных
Пример:
ВЫБРАТЬ Выборка.Pole1
ПОМЕСТИТЬ ВнешнийИсточникДанных.ИсточникДанных1.ВременнаяТаблица.ИмяВременнойТаблицы
ИЗ
ВнешнийИсточникДанных.ИсточникДанных1.Таблица.ИмяТаблицыВнешнегоИсточника КАК Выборка
Пустой буфер при использовании лhtmlfile.parentWindow.clipboardData.getData(“text”)
Проблема:
Функция parentWindow.clipboardData.getData(“text”) COM объекта “htmlfile” возвращает пустое значение.
лhtmlfile = Новый COMОбъект("htmlfile"); лСтрокаБуфера = лhtmlfile.parentWindow.clipboardData.getData("text");
Решение:
Изменить настройку IE allow programmatic clipboard access = Enable:
Сервис (Tools) – Свойства браузера (Internet options) – Безопасность (Security)
Невозможно применить фиксированные настройки. Пересекаются элементы отбора.
Полный текст ошибки:
Параметры Отбора, Сортировки, Группировки или список отображаемых полей заданы неверно. по причине: Невозможно применить фиксированные настройки. Пересекаются элементы отбора.
Воспроизведение ошибки
Ошибка появляется если в какой либо форме списка или выборка указать отбор, а после форму закрыть. При следующем открытии формы получим сообщение об ошибке.
Причина
Причина в использовании новой технологии в еще не подготовленной конфигурации, а именно свойство динамического списка «АвтоматическоеСохранениеПользовательскихНастроек».
Решение
Два варианта решения данной проблемы:
1. Необходимо очистить сохраненные настройки пользователя. Пример для УТ 11.1: Переходим в меню «Администрирование — Настройки пользователей и прав — Очистка настроек» в появившейся форме выбираем пользователя(ей) и чистим. Такой вариант даст разовый результат, если пользователь снова поставит отбор, то получим такую же ошибку.
UPD Иногда типовая обработка не очищает полностью настройки пользователя, тогда можно их удалить самостоятельно (см. ниже “Очистка произвольных настроек из хранилища системных настроек”)
2. В форме списка или выбора элемента необходимо зайти в свойства динамического списка и свойству «АвтоматическоеСохранениеПользовательскихНастроек» установить значение «Ложь».
Очистка произвольных настроек из хранилища системных настроек
Задача
В ИБ с конфигурацией УТ 11 у всех пользователей очистить настройки формы элемента справочника «Номенклатура».
Решение
В конфигурациях на БСП есть утилита копирования/очистки настроек пользователя, но в некоторых ситуациях, обработка очищает не все настройки.
Настройки хранятся в хранилище системных настроек, получим выборку и в цикле будем сообщать значения настроек.
Выборка = ХранилищеСистемныхНастроек.Выбрать(); Пока Выборка.Следующий() Цикл ТекстСообщения = "КлючНастроек " + Выборка.КлючНастроек + "; КлючОбъекта " + Выборка.КлючОбъекта + "; Пользователь " + Выборка.Пользователь + "; Представление" + Выборка.Представление; ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); КонецЦикла;
В окне сообщение получим примерный текст:
КлючНастроек ; КлючОбъекта Справочник.ВидыНоменклатуры.ФормаСписка/Такси/НастройкиОкна; Пользователь Пользователь1; Представление КлючНастроек ; КлючОбъекта Справочник.ВидыНоменклатуры.ФормаЭлемента/Такси/НастройкиОкна; Пользователь Пользователь1; Представление КлючНастроек ; КлючОбъекта Справочник.ВидыНоменклатуры.ФормаВыбораГруппы/Такси/НастройкиОкна; Пользователь Пользователь1; Представление КлючНастроек ; КлючОбъекта Справочник.ВидыНоменклатуры.ФормаВыбора/Такси/НастройкиОкна; Пользователь Пользователь1; Представление КлючНастроек ; КлючОбъекта Справочник.Номенклатура.ФормаСписка/Такси/НастройкиОкна; Пользователь Пользователь1; Представление КлючНастроек ; КлючОбъекта Справочник.Номенклатура.ФормаЭлемента/Такси/НастройкиОкна; Пользователь Пользователь1; Представление КлючНастроек ; КлючОбъекта Справочник.Номенклатура.ФормаВыбораГруппы/Такси/НастройкиОкна; Пользователь Пользователь1; Представление КлючНастроек ; КлючОбъекта Справочник.Номенклатура.ФормаВыбора/Такси/НастройкиОкна; Пользователь Пользователь1; Представление
Проанализировав текст дописываем в наш код проверку на ключа объекта и при необходимости будем удалять настройку
Выборка = ХранилищеСистемныхНастроек.Выбрать(); Пока Выборка.Следующий() Цикл Если Найти(Выборка.КлючОбъекта, "Справочник.Номенклатура.Форма.ФормаЭлемента") <> 0 Тогда ТекстСообщения = "КлючНастроек " + Выборка.КлючНастроек + "; КлючОбъекта " + Выборка.КлючОбъекта + "; Пользователь " + Выборка.Пользователь + "; Представление" + Выборка.Представление; ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); ХранилищеСистемныхНастроек.Удалить(Выборка.КлючОбъекта, Выборка.КлючНастроек, Выборка.Пользователь); КонецЕсли; КонецЦикла;
P.S. У процедуры Удалить() хранилища системных настроек есть 3 обязательных параметра, но в эти параметры можно передать значение Неопределено. В этом случае будут удалены все данные. Код по удалению настроек из последнего листинга можно заменить строкой ХранилищеСистемныхНастроек.Удалить(Неопределено, Неопределено, Неопределено);
Информация с ресурса: http://guesto.ru/
P.S. Обработка для редактирования настроек “Стандартное хранилище настроек (управляемые формы)“
Недостаточно памяти для записи файла формата Base64
Варианты решения(обхода) ошибки:
1. Перезапуск сервера(сервиса) приложений 1С
2. Отключение версионирования объекта, вызывающего данную ошибку
3. Прописывание базы на другом сервере приложений 1С
Ошибка “….database disk image is malformed…PRAGMA journal_mode = OFF…”
Пример ошибки:
16:29.504002-0,EXCP,0,process=rmngr,Exception=EventLogException,Descr=’sqlite3_exec failed: database disk image is malformed
db: C:\Program Files\1cv8\srvinfo\reg_1541\50b80b42-24a3-4f33-8508-5672acb80621\1Cv8Log\1Cv8.lgd sql: PRAGMA journal_mode = OFF’
Причина
Такая ошибка означает, что файл журнала регистрации, указанный в ошибке, поврежден.
Решение
1. Копируем файл с журналом регистрации !!!
2. Скачиваем утилиту командной строки sqlite
3. В командной строке выполняем:
sqlite3 ИмяКопииЖурналаРегистрации.lgd .dump >> backup.sql
4. Открываем файл backup.sql для редактирования (большой файл у меня получилось открыть в FAR).
4.1. Если самой последней строкой является “ROLLBACK;” – заменяем ее на “COMMIT;” и сохраняем файл.
5. В командной строке выполняем:
sqlite3 ИмяКопииЖурналаРегистрации.lgd < backup.sql
Источник
http://its.1c.ru/db/metod8dev#content:5867:hdoc
Debug protocol mismatch. Server protocol: http, application protocol: tсp
Ошибка при отладке WEB клиента 1С.
Решение: Необходимо указать требуемый протокол в строке браузера:
http://ServerName/BaseName/?debug=http
Отключение предупреждения при открытии внешних обработок “Рекомендуется обращать внимание на источник, из которого был получен данный файл”
Предупреждение при открытии внешний обработок(отчетов):
“…
Рекомендуется обращать внимание на источник, из которого был получен данный файл. Если с источником нет договоренности о разработке дополнительных модулей, или есть сомнения в содержимом файла, то его не рекомендуется открывать, поскольку это может нанести вред компьютеру и данным.
Разрешить подключать исполнимые бинарные файлы для данного модуля?
…”
Варианты отключения:
Источники: ИТС 7.10.2, ИТС 3.13
В ряде случае необходимо отключить механизм защиты от опасных действий. Для этого можно воспользоваться следующими возможностями:
- Выключить флажок Защита от опасных действий(ЗащитаОтОпасныхДействий) в свойствах конкретного пользователя. Это отключит защиту для этого пользователя. Подробнее см. здесь.
- Воспользоваться параметром ЗащитаОтОпасныхДействийметодов Подключить()менеджеров внешних обработок (отчетов). В этом случае имеется возможность загрузить внешнюю обработку (отчет) без запросов пользователя.
- Воспользоваться свойством ЗащитаОтОпасныхДействийобъекта РасширениеКонфигурацииперед вызовом метода Записать() этого объекта.
- Воспользоваться параметром DisableUnsafeActionProtectionфайла conf.cfg(более подробно см. здесь)
DisableUnsafeActionProtection
С помощью данного параметра предоставляется возможность отключить защиту от опасных действий для определенных информационных баз. Информационные базы определяются набором регулярных выражений, разделяемых символом «;». Если строка соединения с информационной базой будет удовлетворять какому-либо регулярному выражению, для такой информационной базы защита от опасных действий будет отключена.
Пример:
DisableUnsafeActionProtection=test_.*;stage_.*;
В этом случае механизм защиты от опасных действий будет отключаться для всех пользователей информационных баз, строки соединения которых удовлетворяют указанным маскам.
Отключение защиты от опасных действий выполняется по следующим правилам (в указанном порядке):
- Защита считается отключенной, если у текущего пользователя сброшен флажок Защита от опасных действий.
- Защита считается отключенной, если строка соединения с информационной базой удовлетворяет одному из шаблонов, указанных в параметре DisableUnsafeActionProtectionфайла conf.cfg.
- Если внешняя обработка (отчет) подключается с явным образом отключенной защитой с помощью параметра ЗащитаОтОпасныхДействий.
- Если защита явным образом отключена с помощью свойства расширения ЗащитаОтОпасныхДействий.
Ошибка SDBL: Ожидается простое наименование таблицы или поля (pos=82)
При открытии формы списка плана обмена в обычном приложении возникает ошибка:
Ошибка SDBL: Ожидается простое наименование таблицы или поля (pos=82)
Решение:
- установить режим совместимости(любой)
- запустить в управляемом режиме
- добавить соответствующую управляемую форму (не всегда помогает)
Ошибка “Неправильный запрос” в WEB интерфейсе
Источники:
- Ошибка “Неправильный запрос” через тонкий клиент (веб-сервер)
- Ошибка “Неправильный запрос” при работе с опубликованной на IIS 7 базой 1С:БП 3.0
- ИТС: 7.10.1. Internet Information Services
Ошибка
“Неправильный запрос”
“Внимание! Работа данного сеанса была прервана из другого окна или закладки веб-браузера….”
Решение:
Необходимо открыть диалог настройки параметров страниц ошибок:
Панель управления – Администрирование – Диспетчер служб IIS – <Конкретный сервер> – сайты – <Имя виртуального приложения> – Страницы ошибок
Изменить параметры…
В открывшемся диалоге следует установить значение Подробные сообщения об ошибках.
Затем нажать кнопку ОК.
Ошибка формата потока (при открытии внешней обработки 1С)
При сохранении внешней обработки 1С “вылетела” с ошибкой. После этого обработка перестала открываться.
Вариант решения:
- С помощью утилиты V8Unpack.exe распаковать файл с внешней обработкой: V8Unpack.exe -P file_name.epf dir_with_unpack_files
- Удалить файл versions нулевой длины
- Запаковать файл с помощью утилиты
V8Unpack.exe : V8Unpack.exe -B dir_with_unpack_files\ file_name_repaired.epf
Еще ссылки по теме: http://blog.1c-ei.ru/2008/12/blog-post_30.html
Ошибка получения параметров информационной базы.
Ошибка: При попытке посмотреть своцства базы данных в консол кластера серверов 1С возникает ошибка: "Ошибка при получении значения из базы данных. Возможной причиной является отсутствие установленного Microsoft SQL Server Native Client."
Данная ошибка появилась при установке новой версии 1С. При этом Native Client был установлен. Переустановка Native Client не помогла, чистка кэша, перезапуск сервера тоже.
Решение было найдено на одном форуме : необходимо просмотреть непустой список соединений проблемной базы или любой другой. После чего свойства показываются без ошибки.
Ошибка: Значение “00000X” поля “Код” не уникально
Пример ошибки: Ошибка при вызове метода контекста (Записать): НовыйЭлемент.Записать();
Решение:
Восстановление нумерации, например: ОбновитьНумерациюОбъектов(Метаданные.Документы.ИмяДокумента)
Ошибка: При обновлении данных после последней реструктуризации произошла критическая ошибка
Решение:
1. Создать копии таблиц Config и ConfigSave (на случай восстановления).
SELECT * INTO Config_copy FROM [Config]
;
SELECT * INTO ConfigSave_copy FROM [ConfigSave]
2. Удалить все записи из таблицы ConfigSave (содержит обновление)
DELETE FROM [ConfigSave]
3. Удалить три записи из таблицы Config (информация о незаконченном процессе обновления конфигурации)
DELETE FROM [Config] WHERE FileName IN ('commit','dbStruFinal','dynamicCommit')
Ошибка при попытке помещения объекта в хранилище конфигурации. по причине: Превышен максимально допустимый размер внутреннего файла ‘XXX//1cv8ddb.1CD’
Решение:
Изменение формата файла:
C:> CNVDBFL.EXE -с -f 8.3.8 -p 16k С:\<путь к файлу>\1Cv8.1CD
где 16k замените на нужный размер страницы файла (4k, 8k, 16k, 32k, или 64k) и укажите правильный путь к Вашей базе данных.
Приложению Word не удалось прочитать документ. Возможно, он поврежден
При выполнении кода
WordApp = Новый COMОбъект("Word.Application");
Док = WordApp.Documents.Add("%pathtofile%\test.docx");
Док = WordApp.Documents.Add("%pathtofile%\test.docx");
на сервере вылетает ошибка:
Произошла исключительная ситуация (Microsoft Word): Приложению Word не удалось прочитать документ. Возможно, он поврежден.
Попробуйте выполнить следующие действия:
* Откройте файл с помощью команды ”Открыть и восстановить”.
* Откройте файл с помощью конвертера резервных копий.

Решение:
Помогло создание 2-х каталогов и добавление полных прав на эти каталоги для пользвоателя, под которым стартует сервис 1С.
Каталоги:
C:\Windows\SysWOW64\config\systemprofile\Desktop\
и
C:\Windows\System32\config\systemprofile\Desktop\
Источник информации с более расширенной инструкцией: http://pyatilistnik.org/dcom-in-excel-application/ здесь
Ошибка вызова сервиса лицензирования: Не найдено ни одного сервера с размещенным сервисом serviceName=LicenseService
При запуске 1С вылетает ошибка с лицензиями:
Не найдена лицензия. Не обнаружен ключ защиты программы или полученная программная лицензия!
***
Поиск лицензии в сервисе лицензирования:
Ошибка вызова сервиса лицензирования:
Не найдено ни одного сервера с размещенным сервисом
serviceName=LicenseService;
При этом в менеджере кластеров видна такая картина:
Не указан порт, т.е. не поднялся менеджер на сервере, в котором настроен сервис лицензирования..
Причиной этого может быть следующее (это не полный список):
– на сервере лицензирования не запущен ragent
– имя сервера лицензирования не резолвится в IP адрес или резолвится неправильно
– неправильно указан порт агента сервера на сервисе лицензирования
– агент сервера лицензирования содержит список администраторов центрального сервера
– на сервере лицензирования не хватило портов из заданного диапазона
В нашем случае проблема была в израсходовании всех портов сервера лицензирования.
Для решения этой проблемы можно увеличить границу области портов в параметре -range, например, на 1691 (с типового значени 1591)
"C:\Program Files\1cv8\8.3.15.1700\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1691 -d "C:\Program Files\1cv8\srvinfo"
Плюс в настройках рабочего сервер с функциональностью сервиса лицензирования указать “нетиповые” диапазоны чтобы не было пересечений с типовым диапазоном портов
Недопустимая строка с указанием класса V8.Application
Источник здесь
Регистрация класса:
"C:\Program Files\1cv8\[версия платформы]\bin\1cv8.exe" /regserver
P.S. Если используется другой класс, например V8C, тогда необходимо указывать соответствующий exe файл, в данном случае 1cv8c.exe, плюс необходимо учитывать разрядность платформы.. т.е. использовать либо каталог “Program Files (x86)” либо “Program Files”
Пользователь ИБ не идентифицирован
Решения:
- Запуск до запроса логина / пароля на предыдущем релизе платформы (заходить в саму базе не нужно)
- Выполнение скрипта MS SQL:
USE ИмяБазыSQL UPDATE SchemaStorage SET Status = 100