Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Как настроить кодировку чтения DBF?          
grail Подменю пользователя
сообщение 21.10.11, 20:32
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 32
Спасибо сказали: 0 раз
Рейтинг: 0

1С:Підприємство 8.2 (8.2.13.219)
"Бухгалтерія для України", редакція 1.2.
Розробка конфігурації: "ABBYY Ukraine", 2005-2011 (1.2.3.5)

Читаем DBF и записываем в текстовый файл.
Не получается настроить корректную кодировку текстовых полей в TXT файле, которые импортируются из DBF.
Как настроить кодировку чтения DBF?

Вот в каком виде выводится информация в TXTфайл:
**********************
ПлательщикСчет=20681097000659
Плательщик=‚I‹…Љ‘,’‡Ћ‚
ПлательщикБанк=I-”ђ.”.ЏЂ’ ЉЃ"Џђ?‚Ђ’ЃЂЌЉ",Њ.I-”ђЂЌЉI‚.
**********************

ПутьDBF = "C:\jbkl_rec.dbf"; 
ПутьTXT = "C:\CB_to_1C.txt";

Текст = Новый ТекстовыйДокумент;
БД = Новый XBase;
//БД.Кодировка="ANSI";
БД.ОткрытьФайл(ПутьDBF,,);

Текст.ДобавитьСтроку("_1CClientBankExchange");
Текст.ДобавитьСтроку("ВерсияФормата=1.00");
Текст.ДобавитьСтроку("Кодировка=Windows");
Текст.ДобавитьСтроку("Отправитель=Система 'Клієнт-Банк'");
Текст.ДобавитьСтроку("Получатель=Бухгалтерия для Украины (базова), редакция 1.2");
//Текст.ДобавитьСтроку("СекцияРасчСчет");
Текст.ДобавитьСтроку("ДатаНачала=2011-10-01");
Текст.ДобавитьСтроку("ДатаКонца=2011-10-20");
Текст.ДобавитьСтроку("РасчСчет=26001356326024");
Текст.ДобавитьСтроку("КодВалюты=980");
Текст.ДобавитьСтроку("НачальныйОстаток=0");

Пока БД.Следующая() Цикл
    Текст.ДобавитьСтроку("СекцияДокумент=Платежное поручение");
    Текст.ДобавитьСтроку("ВидДокумента=Платежное поручение");
    Текст.ДобавитьСтроку("Номер="+БД.N_D);
    Текст.ДобавитьСтроку("Дата="+БД.DATE);
//     Текст.ДобавитьСтроку("ДокументИД="+БД.REF);
    Текст.ДобавитьСтроку("Сумма="+БД.SUMMA);
    Текст.ДобавитьСтроку("КодВалюты=980");

    Текст.ДобавитьСтроку("ПлательщикСчет="+БД.COUNT_A);
    Текст.ДобавитьСтроку("Плательщик="+БД.NAME_A);    
    Текст.ДобавитьСтроку("ПлательщикБанк="+БД.BANK_A);        
    Текст.ДобавитьСтроку("ПлательщикМФО="+БД.MFO_A);
    Текст.ДобавитьСтроку("ПлательщикОКПО="+БД.OKPO_A);    

    Текст.ДобавитьСтроку("ПолучательСчет="+БД.COUNT_B);
    Текст.ДобавитьСтроку("Получатель="+БД.NAME_B);    
    Текст.ДобавитьСтроку("ПолучательБанк="+БД.BANK_B);        
    Текст.ДобавитьСтроку("ПолучательМФО="+БД.MFO_B);
    Текст.ДобавитьСтроку("ПолучательОКПО="+БД.OKPO_B);    

    Текст.ДобавитьСтроку("НазначениеПлатежа="+БД.N_P);
    Текст.ДобавитьСтроку("КонецДокумента");
    
КонецЦикла;
Текст.ДобавитьСтроку("КонецФайла");
Текст.Записать(ПутьTXT);
БД.ЗакрытьФайл();

Vond Подменю пользователя
сообщение 21.10.11, 21:49
Сообщение #2

Оратор
Иконка группы
Группа: Местный
Сообщений: 310
Из: Киев
Спасибо сказали: 148 раз
Рейтинг: 0

КодировкаXBase (XBaseEncoding)
Значения
ANSI (ANSI)
OEM (OEM)

Описание:
Содержит варианты кодировок XBase.

Доступность:
Сервер, толстый клиент, внешнее соединение. Возможен обмен с сервером.

См. также:
XBase, свойство Кодировка

Пример:
    B = Новый XBase;
    B.Поля.Добавить("CODE","S",11);
    B.Поля.Добавить("NAME","S",100);
    B.Поля.Добавить("ED","S",100);
    B.Кодировка = КодировкаXBase.OEM;


Signature
Платформа: 1С:Предприятие 8.3 (8.3.9)
Конфигурация: УПП (1.3.48)

Спасибо сказали: grail,

grail Подменю пользователя
сообщение 21.10.11, 21:56
Сообщение #3

Общительный
**
Группа: Пользователи
Сообщений: 32
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Vond @ 21.10.11, 22:49) *
КодировкаXBase (XBaseEncoding)
Значения
ANSI (ANSI)
OEM (OEM)

Описание:
Содержит варианты кодировок XBase.

Доступность:
Сервер, толстый клиент, внешнее соединение. Возможен обмен с сервером.

См. также:
XBase, свойство Кодировка

Пример:
    B = Новый XBase;
    B.Поля.Добавить("CODE","S",11);
    B.Поля.Добавить("NAME","S",100);
    B.Поля.Добавить("ED","S",100);
    B.Кодировка = КодировкаXBase.OEM;


Точно!
Получилось!
Спасибо.

И еще пожалуйста!:

Как преобразовать число 165000.00 в стороку "165000.00", а то у меня выдаёт "165 000"!
и
Как преобразовать дату 2011.10.04 в стороку "2011-10-04", а то у меня выдаёт "20111004"!
Понимаю что не в тему ветки, но очень нужно!

Vond Подменю пользователя
сообщение 21.10.11, 22:14
Сообщение #4

Оратор
Иконка группы
Группа: Местный
Сообщений: 310
Из: Киев
Спасибо сказали: 148 раз
Рейтинг: 0

чето не понятно, а что такое в конфигураторе комбинация клавиш Ctrl+F1 знаем?

Самостоятельно курим тему:
Встроенные функции языка (Script functions)

Строка (String)
Синтаксис:
Строка(<Значение>)

Параметры:
<Значение> (обязательный)

Тип: Произвольный.
Исходное значение.
Возвращаемое значение:

Тип: Строка.
Полученное значение.

Описание:
Преобразует полученный параметр в значение типа Строка.
При преобразовании к строке числа формируется его полное представление в стандартном виде, соответствующем национальным установкам.
Преобразование значений типа Булево зависит от национальных установок и содержит строковое представление этих значений.
При преобразовании к строке даты формируется ее полное представление в стандартном читабельном виде, соответствующем национальным установкам.
Преобразование к строке значений остальных типов производится по мере возможности и обычно содержит читабельное представление значения.

Пример:
Строка(Формат(текущаядата(),"ДФ=dd-MM-yyyy"))


Signature
Платформа: 1С:Предприятие 8.3 (8.3.9)
Конфигурация: УПП (1.3.48)

logist Подменю пользователя
сообщение 21.10.11, 22:20
Сообщение #5

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(grail @ 21.10.11, 22:56) *
Понимаю что не в тему ветки, но очень нужно!

Раз понимаете, то зачем пишите. Правила для всех одинаковы. "Очень нужно" после детского сада уже не катит.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Тема закрыта Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 26.04.24, 14:55
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!