Текущее время: Вс, июл 13 2025, 18:13

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: проблема с кодировкой в загрузке через BAPI
СообщениеДобавлено: Ср, июл 12 2006, 06:41 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, дек 23 2005, 13:28
Сообщения: 113
Откуда: Южно-Сахалинск
Возникла проблема с кодировкой при загрузке данных из внешней среды через бапи. Как разрулить проблему с корректным выводом русского шрифта?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: проблема с кодировкой в загрузке через BAPI
СообщениеДобавлено: Ср, июл 12 2006, 07:40 
Директор
Директор

Зарегистрирован:
Чт, май 12 2005, 11:10
Сообщения: 1038
Пол: Мужской
Crasher написал(а):
Возникла проблема с кодировкой при загрузке данных из внешней среды через бапи. Как разрулить проблему с корректным выводом русского шрифта?


откуда и куда и что и чем грузим то ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: проблема с кодировкой в загрузке через BAPI
СообщениеДобавлено: Ср, июл 12 2006, 07:46 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Crasher написал(а):
Возникла проблема с кодировкой при загрузке данных из внешней среды через бапи. Как разрулить проблему с корректным выводом русского шрифта?

А поподробней про процедуру загрузки? "через бапи" - это через вызов по RFC?

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: RFC
СообщениеДобавлено: Ср, июл 12 2006, 08:05 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, дек 23 2005, 13:28
Сообщения: 113
Откуда: Южно-Сахалинск
Да через RFC гружу. который COM.
Excel(VBasic)->SAP


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 12 2006, 11:38 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
Translate to codepage ... пробовали? Это, конечно, не панацея, но один из вариантов.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 12 2006, 11:48 
Ассистент
Ассистент

Зарегистрирован:
Вт, дек 07 2004, 15:46
Сообщения: 32
Translate to codepage в таком случае не помогает.
Но у объекта Connection оказалось свойство CodePage.
Следовательно

Set oLogonCtrl = CreateObject("SAP.BAPI.1")
Set oConnection = oLogonCtrl.Connection
....
oConnection.CodePage = "1504"

мне помогло.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 12 2006, 13:48 
Ассистент
Ассистент

Зарегистрирован:
Вт, апр 18 2006, 15:27
Сообщения: 32
Если система не юникодовая, то можно все перекодировать вручную.
Обычно на клиенте стоит кодировка win-1251, если клиент работает под виндами, а на серваке - ISO.
Тогда можно перед отправкой строки перекодировать примерно так (здесь важно помнить, что Excel хранит все строки в Unicode, поэтому преобразование такое - Unicode - win1251 - ISO - Unicode):
Code:
Private Function RecodeWinToISO(S As String) As String
Dim I As Integer
Dim BA() As Byte
Dim S1 As String
    S1 = StrConv(S, vbFromUnicode)
    BA() = S1
    For I = LBound(BA) To UBound(BA)
        If BA(I) >= 192 And BA(I) <= 255 Then
            BA(I) = BA(I) - 16
        End If
    Next I
    S1 = BA()
    RecodeWinToISO = StrConv(S1, vbUnicode)
End Function

Функция перекодирует все русские символы кроме буквы \ё\
Если на клиенте кодировка другая, то можно написать другой перекодировщик.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 12 2006, 14:24 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, дек 23 2005, 13:28
Сообщения: 113
Откуда: Южно-Сахалинск
спасибо за помощь. методом тыка понял в чём дело. Инет не работал, новых постов не видел)
Да, в итоге дело в том что "SAP.BAPI.1" , activeX Logon который, исользовал CODEPAGE стандартный, лечилось это перестановкой на 1504 кодировку в опциях activeX Logon. Странно почему этот элемент не использует стандартные настроки, которые пописаны в SAPlogon-е :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB