Текущее время: Пн, июл 21 2025, 00:50

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


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

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


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

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