Текущее время: Пн, июл 28 2025, 18:24

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: Выборка из bseg. Можно ли заменить на выборку из bsis-bsas?
СообщениеДобавлено: Ср, июл 11 2007, 15:35 
Специалист
Специалист

Зарегистрирован:
Ср, окт 04 2006, 09:08
Сообщения: 204
Есть страшный select из bseg'a. Хочу заменить его на выборку из bsis и bsas.
Будет ли выборка из bsis и bsas в самом общем случае эквивалентна выборке из bseg?

Или надо еще добирать данные из bsik, bsak, bsid, bsad, и bset (в общем случае)?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 15:46 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, дек 07 2006, 12:48
Сообщения: 76
Пол: Мужской
Смотря, что Тебе надо. Каждая из "индексных" содержит свой набор. Так что, уточни вопрос.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 15:48 
Почетный гуру
Почетный гуру
Аватара пользователя

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

Все зависит от конкретной задачи: первоначальный отбор данных организуется без bseg, и только имея на руках хотя бы ключ bukrs-belnr-gjahr, и твердую уверенность, что нужны какие-то поля, которые присутствуют только в bseg - делается выборка из него

Все это - имхо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 15:49 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Нет, не будет.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выборка из bseg. Можно ли заменить на выборку из bsis-bsas?
СообщениеДобавлено: Ср, июл 11 2007, 15:54 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 09 2007, 15:40
Сообщения: 56
Откуда: Поволжье
profiteer написал(а):
Есть страшный select из bseg'a. Хочу заменить его на выборку из bsis и bsas.
Будет ли выборка из bsis и bsas в самом общем случае эквивалентна выборке из bseg?

Или надо еще добирать данные из bsik, bsak, bsid, bsad, и bset (в общем случае)?


Задача неясна. все завсит что ты ищешь в bseg. Какие определяющие параметры (кредиторы/дебиторы, счета, выравнивание, тексты и др )

В зависимости от этого и определяется оптимальный вариант выборки данных из таблиц, и из каких таблиц.

Если речь только о позициях ОС то предполагаю что можно...

а если про все данные говорить.... то BSEG = bsik + bsak + bsid + bsad + bsis +bsas + bset + что-то второстепенное...

А вот что быстрее будет искаться - это уже вопрос :?:

_________________
Важно качество, а не количество. Ибо стремясь за количесвом можно серьезно пожертвовать качеством ... ;)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выборка из bseg. Можно ли заменить на выборку из bsis-bsas?
СообщениеДобавлено: Ср, июл 11 2007, 16:20 
Специалист
Специалист

Зарегистрирован:
Ср, окт 04 2006, 09:08
Сообщения: 204
Simmike написал(а):
profiteer написал(а):
Есть страшный select из bseg'a. Хочу заменить его на выборку из bsis и bsas.
Будет ли выборка из bsis и bsas в самом общем случае эквивалентна выборке из bseg?

Или надо еще добирать данные из bsik, bsak, bsid, bsad, и bset (в общем случае)?


Задача неясна. все завсит что ты ищешь в bseg. Какие определяющие параметры (кредиторы/дебиторы, счета, выравнивание, тексты и др )

В зависимости от этого и определяется оптимальный вариант выборки данных из таблиц, и из каких таблиц.

Если речь только о позициях ОС то предполагаю что можно...

а если про все данные говорить.... то BSEG = bsik + bsak + bsid + bsad + bsis +bsas + bset + что-то второстепенное...

А вот что быстрее будет искаться - это уже вопрос :?:


В общем вот он этот запрос:

Code:

  SELECT * FROM bseg WHERE bukrs IN bukrs  AND                 
* >> комментарий                                               
* Здесь определяется не только доп.расходы, но и сумма выручки 
* <<                                                           
                            gjahr IN gjahr  AND                 
                            hkont IN ranbwa AND                 
                            ( anln1 IN anln1 AND               
                            anln2 IN ranln2  AND               
                            shkzg EQ 'H' ) OR                   
                            ( zuonr IN danln1 AND               
                              shkzg EQ 'S' ).                   

При этом ranbwa содержит значения:
I |EQ |9120032110| |
I |EQ |9120032121| |
I |EQ |9120111140| |
I |EQ |9120100130| |
I |EQ |9120032211| |
I |EQ |9120034102| |
I |EQ |7902000100| |
I |EQ |9120111001| |
I |EQ |9110021101| |
I |EQ |9120031121| |
I |EQ |9120031310| |
I |EQ |9120031111| |
I |EQ |9120031211| |

а таблицы anln1, ranln2 и danln1 - пустые.

Что это может значить... наверное все-таки основные средства?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выборка из bseg. Можно ли заменить на выборку из bsis-bsas?
СообщениеДобавлено: Ср, июл 11 2007, 16:52 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 09 2007, 15:40
Сообщения: 56
Откуда: Поволжье
profiteer написал(а):
В общем вот он этот запрос:

Code:

  SELECT * FROM bseg WHERE bukrs IN bukrs  AND                 
* >> комментарий                                               
* Здесь определяется не только доп.расходы, но и сумма выручки 
* <<                                                           
                            gjahr IN gjahr  AND                 
                            hkont IN ranbwa AND                 
                            ( anln1 IN anln1 AND               
                            anln2 IN ranln2  AND               
                            shkzg EQ 'H' ) OR                   
                            ( zuonr IN danln1 AND               
                              shkzg EQ 'S' ).                   

Что это может значить... наверное все-таки основные средства?


Мда веселенький запросик. При этом еще и со скобочками немного попутано. смотри внимательно сочетание "and () и OR"
Как я предполагаю, с вопросом нужно обращасть к настройшикам по основным средстам и по счетам конечно тоже.

Ну или гуру конечно же более точно подскажут :roll:

_________________
Важно качество, а не количество. Ибо стремясь за количесвом можно серьезно пожертвовать качеством ... ;)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выборка из bseg. Можно ли заменить на выборку из bsis-bsas?
СообщениеДобавлено: Ср, июл 11 2007, 17:36 
Специалист
Специалист

Зарегистрирован:
Пт, апр 13 2007, 17:15
Сообщения: 225
profiteer написал(а):
В общем вот он этот запрос:

Code:

  SELECT * FROM bseg WHERE bukrs IN bukrs  AND                 
* >> комментарий                                               
* Здесь определяется не только доп.расходы, но и сумма выручки 
* <<                                                           
                            gjahr IN gjahr  AND                 
                            hkont IN ranbwa AND                 
                            ( anln1 IN anln1 AND               
                            anln2 IN ranln2  AND               
                            shkzg EQ 'H' ) OR                   
                            ( zuonr IN danln1 AND               
                              shkzg EQ 'S' ).                   

При этом ranbwa содержит значения:
I |EQ |9120032110| |
I |EQ |9120032121| |
I |EQ |9120111140| |
I |EQ |9120100130| |
I |EQ |9120032211| |
I |EQ |9120034102| |
I |EQ |7902000100| |
I |EQ |9120111001| |
I |EQ |9110021101| |
I |EQ |9120031121| |
I |EQ |9120031310| |
I |EQ |9120031111| |
I |EQ |9120031211| |

а таблицы anln1, ranln2 и danln1 - пустые.

Что это может значить... наверное все-таки основные средства?

Как уже отмечалось запрос крив, даже если исправить косяки с OR в случае если будут заполнены таблицы anln1, ranln2 он вообще ничего не вернёт :( . Необходимо у спецов по FI-AA выяснить корреспондирующие, со списком счетов ranbwa, счета ОС и определить отправляются ли они в BSAS BSIS, если да то всё o'k (только за номерами ОС надо в BSEG лезть), а если нет то остаётся пожелать Вам удачи в бою, особенно если необходимо налагать ограничения через anln1, ranln2 и danln1.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 19:06 
Специалист
Специалист

Зарегистрирован:
Ср, окт 04 2006, 09:08
Сообщения: 204
Действительно, последняя часть запроса похожа на какой-то бред.
Ладно, будем разбираться. Спасибо!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, июл 29 2007, 21:39 
Старший специалист
Старший специалист

Зарегистрирован:
Сб, июл 28 2007, 20:38
Сообщения: 364
Запрос страшен)) круче только select* from bseg into table lt_bseg. ))

Можно сказать, что выборку из bseg рекомендуется делать только по индексируемым полям.


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

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
__Gennady написал(а):
Можно сказать, что выборку из bseg рекомендуется делать только по индексируемым полям...

... то бишь БЕ, год, номер документа и номер строки

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июл 30 2007, 09:22 
Старший специалист
Старший специалист

Зарегистрирован:
Сб, июл 28 2007, 20:38
Сообщения: 364
Цитата:
.. то бишь БЕ, год, номер документа и номер строки

именно так


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июл 30 2007, 09:38 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
__Gennady написал(а):
Цитата:
.. то бишь БЕ, год, номер документа и номер строки

именно так


То есть вы хотите сказать, что выборка, скажем 4 позиций документа по отдельности будет быстрее, чем выборка всех позиций по указанному документу? При этом номера позиций еще требуется знать.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июл 30 2007, 09:42 
Старший специалист
Старший специалист

Зарегистрирован:
Сб, июл 28 2007, 20:38
Сообщения: 364
Цитата:
То есть вы хотите сказать, что выборка, скажем 4 позиций документа по отдельности будет быстрее, чем выборка всех позиций по указанному документу? При этом номера позиций еще требуется знать.

Нет. Это не так. В данном примере неполный первичный ключ будет обработан корректно. Вот например если вместо номера документа будет указан номер документа сторно - будет медленне по двум причинам - не полный ключ и использование "кластерных" полей


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

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


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

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


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

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