Текущее время: Чт, май 23 2024, 19:48

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Признак сторно для документа материала
СообщениеДобавлено: Пт, фев 28 2014, 08:27 
Специалист
Специалист

Зарегистрирован:
Вт, фев 21 2006, 15:59
Сообщения: 220
Здравствуйте,

наверное, простой вопрос, но всё же.
Существует отчёт на ABAP по таблицам MKPF/MSEG с доп. аналитикой подобный MB51.
Есть задача добавить в этот отчёт признак того, что позиция сторнирована. Если решать задачу "в лоб", то мне видится только соединение таблицы MSEG с самой собой по условию совпадения MBLNR-MJAHR-ZEILE с SMBLN-SJAHR-SMBLP. Записи, которые будут найдены в этом запросе - сторнированы. Но такое решение не выдерживает никакой критики по производительности, поскольку отчёт может формироваться и за давно прошедшие периоды, а сторно документов совсем необязательно может быть в том же периоде, бывают случаи когда и спустя год сторнируют...
Подскажите пожалуйста какие есть более оптимальные варианты решения этой задачи, может как-то по-другому можно определить, что документ сторнирован.

_________________
I ♥ SAP


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Признак сторно для документа материала
СообщениеДобавлено: Пт, фев 28 2014, 08:36 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4843
Откуда: Москва
Пол: Мужской
Вы все правильно написали.
Стандарт работает именно так: признак сторнирования хранится на уровне позиции (mseg) и документ материала может быть частично сторнированным.
Альтернатива - сделать абап разработку, запрещающую частичное сторнирование документа материала + организующую заполнение z-признака сторно в MKPF. Тогда отчеты безусловно будут работать быстрее.

_________________
Удача - результат нашего желания (© А. Нортон)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Признак сторно для документа материала
СообщениеДобавлено: Пн, мар 03 2014, 14:11 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
на поля MSEG-S* нужно сделать индекс, тогда будет работать быстро

у меня в SQ отфильтровывается таким простым кодом:

clear: smbln, sjahr, smblp.
select single mblnr mjahr zeile
from mseg
into (smbln, sjahr, smblp)
where smbln = mseg-mblnr
and sjahr = mseg-mjahr
and smblp = mseg-zeile.

check smbln is initial.
check mseg-smbln is initial.

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Признак сторно для документа материала
СообщениеДобавлено: Пн, мар 03 2014, 14:20 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Вт, май 17 2005, 13:35
Сообщения: 4843
Откуда: Москва
Пол: Мужской
Согласен, индекс, конечно, первое дело, но такой индекс вроде в стандартной поставке системы есть.
Вместо mseg join mseg можно еще использовать конструкцию
Code:
select ... from mseg
       where not exist select from mseg...


Но в любом случае все эти проверки на уровни позиции ограничены по быстродействию.
Грубо говоря, при числе записей в mseg больше 0,5 миллиарда, уже не спасает и лучше делать свой признак сторно на уровне заголовка

_________________
Удача - результат нашего желания (© А. Нортон)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Признак сторно для документа материала
СообщениеДобавлено: Пн, мар 03 2014, 14:24 
Специалист
Специалист

Зарегистрирован:
Вт, фев 21 2006, 15:59
Сообщения: 220
Спасибо что подтвердили, что делается именно по этим полям, про индекс тоже подумал, что нужен будет. Благодарю за помощь!
Поскольку у нас отчёт на Абапе, подумал, что стоит сначала выбрать сторнированные по заданным критериям отчёта, а потом работать с ними.

UP: да, идея примерно как в сообщении LKU :) Долго писал это сообщение :)
У нас MSEG как раз подбирается к отметке в полмиллиарда, посмотрю как будет работать.

_________________
I ♥ SAP


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

Зарегистрирован:
Чт, май 16 2013, 13:37
Сообщения: 214
Откуда: Челябинск
Пол: Мужской
SAA написал:
на поля MSEG-S* нужно сделать индекс, тогда будет работать быстро

у меня в SQ отфильтровывается таким простым кодом:

clear: smbln, sjahr, smblp.
select single mblnr mjahr zeile
from mseg
into (smbln, sjahr, smblp)
where smbln = mseg-mblnr
and sjahr = mseg-mjahr
and smblp = mseg-zeile.

check smbln is initial.
check mseg-smbln is initial.


Подскажите пожалуйста, добавил код в точности как у вас в sq отчет, добавил таблицу mseg в группы полей, вытащил в алв все поля, выходят корректно, но поля при проверки кодировки, не определяет почему то, что нужно еще сделать?
Изображение

_________________
Свобода здесь и сейчас.


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

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


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

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


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

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