MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 21/10/11, 12:29:05
Flatron Flatron is offline
Member
 
Fecha de Ingreso: ago 2008
Mensajes: 78
Múltiple elección

Me estoy rompiendo la cabeza con esto,

Tengo el siguiente código, que tengo que modificar para que en vez de introducir un sólo número de documento me active el poder meter varios.


*** programa que calcula por posición el flujo de documentos ****

*---- Selection Screen -------------------------------------------------
parameters: vbeln like vbuk-vbeln memory id aun obligatory,
posnr like vbap-posnr memory id pid.
*---- Variables --------------------------------------------------------
data: w_comwa like vbco6,
it_doc like vbfa occurs 0 with header line,
it_txt like dd07v occurs 0 with header line,
begin of it_type occurs 0,
vbtyp like vbuk-vbtyp,
text like dd07v-ddtext,
end of it_type.
*-----------------------------------------------------------------------
start-of-selection.
w_comwa-mandt = sy-mandt.
w_comwa-vbeln = vbeln.
w_comwa-posnr = posnr.
call function 'RV_ORDER_FLOW_INFORMATION'
exporting
comwa = w_comwa
tables
vbfa_tab = it_doc
exceptions
no_vbfa = 1
no_vbuk_found = 2
others = 3.
case sy-subrc.
when 1. write: / 'No VBFA found.'.
when 2. write: / 'No VBUK found. Check selection criteria...'.
when 3. write: / 'Unknown Error!'.
when 0. perform write_docs.
endcase.
*-----------------------------------------------------------------------
form write_docs.
call function 'GET_DOMAIN_VALUES'
exporting
domname = 'VBTYP'
tables
values_tab = it_txt
exceptions
no_values_found = 1
others = 2.
case sy-subrc.
when 1. write: / 'Warning: No texts found for Sales Docs types!'.
when 2. write: / 'Warning: Cannot retrieve SD types descriptions!'.
when 0. perform sort_texts.
endcase.

write: / 'Order Flow Information:'.
loop at it_doc.
write: / it_doc-stufe,
it_doc-vbelv,
it_doc-posnv.
perform write_type using it_doc-vbtyp_v.
write: it_doc-vbeln,
it_doc-posnn.
perform write_type using it_doc-vbtyp_n.
write: it_doc-matnr,
it_doc-rfmng unit it_doc-meins,
it_doc-meins.
endloop.
endform.
*-----------------------------------------------------------------------
form sort_texts.
loop at it_txt.
it_type-vbtyp = it_txt-domvalue_l.
it_type-text = it_txt-ddtext.
append it_type.
clear it_type.
endloop.
sort it_type.
endform.
*-----------------------------------------------------------------------
form write_type using value(p_vbtyp) like vbuk-vbtyp.
data w_txt(30) type c.
read table it_type with key vbtyp = p_vbtyp binary search.
case sy-subrc.
when 0. w_txt = it_type-text.
when others. w_txt = '?'.
endcase.
write w_txt intensified off.
endform.
*-----------------------------------------------------------------------
Responder Con Cita
  #2  
Viejo 21/10/11, 16:09:27
beltsoft beltsoft is offline
Member
 
Fecha de Ingreso: sep 2011
Localización: Mexico
Mensajes: 99
SELECT-OPTIONS vbeln for vbuk-vbeln memory id aun obligatory.

No olvides declar la tabla.

Saludos.
__________________
SSE BeltSoft México
Your Business, our motivation ...
Responder Con Cita
  #3  
Viejo 24/10/11, 06:19:37
Flatron Flatron is offline
Member
 
Fecha de Ingreso: ago 2008
Mensajes: 78
Si declaro la tabla, y añado esa instrucción me dice que el campo vbeln ya ha sido definido ...
Responder Con Cita
  #4  
Viejo 24/10/11, 11:04:47
esterg esterg is offline
Junior Member
 
Fecha de Ingreso: sep 2011
Mensajes: 20
sustituir parameter- select options

Hola,
-Cuando te da el mensaje te indica donde es el segundo lugar que esta definido ??
-La idea es sustituir el parameter por select options.
Si es otra cosa distinta, despues comentalo.
Suerte,
Ester.-
Responder Con Cita
  #5  
Viejo 24/10/11, 11:15:35
Flatron Flatron is offline
Member
 
Fecha de Ingreso: ago 2008
Mensajes: 78
Si sustituyo el parameters por el select-options, me llega al final a decir que la tabla VBUK no la encuentra.
Responder Con Cita
  #6  
Viejo 24/10/11, 11:32:54
Flatron Flatron is offline
Member
 
Fecha de Ingreso: ago 2008
Mensajes: 78
Quería decir Aunque la defina en tables, me salta al error 2, cuando si dejo el parameters si llega.

start-of-selection.
w_comwa-mandt = sy-mandt.
w_comwa-vbeln = vbeln.
w_comwa-posnr = posnr.
call function 'RV_ORDER_FLOW_INFORMATION'
exporting
comwa = w_comwa
tables
vbfa_tab = it_doc
exceptions
no_vbfa = 1
no_vbuk_found = 2
others = 3.
case sy-subrc.
when 1. write: / 'No VBFA found.'.
when 2. write: / 'No VBUK found. Check selection criteria...'.
when 3. write: / 'Unknown Error!'.
when 0. perform write_docs.
endcase.
Responder Con Cita
  #7  
Viejo 24/10/11, 15:36:35
esterg esterg is offline
Junior Member
 
Fecha de Ingreso: sep 2011
Mensajes: 20
Problema con nombre de parametro

Hola,
No tengo aca SAP para probar.
Yo al select-option: lo nombraria p_vbeln y definiria la tabla vbuk.
Tambien fijate que el select option no se usa igual que un parametro, que es un solo valor.
Espero que esto se sirva.
Suerte.Ester.-
Responder Con Cita
  #8  
Viejo 24/10/11, 16:02:54
Flatron Flatron is offline
Member
 
Fecha de Ingreso: ago 2008
Mensajes: 78
Gracias esterg por tus comentarios.

Dices que lo ponga así??

Así el problema que tengo es que siempre me coge el caso 2.
when 2. write: / 'No VBUK found. Check selection criteria...'.

tables: vbuk,vbap.

select-options: p_vbeln for vbuk-vbeln memory id aun obligatory.

parameters: posnr like vbap-posnr memory id pid.

**
*---- Variables --------------------------------------------------------
data: w_comwa like vbco6,
it_doc like vbfa occurs 0 with header line,
it_txt like dd07v occurs 0 with header line,
begin of it_type occurs 0,
vbtyp like vbuk-vbtyp,
text like dd07v-ddtext,
end of it_type.
*-----------------------------------------------------------------------
start-of-selection.
w_comwa-mandt = sy-mandt.
w_comwa-vbeln = p_vbeln.
w_comwa-posnr = posnr.
call function 'RV_ORDER_FLOW_INFORMATION'
exporting
comwa = w_comwa
tables
vbfa_tab = it_doc
exceptions
no_vbfa = 1
no_vbuk_found = 2
others = 3.
case sy-subrc.
when 1. write: / 'No VBFA found.'.
when 2. write: / 'No VBUK found. Check selection criteria...'.
when 3. write: / 'Unknown Error!'.
when 0. perform write_docs.
endcase.
*-----------------------------------------------------------------------
form write_docs.
call function 'GET_DOMAIN_VALUES'
exporting
domname = 'VBTYP'
tables
values_tab = it_txt
exceptions
no_values_found = 1
others = 2.
case sy-subrc.
when 1. write: / 'Warning: No texts found for Sales Docs types!'.
when 2. write: / 'Warning: Cannot retrieve SD types descriptions!'.
when 0. perform sort_texts.
endcase.

write: / 'Order Flow Information:'.
loop at it_doc.
write: / it_doc-stufe,
it_doc-vbelv,
it_doc-posnv.
perform write_type using it_doc-vbtyp_v.
write: it_doc-vbeln,
it_doc-posnn.
perform write_type using it_doc-vbtyp_n.
write: it_doc-matnr,
it_doc-rfmng unit it_doc-meins,
it_doc-meins.
endloop.
endform.
*-----------------------------------------------------------------------
form sort_texts.
loop at it_txt.
it_type-vbtyp = it_txt-domvalue_l.
it_type-text = it_txt-ddtext.
append it_type.
clear it_type.
endloop.
sort it_type.
endform.
*-----------------------------------------------------------------------
form write_type using value(p_vbtyp) like vbuk-vbtyp.
data w_txt(30) type c.
read table it_type with key vbtyp = p_vbtyp binary search.
case sy-subrc.
when 0. w_txt = it_type-text.
when others. w_txt = '?'.
endcase.
write w_txt intensified off.
endform.
Responder Con Cita
  #9  
Viejo 24/10/11, 16:18:10
Avatar de DCErick
DCErick DCErick is offline
Moderator
 
Fecha de Ingreso: mar 2006
Localización: Monterrey
Mensajes: 1,090

Es porque al asignar w_comwa-vbeln = vbeln. le estas asignando la cabecera del rango vbeln al campo w_comwa-vbeln. La funcion quer estas usando (RV_ORDER_FLOW_INFORMATION) te regresa el flujo de documentos de un solo pedido.

Lo que deberias hacer es declararte una tabla interna para seleccionar los pedidos que estén en el rango que indicaste, luego aplicarle un loop a esa tabla interna para ver el flujo de docuemtos de cada pedido seleccionado.


Ah y coloca etiquetas cuando pongas código en los post, para facilitar la lectura.
__________________
-------------------
¿Dudas para descargar manuales? Ver este tema ->
Responder Con Cita
  #10  
Viejo 24/10/11, 16:24:17
Flatron Flatron is offline
Member
 
Fecha de Ingreso: ago 2008
Mensajes: 78
Gracias DERick.

Voy a probar.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 14:00:33.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web