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

Хранилище

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

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



> *.DBF и украинский язык , При выгрузке в DBF теряются украинский буквы 2 страниц V   1 2 >          
Lefer Подменю пользователя
сообщение 05.07.11, 14:18
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 155
Спасибо сказали: 11 раз
Рейтинг: 0

Доброго времени суток.

Вопрос таков: выгружаю в dbf справочник. Есть реквизит типа строка, содержащий данные на украинском языке. Если открыть dbf и проверить заполнение поля с этими данными - все ок. Буквы украинского языка на месте. Загружаю в базу - вместо знаков украинского языка нижнее подчеркивание. В чем бок может быть?


Signature
It's the end of the world as we know it and I feel fine

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

Старейшина
********
Группа: Команда (модераторы)
Сообщений: 1116
Из: Одесса-Луганск
Спасибо сказали: 192 раз
Рейтинг: 0

В кодировке при загрузке в базу.


Signature
Правильно поставленный вопрос содержит до 90% ответа.

Lefer Подменю пользователя
сообщение 05.07.11, 14:38
Сообщение #3

Завсегдатай
****
Группа: Пользователи
Сообщений: 155
Спасибо сказали: 11 раз
Рейтинг: 0

Цитата(pablo @ 05.07.11, 15:21) *
В кодировке при загрузке в базу.


В семерке есть параметр "КодоваяСтраница", так вот она дает выбор только между Дос и Виндой. Чувствую, что надо будет получать код украинских символов и потом парсить строку...нашел букву украинского происхождения - подставь символ... как думаете?


Signature
It's the end of the world as we know it and I feel fine

mister-x Подменю пользователя
сообщение 05.07.11, 14:41
Сообщение #4

...
Иконка группы
Модератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 3477
Из: Тернопіль
Спасибо сказали: 1417 раз
Рейтинг: 0

так потрібно буде робити заміни крякозяблів на укр. символи, зустрічав таке в клієнт-банк

Lefer Подменю пользователя
сообщение 05.07.11, 14:50
Сообщение #5

Завсегдатай
****
Группа: Пользователи
Сообщений: 155
Спасибо сказали: 11 раз
Рейтинг: 0

Цитата(mister-x @ 05.07.11, 15:41) *
так потрібно буде робити заміни крякозяблів на укр. символи, зустрічав таке в клієнт-банк


То есть так примерно

//...
СтрокаССимволами = DBF.NAME10 //содержит строку с украинскими символами
ДлинаСтроки = СтрДлина(СтрокаССимволами);
сч = 0;
Пока сч >=ДлинаСтроки Цикл
сч = сч +1;
Если Лев(СтрокаССимволами,сч) = "код одной из украинских букв" Тогда
          СтрЗаменить(СтрокаССимволами,Лев(СтрокаССимволами,сч),"код той самой буквы");
КонецЕсли;

Если Лев(СтрокаССимволами,сч) = "код другой из украинских букв" Тогда
          СтрЗаменить(СтрокаССимволами,Лев(СтрокаССимволами,сч),"код той самой буквы");
КонецЕсли;
//...


Signature
It's the end of the world as we know it and I feel fine

mister-x Подменю пользователя
сообщение 05.07.11, 15:34
Сообщение #6

...
Иконка группы
Модератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 3477
Из: Тернопіль
Спасибо сказали: 1417 раз
Рейтинг: 0

в клієнт-банку було явно вказано, яку крякозяблу на яку укр. літеру заміняти

Lefer Подменю пользователя
сообщение 05.07.11, 15:41
Сообщение #7

Завсегдатай
****
Группа: Пользователи
Сообщений: 155
Спасибо сказали: 11 раз
Рейтинг: 0

Цитата(mister-x @ 05.07.11, 16:34) *
в клієнт-банку було явно вказано, яку крякозяблу на яку укр. літеру заміняти


С удовольствием глянул бы. Не припомните в каком именно клиент банке было?


Signature
It's the end of the world as we know it and I feel fine

mister-x Подменю пользователя
сообщение 05.07.11, 16:10
Сообщение #8

...
Иконка группы
Модератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 3477
Из: Тернопіль
Спасибо сказали: 1417 раз
Рейтинг: 0

Зараз не пригадаю - цю річ можна здогадатись при загрузці через відлагоджувач.

5_kopeek Подменю пользователя
сообщение 05.07.11, 16:58
Сообщение #9

Ветеран
*******
Женщине-одинэснику
Группа: Пользователи*
Сообщений: 940
Спасибо сказали: 285 раз
Рейтинг: 0

Делала типа такого:

Функция ЗаменитьСимволы(Знач ТекСтрока)
    ТекСтрока = СтрЗаменить(ТекСтрока, "Ї", "Є");
    ТекСтрока = СтрЗаменить(ТекСтрока, "ї", "є");
    ТекСтрока = СтрЗаменить(ТекСтрока, "Ў", "І");
    ТекСтрока = СтрЗаменить(ТекСтрока, "ў", "і");
    ТекСтрока = СтрЗаменить(ТекСтрока, "•", "ї");
    ТекСтрока = СтрЗаменить(ТекСтрока, "°", "Ї");
    Возврат СокрЛП(ТекСтрока);
КонецФункции // ЗаменитьСимволы

Попробуйте. Или методом анализа крякозяблов подставьте нужные символы.

Vofka Подменю пользователя
сообщение 05.07.11, 17:48
Сообщение #10

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

А я помню при записи тестового файла менял украинскую "і" на английскую, никто и не знал smile.gif

5_kopeek Подменю пользователя
сообщение 05.07.11, 18:39
Сообщение #11

Ветеран
*******
Женщине-одинэснику
Группа: Пользователи*
Сообщений: 940
Спасибо сказали: 285 раз
Рейтинг: 0

Цитата(Vofka @ 05.07.11, 17:48) *
А я помню при записи тестового файла менял украинскую "і" на английскую, никто и не знал smile.gif

Жалко, что в латинском нет "ї" и "є" wink.gif

-=VJ=- Подменю пользователя
сообщение 05.07.11, 19:59
Сообщение #12

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

Цитата(Lefer @ 05.07.11, 15:38) *
В семерке есть параметр "КодоваяСтраница", так вот она дает выбор только между Дос и Виндой.


И Вы хотите сказать, что Винда не возвращает Вам украинскую раскладку?
Ну так проверьте параметры системы - у меня ни разу проблем с этим не было.

Ну или выгружайте в xls smile.gif


Signature
Живу на VJ.net.ua.
Спілкуюсь в ЖЖ

kalyamov Подменю пользователя
сообщение 05.07.11, 20:36
Сообщение #13

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 186
Спасибо сказали: 31 раз
Рейтинг: 0

Цитата(Vofka @ 05.07.11, 18:48) *
А я помню при записи тестового файла менял украинскую "і" на английскую, никто и не знал smile.gif


Я тоже так дела при записи, если ни как не удавалось пользователей приучить к русскому. Но тут вопрос стоит при загрузке, а тут уж на файл не попеняешь. Сейчас гляну как знакомый с этим справляется, он упорный украинофил.

Цитата(-=VJ=- @ 05.07.11, 20:59) *
И Вы хотите сказать, что Винда не возвращает Вам украинскую раскладку?
Ну так проверьте параметры системы - у меня ни разу проблем с этим не было.


Кодовая страница, говорят, должна работать, вот только там вопрос с местом - или сразу после создатьобъект - или после открытия файла.

-=VJ=- Подменю пользователя
сообщение 05.07.11, 22:22
Сообщение #14

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

Цитата(kalyamov @ 05.07.11, 21:36) *
Кодовая страница, говорят, должна работать, вот только там вопрос с местом - или сразу после создатьобъект - или после открытия файла.


Ради интереса проверил на домашней машине, где 1С вообще не водилось до этого

//*******************************************
Процедура Сформировать()
    ДБФ=СоздатьОбъект("xBase");
    ДБФ.КодоваяСтраница(0);      
    ДБФ.ДобавитьПоле("FIO",2,50,0);
    ДБФ.СоздатьФайл("e:\1.dbf");
    ДБФ.Добавить();
    ДБФ.FIO="Євгеніївців І.Є.";
    ДБФ.Записать();
    ДБФ="";
    ДБФ2=СоздатьОбъект("xBase");
    ДБФ2.КодоваяСтраница(0);      
    ДБФ2.ОткрытьФайл("e:\1.dbf",,1);
    ДБФ2.Первая();
    Сообщить(ДБФ2.FIO);
КонецПроцедуры

Результат - Євгеніївців І.Є.

Никаких проблем


Signature
Живу на VJ.net.ua.
Спілкуюсь в ЖЖ

5_kopeek Подменю пользователя
сообщение 05.07.11, 23:39
Сообщение #15

Ветеран
*******
Женщине-одинэснику
Группа: Пользователи*
Сообщений: 940
Спасибо сказали: 285 раз
Рейтинг: 0

Цитата(-=VJ=- @ 05.07.11, 22:22) *
Результат - Євгеніївців І.Є.
Никаких проблем

Вопрос с укр. символами решала лет 5 назад. Тогда проблемы были с загрузкой из файла, созданного в другой программе.

Lefer, кажись, в Вашем случае проблема в том, что Вы вообще не указали кодовую страницу и, по умолчанию, файл записывается/открывается в досовской кодировке. Или принудительно указали КодоваяСтраница(1) как минимум при записи в файл.

kalyamov Подменю пользователя
сообщение 06.07.11, 0:38
Сообщение #16

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 186
Спасибо сказали: 31 раз
Рейтинг: 0

Цитата(5_kopeek @ 06.07.11, 0:39) *
Lefer, кажись, в Вашем случае проблема в том, что Вы вообще не указали кодовую страницу и, по умолчанию, файл записывается/открывается в досовской кодировке. Или принудительно указали КодоваяСтраница(1) как минимум при записи в файл.


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

Цитата(kalyamov @ 06.07.11, 1:36) *
Как минимум, я думаю,что файл он не записывал вообще, а уже из готового загружает данные, отсюда и проблема. Тут, наверное, и кодовая страница мало чем поможет.


вот я придурок, только сейчас прочитал тему, он и выгружает сам, виноват, прошу прощенья.

Lefer Подменю пользователя
сообщение 06.07.11, 9:08
Сообщение #17

Завсегдатай
****
Группа: Пользователи
Сообщений: 155
Спасибо сказали: 11 раз
Рейтинг: 0

Цитата(5_kopeek @ 06.07.11, 0:39) *
Lefer, кажись, в Вашем случае проблема в том, что Вы вообще не указали кодовую страницу и, по умолчанию, файл записывается/открывается в досовской кодировке. Или принудительно указали КодоваяСтраница(1) как минимум при записи в файл.


При выгрузке, как мне кажется, кодовую страницу указывать необязательно. За свою практику выгрузок - загрузок проблем не было до этих пор. Всегда все выгружалось/загружалось на ура... А Вы указываете? От чего это предохраняет?

Принудительно не указывал кодовую страницу.


Signature
It's the end of the world as we know it and I feel fine

5_kopeek Подменю пользователя
сообщение 06.07.11, 9:37
Сообщение #18

Ветеран
*******
Женщине-одинэснику
Группа: Пользователи*
Сообщений: 940
Спасибо сказали: 285 раз
Рейтинг: 0

Цитата(Lefer @ 06.07.11, 9:08) *
При выгрузке, как мне кажется, кодовую страницу указывать необязательно.

Тогда
Цитата(5_kopeek @ 05.07.11, 23:39) *
по умолчанию, файл записывается/открывается в досовской кодировке.


Цитата(Lefer @ 06.07.11, 9:08) *
А Вы указываете? От чего это предохраняет?

В частности, от проблем с укр. символами.
Сделайте, как Вам -=VJ=- посоветовал. Во всяком случае, обязательно указывайте кодовую страницу при заполнении дбф (КодоваяСтраница(0)).

Lefer Подменю пользователя
сообщение 06.07.11, 10:05
Сообщение #19

Завсегдатай
****
Группа: Пользователи
Сообщений: 155
Спасибо сказали: 11 раз
Рейтинг: 0

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

В процедуре выгрузки написал "DBF.КодоваяСтраница(0)" - результат аброкодабра. Что может быть?

Сообщение отредактировал Lefer - 06.07.11, 10:05


Signature
It's the end of the world as we know it and I feel fine

5_kopeek Подменю пользователя
сообщение 06.07.11, 10:06
Сообщение #20

Ветеран
*******
Женщине-одинэснику
Группа: Пользователи*
Сообщений: 940
Спасибо сказали: 285 раз
Рейтинг: 0

Абракадабра при просмотре или при загрузке?

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


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

 

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