Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Помилка при вигрузці реестру податкових накладних в xml
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
mister-x
Реліз платформи 27. Бухгалтерія оновлялась частково до 292. От власне помилка в одного клієнта вже при вигрузці в xml-файл (до цього все ок)
Цитата
====== Реестр налоговых накладных для декларации по НДС
-- Начало загрузки схемы (J1201505.xsd)
-- Схема загружена успешно!
--- Начало выгрузки в файл 17180013975364J1201505100000000110320121718.xml
элПоказатель.Значение = Значение;
{E:\1C\77\base\EXTFORMS\RP12Q1.GRP\XMLEXPRT.ERT(2433)}: Неизвестная ошибка

сама процедура обробки XMLEXPRT.ERT:
//-----------------------------------
Процедура ВыгрузитьПоказатель(Родитель, Имя, Значение, ИндСтроки = 0)
    
    Если Значение <> "&НеЗаписывать" Тогда
        элПоказатель = Родитель.СоздатьПодчиненныйЭлемент(Имя);
         Если Значение <> "&ПустоеЗначение" Тогда
             элПоказатель.Значение = Значение; //помилка!!!
         КонецЕсли;
        Если ИндСтроки <> 0 Тогда
            элПоказатель.УстановитьАтрибут("ROWNUM",Строка(ИндСтроки));
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

Наразі вирішив так:
//-----------------------------------
Процедура ВыгрузитьПоказатель(Родитель, Имя, Значение, ИндСтроки = 0)
    
    Если Значение <> "&НеЗаписывать" Тогда
        элПоказатель = Родитель.СоздатьПодчиненныйЭлемент(Имя);
         Если Значение <> "&ПустоеЗначение" Тогда
             попытка
                 элПоказатель.Значение = Значение;
             исключение
                 сообщить(описаниеОшибки());
             конецпопытки;    
         КонецЕсли;
        Если ИндСтроки <> 0 Тогда
            элПоказатель.УстановитьАтрибут("ROWNUM",Строка(ИндСтроки));
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры
файл формується без помилки. І в чому була помилка?
MATEVI
недавно нарывался на такое. некорректные символы в названиях были типа" "
Vofka
А отладчиком посмотреть все значения, которые попадают в Значение нельзя?
mister-x
після "спроби" всі стали коректні виходить smile.gif
Vofka
Даже нет, не так. А просто Сообщить значение переменной, в окне сообщений.

Цитата
після "спроби" всі стали коректні виходить

Та какой корректно. Это вообще самый крайний вариант решения, и то, при условии, что надо на вчера! Просто в каком-то случае вообще что-то не попадает.
mister-x
Цитата(MATEVI @ 20.04.12, 14:10) необходимо зарегистрироваться для просмотра ссылки
недавно нарывался на такое. некорректные символы в названиях были типа" ∙ "

таки є: 1634
mister-x
кого зацікавить питання щодо виявлення некоректних символів пишемо в обробці XMLEXPRT.ERT у відповідній процедурі код:
//-----------------------------------
Процедура ВыгрузитьПоказатель(Родитель, Имя, Значение, ИндСтроки = 0)
    
     Если Значение <> "&НеЗаписывать" Тогда
        элПоказатель = Родитель.СоздатьПодчиненныйЭлемент(Имя);
         Если Значение <> "&ПустоеЗначение" Тогда
             попытка
                 элПоказатель.Значение = Значение;
             исключение
                 сообщить("Некорректный символ= "+Значение);
             конецпопытки;    
         КонецЕсли;
        Если ИндСтроки <> 0 Тогда
            элПоказатель.УстановитьАтрибут("ROWNUM",Строка(ИндСтроки));
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

а далі шукаємо в базі некоректне значення, для прикладу необходимо зарегистрироваться для просмотра ссылки я шукав
XBrut
И я такое видел. У меня названия клиентов из ексель копировали через буфер обмена. При этом в название клиента попадают спецсимволы.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.