Un cliente nos pidió para este año poder tener colgado en su instancia de SFSF el certificado de retenciones, de manera que sus empleados pudiesen descargarlo directamente desde su dispositivo móvil o portátil.
Para ello nos juntamos parte del equipo barrahache, Carlos y Gustavo , y cada uno nos hicimos con una parte del desarrollo.
Es evidente que este desarrollo se puede realizar de diferentes maneras. Aquí solamente vamos a contar la nuestra, tan buena o tan mala, como puedan ser otras.
De hecho, la principal discusión que se trató era si el certificado se iba a generar cada vez que el empleado lo solicitase en su portal o si el documento se iba a almacenar ya generado en el perfil del empleado. Ganó la segunda opción.
Por tanto, lo primero es crear un programa ABAP que sea el que genere el String del PDF.
Hemos aprovechado el propio report para permitir al usuario que se pueda descargar de forma masiva a local los certificados de retenciones que quiera.
Igualmente podríamos haber creado otras opciones de descarga. Se me ocurren:
- Descarga en carpeta del servidor de SAP (AL11)
- Envío FTP
- Envío SFTP, incluso al propio SFSF
Lo que hace el report es, a través de una función, hacer un submit al programa del 190, RPC190E0, y almacenar el resultado en una orden spool.
Una vez recibido el resultado, accedemos al spool y recuperamos el número de orden (tabla TSP01).
Para conseguir el PDF, usamos la función ‘ADS_RETURN_SPOOLJOB’ que nos devuelve un XSTRING con el PDF.
No olvidemos borrar la orden spool para no dejar el sistema enfangado.
Ya tenemos nuestro certificado disponible.
¿Qué queremos hacer? ¿Lo queremos descargar a local o queremos enviarlo a SFSF?
Si lo pasamos a local, múltiples opciones. En este caso, pasamos el xstring a binario con la función SCMS_XSTRING_TO_BINARY y usamos alguna de las funciones de DOWNLOAD.
Pero la idea inicial es poder tenerlo disponible en nuestro SuccessFactors.
Para ello tiramos de las habilidades de Gustavo y Carlos. Uno crearía el objeto MDF en SFSF y otro realizaría la integración vía API para enviar a cada perfil del empleado su correspondiente certificado de retenciones.
Pero eso os lo cuento en el próximo post.
Hola. Genial post. Justo eso (la parte de descarga) es la que me han pedido que haga.
Está el codigo del report en algun sitio?
Gracias!