Текущее время: Пн, июн 23 2025, 01:21

Часовой пояс: 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
Сообщения: 4871
Откуда: Москва
Пол: Мужской
Вы все правильно написали.
Стандарт работает именно так: признак сторнирования хранится на уровне позиции (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
Сообщения: 4871
Откуда: Москва
Пол: Мужской
Согласен, индекс, конечно, первое дело, но такой индекс вроде в стандартной поставке системы есть.
Вместо 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 часа


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

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


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

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