Текущее время: Ср, июл 23 2025, 09:48

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Использование функций из ораклов.пакета UTL_MATCH в Abap
СообщениеДобавлено: Вт, июл 17 2012, 07:16 
Начинающий
Начинающий

Зарегистрирован:
Вт, июл 17 2012, 06:54
Сообщения: 13
Для вывода дублей материала, я планирую использовать функцию utl_match.edit_distance_similarity. Возникли проблемы с адаптацией под abap.
Есть ли какой-нибудь рабочий пример применения пакета utl_match в абапе?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование функций из ораклов.пакета UTL_MATCH в Abap
СообщениеДобавлено: Вт, июл 17 2012, 09:15 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
SAP R/3 задумывался как платформо-независимая среда и использование функциональных особенностей БД в нем не особо приветствуется, хотя такая возможность есть.
А что, для определения и вывода дублей материалов необходимо использовать сложные алгоритмы? :?

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование функций из ораклов.пакета UTL_MATCH в Abap
СообщениеДобавлено: Вт, июл 17 2012, 11:41 
Начинающий
Начинающий

Зарегистрирован:
Вт, июл 17 2012, 06:54
Сообщения: 13
Удав написал(а):
SAP R/3 задумывался как платформо-независимая среда и использование функциональных особенностей БД в нем не особо приветствуется, хотя такая возможность есть.
А что, для определения и вывода дублей материалов необходимо использовать сложные алгоритмы? :?



Использование данной функции позволило бы снизить трудозатраты по реализации поиска дублей к минимуму, т.к. необходимые алгоритмы она уже содержит.
По-моему слишком трудоемко искать вручную и достичь при этом наиболее точных результатов.
Посоветуете что-нибудь, методы, способы, подходы? с примером желательно :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование функций из ораклов.пакета UTL_MATCH в Abap
СообщениеДобавлено: Вт, июл 17 2012, 13:31 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
2 BYA: если у вас система версии 7.02 и выше, то аналогичная функция уже есть в абапе. Называется distance.

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование функций из ораклов.пакета UTL_MATCH в Abap
СообщениеДобавлено: Вт, июл 17 2012, 14:01 
Начинающий
Начинающий

Зарегистрирован:
Вт, июл 17 2012, 06:54
Сообщения: 13
Кодер написал(а):
2 BYA: если у вас система версии 7.02 и выше, то аналогичная функция уже есть в абапе. Называется distance.


А по-конкретнее? ФМ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование функций из ораклов.пакета UTL_MATCH в Abap
СообщениеДобавлено: Вт, июл 17 2012, 21:36 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
Куда уж конкретнее. Новая функция языка. Вообще, очень рекомендую хелп на изменения языка в зависимости от релиза. В абап -редакторе ф1 а далее в первом уровне веток ищете.

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование функций из ораклов.пакета UTL_MATCH в Abap
СообщениеДобавлено: Вт, июл 31 2012, 11:29 
Начинающий
Начинающий

Зарегистрирован:
Вт, июл 17 2012, 06:54
Сообщения: 13
Кодер написал(а):
В абап -редакторе ф1 а далее в первом уровне веток ищете.


Код есть, помогите, пожалуйста, довести до ума:

REPORT demo_string_distance.

PARAMETERS: word TYPE c LENGTH 30 DEFAULT 'CALL METHOD' OBLIGATORY,
percent TYPE i DEFAULT 50 OBLIGATORY.

CLASS demo DEFINITION.
PUBLIC SECTION.
CLASS-METHODS main.
ENDCLASS.

CLASS demo IMPLEMENTATION.
METHOD main.
DATA: index_tab TYPE REF TO cl_abap_docu=>man_index_tab,
langu TYPE sy-langu,
dist TYPE i,
max TYPE i,
str1 TYPE string,
str2 TYPE string,
BEGIN OF result,
dist TYPE i,
text TYPE string,
END OF result,
result_tab LIKE SORTED TABLE OF result
WITH NON-UNIQUE KEY dist,
output TYPE string.
FIELD-SYMBOLS: <index_tab> TYPE cl_abap_docu=>man_index_tab,
<index> TYPE LINE OF cl_abap_docu=>man_index_tab.
IF sy-langu <> 'D'.
langu = 'E'.
ELSE.
langu = 'D'.
ENDIF.
index_tab = cl_abap_docu=>get_abap_index( langu ).
ASSIGN index_tab->* TO <index_tab>.
LOOP AT <index_tab> ASSIGNING <index>.
str1 = to_upper( val = <index>-key1 ).
str2 = to_upper( val = word ).
IF strlen( str1 ) > strlen( str2 ).
max = strlen( str1 ).
ELSE.
max = strlen( str2 ).
ENDIF.
max = ( 100 - percent ) * max / 100 + 1.
dist = distance( val1 = str1 val2 = str2 max = max ).
IF dist < max.
result-dist = dist.
result-text = str1.
INSERT result INTO TABLE result_tab.
ENDIF.
ENDLOOP.
LOOP AT result_tab INTO result.
output = |{ result-text WIDTH = 40 }({ result-dist })|.
WRITE: / output.
ENDLOOP.
ENDMETHOD.
ENDCLASS.

START-OF-SELECTION.
demo=>main( ).

AT SELECTION-SCREEN ON percent.
IF percent NOT BETWEEN 0 AND 100.
MESSAGE 'Enter a value between 0 and 100' TYPE 'E'.
ENDIF.


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

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


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

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


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

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