Текущее время: Пт, апр 19 2024, 15:06

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Амортизация ОС будущего года
СообщениеДобавлено: Вт, янв 10 2023, 07:58 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, дек 21 2006, 16:38
Сообщения: 301
За текущий год амортизацию берется из ANLC. Нужно посчитать амортизацию за будущий год. Но в ANLC этих данных нет.

Стандартный отчет S_ALR_87012936 моделирует будущий год. Попробовал разобраться как там это делается, но там стандартный ужас-ужас. И уже закопался по самую макушку в стандартный код.

Может кто-то знает как можно смоделировать амортизацию по ОС будущего года? Какие-то ФМ-ы?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Амортизация ОС будущего года  Тема решена
СообщениеДобавлено: Вт, янв 10 2023, 11:43 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, дек 21 2006, 16:38
Сообщения: 301
Вот так вроде работает
Code:
   DATA:  lt_anlb  LIKE  TABLE OF anlb WITH HEADER LINE
        ,ls_anla  TYPE  anla
        ,ls_anlb  TYPE  anlb
        ,lt_anlc  LIKE  TABLE OF anlc WITH HEADER LINE
        ,lt_anep  LIKE  TABLE OF anep WITH HEADER LINE
        ,lt_anea  LIKE  TABLE OF anea WITH HEADER LINE
        ,lt_anek  LIKE  TABLE OF anek WITH HEADER LINE
        ,lt_anfm  LIKE  TABLE OF anfm WITH HEADER LINE
        ,lt_anlz  TYPE  STANDARD TABLE OF anlz

        .
  SELECT * FROM anlb INTO TABLE lt_anlb
    WHERE bukrs = i_anla-bukrs
      AND anln1 = i_anla-anln1
      AND anln2 = i_anla-anln2
*    and afabe = i_afabe
    .
  SELECT * FROM anlc INTO TABLE lt_anlc
    WHERE bukrs = i_anla-bukrs
      AND anln1 = i_anla-anln1
      AND anln2 = i_anla-anln2
*      and afabe = i_afabe
      AND gjahr = i_gjahr.
  et_anlc[] = lt_anlc[].
  IF sy-subrc <> 0.
    CALL FUNCTION 'FIAA_DEPR_RECALCULATE'
      EXPORTING
        i_bukrs   = i_anla-bukrs
        i_anln1   = i_anla-anln1
        i_anln2   = i_anla-anln2
        i_gjahr   = i_gjahr
      TABLES
        t_anlz    = lt_anlz
        t_anlb    = lt_anlb
        t_anlc    = lt_anlc
        t_anep    = lt_anep
        t_anea    = lt_anea
        t_anfm    = lt_anfm
      EXCEPTIONS
        not_found = 1
        OTHERS    = 2.
    IF sy-subrc <> 0.
      RETURN.
    ENDIF.
    et_anlc[] = lt_anlc[].
    ls_anlb-lgjan = i_gjahr.
    MODIFY lt_anlb FROM ls_anlb TRANSPORTING lgjan WHERE afabe = i_afabe.
  ENDIF.
  SELECT SINGLE * FROM anla INTO ls_anla
    WHERE bukrs = i_anla-bukrs
      AND anln1 = i_anla-anln1
      AND anln2 = i_anla-anln2.
  CHECK sy-subrc = 0.



  SELECT * FROM anep INTO TABLE lt_anep
    WHERE bukrs = i_anla-bukrs
      AND anln1 = i_anla-anln1
      AND anln2 = i_anla-anln2
*      and afabe = i_afabe
      AND gjahr = i_gjahr.
  SELECT * FROM anea INTO TABLE lt_anea
    WHERE bukrs = i_anla-bukrs
      AND anln1 = i_anla-anln1
      AND anln2 = i_anla-anln2
*      and afabe = i_afabe
      AND gjahr = i_gjahr.
  SELECT * FROM anek INTO TABLE lt_anek
    WHERE bukrs = i_anla-bukrs
      AND anln1 = i_anla-anln1
      AND anln2 = i_anla-anln2
      AND gjahr = i_gjahr.
  DATA: lv_gjahr TYPE gjahr.
  lv_gjahr = i_gjahr.
  CALL FUNCTION 'AM_SHOW_POST_DEPR'
    EXPORTING
      i_anla                       = ls_anla
      i_afabe                      = i_afabe
      i_gjahr                      = lv_gjahr
      i_simu                       = i_simu
    TABLES
      t_dpost                      = t_dpost
      t_anlb                       = lt_anlb
      t_anlc                       = lt_anlc
      t_anep                       = lt_anep
      t_anea                       = lt_anea
      t_anek                       = lt_anek
*     T_ANFM                       =
   EXCEPTIONS
     not_found                    = 1
     differences_posted_afa       = 2
     OTHERS                       = 3
            .
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Амортизация ОС будущего года
СообщениеДобавлено: Вт, янв 10 2023, 20:07 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 20 2007, 18:21
Сообщения: 1613
Нужно для начала сходить к гадалке. А если серьезно, то давай с БТ начнем. Самый простой способ посчитать амортизацию будущего года - это взять текущую и умножить ее на 1. А дальше уже надо или в БТ смотреть, или к гадалке.

PS. Поступления ОС за будущий год надо тоже откуда-то взять.

_________________
я твой сап эфай внедрял
BAdI-позитив
Взять немножечко абопу, сунь туда кошачью *опу, RFC лапки, БТ старой бабки, на медленном базиснике переносить, тестовое окружение материть, снимать SAT пенку, биться головой о стенку, охапка тайм-шитов, отчет готов!


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

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


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

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


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

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