PDA

Ver la Versión Completa : Agregar nueva Condicion de Precio en CRM


vamp_01
17/11/10, 16:45:32
Hola a todos, necesito un poco de ayuda, me están solicitando agregar una nueva condición de precio en CRM, específicamente en las Oportunidades,y he buscado por el ciberspacio y aun no logro dar con la forma de llenar la funcion que haga este tema, he leido y he creado un desarrollo Z*** para ver que sucede, pero a la larga nada de nada...si alguien me guia en como llenar la funcion CRM_ORDER_MAINTAIN para agregar una condicion de precio nueva.., algun ejemplo, usar otra bapi...etc...no se...ya me estoy ahogando...

le dejo el codigo de muestra...pero no me actualiza nada de nada...

De ante mano Gracias

data: ltm_pridoc_comt type crmt_pridoc_comt.
data: lsm_pridoc_comt type crmt_pridoc_com.

data: lt_cond_add type prct_cond_external_input_t.
data: ls_cond_add type prct_cond_external_input,
ls_prct_cond_external_input type prct_cond_external_input,
lt_input_fields type crmt_input_field_tab,
ls_input_fields type crmt_input_field,
gt_exception type crmt_exception_t,
lv_loghndl type balloghndl.

data : ls_header_guid type crmt_object_guid,
lt_header_guid type crmt_object_guid_tab,
gt_saved_objects type crmt_return_objects,
ls_input_field_names type crmt_input_field_names,
lt_input_field_names type crmt_input_field_names_tab.

data: p_item type crmt_object_guid,
p_header type crmt_object_guid.


p_item = 'D8F6C5D63959224781181FDF9E2BB0D4'.
p_header = 'DF4266B597F5C6F1B7C80011856B9E9E'.

clear: lsm_pridoc_comt,ls_prct_cond_external_input.

lsm_pridoc_comt-ref_guid = p_header.
lsm_pridoc_comt-ref_kind = 'B'.
ls_cond_add-kschl = 'ZVR1'.
ls_cond_add-waers ='USD'.
ls_cond_add-kbetr = 1500.
ls_cond_add-knumh = p_item.
insert ls_cond_add into table lsm_pridoc_comt-cond_add.
insert lsm_pridoc_comt into table ltm_pridoc_comt.


ls_input_fields-ref_guid = p_item.
ls_input_fields-ref_kind = 'B'.
ls_input_fields-objectname = 'PRIDOC'.
ls_input_fields-field_names = lt_input_field_names.
insert ls_input_fields into table lt_input_fields.

call function 'CRM_ORDER_MAINTAIN'
exporting
it_pridoc = ltm_pridoc_comt
importing
et_exception = gt_exception
changing
ct_input_fields = lt_input_fields
cv_log_handle = lv_loghndl
exceptions
error_occurred = 1
document_locked = 2
no_change_allowed = 3
no_authority = 4
others = 5.
if sy-subrc = 0.

ls_header_guid = p_header.
append ls_header_guid to lt_header_guid.

* CALL FUNCTION 'CRM_ORDER_SAVE'
* EXPORTING
* it_objects_to_save = lt_header_guid
* IMPORTING
* et_saved_objects = gt_saved_objects.
*
call function 'BAPI_TRANSACTION_COMMIT'
exporting
wait = 'X'
* IMPORTING
* RETURN =
.
if sy-subrc eq 0.
write : /3 'Successfully status changed'.
endif.
endif.
:confused:

Favor algun abap CRMque me pueda guiar....
Gracias