Ir al contenido principal

Crear vista previa del correo electrónico del informe personalizado

Estructura

CreateCustomReportEMailPreview(sReportName, sEMailTo, sEMailSubject, sEMailBody, sSQL, sTableForUpdate, sFieldForUpdate, sWhereForUpdate, sPrintTo, sFileName: String; bShowErrors, bShowConfirmation: Boolean)

Parámetros

| Parámetro | Tipo | Descripción
| sReportName | Cadena | el nombre del informe PERSONALIZADO que se debe crear, tal y como se ha creado en PrintBuilder...Informes personalizados sEMailTo | Cadena | direcciones que deben recibir el correo electrónico, delimitadas por punto y coma sEMailSubject | Cadena | asunto de los correos electrónicos sEMailBody | Cadena | cuerpo del correo electrónico; puede incluir retornos de carro utilizando los símbolos Chr(13) SQL | Cadena | este parámetro opcional hará que se utilice este SQL para el conjunto de datos maestro del informe EN LUGAR DEL SQL del diseñador de informes de IndySoft. Esto solo se aplica al conjunto de datos principal (no a los conjuntos de datos detallados). El informe no debe utilizar campos de búsqueda automática. Se recomienda localizar primero el código SQL exacto del diseñador de informes de IndySoft a través de DBLog.exe o AppServerLog.exe y, a continuación, utilizar ese código SQL exacto como plantilla para modificar la variable.sTableForUpdate | Cadena | solo se utiliza si se actualizan bases de datosFieldForUpdate | Cadena | solo se utiliza si se actualiza la base de datos; el campo BLOB donde debe adjuntarse el informe resultante tras su creaciónWhereForUpdate | Cadena | la cláusula WHERE que debe utilizarse con la tabla/campo anterior, para guardar en el registro correcto. Comienza el texto con «WHERE »sPrintTo | String | el destino del informe. Los valores posibles son: PDF, XLS, JPG, RTF, TXT, PRINTER, SCREENsFileName | Cadena | puede ser el nombre completo del archivo que desees utilizar (si procede) o la palabra «PROMPT»; en este caso, aparecerá un cuadro de diálogo para que introduzcas el nombre del archivo o el directorio. Se ignora cualquier extensión de archivo al final de sFileName; así lo establece la variable sPrintTo mencionada anteriormente. sFileName puede ser un directorio o un nombre de archivo completo con ruta.bShowErrors | Booleano | Valor booleano True o False. Si el valor es «True», cualquier error que se detecte al ejecutar el correo electrónico se muestra al usuario mediante un cuadro de diálogo emergente. bShowConfirmation | Booleano | Valor booleano «True» o «False». Si es cierto, se muestra al usuario un cuadro de diálogo de confirmación una vez enviado el correo electrónico. |

Descripción

Este procedimiento crea un informe personalizado de IndySoft, al igual que CreateCustomReport. La única diferencia es que este procedimiento permite utilizar dos parámetros adicionales, bShowErrors y bShowConfirmation, que resultan útiles cuando se desea obtener una vista previa del correo electrónico. El informe se puede enviar por correo electrónico si se han configurado los ajustes de correo electrónico. El informe se puede generar en PANTALLA o en IMPRESORA si así se especifica en sPrintTo. También se puede especificar el código SQL completo utilizado para el canal de datos principal; esto anulará el código SQL predeterminado del informe. Además, el informe se puede guardar, si se desea, en un campo BLOB de la base de datos.

Ejemplo

sDocName = "TESTDOC"

' si se va a guardar en la base de datos más tarde, primero hay que indicar la ubicación del trabajo de impresión final; CreateCustomReport lo adjuntará basándose en los tres últimos parámetros

' ten en cuenta que es adecuado utilizar una acción de activador tardía como «After Finish - Before Print», utilizando LookupFinalEventNum

if not tdDoSQLRecords(1, "SELECT DOC_NUM FROM EVENTDOCS WHERE EVENT_NUM = " & LookupFinalEventNum & " AND DOC_NUM = '" & sDocName & "'") entonces

RunSQL("INSERT INTO EVENTDOCS (EVENT_NUM, DOC_NUM, DOC_DATE, FILE_NAME, DOC_TYPE, PRINTING_COMPLETE) VALUES (" & LookupFinalEventNum & ", '" &

sDocName & "', '" & FormatDateTimeForSQL(Date) & "', '" & sDocName & ".PDF', '4', '0')")

End If

El correo electrónico se previsualizará antes de enviarse:

CreateCustomReport("EXAMPLE", "eddie@notreal.com;suzie.office@notreal.com", "Aquí tienes tu informe, deja de darme la lata",

"Este es el cuerpo del correo electrónico" & Chr(13) & "Esta es una segunda línea del cuerpo del correo electrónico",

"SELECT GAGES.COMPANY, GAGES.GAGE_SN, GAGES.GAGE_ID, SCHEDGI.SCHED_TYPE, SCHEDGI.SCHED_FREQ, SCHEDGI.SCHED_INTERVAL, SCHEDGI.SCHED_LAST, SCHEDGI.SCHED_DUE_DATE FROM GAGES GAGES" &

"LEFT OUTER JOIN SCHEDGI SCHEDGI ON (SCHEDGI.COMPANY = GAGES.COMPANY) AND (SCHEDGI.GAGE_SN = GAGES.GAGE_SN) WHERE (GAGES.COMPANY = 'ABC COMPANY' AND SCHEDGI.SCHED_TYPE = 'CALIBRATION')",

"EVENTDOCS", "DOC_BLOB", "WHERE EVENT_NUM = " & LookupFinalEventNum & " AND DOC_NUM = '" & sDocName & "'", "PDF", "IndySoftEventReport", True, True)

Compatibilidad de aplicaciones

Gestión de calibraciones de IndySoft, Gestión de laboratorios comerciales de IndySoft, Gestión de herramientas de IndySoft

Véase también

No hay temas relacionados |