{ PROGRAMA : CUMPLEANOS_1 OBJETIVO : LISTAR LOS EMPLEADOS QUE ESTAN DE CUMPLEANOS EN EL MES DESARROLLADO POR : ING. JUAN SOTO FECHA : ABRIL 20, 2018 } GLOBALS DEFINE idx,mes smallint, usuario,clave STRING, nombre_file,fecha CHAR(30), xusername,xsmtphost,xsmtpport,xpassword,vendedorEmail,subject,cuerpo_correo,attachment,rutafile STRING END GLOBALS MAIN DEFER INTERRUPT CALL STARTLOG("cumpleano.txt") CALL ARG_VAL(1) RETURNING usuario CALL ARG_VAL(2) RETURNING clave CALL ARG_VAL(3) RETURNING vendedorEmail IF vendedorEmail IS NULL THEN DISPLAY "NO SE HA ESPECIFICADO EL EMAIL DESTINO" EXIT PROGRAM END IF CONNECT to "smarmotech" USER usuario USING clave CALL cumpleanos() END MAIN FUNCTION cumpleanos() DEFINE rcumple RECORD nombre VARCHAR(100), departamento VARCHAR(100), dia SMALLINT END RECORD, archivo VARCHAR(20), HANDLER om.SaxDocumentHandler LET mes = MONTH(TODAY) +1 IF mes = 13 THEN LET mes = 1 END IF SELECT a.descrip INTO fecha FROM mestable a WHERE a.mes = mes DECLARE busca_cumple CURSOR FOR SELECT RTRIM(a.nom1_emp)||' '||a.apell1_emp,b.nom_dpto,DAY(a.fech_nac) FROM adtb00003 a,adtb00001 b WHERE a.departamento = b.departamento AND # DAY(a.fech_nac) = DAY(TODAY) AND MONTH(a.fech_nac) = mes AND a.status_t IS NULL # "file:///f:/master/IMAGENES/logo_cumple.png" LET idx=1 LET archivo = 'cumpleanos_1.4rp' LET attachment=NULL LET rutafile ='.\\FILES\\' FOREACH busca_cumple INTO rcumple.* IF idx = 1 THEN IF fgl_report_loadCurrentSettings(archivo) THEN -- load the .4rp file CALL fgl_report_selectDevice("XLSX") CALL fgl_report_selectPreview(FALSE) LET attachment = rutafile CLIPPED,'cumpleanos_mes1.xlsx' CALL fgl_report_setOutputFileName(attachment) LET handler = fgl_report_commitCurrentSettings() -- commit changes START REPORT r_cumple_mes TO XML HANDLER HANDLER ELSE EXIT PROGRAM END IF END IF OUTPUT TO REPORT r_cumple_mes(rcumple.*) LET idx = idx + 1 END FOREACH IF idx > 1 THEN FINISH REPORT r_cumple_mes LET xusername ='notificacion@marmotech.com.do' LET xsmtphost ='smtp.office365.com' LET xsmtpport = '587' LET xpassword = 'Lmmjvsd2020' # LET vendedorEmail = 'jsoto@marmotech.com.do' LET subject ='CUMPLEANOS PARA EL MES DE ',fecha LET cuerpo_correo = 'FAVOR DE VERIFICADR EL ATTACHMENT' CALL enviaemail(vendedorEmail,subject,cuerpo_correo,attachment,xusername,xsmtphost,xsmtpport,xpassword) END IF END FUNCTION REPORT r_cumple_mes(x) DEFINE X RECORD nombre VARCHAR(100), departamento VARCHAR(100), dia SMALLINT END RECORD, chlable VARCHAR(100) FORMAT ON EVERY ROW # LET fecha = MONTH(today) LET chlable='CUMPLEANOS DEL MES DE ',fecha PRINTX x.*,idx,chlable END REPORT