Текущее время: Ср, июл 23 2025, 17:19

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




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Коды проводок при использовании BAPI для проводок документов
СообщениеДобавлено: Ср, фев 28 2007, 15:48 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, авг 22 2005, 18:05
Сообщения: 95
Добрый день.

У нас есть необходимость проводить в книге Дебиторов некоторые документы через BAPI-шки. Для таких документов мы определили свой вид документа. Проблема в том, что BAPI-функция не позволяет вводить КП, а сама где-то выглядывает их и подставляет (где - нам пока найти не удалось).

Пытался найти в СПРО какие-нибудь настройки связывающие Вид_Документа-КП_по_умолчанию-Какой-нибудь_код_операции. Есть только OBU1 и OBXJ, но это немного не то подходит.

Уважаемые коллеги, кто-нибудь делал проводки через бапишки?


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

Зарегистрирован:
Вт, авг 17 2004, 08:29
Сообщения: 298
Какую BAPI-шку используете?

_________________
"Радостно приветствуют меня
Жители планеты Земля"


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

Зарегистрирован:
Пн, авг 22 2005, 18:05
Сообщения: 95
Свирепый написал(а):
Какую BAPI-шку используете?

BAPI_ACC_DOCUMENT_POST


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

Зарегистрирован:
Вт, авг 17 2004, 08:29
Сообщения: 298
Цитата:
Проблема в том, что BAPI-функция не позволяет вводить КП, а сама где-то выглядывает их и подставляет (где - нам пока найти не удалось).



INCLUDE LACC9F20

Код проводки зависит от вида счета:

Code:
  IF gs_accit-bschl IS INITIAL.
    CASE gs_accit-koart.
      WHEN 'D'.
        IF gs_accit-shkzg = 'S'.
          gs_accit-bschl = '01'.
        ELSE.
          gs_accit-bschl = '11'.
        ENDIF.
      WHEN 'K'.
        IF gs_accit-shkzg = 'S'.
          gs_accit-bschl = '21'.
        ELSE.
          gs_accit-bschl = '31'.
        ENDIF.
      WHEN 'S'.
        IF gs_accit-shkzg = 'S'.
          gs_accit-bschl = '40'.
        ELSE.
          gs_accit-bschl = '50'.
        ENDIF.
      WHEN 'A'.
        IF gs_accit-shkzg = 'S'.
          gs_accit-bschl = '70'.
        ELSE.
          gs_accit-bschl = '75'.
        ENDIF.
      WHEN 'M'.
        IF gs_accit-shkzg = 'S'.
          gs_accit-bschl = '40'.
        ELSE.
          gs_accit-bschl = '50'.
        ENDIF.
    ENDCASE.
  ENDIF.


Для позиций с кодом ОГК:

Code:
  IF NOT gs_accit-umskz IS INITIAL.
    IF gs_accit-bschl+1 = '1'.
      gs_accit-bschl+1 = '9'.
    ENDIF.
  ENDIF.


Если вам принципиально нужны другие коды проводок(не 01, а 04, например), то навесьте FI-замещение на позицию документа для вашего вида документа.

_________________
"Радостно приветствуют меня
Жители планеты Земля"


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

Зарегистрирован:
Пн, авг 22 2005, 18:05
Сообщения: 95
Благодарю. :D
Будем делать замещение.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Замена кодов проводки для BAPI
СообщениеДобавлено: Пн, мар 05 2007, 19:12 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 05 2006, 18:56
Сообщения: 20
Откуда: Москва
odGe написал(а):
Свирепый написал(а):
Какую BAPI-шку используете?

BAPI_ACC_DOCUMENT_POST


была подобная проблема сегодня решили:)
в BAPI_ACC_DOCUMENT_POST есть EXTENSION2
его можно использовать для расширений.
создали собственную структуру zaccit
и в ней определили поля, которые хотим замещать и обязательное поле POSNR.

Внедрили BADI zACC_DOCUMENT. в качестве определения указали ACC_DOCUMENT. в метод change скропировал аналогичный метод класса CL_EXM_IM_ACC_DOCUMENT. В качестве фильтра к BADI указали BKPFF.

текст передаваемый в BAPI для EXTENSION2.
DATA:HelpExt TYPE ZACCIT.
REFRESH INTBL_EXTENSION2.
CLEAR WA_EXTENSION2.
CLEAR HelpExt.
HelpExt-posnr = '0000000002'.
IF NOT P_AVANS IS INITIAL. "" индикатор авансовый платеж
*аванс
HelpExt-BSCHL = '29'.
ELSE.
*неаванс
HelpExt-BSCHL = '25'.
ENDIF.
HelpExt-UMSKZ = P_SP_GL.
CLEAR WA_EXTENSION2.
WA_EXTENSION2-STRUCTURE = 'ZACCIT'.
WA_EXTENSION2-VALUEPART1+0(10) = HelpExt-posnr.
WA_EXTENSION2-VALUEPART1+10(1) = HelpExt-UMSKZ.
WA_EXTENSION2-VALUEPART1+11(2) = HelpExt-BSCHL.
APPEND WA_EXTENSION2 TO INTBL_EXTENSION2.

Все это надо делать с вашими ABAP программистами. Самому тяжело:)

Соотв. это все для версии 4.7. Если версия ниже BADI может не быть.


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

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


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

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


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

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