Текущее время: Вс, июл 06 2025, 15:46

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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