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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Запись поля werks из карточки ос в документ списания
СообщениеДобавлено: Вт, окт 05 2010, 11:23 
Ассистент
Ассистент

Зарегистрирован:
Сб, дек 19 2009, 09:04
Сообщения: 46
Пол: Женский
Доброго дня

Подскажите как лучше реализовать данную доработку через замещение (пользовательская программа) или через события Open fi?
Пробовали событие 1120 на момент отработки данного события в поле AWKEY есть только БЕ и год, а номера документа Ос нет :(

Cоздается документ списания ОС, необходимо чтобы в строках данного документа для счета 976* происходила
запись значения поля werks из карточки ос в поле строки документа bseg-werks

Для позиций документа FI
Если BKPF – BLART = ‘AA’ and (BKPF – TCODE = ‘ABAVN’ or BKPF – TCODE = ‘AB01’)
1. Запоминаем значение поля BKPF – AWKEY документа
2. Делаем выборку из таблицы ANEP:
Первые 10 символов из поля BKPF – AWKEY подставляем в поле ANEP-BELNR and
Значение поля BKPF – BUKRS в поле ANEP – BUKRS and
Значение поля BKPF – GJAHR в поле ANEP – GJAHR and
Поле ANEP – AFABE = 1
Запоминаем значения полей ANEP-ANLN1, ANEP – BUKRS
3. Делаем выборку из таблицы ANLZ:
Значение из поля ANEP-ANLN1 подставляем в поле ANLZ – ANLN1 and
Значение из поля ANEP – BUKRS подставляем в поле ANLZ – BUKRS and
По значениям полей ANLZ-ADATU и ANLZ-BDATU анализировать на вхождение в текущий временной интервал
Запоминаем значение поля ANLZ-WERKS
4. Выбираем строку нашего документа из таблицы BSEG:
Значение из поля BKPF – BELNR в поле BSEG – BELNR and
Значение из поля BKPF – BUKRS в поле BSEG – BUKRS and
Значение из поля BKPF – GJAHR в поле BSEG – GJAHR and
HKONT=’97600000’
И в поле Bseg – WERKS записываем найденное значение из поля ANLZ-WERKS


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись поля werks из карточки ос в документ списания
СообщениеДобавлено: Вт, окт 05 2010, 12:59 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
На момент вызова события 1120 будут доступны глобальные данные группы функций AMDP. Из них можно определить номер ОС и определить данные из ANEP.

_________________
С уважением,
Удав.


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

Зарегистрирован:
Сб, дек 19 2009, 09:04
Сообщения: 46
Пол: Женский
сделали пока для транзакции abso (ab01)


DATA: lv_werks LIKE bseg-werks
, lv_bukrs LIKE anep-bukrs
, lv_belnr LIKE anep-belnr
, lv_gjahr LIKE anep-gjahr
.

DATA: BEGIN OF lt_anep OCCURS 100.
INCLUDE STRUCTURE anep.
DATA: END OF lt_anep.
DATA: ls_anep TYPE anep.

LOOP AT t_bkpf WHERE blart = 'AA' AND tcode = 'AB01' .
break defi.
CLEAR lv_werks.
FIELD-SYMBOLS: <anep> TYPE ANY TABLE.
CLEAR lt_anep.
ASSIGN ('(SAPMA01B)YANEP[]') TO <anep>.
IF sy-subrc = 0.
LOOP AT <anep> INTO ls_anep.
APPEND ls_anep TO lt_anep.
ENDLOOP.
ENDIF.

READ TABLE lt_anep INTO ls_anep WITH KEY afabe = 1.

IF sy-subrc = 0.
SELECT SINGLE werks FROM anlz
INTO lv_werks
WHERE bukrs = ls_anep-bukrs
AND anln1 = ls_anep-anln1
AND bdatu >= t_bkpf-bldat
AND adatu <= t_bkpf-bldat.
ENDIF.
IF lv_werks IS NOT INITIAL.
LOOP AT t_bsegsub WHERE hkont = '0097600000'.
t_bsegsub-werks = lv_werks.
MODIFY t_bsegsub.
ENDLOOP.
ENDIF.
ENDLOOP.


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

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


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

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


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

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