Текущее время: Чт, июл 24 2025, 06:14

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Yandex [Bot]


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

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