Текущее время: Чт, июл 31 2025, 16:27

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Поиск
СообщениеДобавлено: Пт, мар 28 2008, 14:53 
Начинающий
Начинающий

Зарегистрирован:
Ср, фев 20 2008, 12:22
Сообщения: 9
Есть задача найти документы по содержимому его текстов (счет-фактуру по ГТД). Нарыл, что тексты система выбирает из таблицы STXL след. образом:

Code:
IMPORT tline TO rt_lines
      FROM DATABASE stxl(tx)
        ID stxl_id
      ACCEPTING TRUNCATION
      IGNORING CONVERSION ERRORS.




Содержимое полей структуры stxl_id заполняется так:

Code:
TDOBJECT = 'BELEG'.
TDNAME = BUKRS+BELNR+GJAHR
TDID = '0001'.
TDSPRAS = 'R'.



Но в моем случае номер документа как раз неизвестен. Если его в структуре не заполняю, таблица rt_lines пуста. Справку по F1 на IMPORT читал, но не понятно, как тут еще можно ID передать. Может есть у кого идеи?
В принципе, задачу решил, но как-то неоптимально вышло (предварительная выборка из STXL с указанием TDOBJECT, TDID, и TDNAME, сформированным по шаблону BUKRS+'*'+GJAHR, а далее IMPORT ... по полученным записям).

_________________
Жаль, что завтра это не то послезавтра, что было ещё вчера.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Поиск
СообщениеДобавлено: Пт, мар 28 2008, 18:22 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, ноя 12 2004, 10:44
Сообщения: 370
Откуда: Москва
kalyaka написал(а):
Есть задача найти документы по содержимому его текстов (счет-фактуру по ГТД). Нарыл, что тексты система выбирает из таблицы STXL след. образом:

Code:
IMPORT tline TO rt_lines
      FROM DATABASE stxl(tx)
        ID stxl_id
      ACCEPTING TRUNCATION
      IGNORING CONVERSION ERRORS.




Содержимое полей структуры stxl_id заполняется так:

Code:
TDOBJECT = 'BELEG'.
TDNAME = BUKRS+BELNR+GJAHR
TDID = '0001'.
TDSPRAS = 'R'.



Но в моем случае номер документа как раз неизвестен. Если его в структуре не заполняю, таблица rt_lines пуста. Справку по F1 на IMPORT читал, но не понятно, как тут еще можно ID передать. Может есть у кого идеи?
В принципе, задачу решил, но как-то неоптимально вышло (предварительная выборка из STXL с указанием TDOBJECT, TDID, и TDNAME, сформированным по шаблону BUKRS+'*'+GJAHR, а далее IMPORT ... по полученным записям).


из кластерной таблицы по маске читать не выйдет.
проблему можно решить в два шага:

1) определение ключей для поиска (например по STXH)
2) чтение всего списка для отыскания нужного


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, мар 28 2008, 18:33 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
По-хорошему тексты можно искать быстро только по данным заголовка (STXH). Даже ФМ такой есть - SEARCH_TEXT.
Поиск по STXL в любом случае будет неоптимальным, т.к. все равно придется перебирать все записи. :?
Вопрос: А почему номер ГТД нельзя хранить не в тексте, а в доп.данных фактуры SD (BAdI BADI_SD_CUST_HEAD, расширить таблицу VBRK)? Тогда можно будет сделать индекс по этому полю и искать данные очень быстро. :wink:

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Поиск
СообщениеДобавлено: Пн, мар 31 2008, 07:23 
Начинающий
Начинающий

Зарегистрирован:
Ср, фев 20 2008, 12:22
Сообщения: 9
holocron написал(а):

из кластерной таблицы по маске читать не выйдет.
проблему можно решить в два шага:

1) определение ключей для поиска (например по STXH)
2) чтение всего списка для отыскания нужного


В принципе, примерно так и получилось сделать.

Удав написал(а):
По-хорошему тексты можно искать быстро только по данным заголовка (STXH). Даже ФМ такой есть - SEARCH_TEXT.
Поиск по STXL в любом случае будет неоптимальным, т.к. все равно придется перебирать все записи.
Вопрос: А почему номер ГТД нельзя хранить не в тексте, а в доп.данных фактуры SD (BAdI BADI_SD_CUST_HEAD, расширить таблицу VBRK)? Тогда можно будет сделать индекс по этому полю и искать данные очень быстро.


search_text отрабатывает только при изветсном номере документа, к сожалению. А насчет хранения ГТД в таблице... Я в сапе еще новичок, и до таких вопросов не дорос:-) Но возьму на заметку:-)

_________________
Жаль, что завтра это не то послезавтра, что было ещё вчера.


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

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


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

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


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

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