БП 2.0 Уралсиб загрузка клиент банка: Неверный реквизит заголовка -в каждой строчке

1. andrey7617 56 07.04.21 21:46 Сейчас в теме
Добрый день уважаемые формучане.
Прошу помощи у гуру ...

Бухгалтерия предприятия, редакция 2.0 (2.0.64.14) проблема с клиентбанком загрузка txt от УРАЛСИБА
до этого загружали Россельхозбанк, Сбербанк никаких проблем не было

Примеры начала заголовков

УРАЛСИБ

1CClientBankExchange
ВерсияФормата=1.03
Кодировка=Windows
Отправитель=iSimpleBank 2.0
Получатель=ExternalProg
ДатаСоздания=07.04.2021
ВремяСоздания=23:18:21
ДатаНачала=15.03.2021
ДатаКонца=07.04.2021

РОССЕЛЬХОЗ

1CClientBankExchange
ВерсияФормата=1.03
Кодировка=Windows
Получатель=
ДатаНачала=01.04.2021
ДатаКонца=06.04.2021
РасчСчет=40702810661000000284
СекцияРасчСчет
ДатаНачала=01.04.2021
ДатаКонца=01.04.2021

при загрузки от УралСиба пишет такую абракадабру каждую строку

Неверный реквизит заголовка, строка 2 : ┬хЁёш ╘юЁьрЄр=1.03
Неверный реквизит заголовка, строка 3 : ╩юфшЁютър=Windows
Неверный реквизит заголовка, строка 4 : ╬ЄяЁртшЄхы№=iSimpleBank 2.0
Неверный реквизит заголовка, строка 5 : ╧юыєўрЄхы№=ExternalProg
Неверный реквизит заголовка, строка 6 : ─рЄр╤ючфрэш =07.04.2021
Неверный реквизит заголовка, строка 7 : ┬Ёхь ╤ючфрэш =23:18:21
Неверный реквизит заголовка, строка 8 : ─рЄр═рўрыр=15.03.2021
Неверный реквизит заголовка, строка 9 : ─рЄр╩юэЎр=07.04.2021

пишут что нужно Заменить "Код=" на "" - пробовал не помогло ...


Подскажите пожалуйста как вылечить данную проблему ???
Вознаграждение за ответ
Показать полностью
Найденные решения
8. user856012 13 07.04.21 23:21 Сейчас в теме +1 $m
(7)
Может кто сталкивался ???
С БП 2.0? Немного таких осталось...
и знает как эту ошибку обойти ???
Сначала надо понять - что эту ошибку вызывает? Тем более, что с другим банком, как вы пишете, все нормально.

Для начала - открыть в конфигураторе процедуру импорта клиент-банка, поставить точку останова на чтении строки файла и проверять - что там считывается и в какой кодировке? А потом - что происходит с этой строкой вплоть до возникновения ошибки.
andrey7617; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user1534961 07.04.21 21:49 Сейчас в теме
Кодировку для файла выгрузки в клиент-банке выбрать можно?
andrey7617; +1 Ответить
3. andrey7617 56 07.04.21 21:51 Сейчас в теме
Кодировку для файла выгрузки в клиент-банке выбрать можно?

- не видел но сохраняет в анси
4. user856012 13 07.04.21 22:09 Сейчас в теме
(3)
сохраняет в анси
С трудом верится: если скопипастить ваши иероглифы и вставить в файл с кодировкой ANSI (CP1251), то кракозябры так и остаются кракозябрами.

А вот если вставить их в файл с кодировкой DOS (CP866), то при просмотре в кодировке CP1251 текст становится читаемым (кроме буквы "я").

Так что скорее всего, это CP866. Как вариант - чтение в 1С настроено на CP866.

Можете выложить тут кусочек (заголовок) проблемного файла, убрав всю финансовую информацию?
vadim.semyonov.rzn; andrey7617; +2 Ответить
5. andrey7617 56 07.04.21 22:55 Сейчас в теме
Можете выложить тут кусочек (заголовок) проблемного файла, убрав всю финансовую информацию?

- без проблем ... по этическим соображениям убрал информацию по расчетному счету ...

в блокноте файл читаемый ... я пересоранял в анси ... результат такой же
Прикрепленные файлы:
statement.txt
6. user856012 13 07.04.21 23:01 Сейчас в теме +0.2 $m
(5) Да, это ANSI (CP1251).

Ну, тогда ковырять настройки клиент-банка в 1С. Или гулять отладчиком по процедуре импорта.

Других вариантов не вижу - с файлом все в порядке.
andrey7617; +1 Ответить
7. andrey7617 56 07.04.21 23:09 Сейчас в теме
Ну, тогда ковырять настройки клиент-банка в 1С. Или гулять отладчиком по процедуре импорта.

Других вариантов не вижу - с файлом все в порядке.


- Это то понятно ... Может кто сталкивался ??? и знает как эту ошибку обойти ???
8. user856012 13 07.04.21 23:21 Сейчас в теме +1 $m
(7)
Может кто сталкивался ???
С БП 2.0? Немного таких осталось...
и знает как эту ошибку обойти ???
Сначала надо понять - что эту ошибку вызывает? Тем более, что с другим банком, как вы пишете, все нормально.

Для начала - открыть в конфигураторе процедуру импорта клиент-банка, поставить точку останова на чтении строки файла и проверять - что там считывается и в какой кодировке? А потом - что происходит с этой строкой вплоть до возникновения ошибки.
andrey7617; +1 Ответить
9. Aitbay 08.04.21 03:14 Сейчас в теме +0.1 $m
курите в сторону уралсиба, там в настройках экспорта должен быть выбор кодировки
andrey7617; +1 Ответить
10. Alex_241 08.04.21 10:54 Сейчас в теме +0.1 $m
Добрый день, делал подобное в УПП, в выгрузке банка добавили новый параметр, а в программе нет обработки этих данных вот и ругается. Делал в коде при чтении параметров что если это Код= то игнорировать и идти дальше, или можно написать через попытку.
andrey7617; +1 Ответить
11. andrey7617 56 09.04.21 21:51 Сейчас в теме
АПну может кто знает ...
12. user1534961 10.04.21 06:36 Сейчас в теме +0.1 $m
13. andrey7617 56 10.04.21 15:28 Сейчас в теме
КлиентБанк Модуль объекта

// Процедура читает заголовок файла обмена
//
Функция ПрочитатьФайл(Файл)
	
	ФайлЗагр = Новый Файл(Файл);
	Если НЕ ФайлЗагр.Существует() Тогда
		Сообщить("Файла " + Файл + " не существует!", СтатусСообщения.Важное);
		Возврат Неопределено;
	КонецЕсли;
	
	Если ФайлЗагр.ЭтоКаталог() Тогда
		Сообщить("Указанный путь " + Файл + " является  каталогом!", СтатусСообщения.Важное);
		Возврат Неопределено;
	КонецЕсли;
	
	ПотокЧтения = Новый ТекстовыйДокумент();
	Попытка
		ПотокЧтения.Прочитать(Файл);
	Исключение
		Сообщить("Файл не прочитан.", СтатусСообщения.Внимание);
		Возврат Неопределено;
	КонецПопытки;
	
	Если Кодировка = "DOS" Тогда
		Кодир = КодировкаТекста.OEM;
	Иначе
		Кодир = КодировкаТекста.ANSI;
	Конецесли;
	
	//++
	Если Прав(Файл, 13) = "statement.txt" Тогда
		Кодир = КодировкаТекста.ANSI;
	КонецЕсли;
	//--

	ПотокЧтения.Прочитать(Файл,Кодир);

	Если ПотокЧтения.КоличествоСтрок()<1 Тогда
		Сообщить("В файл нет данных!");
		Возврат Неопределено;
	КонецЕсли;

	Если СокрЛП(ПотокЧтения.ПолучитьСтроку(1))<>"1CClientBankExchange" Тогда
		Сообщить("Указанный файл не является файлом обмена или неверно указана кодировка!");
		Возврат Неопределено;
	КонецЕсли;

	//Возврат ПотокЧтения.ПолучитьТекст();
	//++
	Если Прав(Файл, 13) = "statement.txt" Тогда		
		ТекстВыгрузки = СтрЗаменить(ПотокЧтения.ПолучитьТекст(), "КодНазПлатежа=", "");
		Возврат ТекстВыгрузки;
	Иначе 	
		Возврат ПотокЧтения.ПолучитьТекст();
	КонецЕсли;
	//--

КонецФункции
Показать
15. user856012 13 10.04.21 16:09 Сейчас в теме
(13)
КлиентБанк Модуль объекта
Спасибо за лестную оценку моего предложения, но я правильно понял, что вы принудительно установили чтение файла под названием statement.txt в ANSI и проблема с кодировкой решилась?

Если да, то любопытно - как в исходном варианте задается переменная Кодировка? Разобраться с ней было бы более надежным вариантом, чем завязываться на имени файла.

А еще - удалили из прочитанного текста файла строки КодНазПлатежа?
14. user1534961 10.04.21 15:51 Сейчас в теме
Попробуйте после строк
.
Если СокрЛП(ПотокЧтения.ПолучитьСтроку(1))<>"1CClientBankExchange" Тогда
        Сообщить("Указанный файл не является файлом обмена или неверно указана кодировка!");
        Возврат Неопределено;
    КонецЕсли;  

Добавить аналогичное условие на 2-ю строку
ВерсияФормата=1.03

И в случае неравенства изменить кодировку и прочитать снова.
16. andrey7617 56 10.04.21 19:13 Сейчас в теме
программа почему то определяла файл как
Кодир = КодировкаТекста.OEM;

Спасибо за лестную оценку моего предложения, но я правильно понял, что вы принудительно установили чтение файла под названием statement.txt в ANSI и проблема с кодировкой решилась?

- Да

Добавить аналогичное условие на 2-ю строку
ВерсияФормата=1.03

- спасибо но и так работает ... задача решена суббота можно идти пить ...
17. user856012 13 10.04.21 21:09 Сейчас в теме
(16)
программа почему то определяла файл как
Кодир = КодировкаТекста.OEM;
Потому, что значение Кодировка равно "DOS".

А вот почему оно такое - неплохо бы выяснить на будущее.

Похоже, что это реквизит формы настройки Клиент-банка: http://www.1c-victory.ru/faq/1c-bukhgalteriya-8/nastroyka-obmena-dannymi-s-programmoy-klient-banka-v-1c-bukhgalteriya-predpriyatiya-2-0/
andrey7617; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот