Click on Create button .The Popup will open.
Step:2 Give the 'Project name' and 'Description' 'Package' and click on Continue.
method BP_CREATIONSET_GET_ENTITY.
er_entity-partner = ' '.
er_entity-category = '2'.
er_entity-grouping = 'BP01'.
er_entity-customer = ' '.
er_entity-role = 'FLCU01'.
er_entity-name1 = 'Airtel'.
er_entity-street = 'ABCDEFGH'.
er_entity-postl_cod1 = '123456'.
er_entity-city = 'XYZ'.
er_entity-country = 'IN'.
er_entity-region = 'TG'.
er_entity-langu = 'EN'.
er_entity-telephone = '1234567890'.
er_entity-fax = '1589568956'.
er_entity-email = 'Test@gmail.com'.
er_entity-customerrole = 'FLCU00'.
er_entity-salesorg = 'ZTM1'.
er_entity-distribution = 'TM'.
er_entity-division = 'TM'.
er_entity-currency = 'USD'.
er_entity-inco1 = 'CIF'.
er_entity-inco2 = 'Costs,Insurance&Freight'.
er_entity-tax = '1'.
er_entity-taxcategory = 'IN2'.
er_entity-taxnumber = '12345678956'.
er_entity-companycode = '6000'.
er_entity-recaccount = '0000031020'.
er_entity-payterm = '0001'.
endmethod.
method BP_CREATIONSET_CREATE_ENTITY.
************************Data Declarations**************************
DATA: ls_payload TYPE zcl_z_business_partner_mpc=>ts_bp_details,
ls_return_map TYPE mdg_bs_bp_msgmap_t,
lt_data TYPE cvis_ei_extern_t,
lt_return TYPE bapiretm,
ls_return TYPE bapireti,
ls_retmsg TYPE LINE OF bapiretct,
lv_text TYPE string,
lt_errors TYPE STANDARD TABLE OF bapiret2,
ls_errors TYPE bapiret2,
ls_data_new TYPE REF TO data.
DATA: ls_data LIKE LINE OF lt_data,
ls_role TYPE bus_ei_bupa_roles,
ls_relation TYPE burs_ei_extern,
ls_company TYPE cmds_ei_company,
ls_addr TYPE bus_ei_bupa_address,
lt_phone TYPE bus_ei_bupa_telephone_t,
lt_fax TYPE bus_ei_bupa_fax_t,
lt_email TYPE bus_ei_bupa_smtp_t,
lt_tax TYPE bus_ei_bupa_taxnumber_t,
lt_tax1 TYPE cmds_ei_tax_ind_t.
DATA: lv_guid TYPE guid_32,
lv_pguid TYPE but000-partner_guid,
lv_partner LIKE ls_data-partner-header-object_instance-bpartner.
DATA: lt_role_cat TYPE fsbp_tb003a_tty,
lt_cvi_role_cat TYPE cvis_role_category_t,
ls_cvi_role_cat TYPE cvis_role_category.
DATA: ls_functions_st TYPE cmds_ei_functions,
ls_functions_t TYPE cmds_ei_functions_t,
ls_functions TYPE cmds_ei_cmd_functions,
ls_sales_data_st TYPE cmds_ei_sales,
ls_sales_data TYPE cmds_ei_cmd_sales,
ls_customer TYPE cmds_ei_extern,
ls_customers TYPE cmds_ei_main,
ls_company_code_st TYPE cmds_ei_company,
ls_company_code TYPE cmds_ei_cmd_company.
******************************Payload******************************
io_data_provider->read_entry_data( IMPORTING es_data = ls_payload ).
******************************Guid*********************************
CALL METHOD cl_system_uuid=>if_system_uuid_static~create_uuid_c32
RECEIVING
uuid = lv_guid.
******************************Create customer**********************
ls_data-partner-header-object_task = 'I'.
ls_data-partner-header-object_instance-bpartnerguid = lv_guid.
***************** Partner / Central data / common *****************
ls_data-partner-central_data-common-data-bp_control-category = ls_payload-category. "3group "2 Organization
ls_data-partner-central_data-common-data-bp_control-grouping = ls_payload-grouping. "Grouping
ls_data-partner-central_data-common-data-bp_organization-name1 = ls_payload-name1.
ls_data-partner-central_data-common-datax-bp_organization-name1 = abap_true.
*****************Partner / Central data / Address *****************
***-------------------Telephone number--------------------------***
APPEND INITIAL LINE TO lt_phone ASSIGNING FIELD-SYMBOL(<ls_phone>).
<ls_phone>-contact-task = 'I'.
<ls_phone>-contact-data-telephone = ls_payload-telephone.
<ls_phone>-contact-data-country = 'IN'.
<ls_phone>-contact-data-countryiso = '40'.
<ls_phone>-contact-data-r_3_user = ' '.
<ls_phone>-contact-data-consnumber = '001'.
<ls_phone>-contact-datax-country = abap_true.
<ls_phone>-contact-datax-telephone = abap_true.
<ls_phone>-contact-datax-countryiso = abap_true.
<ls_phone>-contact-datax-r_3_user = abap_true.
<ls_phone>-contact-datax-consnumber = abap_true.
<ls_phone>-currently_valid = abap_true.
***---------------------- fax number------------------------***
APPEND INITIAL LINE TO lt_fax ASSIGNING FIELD-SYMBOL(<ls_fax>).
<ls_fax>-contact-task = 'I'.
<ls_fax>-contact-data-fax = ls_payload-fax.
<ls_fax>-contact-data-country = 'IN'.
<ls_fax>-contact-data-countryiso = '40'.
<ls_fax>-contact-data-r_3_user = 'X'.
<ls_fax>-contact-data-consnumber = '001'.
<ls_fax>-contact-datax-country = abap_true.
<ls_fax>-contact-datax-fax = abap_true.
<ls_fax>-contact-datax-countryiso = abap_true.
<ls_fax>-contact-datax-r_3_user = abap_true.
<ls_fax>-contact-datax-consnumber = abap_true.
<ls_fax>-currently_valid = abap_true.
***--------------------------Email------------------------***
APPEND INITIAL LINE TO lt_email ASSIGNING FIELD-SYMBOL(<ls_email>).
<ls_email>-contact-task = 'I'.
<ls_email>-contact-data-e_mail = ls_payload-email.
<ls_email>-contact-data-consnumber = '001'.
<ls_email>-contact-datax-e_mail = abap_true.
<ls_email>-contact-datax-consnumber = abap_true.
<ls_email>-currently_valid = abap_true.
ls_addr-task = 'I'.
ls_addr-data_key-operation = 'XXDFLT'.
ls_addr-data-postal-data-city = ls_payload-city.
ls_addr-data-postal-data-postl_cod1 = ls_payload-postl_cod1.
ls_addr-data-postal-data-street = ls_payload-street.
ls_addr-data-postal-data-country = ls_payload-country.
ls_addr-data-postal-data-countryiso = '40'.
ls_addr-data-postal-data-region = ls_payload-region.
ls_addr-data-postal-data-langu = ls_payload-langu.
ls_addr-data-communication-phone-phone = lt_phone.
ls_addr-data-communication-fax-fax = lt_fax.
ls_addr-data-communication-smtp-smtp = lt_email.
ls_addr-data-postal-datax-city = abap_true.
ls_addr-data-postal-datax-postl_cod1 = abap_true.
ls_addr-data-postal-datax-street = abap_true.
ls_addr-data-postal-datax-country = abap_true.
ls_addr-data-postal-datax-countryiso = abap_true.
ls_addr-data-postal-datax-region = abap_true.
ls_addr-data-postal-datax-langu = abap_true.
ls_addr-currently_valid = abap_true.
APPEND ls_addr TO ls_data-partner-central_data-address-addresses.
**--------------------------Tax----------------------------***
APPEND INITIAL LINE TO lt_tax ASSIGNING FIELD-SYMBOL(<ls_tax>).
<ls_tax>-task = 'I'.
<ls_tax>-data_key-taxtype = ls_payload-taxcategory. "'IN2'.
<ls_tax>-data_key-taxnumxl = ls_payload-taxnumber. "'12345678956'.
ls_data-partner-central_data-taxnumber-taxnumbers = lt_tax.
********************* Partner / Central data / role****************
ls_role-task = 'I'.
ls_role-data_key = 'FLCU01'.
ls_role-data-rolecategory = ls_payload-role. "'FLCU01'.
ls_role-data-valid_from = sy-datum.
ls_role-data-valid_to = '99991231'.
ls_role-currently_valid = abap_true.
ls_role-datax-valid_from = abap_true.
ls_role-datax-valid_to = abap_true.
APPEND ls_role TO ls_data-partner-central_data-role-roles.
ls_data-partner-central_data-role-current_state = abap_true.
*********************Partner / Central data / role*****************
ls_role-task = 'I'.
ls_role-data_key = 'FLCU00'.
ls_role-data-rolecategory = ls_payload-customerrole. "'FLCU00'.
ls_role-data-valid_from = sy-datum.
ls_role-data-valid_to = '99991231'.
ls_role-currently_valid = abap_true.
ls_role-datax-valid_from = abap_true.
ls_role-datax-valid_to = abap_true.
APPEND ls_role TO ls_data-partner-central_data-role-roles.
ls_data-partner-central_data-role-current_state = abap_true.
*******************Partner relation / header **********************
ls_relation-header-object_instance-partner1-identificationcategory = 'FLCU01'.
APPEND ls_relation TO ls_data-partner_relation.
ls_relation-header-object_task = 'I'.
******************** Customer / Company data **********************
ls_company-task = 'I'.
ls_company-data_key = ls_payload-companycode. "'6000' . " company code
ls_company-data-akont = ls_payload-recaccount. "'0000031020'.
ls_company-data-zterm = ls_payload-payterm. "'0001'. " terms of payment
ls_company-datax-zterm = 'X'.
ls_company-datax-akont = abap_true.
ls_company-datax-zterm = abap_true.
APPEND ls_company TO ls_data-customer-company_data-company.
************************* Customer / Header ***********************
ls_data-customer-header-object_task = 'I'.
ls_data-ensure_create-create_customer = abap_true.
ls_cvi_role_cat-category = 'FLCU01'.
APPEND ls_cvi_role_cat TO lt_cvi_role_cat.
*************SALES ORG AND DIST & DIVISION MANDATORY FIELDS********
ls_sales_data_st-task = 'I'.
ls_sales_data_st-data_key-vkorg = ls_payload-salesorg. "''ZTM1'.
ls_sales_data_st-data_key-vtweg = ls_payload-distribution. "'TM'.
ls_sales_data_st-data_key-spart = ls_payload-division. "'TM'.
ls_sales_data_st-data-waers = ls_payload-currency. "'USD'.
ls_sales_data_st-data-inco1 = ls_payload-inco1. "'CIF'.
ls_sales_data_st-data-inco2 = ls_payload-inco2. "'Costs,Insurance&Freight'.
ls_sales_data_st-data-kzazu = 'X'.
ls_sales_data_st-datax-waers = abap_true.
ls_sales_data_st-datax-inco1 = abap_true.
ls_sales_data_st-datax-inco2 = abap_true.
ls_sales_data_st-datax-kzazu = abap_true.
APPEND ls_sales_data_st TO ls_sales_data-sales.
ls_data-customer-sales_data = ls_sales_data.
********************** GL Account ledger *************************
ls_company_code_st-task = 'I'.
APPEND ls_company_code_st TO ls_company_code-company.
**********************Account Group Assignemnt ******************
APPEND INITIAL LINE TO lt_tax1 ASSIGNING FIELD-SYMBOL(<fs_tax1>).
<fs_tax1>-task = 'I'.
<fs_tax1>-data_key-aland = 'US'.
<fs_tax1>-data_key-tatyp = 'MWST'.
<fs_tax1>-data-taxkd = ls_payload-tax. "'1'.
<fs_tax1>-datax-taxkd = abap_true.
ls_data-customer-central_data-tax_ind-tax_ind = lt_tax1.
ls_customer-central_data-central-data-ktokd = 'CU01'.
ls_customer-header-object_instance-kunnr = ' '.
ls_customer-header-object_task = 'I'.
ls_customer-company_data = ls_company_code.
APPEND ls_customer TO ls_customers-customers.
*********************** End of sales data *************************
*****************Finally fill the main data structure**************
APPEND ls_data TO lt_data.
************************** validating BP data ********************
CALL METHOD cl_md_bp_maintain=>validate_single
EXPORTING
i_data = ls_data "lt_data
IMPORTING
et_return_map = ls_return_map. "lt_return.
*****************************Creating BP **************************
IF ls_return_map IS INITIAL.
CALL METHOD cl_md_bp_maintain=>maintain
EXPORTING
i_data = lt_data
IMPORTING
e_return = lt_return.
***************************** Commit BAPI *************************
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'. " Use of Command `COMMIT AND WAIT`
ENDIF.
*** *********Partner Number
SELECT partner,crdat FROM but000
INTO TABLE @DATA(lt_but000)
WHERE NAME_ORG1 = @ls_payload-name1
AND crdat = @sy-datum.
SORT lt_but000 DESCENDING BY partner.
READ TABLE lt_but000 INTO DATA(ls_but000) INDEX 1.
************To get the Customer number
SELECT kunnr,erdat FROM kna1
INTO TABLE @DATA(lt_kna1)
WHERE name1 = @ls_payload-name1
AND erdat = @sy-datum.
SORT lt_kna1 DESCENDING BY kunnr.
READ TABLE lt_kna1 INTO DATA(ls_kna1) INDEX 1.
****payload
IF sy-subrc = 0.
er_entity-partner = ls_but000-partner.
ENDIF.
er_entity-category = ls_payload-category.
er_entity-grouping = ls_payload-grouping.
IF sy-subrc = 0.
er_entity-customer = ls_kna1-kunnr.
ENDIF.
er_entity-role = ls_payload-role.
er_entity-name1 = ls_payload-name1.
er_entity-street = ls_payload-street.
er_entity-postl_cod1 = ls_payload-postl_cod1.
er_entity-city = ls_payload-city.
er_entity-country = ls_payload-country.
er_entity-region = ls_payload-region.
er_entity-langu = ls_payload-langu.
er_entity-telephone = ls_payload-telephone.
er_entity-fax = ls_payload-fax.
er_entity-email = ls_payload-email.
er_entity-customerrole = ls_payload-customerrole.
er_entity-salesorg = ls_payload-salesorg.
er_entity-distribution = ls_payload-distribution.
er_entity-division = ls_payload-division.
er_entity-currency = ls_payload-currency.
er_entity-inco1 = ls_payload-inco1.
er_entity-inco2 = ls_payload-inco2.
er_entity-tax = ls_payload-tax.
er_entity-taxcategory = ls_payload-taxcategory.
er_entity-taxnumber = ls_payload-taxnumber.
er_entity-companycode = ls_payload-companycode.
er_entity-recaccount = ls_payload-recaccount.
er_entity-payterm = ls_payload-payterm.
ENDMETHOD
Step: 13 After it will shows technical service with some details and Click on Continue button.
Customer Role FLCU00 for Financial Accounting.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
6 | |
2 | |
2 | |
2 | |
2 | |
2 | |
2 | |
2 | |
2 | |
2 |