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 18/04/13, 20:54:53
minerva0112 minerva0112 is offline
Senior Member
 
Fecha de Ingreso: nov 2009
Mensajes: 116
Question Convertir formulario smartform a pdf y utilizar open dataset para bajarlo directorio

Estoy convirtiendo un formulario smartform a pdf y luego bajarlo a un directorio, cuando utilizo CALL FUNCTION 'GUI_DOWNLOAD', todo funciona perfecto, pero esto va ser realizado en proceso de fondo y al utilizar open dataset, genera error.


Favor que posible solución puedo aplicar en este caso.

gracias
Responder Con Cita
  #2  
Viejo 18/04/13, 22:48:30
vtsuchida vtsuchida is offline
Junior Member
 
Fecha de Ingreso: dic 2011
Mensajes: 21
Hola, podrías poner algo de tu código para poder revisar el problema?
Asumo que tienes una tabla OTF, la cual has convertido previamente a formato PDF.

Saludos
Responder Con Cita
  #3  
Viejo 19/04/13, 01:06:30
minerva0112 minerva0112 is offline
Senior Member
 
Fecha de Ingreso: nov 2009
Mensajes: 116

hola aqui te anexo

g_texto = 'Listado de ingresos para la fecha:'.
g_fecha = sy-datum.
control_parameters-no_dialog = 'X'.
output_options-tddest = 'PDF '.
output_options-tdnewid = 'X'.
output_options-tdimmed = 'X'.
* g_ruta = 'C:\'.
g_nombre = 'Lista'.

CONCATENATE p_ruta g_nombre '.pdf' INTO g_archivo2.


CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZHRO_LSTD_NTFCCNS'
IMPORTING
fm_name = g_funcion
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3.

IF sy-subrc = 0.

CALL FUNCTION g_funcion
EXPORTING
ingrs = p_ingrs
output_options = output_options
control_parameters = control_parameters
user_settings = ' '
TABLES
it_ingresos = it_ingresos
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5.

ELSE.
MESSAGE x016(rp) WITH 'Genere el Formulario'(030)
'ZHRO_LSTD_NTFCCNS'(031).
ENDIF.

SELECT SINGLE rqowner MAX( rqident ) AS rqident INTO (vl_uname, vg_n_spool)
FROM tsp01
GROUP BY rqowner
HAVING rqowner = sy-uname.
SELECT SINGLE rqclient rqo1name INTO (vg_client, vg_name)
FROM tsp01
WHERE rqident = vg_n_spool.
CALL FUNCTION 'RSTS_GET_ATTRIBUTES'
EXPORTING
authority = 'SP01'
client = vg_client
name = vg_name
part = 1
IMPORTING
type = vg_tipo
objtype = vg_tipo_obejto
EXCEPTIONS
fb_error = 1
fb_rsts_other = 2
no_object = 3
no_permission = 4.

IF vg_tipo_obejto(3) = 'OTF'.
* Convertir el spool en pdf, desde un fomulario


CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = vg_n_spool
no_dialog = ' '
IMPORTING
pdf_bytecount = vg_numbytes_pdf
pdf_spoolid = vg_pdf_spool_id
btc_jobname = vg_job_name
btc_jobcount = vg_job_id
TABLES
pdf = t_pdf
EXCEPTIONS
err_no_otf_spooljob = 1
err_no_spooljob = 2
err_no_permission = 3
err_conv_not_possible = 4
err_bad_dstdevice = 5
user_cancelled = 6
err_spoolerror = 7
err_temseerror = 8
err_btcjob_open_failed = 9
err_btcjob_submit_failed = 10
err_btcjob_close_failed = 11.

ELSE.

* Convertir el spool en pdf, desde una tabla de sap
CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = vg_n_spool
no_dialog = ' '
IMPORTING
pdf_bytecount = vg_numbytes_pdf
pdf_spoolid = vg_pdf_spool_id
btc_jobname = vg_job_name
btc_jobcount = vg_job_id
TABLES
pdf = t_pdf
EXCEPTIONS
err_no_abap_spooljob = 1
err_no_spooljob = 2
err_no_permission = 3
err_conv_not_possible = 4
err_bad_destdevice = 5
user_cancelled = 6
err_spoolerror = 7
err_temseerror = 8
err_btcjob_open_failed = 9
err_btcjob_submit_failed = 10
err_btcjob_close_failed = 11.


ENDIF.


DATA: w_lines TYPE tline.
CONCATENATE p_ruta g_nombre '.pdf' INTO g_archivo2.

OPEN DATASET g_archivo2 FOR OUTPUT IN TEXT MODE ENCODING DEFAULT IGNORING CONVERSION ERRORS.

IF sy-subrc = 0.
LOOP AT t_pdf INTO w_lines.
TRANSFER w_lines TO g_archivo2 LENGTH 2500.
ENDLOOP.
ENDIF.
CLOSE DATASET g_archivo2.


gracias
Responder Con Cita
  #4  
Viejo 19/04/13, 09:58:14
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
Prueba a sustituir

OPEN DATASET g_archivo2 FOR OUTPUT IN TEXT MODE ENCODING DEFAULT IGNORING CONVERSION ERRORS.

Por

OPEN DATASET g_archivo2 FOR OUTPUT IN BINARY MODE ....

De todas formas dinos el error exacto que te da para saber por donde van los tiros
Responder Con Cita
  #5  
Viejo 22/04/13, 13:36:07
minerva0112 minerva0112 is offline
Senior Member
 
Fecha de Ingreso: nov 2009
Mensajes: 116


hola gracias por responder, ya le cambie la opción al open data, pero ni siquiera me da error solo me da el msje que creo el pdf, pero no lo agrega al directorio.....
Responder Con Cita
  #6  
Viejo 22/04/13, 15:08:37
minerva0112 minerva0112 is offline
Senior Member
 
Fecha de Ingreso: nov 2009
Mensajes: 116

listo era la manera de como estaba declarando, es asi:

DATA: ls_lines LIKE LINE OF lt_lines.
DATA ld_ofile(100) TYPE c.

ld_ofile = '\\veccsapp14\PB\Lista.pdf'.
OPEN DATASET ld_ofile FOR OUTPUT IN BINARY MODE.
LOOP AT t_pdf INTO ls_lines.
TRANSFER ls_lines TO ld_ofile.
ENDLOOP.
CLOSE DATASET ld_ofile.

gracias
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 22:46:45.


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