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 15/06/10, 13:25:13
minerva0112 minerva0112 is offline
Senior Member
 
Fecha de Ingreso: nov 2009
Mensajes: 116
Question crear documento en pdf y enviarlas por correo

Hola ,

Se crearon unas constancias personalizadas y se requiere enviarlas por correo a cada proveedor .

Estas constancias ya se crean pero al pasarla al formato pdf me crea un solo archivo en el directorio con todos los documentos.

Lo que se quiere es que cuando se ejecute el programa se genere un pdf por proveedor y enviarselo de manera individual.

Ejemplo: proovedor1.pdf enviarlo al correo de proveedor1 @...,
proovedor2.pdf enviarlo al correo de proveedor21 @...,


cualquier idea seria de gran utilidad gracias
Responder Con Cita
  #2  
Viejo 17/06/10, 14:47:49
Avatar de leir1612
leir1612 leir1612 is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Localización: Argentina
Mensajes: 16
para minerva0112

hola minerva0112 te mando un ejemplo para enviar por mail recuperando el numero de spool ,

TYPES: begin of ty_adr6,
mail type adr6-smtp_addr,
end of ty_adr6.

DATA: t_adr6 type standard table of ty_adr6,
wa_adr6 type ty_adr6.

DATA: e_datos_doc LIKE sodocchgi1.
DATA: i_objpack LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
i_destinatario LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
i_cont_bin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_texto LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_anexo LIKE solisti1 OCCURS 0 WITH HEADER LINE.

*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
DATA: v_lineas LIKE sy-tabix,
v_lineas_tot LIKE sy-tabix,
v_len LIKE sy-index,
v_long LIKE sy-index,
v_queda LIKE sy-index,
v_offset LIKE sy-index,
v_indice LIKE sy-index,
wa_descr(70) TYPE c,
wa_nombre_archivo(50).

DATA: i_tline TYPE TABLE OF tline WITH HEADER LINE,
i_bin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
i_doctab TYPE docs OCCURS 0 WITH HEADER LINE.

DATA: wa_return TYPE ssfcrescl,
wa_buffer TYPE string, " to convert from 132 to 255
v_len_in TYPE sood-objlen,
wa_adrnr TYPE lfa1-adrnr,
wa_objhead TYPE solisti1 OCCURS 0.

DATA: wa_contrl TYPE ssfctrlop,
wa_output TYPE ssfcompop.

CONSTANTS: c_255(3) TYPE c VALUE '255',
c_134(3) TYPE c VALUE '134'.

DATA: l_str(134) TYPE c,
v1(3) TYPE c,
v2(3) TYPE c,
v3(3) TYPE c.

refresh: i_otf,
i_doctab,
i_tline,
i_bin,
wa_objhead,
t_adr6.

clear: e_datos_doc,
wa_return,
wa_nombre_archivo,
wa_adr6.

CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
EXPORTING
SRC_SPOOLID = '6498'
TABLES
PDF = i_tline
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
OTHERS = 12.

LOOP AT i_tline.

CLEAR l_str.
l_str+0(2) = i_tline-tdformat.
l_str+2(132) = i_tline-tdline.
v2 = v1 + c_134.
IF v2 LE c_255.
i_bin-line+v1(c_134) = l_str.
v1 = v2.

ELSE.

v3 = v2 - c_255.
v2 = c_255 - v1.

CONDENSE v2 NO-GAPS.
if v2 ne '0'.

i_bin-line+v1(v2) = l_str+0(v2).

ENDIF.

APPEND i_bin.

CLEAR i_bin.

v1 = v3.
v3 = c_134 - v1.

IF NOT v1 IS INITIAL.

i_bin-line+0(v1) = l_str+v3(v1).

ENDIF.
ENDIF.
ENDLOOP.

APPEND i_bin.
CLEAR i_bin.


* mail customer
* if p_mail1 = 'X'.
* SELECT SINGLE adrnr INTO wa_adrnr
* FROM kna1
* WHERE kunnr = wa_customer-kunnr.
*
* IF sy-subrc = '0'.
* SELECT smtp_addr INTO table t_adr6
* FROM adr6
* WHERE addrnumber = wa_adrnr.
* ENDIF.
* endif.
*
* if p_mail2 = 'X'.
* move: p_direc to wa_adr6-mail.
* append wa_adr6 to t_adr6.
* endif.


* Attachment
REFRESH: i_destinatario,
i_texto,
i_cont_bin,
i_objpack.
CLEAR wa_objhead.

i_cont_bin[] = i_bin[].
********************************


.
i_texto-line = text-m02.
APPEND i_texto.


********************************

DESCRIBE TABLE i_texto LINES v_lineas_tot.
READ TABLE i_texto INDEX v_lineas_tot.

e_datos_doc-obj_name = 'smartform'.
e_datos_doc-expiry_dat = sy-datum + 10.
e_datos_doc-obj_descr = text-m01.
e_datos_doc-sensitivty = 'F'.
e_datos_doc-doc_size = v_lineas_tot * 255.

* Main Text
CLEAR i_objpack-transf_bin.
i_objpack-head_start = 1.
i_objpack-head_num = 0.
i_objpack-body_start = 1.
i_objpack-body_num = v_lineas_tot.
i_objpack-doc_type = 'RAW'.
APPEND i_objpack.

move:text-t10 to wa_nombre_archivo.

* Attachment (pdf-Attachment)
i_objpack-transf_bin = 'X'.
i_objpack-head_start = 1.
i_objpack-head_num = 0.
i_objpack-body_start = 1.
DESCRIBE TABLE i_cont_bin LINES v_lineas.
READ TABLE i_cont_bin INDEX v_lineas.
i_objpack-doc_size = v_lineas * 255 .
i_objpack-body_num = v_lineas.
i_objpack-doc_type = 'PDF'.
i_objpack-obj_name = 'smart'.
i_objpack-obj_descr = wa_nombre_archivo.
APPEND i_objpack.

* mail
REFRESH i_destinatario.
CLEAR i_destinatario.

* loop at t_adr6 into wa_adr6.
* i_destinatario-receiver = wa_adr6-mail.
* i_destinatario-rec_type = 'U'.
* APPEND i_destinatario.
* endloop.

i_destinatario-receiver = 'correo del proveedor'
i_destinatario-rec_type = 'U'.
APPEND i_destinatario.

* sen mail
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = e_datos_doc
put_in_outbox = 'X'
* COMMIT_WORK = 'X'
TABLES
packing_list = i_objpack
object_header = wa_objhead
contents_bin = i_cont_bin
contents_txt = i_texto
receivers = i_destinatario
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
operation_no_authorization = 4
OTHERS = 99.


IF sy-subrc = 0.
* con esto lo envia
COMMIT WORK.
WAIT UP TO 10 SECONDS.
SUBMIT rsconn01 AND RETURN.
COMMIT WORK.
ENDIF.
Responder Con Cita
  #3  
Viejo 17/06/10, 20:31:28
minerva0112 minerva0112 is offline
Senior Member
 
Fecha de Ingreso: nov 2009
Mensajes: 116
gracias todo perfecto
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 02:17:49.


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