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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 37 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Чт, июл 16 2009, 10:43 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
Добрый день!
При создании документа, как изменить код проводки "BSCHL"?

Code:
Loop at t_bkpf Where blart eq 'D1'.

   DATA: my_HEADER            type          BAPIACHE09,
         my_ACCOUNTGL         like table of BAPIACGL09 with header line,
         my_ACCOUNTRECEIVABLE like table of BAPIACAR09 with header line,
         my_CURRENCYAMOUNT    like table of BAPIACCR09 with header line,
         my_EXTENSION2        like table of BAPIPAREX  with header line,
         my_RETURN            like table of BAPIRET2   with header line.
*   TYPES: BEGIN OF ZACCIT,
*         posnr type POSNR_ACC,
*         BSCHL type BSCHL,
*   END OF ZACCIT .
   DATA:HelpExt LIKE ZACCIT OCCURS 10 WITH HEADER LINE.

         my_HEADER-BUS_ACT    = 'FB01'.                        " GLVOR   ->  Организационно-экономическая операция(ТР.)
         my_HEADER-USERNAME   = sy-UNAME.                      " USNAM   ->  Имя пользователя
         my_HEADER-HEADER_TXT = t_bkpf-bktxt.                  " BKTXT   ->  ТекстЗагДок/№ договора
         my_HEADER-COMP_CODE  = t_bkpf-bukrs.                  " BUKRS   ->  Балансовая единица
         my_HEADER-DOC_DATE   = t_bkpf-bldat.                  " BLDAT   ->  Дата документа
         my_HEADER-PSTNG_DATE = t_bkpf-budat.                  " BUDAT   ->  Дата проводки в документе
         my_HEADER-TRANS_DATE = my_HEADER-DOC_DATE.            " WWERT_D ->  Дата пересчета
         my_HEADER-FISC_YEAR  = t_bkpf-gjahr.                  " GJAHR   ->  Финансовый год
         my_HEADER-FIS_PERIOD = t_bkpf-monat.                  " MONAT   ->  Месяц финансового года
         my_HEADER-DOC_TYPE   = 'D1'.                          " BLART   ->  Вид документа
         my_HEADER-REF_DOC_NO = t_bkpf-xblnr.                  " XBLNR   ->  Ссылочный номер документа

   Loop at t_bseg Where belnr eq t_bkpf-belnr and bschl eq '15' and Kunnr ne ''.
        REFRESH my_ACCOUNTRECEIVABLE.
        my_ACCOUNTRECEIVABLE-ITEMNO_ACC = '0000000001'.       " POSNR_ACC   -> Номер позиции документа учета и отчетности
        my_ACCOUNTRECEIVABLE-CUSTOMER   = t_bseg-kunnr.       " KUNNR       -> Номер дебитора 1
        my_ACCOUNTRECEIVABLE-GL_ACCOUNT = 'ZGTDTES1'.         " HKONT       -> Основной счет главной бухгалтерии
        my_ACCOUNTRECEIVABLE-BLINE_DATE = my_HEADER-DOC_DATE. " ACPI_ZFBDT  -> Базовая дата для расчета срока оплаты
        my_ACCOUNTRECEIVABLE-ALLOC_NMBR = t_bseg-ZUONR.       " ACPI_ZUONR  -> Номер присвоения
        my_ACCOUNTRECEIVABLE-ITEM_TEXT  = t_bseg-sgtxt.       " SGTXT       -> Текст позиции
        APPEND my_ACCOUNTRECEIVABLE.

        refresh my_ACCOUNTGL.
        my_ACCOUNTGL-ITEMNO_ACC = '0000000002'.               " POSNR_ACC   -> Номер позиции документа учета и отчетности
        my_ACCOUNTGL-GL_ACCOUNT = 'ZGTDTEST'.                 " HKONT       -> Основной счет главной бухгалтерии
        my_ACCOUNTGL-ITEM_TEXT  = t_bseg-sgtxt.               " SGTXT       -> Текст позиции
        my_ACCOUNTGL-PSTNG_DATE = my_HEADER-DOC_DATE.         " BUDAT       -> Дата проводки в документе
        my_ACCOUNTGL-FIS_PERIOD = my_HEADER-FIS_PERIOD.       " MONAT       -> Месяц финансового года
        my_ACCOUNTGL-FISC_YEAR  = my_HEADER-FISC_YEAR.        " GJAHR       -> Финансовый год
        my_ACCOUNTGL-ALLOC_NMBR = t_bseg-ZUONR.               " ACPI_ZUONR  -> Номер присвоения
        my_ACCOUNTGL-FUNDS_CTR  = t_bseg-FISTL.               " FISTL       -> Подразделение финансового менеджмента
        my_ACCOUNTGL-DOC_TYPE   = my_HEADER-DOC_TYPE.         " BLART       -> Вид документа
        my_ACCOUNTGL-COMP_CODE  = my_HEADER-COMP_CODE.        " BUKRS       -> Балансовая единица
        my_ACCOUNTGL-PSTNG_DATE = my_HEADER-DOC_DATE.         " BUDAT       -> Дата проводки в документе
        append my_ACCOUNTGL.
   EndLoop.

   refresh : my_CURRENCYAMOUNT, my_EXTENSION2.
     CLEAR : HelpExt.

   BREAK-POINT.
   Loop at t_bseg Where belnr eq t_bkpf-belnr.

        my_CURRENCYAMOUNT-ITEMNO_ACC   = t_bseg-buzei.        " POSNR_ACC   -> Номер позиции документа учета и отчетности
        my_CURRENCYAMOUNT-CURRENCY_ISO = t_bkpf-waers.        " WAERS_ISO   -> Код ISO для валюты
        my_CURRENCYAMOUNT-CURRENCY     = t_bkpf-waers.        " WAERS       -> Код валюты

        my_EXTENSION2-STRUCTURE        = 'ZACCIT'.
        HelpExt-posnr                  = t_bseg-buzei.

        if t_bseg-SHKZG eq 'H'.
          my_CURRENCYAMOUNT-AMT_DOCCUR   = t_bseg-WRBTR * -1. " BAPIWRBTR   -> Сумма в валюте документа
          HelpExt-BSCHL                  = '15'.
        else.
          my_CURRENCYAMOUNT-AMT_DOCCUR   = t_bseg-WRBTR.      " BAPIWRBTR   -> Сумма в валюте документа
          HelpExt-BSCHL                  = '40'.
        endif.

         my_EXTENSION2-VALUEPART1+0(10) = HelpExt-posnr.
         my_EXTENSION2-VALUEPART1+11(2) = HelpExt-BSCHL.

        APPEND: my_CURRENCYAMOUNT, my_EXTENSION2.
         Clear: my_CURRENCYAMOUNT, my_EXTENSION2.
   EndLoop.

      CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
          EXPORTING: DOCUMENTHEADER     = my_HEADER
             TABLES: ACCOUNTGL          = my_ACCOUNTGL
                     ACCOUNTRECEIVABLE  = my_ACCOUNTRECEIVABLE
                     CURRENCYAMOUNT     = my_CURRENCYAMOUNT
                     EXTENSION2         = my_EXTENSION2
                     RETURN             = my_RETURN.

   EndLoop.


Последний раз редактировалось Valeriy Вт, авг 11 2009, 10:07, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Чт, июл 16 2009, 11:09 
Директор
Директор
Аватара пользователя

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

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Чт, июл 16 2009, 11:13 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
Lars написал:
Так там Badi есть ей и воспользуйтесь.

А по подробнее!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Чт, июл 16 2009, 11:20 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
BADI - ACC_DOCUMENT.
В extension, как я понимаю, у ВАс лежат нужные Вам коды.
В BADI изменяется внутренняя таблица accit, в которой эти коды и должны присутствовать.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Чт, июл 16 2009, 12:05 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
Создаю расширение ZFI_ACC_DOCUMENT спрашивает выбрать свойства фильтра. А какое мне выбрать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Чт, июл 16 2009, 12:06 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
Уже понял BKPFF! :oops:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Чт, июл 16 2009, 12:10 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
тот тип с которым у Вас будет создааться документ.
BKPF возможно, посмотрите в тех документах которые вы уже создавали, ну или в отладке.
Указать можно несколько значений.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Пт, июл 24 2009, 12:02 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
А поскажите как обнулить DMBTR? Чтоб он не расчитовался при создании документа!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Пт, июл 24 2009, 12:10 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
В каком смысле обнулить? Чтобы вообще не считался ? Или Вы его сами будете рассчитывать?
Документ в какой валюте?

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Пт, июл 24 2009, 13:09 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
Lars написал:
В каком смысле обнулить? Чтобы вообще не считался ? Или Вы его сами будете рассчитывать?
Документ в какой валюте?


Документ в долларах. Чтобы вообще не считался!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Пт, июл 24 2009, 15:48 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
При создании документа передается WRBTR в CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST' там оно само считает DMBTR, а в badi ACC_DOCUMENT оно еще не расчитано! Как вклинится где обнулить DMBTR!?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Пт, авг 14 2009, 11:01 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, июн 25 2007, 17:37
Сообщения: 350
Пол: Мужской
Проблема так и не решилась!
Может кто-нибудь знает как сделать чтоб DMBTR не рассчитывалось!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Пт, авг 14 2009, 22:10 
Специалист
Специалист

Зарегистрирован:
Пт, мар 28 2008, 09:56
Сообщения: 101
Как то так. Основная идея что в BAPI вы задаете сумму как в валюте док-та, так и в валюте БЕ.
В примере я обнулил сумму во внутренней валюте. У меня проведется документ в 100$, а в рублях будет 0.
Code:
...
        my_CURRENCYAMOUNT-ITEMNO_ACC   =  1.     
        my_CURRENCYAMOUNT-CURRENCY_ISO = 'USD'.
        my_CURRENCYAMOUNT-AMT_DOCCUR = 100.
        my_CURRENCYAMOUNT-CURR_TYPE = '00'.
        append my_CURRENCYAMOUNT.

        my_CURRENCYAMOUNT-ITEMNO_ACC   =  1.       
        my_CURRENCYAMOUNT-CURRENCY_ISO = 'RUB'.
        my_CURRENCYAMOUNT-AMT_DOCCUR = 0.
        my_CURRENCYAMOUNT-CURR_TYPE = '10'.
        append my_CURRENCYAMOUNT.

        my_CURRENCYAMOUNT-ITEMNO_ACC   =  2.     
        my_CURRENCYAMOUNT-CURRENCY_ISO = 'USD'.
        my_CURRENCYAMOUNT-AMT_DOCCUR = -100.
        my_CURRENCYAMOUNT-CURR_TYPE = '00'.
        append my_CURRENCYAMOUNT.

        my_CURRENCYAMOUNT-ITEMNO_ACC   =  2.       
        my_CURRENCYAMOUNT-CURRENCY_ISO = 'RUB'.
        my_CURRENCYAMOUNT-AMT_DOCCUR = -0.
        my_CURRENCYAMOUNT-CURR_TYPE = '10'.
        append my_CURRENCYAMOUNT.
...



Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Вт, окт 20 2009, 13:53 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Создаю документ через BAPI_ACC_DOCUMENT_POST, мне нужно выставить галочку "Расчет налога", как в fb01, чтоб автоматически рассчитывался налог, как мне это сделать, уже все перепробовал?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание документа "BAPI_ACC_DOCUMENT_POST"
СообщениеДобавлено: Вт, окт 20 2009, 14:08 
Специалист
Специалист

Зарегистрирован:
Пт, сен 05 2008, 08:08
Сообщения: 134
Пол: Женский
Думаю, что никак. Нужно заполнять соотв. внутреннюю таблицу.


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

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


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

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


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

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