Текущее время: Вт, июл 22 2025, 16:36

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Пн, июн 25 2012, 13:16 
Начинающий
Начинающий

Зарегистрирован:
Пн, июн 25 2012, 13:02
Сообщения: 6
Добрый день.
Делаю первые шаги в освоение АБАП. Мне нужно создать ДП. Для этого воспользовался кодом ( см. ниже). В итоге выполняется без ошибок и выводиться ид ДП, но найти я этого ДП не могу (в трансакции BP). Как будто он создался, но не сохранился? Подскажите пожалуйста в что мне нужно сделать ещё.
Code:
*&---------------------------------------------------------------------*
*& Report  ZFR_CREATE_DP_V0
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZFR_CREATE_DP_V0.
DATA:
gs_centraldata TYPE bapibus1006_central,
gs_centraldataorganization TYPE bapibus1006_central_organ,
gs_addressdata TYPE bapibus1006_address,
it_return TYPE TABLE OF bapiret2,
lv_customer TYPE bu_partner.

MOVE:
'Siva B Kumar' TO gs_centraldataorganization-name1,
'XYZ' TO gs_centraldataorganization-name2,
'X' TO gs_addressdata-standardaddress,
'3000' TO gs_addressdata-postl_cod1,
'Melbourne' TO gs_addressdata-city,
'Street' TO gs_addressdata-street,
'246' TO gs_addressdata-house_no,
'GB' TO gs_addressdata-country,
'VIC' TO gs_addressdata-region,
'EN' TO gs_addressdata-langu.

CALL FUNCTION 'BAPI_BUPA_CREATE_FROM_DATA'
  EXPORTING
    partnercategory = '2'
    partnergroup = '0001'
    centraldata = gs_centraldata
    centraldataorganization = gs_centraldataorganization
    addressdata = gs_addressdata
  IMPORTING
    businesspartner = lv_customer
  TABLES
    return = it_return.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
  EXPORTING
    wait = 'X'.

REFRESH it_return.

CALL FUNCTION 'BAPI_BUPA_ROLE_ADD_2'
  EXPORTING
    businesspartner = lv_customer
    businesspartnerrole = 'CRM000'
  TABLES
    return = it_return.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
   wait = 'X'.

WRITE:/ lv_customer.


UPD. просмотром много а ответов ни одного :(


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Ср, июл 11 2012, 15:49 
Начинающий
Начинающий

Зарегистрирован:
Вт, окт 18 2011, 07:55
Сообщения: 13
Пол: Мужской
Попробуй 'BAPI_BUPA_FS_CREATE_FROM_DATA'
У меня работает примерно с таким кодом.
Code:
    CALL FUNCTION 'BAPI_BUPA_FS_CREATE_FROM_DATA'
      EXPORTING
*       BUSINESSPARTNEREXTERN   = bpnumber, если внешняя нумерация
        PARTNERCATEGORY         = l_partnercat
        PARTNERGROUP            = partnergroup
        CENTRALDATA             = ls_centraldata
        CENTRALDATAORGANIZATION = ls_cenraldataorg
        ADDRESSDATA             = ls_adressdata
        CHANGEDOCU              = 'X'
      IMPORTING
        BUSINESSPARTNER         = BPNUMBER
      TABLES
        TELEFONDATA             = lt_telefondata
        FAXDATA                 = lt_faxdata
        E_MAILDATA              = lt_emaildata
        E_MAILDATANONADDRESS    = lt_email_noa
        RETURN                  = lt_return
        ROLES                   = lt_roles.

    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT = 'X'.


Роли можно сразу записать в таблицу ROLES.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Чт, июл 12 2012, 14:43 
Начинающий
Начинающий

Зарегистрирован:
Пн, июн 25 2012, 13:02
Сообщения: 6
спасибо за ответ, дорбрый человек :) попробую как вернусь с отпуска! напишу как получилось.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Пн, авг 13 2012, 08:58 
Начинающий
Начинающий

Зарегистрирован:
Пн, июн 25 2012, 13:02
Сообщения: 6
Изменил как ты посоветовал, но результат такой же как и был. Опять же выполняется без ошибок и выводиться id (299909), но в ТА "BP" этого партнёра не находится. Хотя по 299908 есть и видимо 299909 и должен быть у нового ДП. Как можно проверить что тут не так? Почему создается, но не сохраняется?
Code:
*&---------------------------------------------------------------------*
*& Report  ZFR_CREATE_DP_V0
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZFR_CREATE_DP_V0.
DATA:
gs_centraldata TYPE bapibus1006_central,
gs_centraldataorganization TYPE bapibus1006_central_organ,
gs_addressdata TYPE bapibus1006_address,
it_return TYPE TABLE OF bapiret2,
lv_customer TYPE bu_partner.

MOVE:
'SONY777' TO gs_centraldataorganization-name1,
'SONY888' TO gs_centraldataorganization-name2,
'X' TO gs_addressdata-standardaddress,
'3000' TO gs_addressdata-postl_cod1,
'Melbourne' TO gs_addressdata-city,
'Street' TO gs_addressdata-street,
'246' TO gs_addressdata-house_no,
'GB' TO gs_addressdata-country,
'VIC' TO gs_addressdata-region,
'EN' TO gs_addressdata-langu.

*& NEW---------------------------------------------------------------------*
    CALL FUNCTION 'BAPI_BUPA_FS_CREATE_FROM_DATA'
      EXPORTING
*       BUSINESSPARTNEREXTERN   = bpnumber, если внешняя нумерация
        PARTNERCATEGORY         = '2'
        PARTNERGROUP            = '0001'
        CENTRALDATA             = gs_centraldata
        CENTRALDATAORGANIZATION = gs_centraldataorganization
        ADDRESSDATA             = gs_addressdata
        CHANGEDOCU              = 'X'
      IMPORTING
        BUSINESSPARTNER         = lv_customer
      TABLES
        RETURN                  = it_return.

    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT = 'X'.
*& NEW---------------------------------------------------------------------*



REFRESH it_return.

CALL FUNCTION 'BAPI_BUPA_ROLE_ADD_2'
  EXPORTING
    businesspartner = lv_customer
    businesspartnerrole = 'CRM000'
  TABLES
    return = it_return.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
   wait = 'X'.

WRITE:/ lv_customer.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Пн, авг 13 2012, 09:11 
Начинающий
Начинающий

Зарегистрирован:
Вт, окт 18 2011, 07:55
Сообщения: 13
Пол: Мужской
В таблице BUT000 деловой партнер появился?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Пн, авг 13 2012, 16:09 
Начинающий
Начинающий

Зарегистрирован:
Пн, июн 25 2012, 13:02
Сообщения: 6
Нет. ДП с таким 299909 не найден.

Изображение


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Вт, авг 14 2012, 13:43 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 25 2012, 01:54
Сообщения: 59
Neeubonay написал(а):
Как можно проверить что тут не так? Почему создается, но не сохраняется?

проверьте после вызова первой бапишки it_return[] до его рефреша. если не создался то там точно вернутся ошибки


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Вт, авг 14 2012, 14:38 
Начинающий
Начинающий

Зарегистрирован:
Пн, июн 25 2012, 13:02
Сообщения: 6
попробовал сделать как вы сказали в режими отладки до рефреша ошибок похоже нет так как значение it_return=Standard Table[2x14(1088)] :(


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Вт, авг 14 2012, 14:45 
Начинающий
Начинающий

Зарегистрирован:
Вт, окт 18 2011, 07:55
Сообщения: 13
Пол: Мужской
Neeubonay написал(а):
попробовал сделать как вы сказали в режими отладки до рефреша ошибок похоже нет так как значение it_return=Standard Table[2x14(1088)] :(

А что внутри таблицы? Проваливались в нее двойным щелчком?
Т.к. 2 строки, подозреваю, что есть ошибки, потому что должна быть одна строка с сообщением что ДП создан с таким-то номером.
Можно вывести содержимое it_return на экран, например с помощью ФМ REUSE_ALV_GRID_DISPLAY.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.  Тема решена
СообщениеДобавлено: Вт, авг 14 2012, 15:46 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 25 2012, 01:54
Сообщения: 59
Neeubonay написал(а):
попробовал сделать как вы сказали в режими отладки до рефреша ошибок похоже нет так как значение it_return=Standard Table[2x14(1088)] :(


эти две строчки и есть ошибки которые возвращает бапишка, при успешном вызове она была бы пустая. читайте там все написано будет если внутрь зайти.

по-хорошему нужно проверять эту таблицу и вызывать коммит только если она пустая. если с ошибками то роллбек


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание ДП. пожалуйста, помогите новичку.
СообщениеДобавлено: Ср, авг 15 2012, 12:40 
Начинающий
Начинающий

Зарегистрирован:
Пн, июн 25 2012, 13:02
Сообщения: 6
Получилось! Оказывается проблема была в адресаторе не находил для страны 'GB' не находил регион "VIC'.Закоментил всё связаннное с адресом и создался ДП. Большое спасибо Areal и Fifth!


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

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


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

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


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

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