Текущее время: Ср, дек 17 2025, 02:22

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


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

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


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

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