Текущее время: Вс, июл 20 2025, 10:06

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Удаление данных во внутренней таблице
СообщениеДобавлено: Вт, фев 06 2007, 14:54 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, янв 10 2006, 12:01
Сообщения: 89
Есть внутенняя таблица оборотов по счетам (Счет, корреспондирующий счет, сумма)
TURN
c полями
ACC
KACC
SUMM

Есть таблица словаря данных Счет(Счет, Счет первого порядка).
/BIC/ACC
с полями
ACC
BALACC1

Как правильно сформировать таблицу, которая будет содержать
(Счет, Корреспондирующий счет, Сумму, Балансовый счет 1 порядка)?

Необходимо ли делат loop по всей таблице оборотов и последовательно вставлять строки в новую таблицу?

Или можно сделать что-то типа select с условиями, чтобы объединить несколько внутренних таблиц.

С АБАПОМ не работал много, так что может есть какой выход.

Заранее спасибо за помощь


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

Зарегистрирован:
Чт, апр 07 2005, 05:27
Сообщения: 621
Откуда: Москва
Пол: Мужской
1. Во внутреннюю таблицу TURN добавьте колонку BALACC1
2. Если ACC в пределах нескольких тыс. строк, то: SELECT целиком во внутр. таблицу it_acc
3.

Code:
LOOP AT turn.
  READ TABLE it_acc WITH KEY acc = turn-acc.
  IF sy-subrc = 0.
    turn-balacc1 = it_acc-balacc1.
    MODIFY turn.
  ENDIF.
ENDLOOP.


4. Optional, чтоб память не кушало.
Code:
REFRESH it_acc.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 06 2007, 15:59 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
lumer написал:
4. Optional, чтоб память не кушало.
Code:
REFRESH it_acc.


Чтобы память не кушало, лучше делать FREE it_acc. И в некоторых случаях совсем не optional.


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

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
lumer написал:
2. Если ACC в пределах нескольких тыс. строк, то: SELECT целиком во внутр. таблицу it_acc


Отсортировать it_acc забыли и использовать бинарный поиск. И плюс к этому стоит закешировать последнее значение.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 06 2007, 16:44 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, апр 07 2005, 05:27
Сообщения: 621
Откуда: Москва
Пол: Мужской
Согласен со всем, но если понтоваться, то

DTSTTCPW (искать яндексом) :)


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

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

ты первый про оптимизацию начал ;-)


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

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
:) loop по turn можно через assign пропустить


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 07 2007, 16:58 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, апр 07 2005, 05:27
Сообщения: 621
Откуда: Москва
Пол: Мужской
Извращенцы ))
Нас г-н akula84 еще понимает? ))


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 07 2007, 17:37 
Гость
еще можно очистить табличку
clear it_acc[].

:P


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 07 2007, 18:40 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
РМщик написал(а):
еще можно очистить табличку
clear it_acc[].

:P


По второму кругу пошли... Мопед не мой.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, фев 08 2007, 12:18 
Директор
Директор
Аватара пользователя

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, фев 08 2007, 19:04 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, апр 07 2005, 05:27
Сообщения: 621
Откуда: Москва
Пол: Мужской
Можно еще
SORT it_acc
и использовать бинарный поиск


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

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


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

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


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

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