public static string BuildMessage(string formatFile, params object[] parameterValues) { if (parameterValues == null) { return(null); } string xmlContent = "<root>"; for (int i = 0; i < parameterValues.Length; i++) { xmlContent += "<param" + i + ">" + parameterValues[i].ToString().Trim() + "</param" + i + ">"; } xmlContent += "</root>"; DOMDocument xslDoc = new DOMDocument(); DOMDocument xmlDoc = new DOMDocument(); xmlDoc.loadXML(xmlContent); xslDoc.load(formatFile); return(xmlDoc.transformNode(xslDoc)); }
//===================================================== // NUEVO FUNCION PARA APROBACION FINAL -- SEMAFORO VERDE //===================================================== private string ConstruirMensajeAprobacion(int idWorkflow, string Referencia, int idEstatusWkf, out string emailTitle, out string emailFromSys) { DataSet ds = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerDatosEmail, idWorkflow, idEstatusWkf); Referencia = Referencia.Trim(); string workflowName = ds.Tables[0].Rows[0]["wkf_nbr_documento"].ToString(); string strAccion = " " + ds.Tables[0].Rows[0]["ewf_nbr_titulo"].ToString(); string explicacion = ds.Tables[0].Rows[0]["ewf_desc_explicacion"].ToString(); string strSubTitulo = ""; Label lblExplicacion = new Label(); lblExplicacion.ForeColor = System.Drawing.Color.Green; lblExplicacion.Font.Bold = true; lblExplicacion.Text = "ha sido APROBADO"; explicacion = lblExplicacion.Text; strAccion = ""; strSubTitulo = "DOCUMENTO APROBADO"; emailTitle = ""; emailFromSys = "SISTEMA_SPIN@soacat-ve"; DataSet dsSolicitante = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerNombreSolicitante, idWorkflow, Referencia); string strSolicitante = dsSolicitante.Tables[0].Rows[0]["Solicitante"].ToString(); string strFechaSolicitud = dsSolicitante.Tables[0].Rows[0]["fecha_solicitud"].ToString(); string strData = ""; string strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_verde.jpg"; emailTitle = "DOCUMENTO APROBADO" + " - " + workflowName; if ((idWorkflow >= 308 && idWorkflow <= 311) || (idWorkflow == 318)) // CIERRES DE AUXILIARES { DataSet dstProyecto = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_CargarInfProyectoPorReferencia, Convert.ToInt32(Referencia)); Referencia += " / Cliente: " + dstProyecto.Tables[0].Rows[0]["cliente"].ToString(); Referencia += " / Socio: " + dstProyecto.Tables[0].Rows[0]["socio"].ToString(); dstProyecto = null; } // param0 = Nombre del WF // param1 = Referencia // param2 = Fecha de solicitud // param3 = Explicación // param4 = Acción // param5 = Nombre solicitante // param6 = Imagen semáforo // param7 = Servidor string strServidor = System.Net.Dns.GetHostName(); strData += "<root><param0>" + workflowName + "</param0>"; strData += "<param1>" + Referencia + "</param1>"; strData += "<param2>" + strFechaSolicitud + "</param2>"; strData += "<param3>" + explicacion + "</param3>"; strData += "<param4>" + strAccion + "</param4>"; strData += "<param5>" + strSolicitante + "</param5>"; strData += "<param6>" + strImagenSemaforo + "</param6>"; strData += "<param7>" + strServidor + "</param7>"; strData += "<param8>" + strSubTitulo + "</param8></root>"; DOMDocument xslDoc = new DOMDocument(); DOMDocument xmlDoc = new DOMDocument(); xslDoc.load("WFNS001A.xsl"); xmlDoc.loadXML(strData); ds = null; dsSolicitante = null; return(xmlDoc.transformNode(xslDoc)); }
private string ConstruirMensaje(int idWorkflow, string Referencia, int idEstatusWkf, out string emailTitle, out string emailFromSys) { /* * DataSet ds = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(),Queries.WF_ObtenerDatosEmail,idWorkflow,idEstatusWkf); * * Referencia = Referencia.Trim(); * string workflowName = ds.Tables[0].Rows[0]["wkf_nbr_documento"].ToString(); * emailTitle = ds.Tables[0].Rows[0]["ewf_nbr_titulo"].ToString(); * string explicacion = ds.Tables[0].Rows[0]["ewf_desc_explicacion"].ToString(); * emailFromSys = "SISTEMA_SPIN@soacat-ve"; * * DataSet dsSolicitante = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(),Queries.WF_ObtenerNombreSolicitante,idWorkflow,Referencia); * string strSolicitante = dsSolicitante.Tables[0].Rows[0]["Solicitante"].ToString(); * string strData = ""; * * if( (idWorkflow >= 308 && idWorkflow <= 311) || ( idWorkflow == 318 ) ) // CIERRES DE AUXILIARES * { * DataSet dstProyecto = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(),Queries.WF_CargarInfProyectoPorReferencia,Convert.ToInt32(Referencia)); * Referencia += " / Cliente: " + dstProyecto.Tables[0].Rows[0]["cliente"].ToString(); * Referencia += " / Socio: " + dstProyecto.Tables[0].Rows[0]["socio"].ToString(); * } * * string strServidor=System.Net.Dns.GetHostName();//GetHostByAddress(Request.ServerVariables["REMOTE_ADDR"]).HostName; * strData += "<root><param0>"+workflowName+"</param0>"; * strData += "<param1>"+Referencia+"</param1>"; * strData += "<param2>"+strSolicitante+"</param2>"; * strData += "<param3>"+explicacion+"</param3>"; * strData += "<param4>"+strServidor+"</param4></root>"; * * DOMDocument xslDoc = new DOMDocument(); * DOMDocument xmlDoc = new DOMDocument(); * * xslDoc.load("EWIGF001A.xsl"); * xmlDoc.loadXML(strData); */ //===================================================== // NUEVO FORMATO DE CORREO //===================================================== DataSet ds = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerDatosEmail, idWorkflow, idEstatusWkf); Referencia = Referencia.Trim(); string workflowName = ds.Tables[0].Rows[0]["wkf_nbr_documento"].ToString(); string strAccion = " " + ds.Tables[0].Rows[0]["ewf_nbr_titulo"].ToString(); string explicacion = ds.Tables[0].Rows[0]["ewf_desc_explicacion"].ToString(); emailTitle = ""; emailFromSys = "SISTEMA_SPIN@soacat-ve"; string strSubTitulo = ""; DataSet dsSolicitante = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_ObtenerNombreSolicitante, idWorkflow, Referencia); string strSolicitante = dsSolicitante.Tables[0].Rows[0]["Solicitante"].ToString(); string strFechaSolicitud = dsSolicitante.Tables[0].Rows[0]["fecha_solicitud"].ToString(); string strData = ""; string strImagenSemaforo = ""; if (idEstatusWkf == 310 || idEstatusWkf == 280) { if (idEstatusWkf == 310) // SOLICITADO { emailTitle = "Pendiente por " + strAccion + " - " + workflowName; } if (idEstatusWkf == 280) // RECHAZO PARCIAL { emailTitle = strAccion + " - " + workflowName; strAccion = ""; } strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_amarillo.jpg"; strSubTitulo = strAccion + " DE DOCUMENTOS"; } if (idEstatusWkf == 250) // REVISADO { emailTitle = strAccion + " - " + workflowName; strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_amarillo.jpg"; strSubTitulo = "DOCUMENTO " + strAccion; strAccion = ""; } if (idEstatusWkf == 270) // RECHAZO TOTAL { emailTitle = strAccion + " - " + workflowName; strImagenSemaforo = "http://localhost/Spin/WF/bin/Debug/semaforo_rojo.jpg"; strSubTitulo = strAccion + " DE DOCUMENTOS"; strAccion = ""; } if ((idWorkflow >= 308 && idWorkflow <= 311) || (idWorkflow == 318)) // CIERRES DE AUXILIARES { DataSet dstProyecto = SqlHelper.ExecuteDataset(WinflowAC.ConnectionString.FormarStringConexion(), Queries.WF_CargarInfProyectoPorReferencia, Convert.ToInt32(Referencia)); Referencia += " / Cliente: " + dstProyecto.Tables[0].Rows[0]["cliente"].ToString(); Referencia += " / Socio: " + dstProyecto.Tables[0].Rows[0]["socio"].ToString(); dstProyecto = null; } // param0 = Nombre del WF // param1 = Referencia // param2 = Fecha de solicitud // param3 = Explicación // param4 = Acción // param5 = Nombre solicitante // param6 = Imagen semáforo // param7 = Servidor // param8 = SubTitulo string strServidor = System.Net.Dns.GetHostName(); strData += "<root><param0>" + workflowName + "</param0>"; strData += "<param1>" + Referencia + "</param1>"; strData += "<param2>" + strFechaSolicitud + "</param2>"; strData += "<param3>" + explicacion + "</param3>"; strData += "<param4>" + strAccion + "</param4>"; strData += "<param5>" + strSolicitante + "</param5>"; strData += "<param6>" + strImagenSemaforo + "</param6>"; strData += "<param7>" + strServidor + "</param7>"; strData += "<param8>" + strSubTitulo + "</param8></root>"; DOMDocument xslDoc = new DOMDocument(); DOMDocument xmlDoc = new DOMDocument(); if ((idWorkflow >= 303 && idWorkflow <= 305) || (idWorkflow == 300) || (idWorkflow == 322)) // INFORMES DE GASTOS { if (idEstatusWkf == 270) // RECHAZO TOTAL { xslDoc.load("WFNS001A.xsl"); } else { xslDoc.load("WFIG001A.xsl"); } } else { xslDoc.load("WFNS001A.xsl"); } xmlDoc.loadXML(strData); ds = null; dsSolicitante = null; //===================================================== //===================================================== return(xmlDoc.transformNode(xslDoc)); }