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 26/02/08, 09:32:46
dayanareyes dayanareyes is offline
Member
 
Fecha de Ingreso: jul 2006
Mensajes: 36
Unhappy URGENTE AYUDA CON AlV

hola...

tengo un ALV que me estaba funcionando perfecto... lo he creado yo (anuqe no tengo nada de experiencia.....) y seguia modificandolo, agregue unos campos mas que era necesario y funciono perferto.

ya despues intente descomentar la parte de SORT Ordenar y no me funciono me saltaba errores, asi que intente reversar el cambio y ahora no se que hice que no me trae datos el ALV

AYUDA PORFAAAAAAAAAA

*&---------------------------------------------------------------------*
*& Report ZPS_LISTADO_VBRK *
*& *
*&---------------------------------------------------------------------*
*& *
*& *
*&---------------------------------------------------------------------*
REPORT zps_listado_facturas .

*--Definición de las tablas
TABLES: vbrk, kna1, bkpf.

*--Definición de las Tipos, datos y TI
TYPES: BEGIN OF t_vbrk,
fkdat LIKE vbrk-fkdat, "Fecha de la Factura
vbeln LIKE vbrk-vbeln, "Numero de la Factura
belnr LIKE vbrk-belnr, "Numero de Factura
zuonr LIKE vbrk-zuonr, "Codigo Analitico
kunag LIKE vbrk-kunag, "Codigo Solicitante Cliente
name1 LIKE kna1-name1, "Nombre Cliente
opera LIKE vbrk-vbeln, "Operacion
netwr LIKE vbrk-netwr, "Importe - Valor Neto
waerk LIKE vbrk-waerk, "Moneda
fksto LIKE vbrk-fksto, "Anulada
budat LIKE bkpf-budat, "Fecha de Contabilizacion
xblnr LIKE bkpf-xblnr, "
fkart LIKE vbrk-fkart, "Clase de Documento
END OF t_vbrk.


DATA: wa_factura TYPE STANDARD TABLE OF t_vbrk WITH HEADER LINE.
DATA: it_fact TYPE STANDARD TABLE OF t_vbrk WITH HEADER LINE.

*DATA: it_output TYPE STANDARD TABLE OF t_vbrk WITH HEADER LINE,
*p_tipo(10).

*
**--Selección de la pantalla principal

SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: so_vbeln FOR vbrk-vbeln.
SELECT-OPTIONS: so_fkdat FOR vbrk-fkdat.
SELECT-OPTIONS: so_kunag FOR vbrk-kunag.
SELECT-OPTIONS: so_fkart FOR vbrk-fkart.
PARAMETER: so_budat LIKE bkpf-budat.
PARAMETER: so_fksto LIKE vbrk-fksto.

SELECTION-SCREEN: END OF BLOCK b1.



*1- Añadir un checkbox en la pantalla de selección para filtrar por
*las facturas contabilizadas.
*2- Añadir en el listado la columna fecha de contabilización

*Para ver la fecha de contabilización de una factura tienes que acceder
*a la tabla BKPF y mostrar el campo BUDAT. La manera de linkar la VBRK
*(cabecera Facturas) y BKPF (cabecera documento contable) es a través
*del campo , es decir con ese campo de la VBRK accedes a la BKPF y
*sacas la fecha de contabilización.

*3- Ordenar por número de factura.

*Entiendo que esto, sin problema.

*4- Poner la clase de documento en la pantalla de selección.
*
*5- Incluir una columna en el listado que sea la clase de documento.

*La clase de documento está en VBRK-FKART. Pones un SELECT-OPTION en la
*pantalla de selección y cuando hagas la selección de la VBRK haces el
*filtro por este parámetro y listos.

*&---------------------------------------------------------------------*
*& Form seleccion_datos
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->IT_ text
*----------------------------------------------------------------------*
FORM seleccion_datos TABLES it_vbrk STRUCTURE it_fact. "it_output.

*--Seleccionando los datos de la BD
SELECT *
FROM ( vbrk INNER JOIN kna1
ON vbrk~kunag = kna1~kunnr )
INNER JOIN bkpf ON vbrk~xblnr = bkpf~xblnr
INTO CORRESPONDING FIELDS OF TABLE wa_factura
WHERE vbeln IN so_vbeln AND
fkdat IN so_fkdat AND
kunag IN so_kunag AND
fksto = so_fksto AND
budat = SO_BUDAT.


*--Si trae la información de la BD, clasificar la información
IF sy-subrc = 0.
*--Interactuando con la WA donde se guardo la información extraida de BD
LOOP AT wa_factura.
*--Moviendo la información de la WA a la TI que se mostrará en el ALV
MOVE-CORRESPONDING wa_factura TO it_fact.
*--Agregando la información a la TI
APPEND it_fact.
ENDLOOP.
ENDIF.
ENDFORM. "selección



*--Definiendo el primer evento del reporte
START-OF-SELECTION.
*-Llamando a las subrutinas y pasandole la TI que se mostraran en el ALV
PERFORM seleccion_datos TABLES it_fact. "it_output.
PERFORM alv_create TABLES it_fact. "it_output.


*Type Pool donde vienen definidas todas las estructuras y tablas
TYPE-POOLS: slis.

DATA:
* Catálogo de campos: contiene la descripción de los campos de salida
alv_git_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
alv_git_fieldcat_par TYPE slis_t_fieldcat_alv WITH HEADER LINE,
w_field TYPE slis_t_fieldcat_alv WITH HEADER LINE,
alv_sort TYPE slis_t_sortinfo_alv,
t_spec_groups TYPE slis_t_sp_group_alv,

* Descripción de la estructura de salida
alv_gwa_layout TYPE slis_layout_alv,
* alv_gwa_print type slis_print_alv,

* Cabecera del reporte
alv_git_heading TYPE slis_t_listheader WITH HEADER LINE,

* Eventos
alv_git_events TYPE slis_t_event WITH HEADER LINE,
alv_gc_save(1) TYPE c,
alv_gc_exit(1) TYPE c,
alv_gx_variant LIKE disvariant,
alv_gx_tmpvariant LIKE disvariant,
sp_group TYPE slis_sp_group_alv,


* Nombre de la Tabla con los datos para el ALV
alv_it_data TYPE slis_formname VALUE 'IT_ALV',

* Nombre del programa
alv_gx_repid LIKE sy-repid.


*-------------------------------------------------------------------*
* Declaración de constantes
*-------------------------------------------------------------------*
CONSTANTS:

* FORM para escribir el encabezado
alv_formname_top_of_page TYPE slis_formname VALUE 'ALV_TOP_OF_PAGE',
* * alv_formname_user_command TYPE slis_formname VALUE 'USER_COMMAND',
alv_formname_end_of_list TYPE slis_formname VALUE 'ALV_END_OF_LIST'.


INITIALIZATION.

* NOMBRE DEL PROGRAMA VARIABLE ALV
alv_gx_repid = sy-repid.
PERFORM initialize_variant.
* gs_print-no_print_listinfos = 'X'.


*Subrutinas del ALV
*---------------------------------------------------------------------*
* FORM alv_build_eventtab *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
FORM alv_build_eventtab.

FREE alv_git_events.
*Llamada de la funcion
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = alv_git_events[].

*Llamada del Top_of_page
READ TABLE alv_git_events WITH KEY name = slis_ev_top_of_page.

IF sy-subrc = 0.
MOVE alv_formname_top_of_page TO alv_git_events-form.
APPEND alv_git_events.
ENDIF.


*Llamada del End_of_list
READ TABLE alv_git_events WITH KEY name = slis_ev_end_of_list.

IF sy-subrc = 0.
MOVE alv_formname_end_of_list TO alv_git_events-form.
APPEND alv_git_events.
ENDIF.

ENDFORM. "alv_build_eventtab


*&---------------------------------------------------------------------*
*& Form alv_ini_layout
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM alv_ini_layout.
* alv_gwa_layout-box_fieldname = 'SEL'.
* alv_gwa_layout-edit = 'X'.
*
*Indica como se vera la pantalla de salida.
* zebra = 'X' (Lista los registros con dos colores, uno por linea).
* zebra = ' ' (Lista los registro de un solo color).

alv_gwa_layout-zebra = 'X'.

*Detail_popup = ' ' (Al pulsar doble-click en un registro de la lista
*principal, se presenta otra lista con el detalle).
*Detail_popup = 'X' (Al pulsar doble-click en un registro de la lista
*principal, se presenta una ventana con el detalle).
*
alv_gwa_layout-detail_popup = ' '.
ENDFORM. "alv_ini_layout

*&---------------------------------------------------------------------*
*& Form alv_ini_fieldcat
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM alv_ini_fieldcat.
* Mediante esta tabla vamos a definir los campos que se quiere mostrar
* en el listado de salida.

*COLUMNAS CLAVES
CLEAR alv_git_fieldcat.
REFRESH alv_git_fieldcat.
alv_git_fieldcat-tabname = alv_it_data.
alv_git_fieldcat-fix_column = space. "# Dejar campos Fijos

*--Fecha
alv_git_fieldcat-fieldname = 'FKDAT'.
alv_git_fieldcat-seltext_l = text-002.
alv_git_fieldcat-just = 'C'.
alv_git_fieldcat-col_pos = '0'.
alv_git_fieldcat-outputlen = '15'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

*--Numero de la Factura
alv_git_fieldcat-fieldname = 'VBELN'.
alv_git_fieldcat-seltext_l = text-003.
alv_git_fieldcat-just = 'C'.
alv_git_fieldcat-col_pos = '1'.
alv_git_fieldcat-outputlen = '20'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

*--Numero de la Factura 2
alv_git_fieldcat-fieldname = 'BELNR'.
alv_git_fieldcat-seltext_l = text-003.
alv_git_fieldcat-just = 'C'.
alv_git_fieldcat-col_pos = '1'.
alv_git_fieldcat-outputlen = '20'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.


*--Codigo Analitico
alv_git_fieldcat-fieldname = 'ZUORN'.
alv_git_fieldcat-seltext_l = text-004.
alv_git_fieldcat-just = 'L'.
alv_git_fieldcat-col_pos = '2'.
alv_git_fieldcat-outputlen = '20'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

*--Cliente
alv_git_fieldcat-fieldname = 'NAME1'. "'KUNAG'.
alv_git_fieldcat-seltext_l = text-005.
alv_git_fieldcat-just = 'L'.
alv_git_fieldcat-col_pos = '3'.
alv_git_fieldcat-outputlen = '40'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

*--Operacion
alv_git_fieldcat-fieldname = 'VBELN'.
alv_git_fieldcat-seltext_l = text-006.
alv_git_fieldcat-just = 'L'.
alv_git_fieldcat-col_pos = '4'.
alv_git_fieldcat-outputlen = '20'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

*--Importe
alv_git_fieldcat-fieldname = 'NETWR'.
alv_git_fieldcat-seltext_l = text-007.
alv_git_fieldcat-just = 'L'.
alv_git_fieldcat-col_pos = '5'.
alv_git_fieldcat-outputlen = '7'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

*--Moneda local
alv_git_fieldcat-fieldname = 'WAERK'.
alv_git_fieldcat-seltext_l = text-007.
alv_git_fieldcat-just = 'L'.
alv_git_fieldcat-col_pos = '5'.
alv_git_fieldcat-outputlen = '7'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

*--Anulada
alv_git_fieldcat-fieldname = 'FKSTO'.
alv_git_fieldcat-seltext_l = text-008.
alv_git_fieldcat-just = 'L'.
alv_git_fieldcat-col_pos = '5'.
alv_git_fieldcat-outputlen = '7'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.


*--Fecha de Contabilizacion
alv_git_fieldcat-fieldname = 'BUDAT'.
alv_git_fieldcat-seltext_l = text-010.
alv_git_fieldcat-just = 'L'.
alv_git_fieldcat-col_pos = '5'.
alv_git_fieldcat-outputlen = '15'.
APPEND alv_git_fieldcat. CLEAR alv_git_fieldcat.

ENDFORM. "alv_ini_fieldcat
*&---------------------------------------------------------------------*
*& Form alv_build_comment
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM alv_build_comment.

*Definicion del contenido del top_of_page
DATA: aux_1(100) TYPE c,
aux_2(100) TYPE c,
empresa_nombre TYPE t001-butxt,
fch1(10) TYPE c,
fch2(10) TYPE c.

DATA: divi(100) TYPE c,
div_asignada TYPE c.

FREE alv_git_heading.

CLEAR aux_1.
aux_1 = ' '.
alv_git_heading-typ = 'H'.
alv_git_heading-key = aux_1.
alv_git_heading-info = aux_1.
APPEND alv_git_heading.


CLEAR aux_1.
aux_1 = 'Listado de Facturas'.
alv_git_heading-typ = 'H'.
* alv_git_heading-key = aux_1.
alv_git_heading-info = aux_1.
APPEND alv_git_heading.

* Fecha
alv_git_heading-typ = 'S'.
DATA fecha(10).
PERFORM format_date USING sy-datum CHANGING fecha.
alv_git_heading-key = 'Fecha: '.
alv_git_heading-info = fecha.
APPEND alv_git_heading.

ENDFORM. "alv_build_comment
*&---------------------------------------------------------------------*
*& Form format_date
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_SY_DATUM text
* <--P_FECHA text
*----------------------------------------------------------------------*
FORM format_date USING fecha_entrada LIKE sy-datum
CHANGING fecha_salida TYPE c.

*Definicion formato de la fecha
CONCATENATE fecha_entrada+6(2) fecha_entrada+4(2) fecha_entrada+0(4)
INTO fecha_salida SEPARATED BY '/'.


ENDFORM. " format_date

*&---------------------------------------------------------------------*
*& Form alv_listado
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_IT_ALV text
*----------------------------------------------------------------------*
FORM alv_listado TABLES it_fact. "p_it_alv.

DATA: lc_glay TYPE lvc_s_glay.

lc_glay-edt_cll_cb = 'X'.

*Llamado de la funcion del ALV



***************
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
i_buffer_active = ' '
i_callback_program = alv_gx_repid "g_repid
* i_callback_pf_status_set = 'ALV_PF_STATUS_SET'
* i_callback_user_command = 'USER_COMMAND'
i_structure_name = 'it_fact' "alv_it_data "'T_DATOS'
is_layout = alv_gwa_layout "gs_layout
it_fieldcat = alv_git_fieldcat[] "gt_fieldcat[]
* I_CALLBACK_PROGRAM = ' '
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
* I_CALLBACK_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME =
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS =
* IT_FIELDCAT =
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
it_sort = alv_sort[]
* IT_FILTER =
* IS_SEL_HIDE =
i_default = 'A' " 'X'
i_save = alv_gc_save "'A'
is_variant = alv_gx_variant "gx_variant
it_events = alv_git_events[] "gt_events[]
* IT_EVENT_EXIT =
* IS_PRINT =ls_print
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* IT_ALV_GRAPHICS =
* IT_HYPERLINK =
* IT_ADD_FIELDCAT =
* IT_EXCEPT_QINFO =
* I_HTML_HEIGHT_TOP =
* I_HTML_HEIGHT_END =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = it_fact "t_datos

EXCEPTIONS
program_error = 1
OTHERS = 2
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

ENDFORM. "alv_listado
*&---------------------------------------------------------------------*
*& Form alv_top_of_page
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM alv_top_of_page.

*Llamado de la funcion del top_of_page
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = alv_git_heading[].
* I_LOGO =
* I_END_OF_LIST_GRID =

ENDFORM. "alv_top_of_page
*&---------------------------------------------------------------------*
*& Form alv_create
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM alv_create TABLES it_fact. "p_it_output.

*Llamados de las subrutinas del ALV
*** PERFORM ordenar_por USING alv_sort[].
PERFORM alv_build_eventtab.
PERFORM alv_ini_layout.
PERFORM alv_ini_fieldcat.
PERFORM alv_build_comment.
PERFORM alv_listado TABLES it_fact. "p_it_output.


ENDFORM. "alv_create
*&---------------------------------------------------------------------*
*& Form initialize_variant
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM initialize_variant.

*Llamado de la variable de inicializacion del programa
alv_gc_save = 'A'.
CLEAR alv_gx_variant.
alv_gx_variant-report = alv_gx_repid.
alv_gx_variant = alv_gx_variant.

CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
i_save = alv_gc_save
CHANGING
cs_variant = alv_gx_variant
EXCEPTIONS
not_found = 2.
IF sy-subrc = 0.
vari = alv_gx_variant-variant.
ENDIF.

ENDFORM. "initialize_variant

**&---------------------------------------------------------------------
*
**& Form ordenar_por
**&---------------------------------------------------------------------
*
** text
**----------------------------------------------------------------------
*
** -->P_SORT text
**----------------------------------------------------------------------

***FORM ordenar_por USING p_sort TYPE slis_t_sortinfo_alv.
***
*** DATA: wa_sort TYPE slis_sortinfo_alv.
*** CLEAR wa_sort.
*** wa_sort-fieldname = 'vbeln'.
*** wa_sort-spos = 1.
*** wa_sort-up = 'X'.
*** wa_sort-subtot = 'X'.
*** APPEND wa_sort TO p_sort.
***
***
***ENDFORM. " ordenar_por

*&---------------------------------------------------------------------*
*& Form alv_pf_status_set
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->EXTAB text
*----------------------------------------------------------------------*
*FORM alv_pf_status_set USING extab TYPE slis_t_extab."TABLES
*p_it_output
*
* SET PF-STATUS 'ESTANDAR_NEW_II'. " EXCLUDING p_it_output.
*
*ENDFORM. "alv_pf_status_set

*&---------------------------------------------------------------------*
*& Form refresca_alv
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->U_SELFIELD text
*----------------------------------------------------------------------*
FORM refresca_alv USING u_selfield TYPE slis_selfield.

u_selfield-refresh = 'X'.
u_selfield-col_stable = 'X'.
u_selfield-row_stable = 'X'.

ENDFORM. "refresca_alv

*&---------------------------------------------------------------------*
*& Form ALV_END_OF_LIST
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
*FORM alv_end_of_list.
*
**Seleccion del end_of_list
** DATA: aux_5(100) TYPE c.
**
** FREE alv_git_heading.
** aux_5 = 'Días'.
** alv_git_heading-typ = 'S'.
** alv_git_heading-key = aux_5.
*** alv_git_heading-info = suma.
** APPEND alv_git_heading.
**
** CLEAR aux_5.
*** FREE alv_git_heading.
** aux_5 = 'Promedio de días'.
** alv_git_heading-typ = 'S'.
** alv_git_heading-key = aux_5.
*** alv_git_heading-info = promedio.
** APPEND alv_git_heading.
**
* CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
* EXPORTING
* it_list_commentary = alv_git_heading[]
* i_end_of_list_grid = 'end'.
**
**
**
*ENDFORM. "ALV_END_OF_LIST

Gracias....
Responder Con Cita
  #2  
Viejo 26/02/08, 09:54:17
Avatar de pirri
pirri pirri is offline
Senior Member
 
Fecha de Ingreso: dic 2006
Mensajes: 127
Así por encima... ¿has mirado que te lleguen datos de la selección?

Ponle un break-point despues de la selección, quizás sólo sea que no te está encontrando datos.


Otra cosa, que no impide obtener datos pero sería bueno revisar, usas el parametro it_vbrk como tabla en seleccion_datos pero luego usas el global it_fact. Sería mejor usar it_vrk.


Un saludo.
Responder Con Cita
  #3  
Viejo 26/02/08, 11:18:29
dayanareyes dayanareyes is offline
Member
 
Fecha de Ingreso: jul 2006
Mensajes: 36

si que trae los datos pero nada no me salen en el listado POR FAVOR tengo q entregar esto ya
Responder Con Cita
  #4  
Viejo 26/02/08, 14:36:46
larmadovr larmadovr is offline
Member
 
Fecha de Ingreso: ene 2008
Localización: Monterrey N.L. México
Mensajes: 77
Smile Hola, estoy revisando tu programa.

Avisame si todavía necesitas ayuda, para poder enviarte el código
Responder Con Cita
  #5  
Viejo 26/02/08, 14:53:01
larmadovr larmadovr is offline
Member
 
Fecha de Ingreso: ene 2008
Localización: Monterrey N.L. México
Mensajes: 77
Thumbs up Por si aún lo ocupas.

tienes el siguiente código:

TYPES: BEGIN OF t_vbrk,
fkdat LIKE vbrk-fkdat, "Fecha de la Factura
vbeln LIKE vbrk-vbeln, "Numero de la Factura
belnr LIKE vbrk-belnr, "Numero de Factura
zuonr LIKE vbrk-zuonr, "Codigo Analitico
kunag LIKE vbrk-kunag, "Codigo Solicitante Cliente
name1 LIKE kna1-name1, "Nombre Cliente
opera LIKE vbrk-vbeln, "Operacion
netwr LIKE vbrk-netwr, "Importe - Valor Neto
waerk LIKE vbrk-waerk, "Moneda
fksto LIKE vbrk-fksto, "Anulada
budat LIKE bkpf-budat, "Fecha de Contabilizacion
xblnr LIKE bkpf-xblnr, "
fkart LIKE vbrk-fkart, "Clase de Documento
END OF t_vbrk.


DATA: wa_factura TYPE STANDARD TABLE OF t_vbrk WITH HEADER LINE.
DATA: it_fact TYPE STANDARD TABLE OF t_vbrk WITH HEADER LINE.


Prueba con lo siguiente:

1.- Crear estructura zvbrk con los datos que tienes en tu tabla interna del ejemplo de arriba.

2.- Declarar lo siguiente:

* Se declara tu wa del tipo estructura que creaste en el diccionario
TYPES: BEGIN OF wa_factura .
INCLUDE STRUCTURE zvbrk.
TYPES: END OF wa_factura .

* Se declara una tabla interna con referencia a tu wa
DATA: t_vbrk TYPE STANDARD TABLE OF wa_factura WITH HEADER LINE.

3.- Los datos que quieres sean mostrados, asignalos directamente a t_vbrk

4.- ejecuta el programa y listo.

Este problema es básicamente por la versión de R/3. Por que incluso yo ejecute tu mismo código en la 4.6C y si mostró datos.

Ahora prueba con este ejemplo y si no sale, me avisas para seguir analizando.

Saludos.
3.-
Responder Con Cita
  #6  
Viejo 26/02/08, 15:00:27
Avatar de nenuke
nenuke nenuke is offline
Member
 
Fecha de Ingreso: sep 2006
Localización: Madrid
Mensajes: 87
Hola,

he probado tu código y saca los datos perfectamente, prueba a cerrar todos los modos de desarrollo y volver a activar los objetos. A veces se te queda la versión anterior a la modificación activa y no estas ejecutando la ultima versión de tu programa.

Un saludo.
Responder Con Cita
  #7  
Viejo 26/02/08, 15:13:34
Avatar de pirri
pirri pirri is offline
Senior Member
 
Fecha de Ingreso: dic 2006
Mensajes: 127
Después del agonico mensaje también lo he comprobado y va bien. Alguna cosita modificaría del select y demás, pero a mi me saca los datos OK.

Lo único que te debería dar problema es el campo SO_BUDAT si no coincide la contabilización, debe ir relleno con alguna fecha. BKPF debe tener fecha de contabilización.

Un saludo.
Responder Con Cita
  #8  
Viejo 26/02/08, 15:28:08
Avatar de pirri
pirri pirri is offline
Senior Member
 
Fecha de Ingreso: dic 2006
Mensajes: 127
Creo que no se entiende mi última frase. SO_BUDAT debe tener alguna fecha ya que en la BKPF el campo BUDAT siempre contiene fecha de contabilización y con parameter obligas si no está relleno a que este vacío también en la tabla BKPF.

Si en lugar de parameter usas "SELECT-OPTIONS so_budat for bkpf-budat" te quitas el problema.

Y en el select a mí me gusta poner la tabla de cada campo

Where
vbrk~vbeln IN so_vbeln AND
vbrk~fkdat IN so_fkdat AND
vbrk~kunag IN so_kunag AND
vbrk~fksto = so_fksto AND
bkpf~budat IN so_budat.

Un saludo y espero que llegaras a tiempo.
Responder Con Cita
  #9  
Viejo 27/02/08, 07:26:58
dayanareyes dayanareyes is offline
Member
 
Fecha de Ingreso: jul 2006
Mensajes: 36
holaaaaaaa

gracias a todos ya lo he podido respolver si era una de las validaqciones del select q me daba problema.

graciasssss
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 15:24:57.


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