Ejemplo n.º 1
0
        ///*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN: Imprimir_Reporte_Historial_Contenedores
        ///DESCRIPCIÓN: Emprime el reporte y lo visualiza en pantalla
        ///PARAMENTROS:
        ///CREO: Miguel Angel Bedolla Moreno.
        ///FECHA_CREO: 12/Abr/2013 11:30:00 a.m.
        ///MODIFICO:
        ///FECHA_MODIFICO:
        ///CAUSA_MODIFICACIÓN:
        ///*******************************************************************************
        private void Enviar_Ordenes_Salida_Abiertas()
        {
            try
            {
                DataTable Dt_Movimientos_Contenedor   = new DataTable();
                DataTable Dt_Contenedores             = new DataTable();
                Cls_Ope_Embarques_Negocio P_Embarques = new Cls_Ope_Embarques_Negocio();
                P_Embarques.P_Fecha_Inicio = DateTime.Now.AddDays(-3).ToString("dd/MM/yyyy");
                P_Embarques.P_Estatus      = " IN ('ABIERTO')";
                Dt_Movimientos_Contenedor  = P_Embarques.Consultar_Ordenes_Salida();
                String Message_Body = "";

                if (Dt_Movimientos_Contenedor.Rows.Count > 0)
                {
                    Message_Body += "No. orden salida \t\t\t";
                    Message_Body += "Fecha creación \t\t\t";
                    Message_Body += "Destino \t\t\t\n";
                    for (int Cont_Ordenes_Salida = 0; Cont_Ordenes_Salida < Dt_Movimientos_Contenedor.Rows.Count; Cont_Ordenes_Salida++)
                    {
                        DataView Dtv_Ordenes_Abiertas = new DataView(P_Embarques.P_Dt_Ordenes_Salida_Abiertas);//Cerrados
                        if (Dt_Movimientos_Contenedor.Rows[Cont_Ordenes_Salida][Ope_Embarques.Campo_Estatus].ToString() == "ABIERTO" || Dt_Movimientos_Contenedor.Rows[Cont_Ordenes_Salida][Ope_Embarques.Campo_Estatus].ToString() == "CANCELADO")
                        {
                            Message_Body += Dt_Movimientos_Contenedor.Rows[Cont_Ordenes_Salida][Ope_Embarques.Campo_Orden_Salida].ToString() + " \t\t\t";
                            Message_Body += Convert.ToDateTime(Dt_Movimientos_Contenedor.Rows[Cont_Ordenes_Salida][Ope_Embarques.Campo_Fecha_Creo].ToString()).ToString("dd/MMM/yyyy hh:mm:ss tt") + " \t\t\t";
                            Message_Body += Dt_Movimientos_Contenedor.Rows[Cont_Ordenes_Salida][Cat_Destinos.Campo_Destino].ToString() + " \t\t\t\n";
                            Dtv_Ordenes_Abiertas.RowFilter = "NO_EMBARQUE = '" + Dt_Movimientos_Contenedor.Rows[Cont_Ordenes_Salida][Ope_Embarques.Campo_No_Embarque].ToString() + "'";
                            if (Dtv_Ordenes_Abiertas.Count > 0)
                            {
                                Message_Body += "\t\t\t\t";
                                Message_Body += "Cantidad \t\t\t";
                                Message_Body += "Tipo de contenedor \t\t\t\n";
                            }
                            for (int i = 0; i < Dtv_Ordenes_Abiertas.Count; i++)
                            {
                                Message_Body += "\t\t\t\t";
                                Message_Body += Dtv_Ordenes_Abiertas[i][1].ToString() + " \t\t\t";
                                Message_Body += Dtv_Ordenes_Abiertas[i][0].ToString() + " \t\t\t\n";
                            }
                        }
                    }
                    Cls_Enviar_Correo.Envia_Correo_Alerta_Abiertos(Message_Body);
                }
                else
                {
                    MessageBox.Show("No existen órdenes de salida abiertas por más de tres días", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                }
            }
            catch (Exception Exc)
            {
                MessageBox.Show(this, "Error al enviar la alerta de las órdenes de salida abiertas por más de tres días.", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }