Текущее время: Вс, июн 22 2025, 14:11

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Перевод строки в транслит
СообщениеДобавлено: Чт, апр 07 2005, 11:13 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
кажется. такой функции в сап нет, может кто писал? поделитесь..

_________________
полный SAPец


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Перевод строки в транслит
СообщениеДобавлено: Пт, апр 08 2005, 17:35 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 08:36
Сообщения: 182
Откуда: Russia
Пол: Мужской
slash написал(а):
кажется. такой функции в сап нет, может кто писал? поделитесь..


Типа вот тебе текст ФМ:

str1 = 'БРШ'.
TRANSLATE str1 USING 'БBРR'.
REPLACE 'Ш' WITH 'SH' INTO str1.

В str1 получиться 'BRSH'
Допихай все варианты перевода и будет счастие :)

_________________
С Уважением Серега


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Перевод строки в транслит
СообщениеДобавлено: Пн, апр 11 2005, 12:00 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
R256 написал:
slash написал(а):
кажется. такой функции в сап нет, может кто писал? поделитесь..


Типа вот тебе текст ФМ:

str1 = 'БРШ'.
TRANSLATE str1 USING 'БBРR'.
REPLACE 'Ш' WITH 'SH' INTO str1.

В str1 получиться 'BRSH'
Допихай все варианты перевода и будет счастие :)

ага, как же, а буквы типа Ч Ш как транслетить будешь?
вообще для однобуквенных так и сделал, но без case не обойтись

_________________
полный SAPец


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Перевод строки в транслит
СообщениеДобавлено: Пн, апр 11 2005, 12:23 
Гость
slash написал(а):
кажется. такой функции в сап нет, может кто писал? поделитесь..


TRANSLATE char_field FROM CODE PAGE '1500' TO CODE PAGE '1146'.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 13:08 
Модератор
Модератор

Зарегистрирован:
Пт, ноя 12 2004, 11:40
Сообщения: 542
Откуда: Москва
Пол: Мужской
In the Unicode context, TRANSLATE... CODEPAGE/NUMBER FORMAT is not
allowed
:(


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 13:11 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
В свойствах программы снимите галочку Проверки юникода акт. Хотя это сильно не рекомендуется SAP.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 13:35 
Модератор
Модератор

Зарегистрирован:
Пт, ноя 12 2004, 11:40
Сообщения: 542
Откуда: Москва
Пол: Мужской
Плохой транслит получается...

a b v gh d ie io zh z i i k l m n o p r s t u f h ts tsch sch schtsch b bl ! e yu ya


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 14:37 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
Ich Will написал:
Плохой транслит получается...

a b v gh d ie io zh z i i k l m n o p r s t u f h ts tsch sch schtsch b bl ! e yu ya

фм пиши, могу код выложить ежели лень

_________________
полный SAPец


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 14:42 
Гость
DATA: RUS(66), S1(33), S2(33),
T1(32), T2(41), T11(32), T21(41), TC(146).
DATA: BEGIN OF TR OCCURS 0,
TB(2),
END OF TR,
I TYPE I, K TYPE I, L TYPE I, VR1(30), Y.

PARAMETERS: VR(30) LOWER CASE.

S1 = 'АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'.
S2 = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя'.
CONCATENATE S1 S2 INTO RUS.
T1 = 'A,B,V,G,D,E,YO,ZH,Z,I,Y,K,L,M,N,'.
T2 = 'O,P,R,S,T,U,F,H,C,CH,SH,SCH, ,I, ,E,YU,YA'.
T11 = 'a,b,v,g,d,e,yo,zh,z,i,y,k,l,m,n,'.
T21 = 'o,p,r,s,t,u,f,h,c,ch,sh,sch, ,i, ,e,yu,ya'.
CONCATENATE T1 T2 T11 T21 INTO TC.
SPLIT TC AT ',' INTO TABLE TR.
I = 0.
CONDENSE: VR.
CLEAR: Y.
L = STRLEN( VR ) - 1.
WHILE I <= L.
IF S1 CS VR+I(1) AND VR+I(1) NE SPACE.
K = SY-FDPOS + 1.
READ TABLE TR INDEX K.
IF SY-SUBRC = 0.
CONDENSE TR-TB.
IF NOT Y IS INITIAL.
CONCATENATE VR1 TR-TB INTO VR1 SEPARATED BY SPACE.
CLEAR: Y.
ELSE.
CONCATENATE VR1 TR-TB INTO VR1.
ENDIF.
ENDIF.
ELSE.
IF Y IS INITIAL AND VR+I(1) NE SPACE.
CONCATENATE VR1 VR+I(1) INTO VR1.
ENDIF.
IF NOT Y IS INITIAL.
CONCATENATE VR1 VR+I(1) INTO VR1 SEPARATED BY SPACE.
CLEAR: Y.
ENDIF.
ENDIF.
IF VR+I(1) = SPACE.
Y = 'X'.
ENDIF.
ADD 1 TO I.
ENDWHILE.
WRITE:/ VR.
WRITE:/ VR1.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 16:09 
Модератор
Модератор

Зарегистрирован:
Пт, ноя 12 2004, 11:40
Сообщения: 542
Откуда: Москва
Пол: Мужской
Щука - SCUKA :))


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 16:13 
Гость
Ich Will написал:
Щука - SCUKA :))


ну не придирайтесь :)

можно же поправить
DATA: BEGIN OF TR OCCURS 0,
TB(3),
END OF TR,


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, апр 11 2005, 16:19 
Гость
и еще - в конце запятую пропустили
T2 = 'O,P,R,S,T,U,F,H,C,CH,SH,SCH, ,I,'',E,YU,YA,'.


соответственно:
DATA: RUS(66), S1(33), S2(33),
T1(32), T2(42), T11(32), T21(41), TC(147).


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

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


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

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


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

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