1с ошибка при загрузке адресного классификатора

Нашла вот такую ошибку в зарегистрированных:

Ошибка 00-00273104
Код ошибки: 00-00273104
Код(ы) обращения: HL-109189
Статус: Отклонена Зарегистрирована: 27.01.2020
Продукт: «1С:Библиотека стандартных подсистем»

Описание:
При загрузке адресного классификатора появляется ошибка
{ОбщийМодуль.АдресныйКлассификаторСлужебный.Модуль(6722)}: Значение не является значением объектного типа (ФайлЧтения)

Причина неисправления:
Дубль 00-00196158
https://bugboard.v8.1c.ru/error/000063793

Ошибка 00-00196158
Код ошибки: 00-00196158
Статус: Планируется исправление в будущих версиях Зарегистрирована: 08.02.2019
Продукт: «1С:Библиотека стандартных подсистем»

Описание:
Из списка загружаемых регионов в форме Загрузка адресного классификатора (Администрирование – Интернет-поддержка и сервис – Загрузка адресного классификатора) исключены упраздненные субъекты РФ, т.к. они вошли в составы других регионов.

81 Корякский АО — входит в состав Камчатского края с 1 июля 2007 г.
82 Коми-Пермятский АО — входит в состав Пермского края с 1 декабря 2005 г.
84 Таймырский (Долгано-Ненецкий) АО — входит в состав Красноярского края с 1 января 2007 г.
85 Иркутская обл Усть-Ордынский Бурятский округ — входит в состав Иркутской обл. с 1 января 2008 г.
88 Эвенкийский АО — входит в состав Красноярского края с 1 января 2007 г.

Способ обхода:
Не загружать эти регионы, убрав признак загрузки в форме Загрузка адресного классификатора.
https://bugboard.v8.1c.ru/error/000050770

Код из программы , стр.381 обработки ОбновлениеКладр

л_ФайлыКлассификаторовДомов = НайтиФайлы(м_КаталогЗагрузки, «HOUSE**.DBF»);
Если л_ФайлыКлассификаторовДомов.Количество() = 0 Тогда
// КЛАДР
ИндексацияКЛАДР(Разделитель);
Иначе
// ФИАС
л_ФайлОбъектов = НайтиФайлы(м_КаталогЗагрузки, «ADDROBJ.DBF»);

Я не пойму, почему программа ищет файл DBF, давно все классификаторы или в XML или FI .

Как нужно обновлять классификатор?

Тема закрыта.

Загрузка адресного классификатора

Я
   irkinkas

07.09.17 — 08:33

Имеем 1С:Предприятие 8.3 (8.3.8.2054) конфигурация Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.51.20.002)

при нажатии ссылки Поддержка и обслуживание — Загрузить классификатор появляется сообщение: 1С Предприятие. Не корректный формат файла C:UsersАдминистраторAppDataLocalv8_D841_xxx.tmp

Помогите пожалуйста решить проблему.

   1c-kind

1 — 07.09.17 — 08:35

Попробуйте скачать с сайта и загрузить вручную.

http://helpme1c.ru/gde-mozhno-skachat-fias-po-regionam-dlya-1s-8-3-redakciya-3-0-i-kak-ego-zagruzit-v-programmu#__1

   irkinkas

2 — 07.09.17 — 08:41

К сожалению после нажатия Загрузить классификатор появляется сразу сообщение об ошибке (см.выше) и более ни куда попасть не возможно. В этом и проблема

   Альбатрос

3 — 07.09.17 — 08:42

Чо с правами и местом на диске?

   irkinkas

4 — 07.09.17 — 08:45

Права на Temp выдал полный доступ на «Все», и на возможных пользователей ещё раньше. 35 гб свободно.

   irkinkas

5 — 07.09.17 — 08:48

Удалить всё из папки не удалось т.к. пишет что файлы заняты процессом  и имя в сообщении каждый раз другое после D841

   Альбатрос

6 — 07.09.17 — 08:55

Традиционно почистил кэш?

   rphosts

7 — 07.09.17 — 08:55

(0)он давно не классификатор(кладр), а система (фиас). Может вы не то пытаетесь загрузить?

   irkinkas

8 — 07.09.17 — 08:59

Как традиционно? Простите но я не знаю. Как это делать?

И там написано «Загрузить классификатор». Ссылка такая в разделе «Поддержка и обслуживание-Адресный классификатор».

   1dvd

9 — 07.09.17 — 09:02

обновиться до последнего релиза не предлагали ещё?

   irkinkas

10 — 07.09.17 — 09:04

релиз нельзя москва не велит

   1dvd

11 — 07.09.17 — 09:10

(10) ну вот пусть москва и грузит фиас

   irkinkas

12 — 07.09.17 — 09:13

Кэш почистил Чекистом

   irkinkas

13 — 07.09.17 — 09:13

Не помогло

   irkinkas

14 — 07.09.17 — 09:16

Я так понимаю что сообщение выдаёт сама 1С и файл *.tmp создаёт она же. Не понятно чем он ей не нравится. Знать бы хотя бы куда копать.

  

irkinkas

15 — 07.09.17 — 09:43

Bсем спасибо! Проблема была в доступе с сети Интернет. Так как доступ  был не везде разрешён то и выскакивала эта сообщение. Дали полный доступ и 1С тут же заработала.

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Zebraaa

Дата регистрации: 16.03.2012
Сообщений: 23

«1с БГУ 8.2.13.219<br>При загрузке адресного классификатора возникает ошибка:<br> <br>РегистрСведений.АдресныйКлассификатор.Форма.ФормаЗагрузкиАдресногоКлассификатора(525): Ошибка при вызове метода контекста(Записать)<br>НаборАдресныхСведений.Записать(Ложь);<br>по причине:<br>Запись не верна! Значение поля не соответствует установленному отбору: АдресныйКлассификатор: 4, 99 , 9 999 999 999 999 999 999 999 999, 10, 0, 2,0 (Регистр сведений: Адресный классификатор; Номер строки: 1 ; Поле: КодРегионаВКоде)<br> <br>Файлы классификатора скачены с сайта ГНИВЦ ФНС России.»

Показывать по
10
20
40
сообщений

Читают тему:

Одним из самых популярных форматов данных, используемых практически в любой компании, является XML (расширяемый язык разметки). Разработчики 1С создали специальный объект XDTO для удобства своих клиентов и простого взаимодействия с файлами XML, поэтому программисту 1С важно работать с этими объектами платформы, так как обмен данными через XML встречается постоянно.

Этот функционал создавался как удобный инструмент обмена данными между конфигурациями и другими приложениями. Также этот механизм используют для работы с web-сервисами и для обработки произвольных данных. Большое преимущество XDTO перед другими способами – в нем есть возможность обращаться к файлу XML, как к объекту 1С. То есть все реквизиты можно будет получить, описывая структуру через точку, не задумываясь о скобках, тегах и атрибутах.

Взаимодействие с файлами XML происходит по заранее установленным правилам, описанным в объекте структуры конфигурации – XDTO – пакеты в 1С 8.3. Суть этих элементов структуры в том, что они представляют собой схемы, по которым будут распознаваться данные из XML-файлов. В типовых конфигурациях уже присутствуют подобные объекты, но при работе с конкретными файлами понадобятся другие схемы.

Существует два способа добавить XDTO-пакет в конфигурацию:

  • Собственноручно создать. Этот вариант подойдет при самостоятельной работе с XML определенного формата. Зная, какие данные будут подаваться на вход для импорта с использованием XDTO, можно заранее создать в конфигурации нужный объект. Этот вариант хорош, если обмен данными налажен и никаких изменений не планируется;

    Рис.1 XDTO пакеты

    Рис.1 XDTO пакеты
  • Импорт присланной схемы. Когда нам присылают данные, их схема может оказаться какой угодно, особенно, если раньше мы не работали с источником. Сильно упростит ситуацию, если вместе с XML нам пришлют и файл формата xsd. В нем содержится выгрузка XDTO-пакета, который может разобрать конкретные XML. Нам останется лишь импортировать его.

Чтобы загрузить данные из присланной нам схемы, необходимо в режиме конфигуратор открыть раздел «Общие» и «XDTO-пакеты». Через контекстное меню выбрать пункт «Импорт XML-схемы…», выбрать файл и подтвердить пространство имен, взятое из файла. После этого необходимо обновить конфигурацию, и предварительные настройки сделаны.

Но на самом деле в последнем случае нам необязательно создавать XDTO-пакеты в конфигурации 1С 8.3. Существует возможность только использовать XSD-схему, присланную нам из отдельного файла, не внося изменения в структуру базы 1С. Для этого нужно воспользоваться кодом, объясняющим платформе 1С, какой тип объекта с какими параметрами будет загружаться.

Это происходит следующими командами:


ФайлXSD = Новый Массив();
ФайлXSD.Добавить("D:1strust.xsd");
ФабрикаXDTOИзФайла = СоздатьФабрикуXDTO(ФайлXSD);
Номенклатура = ФабрикаXDTOИзФайла.Тип("http://www.1c.ru/products", "Номенклатура");

Экспорт и импорт файла

После того как мы разобрались с принципами использования пакетов XDTO, нужно посмотреть на механику работы с файлами XML. Лучше всего это будет видно на простом примере, чтобы понять основы. Добавим новый элемент в раздел XDTO-пакетов и настроим его следующим образом:

  1. Заполняем URI-пространство имен в свойствах XDTO пакета. Среди разработчиков 1С принято заполнять этот реквизит адресом страницы, заполненной описанием тех данных, с которыми происходит работа. Это помогает в работе, но не всегда возможно. В иных случаях заполняют произвольным текстом;
  2. Задаем тип объекта и его свойства, используя контекстное меню. Задаем имя этих параметров и для свойств определяем тип, выбирая его из предложенных платформой.

Рис.2 Параметры пакета

Рис.2 Параметры пакета

Следующим этапом будет написание процедуры для создания файла XML по описанной выше схеме. Код достаточно прост, поскольку создан XDTO-пакет, а у элемента всего 2 свойства – «Наименование» и «Артикул». Обращаться к конкретной схеме позволяет объект платформы «ФабрикаXDTO». Сама процедура состоит из:

  1. Определение схемы будущей XML;
    
    ТипФабрики = ФабрикаXDTO.Тип("http://www.primerXML.ru/Nomen","Номенклатура");
    

  2. Заполнение свойств номенклатуры;
    
    Номенклатура = ФабрикаXDTO.Создать(ТипФабрики);
    Номенклатура.Наименование = "Тест XML";
    Номенклатура.Артикул = "2";
    

  3. Создание нового XML файла.
    
    ИмяФайла = "D:1struct1.xml";
    МойXML = Новый ЗаписьXML;
    ПараметрыЗаписиXML = Новый ПараметрыЗаписиXML("UTF-8", "1.0", Ложь);
    МойXML.ОткрытьФайл(ИмяФайла, ПараметрыЗаписиXML);
    МойXML.ЗаписатьОбъявлениеXML();
    ФабрикаXDTO.ЗаписатьXML(МойXML, номенклатура);
    МойXML.Закрыть();
    

Чтение XML-файлов с помощью конкретной фабрики XDTO по уже созданному в конфигурации пакету ничуть не сложнее. Алгоритм похож по структуре и отличается только операциями взаимодействия с XML-файлами. В данном случае нам нужно воспользоваться объектом платформы «ЧтениеXML» и прочитать содержимое в переменную. На выходе у нее будет тип «ОбъектXDTO», и вы сможете обращаться ко всем ее свойствам через точку.


ТипФабрики = ФабрикаXDTO.Тип("http://www.primerXML.ru/Nomen","Номенклатура");
 
ИмяФайла = "D:1struct1.xml";
МойXML = Новый ЧтениеXML;
МойXML.ОткрытьФайл(ИмяФайла);
номенклатура = ФабрикаXDTO.ПрочитатьXML(МойXML, ТипФабрики);
МойXML.Закрыть();

Теперь попробуем прочитать файл, схемы которого нет в нашей конфигурации. Для этого экспортируем XDTO-пакет в файл формата xsd и удалим схему из конфигурации. После этого нам придется объяснить платформе, откуда ей брать схему читаемой XML-кодом, продемонстрированным ранее. Однако в простейших случаях 1С самостоятельно может распознать все свойства.

Рис.3 Экспорт XDTO-пакета

Рис.3 Экспорт XDTO-пакета

Лучше все-таки не рассчитывать на понятливость платформы 1С, а использовать точную схему XML. Многие специалисты используют сторонний софт для их создания, но для этого необходим достаточно большой опыт и уровень подготовки. Работа с пакетами XDTO требует внимания и соблюдения точного соответствия файлов заданной схеме, чтобы минимизировать возможные ошибки.

Исправление ошибок

Одной из достаточно распространенных ошибок, связанных с работой с XDTO-пакетами, является «Ошибка преобразования данных XDTO». Ее суть заключается в том, что платформа не может разобрать данный ей XML-файл по заданной схеме. При получении подобной ошибки при импорте данных, необходимо проверить формат файлов – возможно, присутствуют незакрытые теги.

Зачастую проблема с ошибками преобразования данных возникает и по другим причинам:

  • Ошибки в обновлении платформы или конфигурации;
  • Обмен между базами разных версий;
  • Недочеты в алгоритме приема данных;
  • Проблемы с временной памятью конкретного компьютера.

Чтобы исправить эту ошибку, сначала почистите кэш или удалите, а также заново добавьте информационную базу в список баз. Затем внимательно проверьте файл XML – вдруг случайно сделали ошибку в его тексте, проверьте соответствие структуры пакету XDTO. Если ошибка появилась после обновления, сделайте тестирование и исправление ИБ, сохранив перед этим резервную копию базы. Если проблема не уйдет, вернитесь на предыдущую версию и подождите, пока разработчики 1С не разберутся с этой проблемой.

Рис.4 Ошибка преобразования данных

Рис.4 Ошибка преобразования данных

Еще одна проблема, часто мучающая программистов 1С, работающих с XDTO, – ошибка проверки данных. Если при импорте вы видите подобный текст, то с высокой долей вероятности источник проблемы в несоответствии файла нужной схеме. Но проблема может быть не на вашей стороне, а в базе, из которой выгружали XML. Чтобы исправить эту оплошность, придется внимательно изучить всю последовательность действий и найти, после чего файл перестал соответствовать ожиданиям.

Рис.5 Ошибка проверки данных

Рис.5 Ошибка проверки данных

Более сложная для анализа проблема, если при обмене информацией 1С выдает ошибку о несоответствии типов XDTO. В этом случае придется проверять все данные, находить ошибки и их причины. В некоторых случаях ошибки могут быть в коде, иногда – в данных информационной базы. Чтобы это понять, необходимо иметь доступ к базам причастным к обмену и четко понимать всю суть происходящего экспорта и импорта.

Рис.6 Несоответствие типов XDTO

Рис.6 Несоответствие типов XDTO

На первый взгляд работа с XDTO достаточно сложна, поэтому на первое время рекомендуется добавлять XDTO-пакеты в 1С для большего порядка и учета. Конечно, все нюансы изучить сразу невозможно, но в процессе работы вы будете продолжать учиться. Но с уверенной теоретической базой намного удобнее начинать разбираться в этом вопросе.

Структура объекта не соответствует типу

Я

  

PsyTech

14.09.17 — 11:12

Всем привет!

При вызове метода сервиса получаю сообщение «Структура объекта не соответствует типу».

Структура объекта XDTO соответствует типу входного параметра, а 1с сравнивает структуру этого объекта с типом выходного параметра, естественно они не соответствуют. От чего так может быть?

  

PsyTech

1 — 14.09.17 — 11:17

*с типом возвращаемого значения

  

PsyTech

2 — 14.09.17 — 11:51

Т.е. На вход методу сервиса подаю параметр в соответствии с типом входного по WSСсылке, а туда как будто ожидается параметр с типом возвращаемого значения.

  

catena

3 — 14.09.17 — 12:00

(2)Где размещен сервис, откуда запрашивается, чем подкреплены такие выводы?

  

PsyTech

4 — 14.09.17 — 12:03

Через SOAP UI сервис нормальные ответы возвращает. Может я не понимаю смысыл этого сообщения? О чем оно? О том, что я на вход что-то не то передаю, или возврат не соответствует схеме?

  

PsyTech

5 — 14.09.17 — 12:06

хотя, ответ соответствует схеме…

  

catena

6 — 14.09.17 — 12:09

(4)У порядочного веб-сервиса возврат не может не соответствовать схеме. Чем запрос формируется? Через wsОпределения или вручную сбор хмл?

  

PsyTech

7 — 14.09.17 — 12:16

(6) Через wsОпределения, т.е. четко по схеме.

Почему 1с сравнивает входной параметр с типом возвращаемого значения?

  

PsyTech

8 — 14.09.17 — 12:20

Ошибка преобразования данных XDTO:

Чтение объекта типа: {http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2}OneC_Respose — [1,330]

Проверка дополнительного свойства:

    форма: Элемент

    имя: OPERATIONID

по причине:

Ошибка проверки данных XDTO:

Структура объекта не соответствует типу: {http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2}OneC_Respose

OPERATIONID — это поле из возвращаемого значения. Причем тут оно?

  

PsyTech

9 — 14.09.17 — 13:25

не оставляйте меня тут одного!))

  

catena

10 — 14.09.17 — 13:27

(9)Мало информации. Структуры вс нет, кода нет, обсуждать пока нечего.

  

PsyTech

11 — 14.09.17 — 13:29

почему-то подумал, что этого достаточно

  

PsyTech

12 — 14.09.17 — 13:33

Вот кодик:

    Прокси = WSСсылки.SAP_Product.СоздатьWSПрокси(URI, ИмяСервиса, ИмяПорта);

    Прокси.Пользователь = login;

    Прокси.Пароль = password;

    

    ТипWSПараметра = Прокси.ФабрикаXDTO.Тип(URIПространстваИмен, Имя);

    WSПараметр = Прокси.ФабрикаXDTO.Создать(ТипWSПараметра);

    Меркурий.ИнициализироватьОбъектXDTO(WSПараметр, Прокси.ФабрикаXDTO);

    WSПараметр.localTransactionId = localTransactionId;

    WSПараметр.initiator.login = login;

    WSПараметр.enterprise.guid = guidПлощадки;

    WSПараметр.productionOperation.operationId = operationId;

    
    Ответ = Прокси.RegisterProductionOperation(WSПараметр);

  

PsyTech

13 — 14.09.17 — 14:27

А так получаю ошибку 500

    xmlHttp = Новый COMОбъект(«Microsoft.XMLHTTP»);  

    xmlHttp.OPEN(«POST», URI, 0, login, password);

    xmlHttp.setRequestHeader(«User-Agent», «1C Soap toolkit»);

    xmlHttp.setRequestHeader(«Content-type»,»content-type    text/xml; charset=utf-8″);

    xmlHttp.setRequestHeader(«Content-Length», СтрДлина(MessageExchange));

    xmlHttp.setRequestHeader(«SOAPAction», «http://sap.com/xi/WebService/soap1.1»;);

    xmlHttp.SEND(MessageExchange);

  

PsyTech

14 — 14.09.17 — 14:54

Было у кого такое, чтоб сторонний сервис через SOAP IU работал, а через 1с нет?

  

PsyTech

15 — 14.09.17 — 16:04

Может кто хотя бы может логику сообщения о ошибке пояснить?

Структура какого объекта не соответствует типу? Который передаю на вход? Почему тогда в тексте ошибки поле из возвращаемого значения?

Проблема, почему в 1С слетает адресный классификатор до настоящего времени является не до конца изученной.

Часто бывает, что классификатор слетает после обновления конфигурации.

Встречаются случаи, когда классификатор очищается без видимой на то причины.

С введением нового формата хранения адресов ФИАС проблема так же имеет место.

Разработчики 1С постоянно работают над усовершенствованием в части работы адресных классификаторов. В программах реализовано автоматическое обновление классификаторов через Интернет. Обновление производится по расписанию, указанному пользователем.

Самостоятельно настроить обновление или загрузить адресный классификатор по нужному региону, если все же такая необходимость возникла, можно через раздел Интернет-поддержка и сервисы.

Почему в 1С слетает адресный классификатор (1).png

Для загрузки классификатора предварительно необходимо скачать в папку на диск файлы с обновлениями. Если подключена интернет-поддержка в программе – тогда загрузка происходит с портала 1С.

Почему в 1С слетает адресный классификатор (2).png

Замечена особенность, если были загружены все регионы и адресный классификатор слетел, то при загрузке пользователем хотя бы одного региона повторно данные по остальным регионам «становятся на место».

Иногда при отправке заявления на продление или подключение к сервису, а так же при отправке отчетов в 1С:Отчётность может всплыть окно с похожей ошибкой «Не удалось определить код региона ФИАС адреса».

Не удалось определить код региона ФИАС адреса

Рисунок 1 — Ошибка «Не удалось определить код региона ФИАС адреса»

Данная ошибка возникает в нескольких случаях:

  • Не введен адрес организации в карточке организации в 1С.
  • Адрес организации введен в свободной форме.
  • Классификатор необходимо загрузить или обновить.

Проверьте, заполнен ли адрес организации.

Адрес организации контрагента

Рисунок 2 — Проверка заполнения адреса организации

При введении адреса пользуйтесь классификатором, поскольку адрес должен быть заполнен в соответствии с федеральной информационной адресной системой (ФИАС).

Для корректности заполнения адреса воспользуйтесь кнопкой Проверить заполнение.

Проверить заполнение адреса

Рисунок 3 — Кнопка «Проверить заполнение»

Если все верно, всплывающее окно оповестит об этом.

Оповещение о корректном заполнении адреса

Рисунок 4 — Оповещение о корректном заполнении адреса

Если данные действия не помогли (ошибка возникла снова) или выбрать адрес не получилось, возможно, необходимо загрузить или обновить классификатор.

Сделать это можно в автоматическом режиме, если подключен сервис 1С-ИТС, либо вручную, загрузив необходимые данные с официального сайта. Ссылка приведена ниже.

https://its.1c.ru/download/fias2

Нажмите кнопку Еще в окне ввода адреса организации и выберите Загрузить классификатор.

Загрузка классификатора

Рисунок 5 — Загрузка классификатора

Выберите необходимый регион и установите его с портала либо из месторасположения, куда был загружен соответствующий файл классификатора с официального сайта. Нажмите кнопку Загрузить адресные сведения.

Загрузка адресных сведений

Рисунок 6 — Загрузка адресных сведений

Далее произойдет загрузка классификатора.

Загрузка адресного классификатора

Рисунок 7 — Загрузка адресного классификатора

Уведомление об успешной загрузке

Рисунок 8 — Уведомление об успешной загрузке

После успешной загрузки/обновления классификатора снова попробуйте ввести адрес, а затем отправить заявление/отчёт. Ошибка должна быть устранена.

Понравилась статья? Поделить с друзьями:
  • 1с ошибка при вызове метода контекста рольдоступна
  • 1с ошибка при вызове метода контекста размер
  • 1с ошибка при вызове метода контекста предопределенноезначение
  • 1с ошибка при вызове метода контекста получитьфайлы
  • 1с ошибка при вызове метода контекста получитьобъект