Ver Mensaje Individual
  #7  
Viejo 08/06/09, 14:47:32
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
Te paso un ejemplo de como hacer que cuando modifiques un campo de una posicion de solped te cree una posicion nueva como copia

El codigo tendrias que ponerlo en el metodo process_item y tendras que meterlo dentro de alguna condicion porque sino va a entrar en un bucle infinito ya que al modificar una posicion creara otra como copia, al crear otra como copia volvera a saltar el process_item y se volvera a crear otra como copia...

La idea es que veas como hacerlo

En el metodo process_item podrias hacer esto

DATA: lo_header TYPE REF TO if_purchase_requisition,
lo_item TYPE REF TO if_purchase_requisition_item.

data: ls_item type mereq_item,
ls_itemx type mereq_itemx.


*Aqui obtengo el objeto cabecera de la solicitud de pedido
lo_header = im_item->get_requisition( ).

*Aqui creo una nueva posicion como copia de otra existente
lo_item = lo_header->create_item( im_item = im_item ).

*Si quisiera crearla en blanco
lo_item = lo_header->create_item( ).

ls_item = lo_item->get_data( ).
ls_itemx = lo_item->get_datax( ).

ls_item-menge = 69.
ls_itemx-menge = 'X'.

lo_item->set_data( im_data = ls_item ).
lo_item->set_datax( im_datax = ls_itemx ).
Responder Con Cita