示例#1
0
        public static ArrayList ListarLapsosDeTiempo()
        {
            ArrayList arrLapsos = new ArrayList();

            SqlDataReader dr = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_ListarLapsosDeTiempo);

            while (dr.Read())
            {
                WFLapsoDeTiempo objLapso = new WFLapsoDeTiempo();
                objLapso.intCodLapsoDeTiempo = dr.GetInt32(0);
                objLapso.strNbrLapsoDeTiempo = dr.GetString(1);
                arrLapsos.Add(objLapso);
            }

            return(arrLapsos);
        }
示例#2
0
        public WFRegla(int workflowId)
        {
            _workflowId = workflowId;

            SqlDataReader sdr = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerReglas, workflowId);

            if (sdr.Read())
            {
                intIntervaloAprobacion = sdr.GetInt32(0);
                intIntervaloCorreccion = sdr.GetInt32(1);
                intNumRecordatorios    = sdr.GetInt32(2);

                intCodLapsoAprobacion = sdr.GetInt32(3);
                intCodLapsoCorreccion = sdr.GetInt32(4);
            }
        }
示例#3
0
        public static ArrayList ObtenerGruposDeRoles(int intCodRuta)
        {
            ArrayList arrGrupoDeRoles = new ArrayList();
            DataSet   ds = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerGrupoDeRoles, intCodRuta);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFGrupoDeRoles objGrupoDeRoles = new WFGrupoDeRoles();

                objGrupoDeRoles.intCodRoles = Convert.ToInt32(r["rls_cod_rolasoc"]);
                objGrupoDeRoles.strNbrRoles = Convert.ToString(r["rls_nbr_rolasoc"]);

                arrGrupoDeRoles.Add(objGrupoDeRoles);
            }
            return(arrGrupoDeRoles);
        }
示例#4
0
        public static ArrayList ListarAprobadores(int intWorkflow, string strReferencia, string strRuta)
        {
            ArrayList Aprobadores = new ArrayList();
            DataSet   ds          = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ListaAprobacion, intWorkflow, strReferencia, strRuta);

            WFAprobadores objInicial = new WFAprobadores(0, "[Seleccione]");

            Aprobadores.Add(objInicial);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFAprobadores objAprobador = new WFAprobadores();
                objAprobador.intEmpleado = Convert.ToInt32(r["emp_cod_empleado"]);
                objAprobador.strEmpleado = r["emp_nombre"].ToString();
                Aprobadores.Add(objAprobador);
            }
            return(Aprobadores);
        }
示例#5
0
        public static ArrayList ObtenerTiposDeDato()
        {
            ArrayList Catalogo = new ArrayList();
            DataSet   ds       = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerTiposDeDato);

            WFTipoDeDato objInicial = new WFTipoDeDato(0, "[Seleccione]");

            Catalogo.Add(objInicial);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFTipoDeDato objTipoDeDato = new WFTipoDeDato();
                objTipoDeDato.intCodTipoDeDato = Convert.ToInt32(r[0]);
                objTipoDeDato.strNbrTipoDeDato = r[1].ToString();
                Catalogo.Add(objTipoDeDato);
            }
            return(Catalogo);
        }
示例#6
0
        public static ArrayList ObtenerCondiciones()
        {
            ArrayList Catalogo = new ArrayList();
            DataSet   ds       = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerCondiciones);

            WFCondicion objInicial = new WFCondicion(0, "[Seleccione]");

            Catalogo.Add(objInicial);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFCondicion objCondicion = new WFCondicion();
                objCondicion.intCodCondicion = Convert.ToInt32(r[0]);
                objCondicion.strNbrCondicion = r[2].ToString();
                Catalogo.Add(objCondicion);
            }
            return(Catalogo);
        }
示例#7
0
        public static ArrayList ListarTodosModulos(string strOpcionInicial)
        {
            ArrayList Catalogo = new ArrayList();
            DataSet   ds       = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerTodosModulos);

            WFModulo objInicial = new WFModulo(0, strOpcionInicial);

            Catalogo.Add(objInicial);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFModulo objModulo = new WFModulo();
                objModulo.intCodModulo = Convert.ToInt32(r[0]);
                objModulo.strNbrModulo = r[1].ToString();
                Catalogo.Add(objModulo);
            }
            return(Catalogo);
        }
示例#8
0
        public static ArrayList ListarMotivosRechazo()
        {
            ArrayList MotivosRechazo = new ArrayList();
            DataSet   ds             = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ListarMotivosRechazo);

            WFMotivosRechazo objInicial = new WFMotivosRechazo(0, "[Seleccione]");

            MotivosRechazo.Add(objInicial);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFMotivosRechazo objMotivosRechazo = new WFMotivosRechazo();
                objMotivosRechazo.intMotivoRechazo = Convert.ToInt32(r["rcz_cod_rechazo"]);
                objMotivosRechazo.strMotivoRechazo = r["rcz_desc_rechazo"].ToString();

                MotivosRechazo.Add(objMotivosRechazo);
            }
            return(MotivosRechazo);
        }
示例#9
0
        public static ArrayList ListarWorkflowPorAprobador(int intCodModulo, int intCodWorkflow, int intCodAprobador, out int intRolAsocI)
        {
            ArrayList arrWorkFlow = new ArrayList();

            intRolAsocI = 0;
            bool    blnRolAsoc = true;
            DataSet dsWorkFlow = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(),
                                                          Queries.WF_ListarSolicitudWorkflowPorAprobador, intCodModulo, intCodWorkflow, intCodAprobador);

            foreach (DataRow r in dsWorkFlow.Tables[0].Rows)
            {
                WFSolicitudWF WFSolicitud = new WFSolicitudWF();
                WFSolicitud.intSolicitud  = Convert.ToInt32(r["swf_cod_solicitud"]);
                WFSolicitud.strReferencia = Convert.ToString(r["swf_str_referencia"]);
                //===< By Ramón
                WFSolicitud.dttFechaCreacion = Convert.ToDateTime(r["swf_fecha_solicitud"]);
                //===>
                WFSolicitud.intCodSolicitante     = Convert.ToInt32(r["swf_cod_empleado_creador"]);
                WFSolicitud.strSolicitante        = Convert.ToString(r["emp_nbr_empleado_creador"]);
                WFSolicitud.intCodUltimoAprobador = Convert.ToInt32(r["hwf_cod_empleado_origen"]);
                WFSolicitud.strUltimoAprobador    = Convert.ToString(r["emp_nbr_empleado_ultimo"]);

                //===< By Ramón
                WFSolicitud.dttFechaRevision = Convert.ToDateTime(r["hwf_fecha_historico"]);
                //===>
                if (WFSolicitud.intCodSolicitante == WFSolicitud.intCodUltimoAprobador)
                {
                    WFSolicitud.strUltimoAprobador = "---";
                }

                WFSolicitud.intCodSiguienteAprobador = Convert.ToInt32(r["hwf_cod_empleado_destino"]);
                WFSolicitud.strSiguienteAprobador    = Convert.ToString(r["emp_nbr_empleado_destino"]);
                WFSolicitud.strWorkFlow = Convert.ToString(r["WorkFlow"]);
                WFSolicitud.shtWorkFlow = Convert.ToInt16(r["CodWorkFlow"]);
                WFSolicitud.intRolAsoc  = Convert.ToInt32(r["RolAsociado"]);
                if (blnRolAsoc)
                {
                    intRolAsocI = WFSolicitud.intRolAsoc;
                }
                arrWorkFlow.Add(WFSolicitud);
            }
            return(arrWorkFlow);
        }
        private void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here
            if (!IsPostBack)
            {
                // Carga el código de empleado activo en el sistema
                ESUsuario Empleado = new ESUsuario();
                Empleado.ObtenerUsuario((int)Session["IDUsuario"]);
                intCodigoEmpleado = Empleado.intCodStaff;

                if (!ESSeguridad.VerificarAcceso(intCodigoEmpleado, "ESWFP003A", 0))
                {
                    Response.Redirect("../Principal/Error.aspx");
                }

                WorkflowId = -1;
                rfvTipoDocumento.ErrorMessage = ESMensajes.ObtenerMensaje(700);
                CargarModulos();
            }
        }
        /// <summary>
        /// Muestra el historial de aprobadores para un documento determinado
        /// </summary>
        /// <param name="intWorkflow">Identificador del Workflow del documento</param>
        /// <param name="strReferencia">Identificador del documento</param>
        /// <returns>Arreglo con el historial de los aprobadores para un documento determinado</returns>
        public static ArrayList ListarHistoricoWorkflow(int intWorkflow, string strReferencia)
        {
            ArrayList arrHistorico = new ArrayList();
            DataSet   ds           = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ListarHistoricoWorkflow, intWorkflow, strReferencia);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFHistoricoWorkflow objHistorico = new WFHistoricoWorkflow();

                objHistorico.intEmpleadoAprobador = Convert.ToInt32(r["cwi_cod_staff_destino"]);
                objHistorico.dttFecha             = Convert.ToDateTime(r["hwf_fecha_historico"]);
                objHistorico.strEmpleadoAprobador = Convert.ToString(r["emp_nbr_empleado"]);
                objHistorico.strCargoAprobador    = Convert.ToString(r["cat_desc_categoria"]);
                objHistorico.strObservaciones     = Convert.ToString(r["hwf_str_observaciones"]);
                objHistorico.strEstatus           = Convert.ToString(r["ewf_nbr_estatusdoc"]);

                arrHistorico.Add(objHistorico);
            }
            return(arrHistorico);
        }
示例#12
0
        public static ArrayList ListarWorkflows(int moduloId)
        {
            ArrayList     Catalogo = new ArrayList();
            SqlDataReader sdr      = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_ListarWorkflows, moduloId);

            WFWorkflow objInicial = new WFWorkflow(0, 0, "[Seleccione]", "");

            Catalogo.Add(objInicial);

            while (sdr.Read())
            {
                int    id          = sdr.GetInt32(0);
                int    documentId  = sdr.GetInt16(1);
                string name        = sdr.GetString(2);
                string description = sdr.GetString(3);

                Catalogo.Add(new WFWorkflow(id, documentId, name, description));
            }

            return(Catalogo);
        }
示例#13
0
        public static WFWorkflow GetWorkflowById(int workflowId)
        {
            if (workflowId <= 0)
            {
                throw (new ArgumentOutOfRangeException("workflowId"));
            }

            SqlDataReader sdr = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerWorkflowPorID, workflowId);

            if (sdr.Read())
            {
                int    id          = sdr.GetInt32(0);
                int    documentId  = sdr.GetInt16(1);
                string name        = sdr.GetString(2);
                string description = sdr.GetString(3);

                return(new WFWorkflow(id, documentId, name, description));
            }

            return(null);
        }
        //public static List<WFFormularioPedidos> ObtenerAccionesDescripcion()
        //{
        //    List<WFFormularioPedidos> lstPedidos = new List<WFFormularioPedidos>();
        //    SqlDataReader dr = SqlHelper.ExecuteReader(ConfigurationManager.AppSettings[Global.CfgKeyConnString], Queries.InsertarPedidos);

        //    while (dr.Read())
        //    {
        //        WFFormularioPedidos Pedidos = new WFFormularioPedidos();

        //        Pedidos._userId = dr.GetInt32(0);
        //        Pedidos._fechaIngreso = dr.GetDateTime(1);
        //        Pedidos._fechaModificacion = dr.GetDateTime(2);
        //        Pedidos._datoXml = dr.GetString(3);
        //        Pedidos._statusId = dr.GetInt32(4);

        //        lstPedidos.Add(Pedidos);
        //    }

        //    return lstPedidos;
        //}

        //public static List<WFFormularioPagos> InsertarPagos(List<WFFormularioPagos> lstPagos)
        //{
        //List<WFFormularioPagos> lstPagos = new List<WFFormularioPagos>();
        //    WFFormularioPedidos Pagos = new WFFormularioPedidos();

        //    SqlDataReader dr = SqlHelper.ExecuteReader(ConfigurationManager.AppSettings[Global.CfgKeyConnString], Queries.InsertarPagos

        //    int resultado =(
        //        Pagos.UserId = 1; //_usuarioLogueado
        //        Pagos.FechaIngreso = DateTime.Now;
        //        Pagos.FechaModificacion = DateTime.Now;
        //        Pagos.DatoXml = strData;
        //        Pagos.StatusId = 1;
        //);
        //    return resultado ;
        //}

        public static int InsertarPedidos(WFFormularioPedidos InsertarPedidos)
        {
            int nResultado = 0;

            try
            {
                object obj = SqlHelper.ExecuteScalar(ESSeguridad.FormarStringConexion(), Queries.WF_InsertarPedidos,
                                                     InsertarPedidos.PedidoId,
                                                     InsertarPedidos.UserId,
                                                     InsertarPedidos.FechaIngreso,
                                                     InsertarPedidos.FechaModificacion,
                                                     InsertarPedidos.DatoXml,
                                                     InsertarPedidos.StatusId,
                                                     InsertarPedidos.DocumentoId,
                                                     InsertarPedidos.NombreClt,
                                                     InsertarPedidos.KilosPreQ,
                                                     InsertarPedidos.NombreSoli,
                                                     InsertarPedidos.KilosCojin,
                                                     InsertarPedidos.Codigo,
                                                     InsertarPedidos.KilosCordon,
                                                     InsertarPedidos.Fecha,
                                                     InsertarPedidos.KilosCemento,
                                                     InsertarPedidos.Contenedor,
                                                     InsertarPedidos.KilosAlfa,
                                                     InsertarPedidos.PesoTotal,
                                                     InsertarPedidos.KilosPintura
                                                     );
                if (obj != null)
                {
                    nResultado = Convert.ToInt32(obj);
                }
            }
            catch (Exception) //ex)
            {
                //String cm = String.Empty;
                //EventLog.WriteEntry("Clever", "Clase Bonos: " + ex.Message, EventLogEntryType.Error, 232);
            }

            return(nResultado);
        }
示例#15
0
        private void Page_Load(object sender, System.EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                // Carga el código de empleado activo en el sistema
                ESUsuario Empleado = new ESUsuario();
                Empleado.ObtenerUsuario((int)Session["IDUsuario"]);
                intEmpleado = Empleado.intCodStaff;

                arrAyuda = new ArrayList();
                CargarAyuda();

                CargarLoS();
                CargarOficinas();
                EnlazarGridUsuarios();
            }

            if (!ESSeguridad.VerificarAcceso(intEmpleado, "ESSEP001A", 0))
            {
                //------ Response.Redirect("../Principal/Error.aspx");
            }
        }
示例#16
0
        public static ESColeccionUsuario ListarUsuariosIniciales()
        {
            ESColeccionUsuario Usuarios = new ESColeccionUsuario();
            DataSet            ds       = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.ES_ListarUsuariosIniciales);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                ESUsuario objUsuario = new ESUsuario();
                objUsuario.dttFechaCreacion     = Convert.ToDateTime(r["usu_fecha_creacion"]);
                objUsuario.intCodStaff          = Convert.ToInt32(r["usu_cod_empleado"]);
                objUsuario.strUsuario           = Convert.ToString(r["usu_str_login"]);
                objUsuario.strNombreCorto       = Convert.ToString(r["NombreEmpleadoCorto"]);
                objUsuario.strNombreLargo       = Convert.ToString(r["NombreEmpleadoLargo"]);
                objUsuario.strLineaDepartamento = Convert.ToString(r["lin_desc_linea"]);
                objUsuario.strOficina           = Convert.ToString(r["ofi_desc_oficina"]);
                objUsuario.strEstatus           = (Convert.ToBoolean(r["usu_bln_activo"]))?"Activo":"Inactivo";
                objUsuario.strCategoria         = Convert.ToString(r["cat_desc_categoria"]);
                objUsuario.strEmail             = Convert.ToString(r["emp_str_email"]);
                Usuarios.Add(objUsuario);
            }
            return(Usuarios);
        }
示例#17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                ESUsuario Empleado = new ESUsuario();
                Empleado.ObtenerUsuario((int)Session["IDUsuario"]);
                intIDEmpleado = Empleado.intCodStaff;
                if (ESSeguridad.VerificarAcceso(intIDEmpleado, "ESWFP002A", 0))
                {
                    if (!(ESSeguridad.VerificarAcceso(intIDEmpleado, "ESWFP002A", 1)))
                    {
                        btnReversar.Visible = false;
                        dgdWorkflow.Columns[10].Visible = false;
                        lblTitulo.Text = "Workflow > Consulta de aprobaciones pendientes";
                    }
                    else
                    {
                        btnReversar.Visible = true;
                        dgdWorkflow.Columns[10].Visible = true;
                        lblTitulo.Text = "Workflow > Reverso de aprobación";
                    }
                    CargarAyuda();
                    CargarModulos();
                    CargarInicial();

                }
                else
                {
                    ESError Error = new ESError();
                    Error.strTitulo = "Error general";
                    Error.strDescripcion = "Ha ocurrido un error en el sistema. Por favor comuníquese con el administrador del sistema.";
                    Error.strDetalle = "Acceso denegado";
                    Session["Error"] = Error;
                    ESLog.Log(intIDEmpleado, Convert.ToString(Session["Host"]), ESLog.TipoLog.Error, ESLog.TipoTransaccion.Desconocida, "ESWFP002A", 10, "", "Acceso denegado");
                    Response.Redirect("../Principal/Error.aspx");
                }
            }
        }
        public static int InsertarPedido(WFSublimacionPedidos pedido)
        {
            int nResultado = 0;

            try
            {
                object obj = SqlHelper.ExecuteScalar(ESSeguridad.FormarStringConexion(), Queries.WF_InsertarTransaccion,
                                                     pedido._transId,
                                                     pedido._tipoTransId == 1 ? true : false,
                                                     pedido._motivoId,
                                                     pedido._empleadoId,
                                                     pedido._centroId,
                                                     pedido._estatusId,
                                                     pedido._ultimoUsuarioId,
                                                     pedido._numTrans,
                                                     pedido._ivaAplicable,
                                                     pedido._montoTotal,
                                                     pedido._fechaTrans,
                                                     pedido._fechaActual,
                                                     pedido._fechaDeEntrega,
                                                     pedido._observaciones
                                                     );
                if (obj != null)
                {
                    nResultado = Convert.ToInt32(obj);
                }
            }
            catch (Exception) //ex)
            {
                //String cm = String.Empty;
                //EventLog.WriteEntry("Clever", "Clase Bonos: " + ex.Message, EventLogEntryType.Error, 232);
            }

            pedido._transId = nResultado;
            return(nResultado);
        }
示例#19
0
        public string GetXmlView(int Index)
        {
            string Data = "<treenode ";

            SqlDataReader dr = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_JerarquiaPoliticaObtenerTitulo, UniqueID, WorkflowID);

            if (dr.Read())
            {
                Data += "NodeData='" + dr.GetInt32(0) + "' ";
                Data += Index != 2 ? "Text='" + dr.GetString(1) + "'>" : "Text='Sino'>";

                SqlServerTreeProvider treeProvider = new SqlServerTreeProvider();
                Children = treeProvider.GetChildren(UniqueID, WorkflowID);

                int i = 0;
                foreach (TreeNode tn in Children)
                {
                    Data += tn.GetXmlView(++i);
                }
            }

            Data += "</treenode>";
            return(Data);
        }
示例#20
0
        public static ArrayList ObtenerPoliticasPorWorkflowId(int workflowId)
        {
            ArrayList arrPoliticas = new ArrayList();
            DataSet   ds           = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerPoliticasPorWorkflowId, workflowId);

            foreach (DataRow r in ds.Tables[0].Rows)
            {
                WFTipoDeDato objTipoDeDato = new WFTipoDeDato();
                objTipoDeDato.intCodTipoDeDato = Convert.ToInt16(r["wjp_cod_tipodedato"]);
                objTipoDeDato.strNbrTipoDeDato = Convert.ToString(r["wft_nbr_tipodedato"]);

                WFCondicion objCondicion = new WFCondicion();
                objCondicion.intCodCondicion = Convert.ToInt16(r["wjp_cod_condicion"]);
                objCondicion.strNbrCondicion = Convert.ToString(r["wfc_nbr_condicion"]);

                int        intPadre       = r["wjp_cod_nodopadre"] == System.DBNull.Value ? 0 : Convert.ToInt32(r["wjp_cod_nodopadre"]);
                int        intCodPolitica = Convert.ToInt32(r["wjp_cod_nodo"]);
                string     strValor       = Convert.ToString(r["wjp_val_condicion"]);
                WFPolitica objPolitica    = new WFPolitica(workflowId, intCodPolitica, intPadre, objCondicion, strValor, objTipoDeDato);
                arrPoliticas.Add(objPolitica);
            }

            return(arrPoliticas);
        }
示例#21
0
        public static List <WFForms> ListarForms(int userId)
        {
            List <WFForms> lstForms = new List <WFForms>();
            SqlDataReader  dr       = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_LlenarGridBandeja, userId);

            //string[] Fechas;
            while (dr.Read())
            {
                WFForms Form = new WFForms();

                Form._solicitudId   = dr.GetInt64(0);
                Form._workFlowId    = dr.GetInt32(1);
                Form._asunto        = dr.GetString(2);
                Form._referenciaId  = dr.GetString(3);
                Form._responsableId = dr.GetInt32(4);
                Form._responsable   = dr.GetString(5);
                Form._idStatus      = dr.GetString(7);
                Form._fecha         = dr.GetDateTime(8);

                lstForms.Add(Form);
            }

            return(lstForms);
        }
示例#22
0
 public static bool CambiarPassword(int intEmpleado, string strPassword, bool blnCambiarPassword)
 {
     return(Convert.ToBoolean(SqlHelper.ExecuteScalar(ESSeguridad.FormarStringConexion(), Queries.ES_CambiarPassword, intEmpleado, strPassword, blnCambiarPassword?1:0)));
 }
示例#23
0
        /*** STATIC METHODS ***/

        public static bool CambiarReferencia(int workflowId, string oldRef, string newRef)
        {
            int retVal = SqlHelper.ExecuteNonQuery(ESSeguridad.FormarStringConexion(), Queries.WF_CambiarReferencia, workflowId, oldRef, newRef);

            return(retVal > 0 ? true : false);
        }
示例#24
0
        private static string AsignarParametrosXmlContent(Eventos evt, object[] parameterValues)
        {
            string politicas        = "";
            int    PARAMETROS_FIJOS = 4;

            // Si el Workflow se va a crear los parámetros son:
            // Parámetro 0 = Código del Workflow
            // Parámetro 1 = Referencia del Documento
            // Parámetro 2 = Código de Staff Origen
            // Parámetro 3 = Código de Staff Destino

            // Si el mensaje es mientras la ejecución los parámetros son:
            // Parámetro 0 = Código de la Solicitud
            // Parámetro 1 = Referencia del Documento
            // Parámetro 2 = Código de Staff Destino
            // Parámetro 3 = Observaciones

            if (parameterValues == null || parameterValues.Length < PARAMETROS_FIJOS)
            {
                return(null);
            }

            string xmlContent = "<root>";

            for (int i = 0, j = parameterValues.Length; i < j; i++)
            {
                if (i < PARAMETROS_FIJOS)
                {
                    xmlContent += "<param" + i + ">" + parameterValues[i].ToString().Trim() + "</param" + i + ">";
                }
                else
                {
                    politicas += i + 1 < j ? parameterValues[i].ToString().Trim() + ";" : parameterValues[i].ToString().Trim();
                }
            }
            //Actualizar Ruta en Solicitud Corregida
            if (evt == Eventos.SOLICITUD_CORREGIDA && politicas != "")
            {
                int    workflowId    = Convert.ToInt32(parameterValues[0]);
                int    staffId       = Convert.ToInt32(parameterValues[PARAMETROS_FIJOS - 2]);
                string strReferencia = parameterValues[1].ToString();                //Referencia del documento
                try
                {
                    DataSet ds = SqlHelper.ExecuteDataset(ESSeguridad.FormarStringConexion(),
                                                          Queries.WF_ObtenerCreador, workflowId, strReferencia);

                    foreach (DataRow r in ds.Tables[0].Rows)
                    {
                        staffId = Convert.ToInt32(r["swf_cod_empleado_creador"]);
                        break;
                    }
                }
                catch (Exception ee)
                {
                    System.Console.Write(ee.Message);
                }

                ArrayList rutas = WFPolitica.ObtenerRuta(workflowId, politicas, staffId);
                try
                {
                    string strRuta = Convert.ToString(rutas[0]);

                    SqlHelper.ExecuteScalar(ESSeguridad.FormarStringConexion(),
                                            Queries.WF_ActualizarRutaSolicitud, strReferencia, workflowId, staffId, strRuta);
                }
                catch (Exception ee)
                {
                    System.Console.Write(ee.Message);
                }
                if (rutas != null)
                {
                    for (int i = 0; i < rutas.Count; i++)
                    {
                        xmlContent += "<param" + (PARAMETROS_FIJOS + i) + ">" + rutas[i].ToString() + "</param" + (PARAMETROS_FIJOS + i) + ">";
                    }
                }
                else
                {
                    return(null);
                    //					throw new Exception("No se pudo establecer una ruta con las políticas establecidas");
                }
            }
            // LAS POLÍTICAS SE PASAN AL WORKFLOW CUANDO ESTE SE CREA
            if (evt == Eventos.CREAR_SOLICITUD)           // && politicas != "")
            {
                int    workflowId    = Convert.ToInt32(parameterValues[0]);
                string strReferencia = parameterValues[1].ToString();
                int    staffId       = Convert.ToInt32(parameterValues[PARAMETROS_FIJOS - 2]);

                ArrayList rutas   = null;// WFPolitica.ObtenerRuta(workflowId, politicas, staffId);
                string    strRuta = string.Empty;
                try
                {
                    if (politicas != string.Empty)
                    {
                        rutas   = WFPolitica.ObtenerRuta(workflowId, politicas, staffId);
                        strRuta = Convert.ToString(rutas[0]);
                        SqlHelper.ExecuteScalar(ESSeguridad.FormarStringConexion(),
                                                Queries.WF_ActualizarRutaSolicitud, strReferencia, workflowId, staffId, strRuta);
                    }
                }
                catch (Exception ee)
                {
                    System.Console.Write(ee.Message);
                }

                if (rutas != null)
                {
                    for (int i = 0; i < rutas.Count; i++)
                    {
                        xmlContent += "<param" + (PARAMETROS_FIJOS + i) + ">" + rutas[i].ToString() + "</param" + (PARAMETROS_FIJOS + i) + ">";
                    }
                }

                else
                {
                    xmlContent += "<param" + PARAMETROS_FIJOS + ">0;0;</param" + PARAMETROS_FIJOS + ">";
                }

                /*
                 *          else
                 *          {
                 *                  return null;
                 *                  //					throw new Exception("No se pudo establecer una ruta con las políticas establecidas");
                 *          }
                 * */
            }

            xmlContent += "</root>";
            return(xmlContent);
        }
示例#25
0
 public void ActualizarReglas()
 {
     SqlHelper.ExecuteNonQuery(ESSeguridad.FormarStringConexion(), Queries.WF_ActualizarReglas, WorkflowId, intIntervaloAprobacion, intIntervaloCorreccion, intNumRecordatorios, intCodLapsoAprobacion, intCodLapsoCorreccion);
 }
示例#26
0
        public ArrayList Evaluate(string politicas, int staffOrigen)
        {
            // Ejemplo de "politicas" = "Bs.;500000"
            // Ejemplo de "staffOrigen" = 10108
            ArrayList retVal = null;
            string    ruta   = "";

            string [] parser = politicas.Split(';');

            WFCondicion  Cond = WFCondicion.ObtenerCondicionPorID(ConditionID);
            WFTipoDeDato Tdt  = WFTipoDeDato.ObtenerTiposDeDatoPorID(DatatypeID);

            bool blnCumplioLaPolitica = false;

            switch (Tdt.strNbrTipoDeDato.Trim())
            {
            case "Monto":
            {
                double dblValor = Convert.ToDouble(parser[0]);
                blnCumplioLaPolitica = Comparar(Cond, Convert.ToDouble(_value), dblValor);
            }
            break;

            case "Cantidad":
            {
                int intValor = Convert.ToInt32(parser[0]);
                blnCumplioLaPolitica = Comparar(Cond, Convert.ToInt32(_value), intValor);
            }
            break;

            case "Fecha":
            {
                DateTime dttValor = Convert.ToDateTime(parser[0]);
                blnCumplioLaPolitica = Comparar(Cond, Convert.ToDateTime(parser[0]), dttValor);
            }
            break;

            case "Moneda":
            {
                string strValor = parser[0].Trim();
                blnCumplioLaPolitica = Comparar(Cond, _value.Trim(), strValor);
            }
            break;

            case "Nombre":
            {
                string strValor = parser[0].Trim();
                blnCumplioLaPolitica = Comparar(Cond, _value.Trim(), strValor);
            }
            break;
            }

            if (blnCumplioLaPolitica)
            {
                if (Sino == 1)
                {
                    SqlServerTreeProvider treeProvider = new SqlServerTreeProvider();
                    Children = treeProvider.GetChildren(UniqueID, WorkflowID);

                    bool tieneNodosHijos = false;
                    foreach (TreeNode tn in Children)
                    {
                        tieneNodosHijos = true;
                        retVal          = tn.Evaluate(politicas, staffOrigen);
                        if (retVal != null)
                        {
                            break;
                        }
                    }

                    if (!tieneNodosHijos)
                    {
                        SqlDataReader dr = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerCaminos, staffOrigen, WorkflowID, UniqueID);

                        if (dr.Read())
                        {
                            retVal = new ArrayList();
                            do
                            {
                                ruta = dr.GetString(0);
                                retVal.Add(ruta);
                            }while(dr.Read());
                        }
                        else
                        {
                            return(null);
//							throw new Exception("No se pudo establecer la ruta a través de las políticas y el código de staff #3");
                        }
                    }
                }
                else
                {
                    if (parser.Length > 1)
                    {
                        string politicasHijas = "";
                        for (int j = 1; j < parser.Length; j++)
                        {
                            politicasHijas += j + 1 < parser.Length ? parser[j] + ";" : parser[j];
                        }

                        SqlServerTreeProvider treeProvider = new SqlServerTreeProvider();
                        Children = treeProvider.GetChildren(UniqueID, WorkflowID);

                        bool tieneNodosHijos = false;
                        foreach (TreeNode tn in Children)
                        {
                            tieneNodosHijos = true;
                            retVal          = tn.Evaluate(politicasHijas, staffOrigen);
                            if (retVal != null)
                            {
                                break;
                            }
                        }

                        if (!tieneNodosHijos)
                        {
                            SqlDataReader dr = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerCaminos, staffOrigen, WorkflowID, UniqueID);

                            if (dr.Read())
                            {
                                retVal = new ArrayList();
                                do
                                {
                                    ruta = dr.GetString(0);
                                    retVal.Add(ruta);
                                }while(dr.Read());
                            }
                            else
                            {
                                return(null);
//								throw new Exception("No se pudo establecer la ruta a través de las políticas y el código de staff #1");
                            }
                        }
                    }
                    else
                    {
                        SqlDataReader dr = SqlHelper.ExecuteReader(ESSeguridad.FormarStringConexion(), Queries.WF_ObtenerCaminos, staffOrigen, WorkflowID, UniqueID);

                        if (dr.Read())
                        {
                            retVal = new ArrayList();
                            do
                            {
                                ruta = dr.GetString(0);
                                retVal.Add(ruta);
                            }while(dr.Read());
                        }
                        else
                        {
                            return(null);
//							throw new Exception("No se pudo establecer la ruta a través de las políticas y el código de staff #2");
                        }
                    }
                }
            }

            return(retVal);
        }
示例#27
0
        private void btnIngresar_Click(object sender, System.EventArgs e)
        {
            int intUsuError = 0;

            if (txtUsuario.Text == "")
            {
                lblMensaje.Height = 24;
                lblMensaje.Text   = ESMensajes.ObtenerMensaje(384);
                return;
            }

            if (txtPassword.Text == "")
            {
                lblMensaje.Height = 24;
                lblMensaje.Text   = ESMensajes.ObtenerMensaje(385);
                return;
            }

            ESUsuario Usuario    = new ESUsuario();
            int       intUsuario = Usuario.Login(txtUsuario.Text, ESSeguridad.Encriptar(txtPassword.Text));

            try
            { Session["Host"] = System.Net.Dns.GetHostByAddress(Request.ServerVariables["REMOTE_ADDR"]).HostName; }
            catch
            { Session["Host"] = "N/A"; }

            if (intUsuario > 0)
            {
                ESLog.Log(intUsuario, Session["Host"].ToString(), ESLog.TipoLog.Informativo, ESLog.TipoTransaccion.Desconocida, "", 8, "", "Acceso al sistema");
                ESUsuario.VerificarCaducidad(intUsuario, shtCaducidad);

                FormsAuthentication.SetAuthCookie(txtUsuario.Text, false);
                Session["IDUsuario"] = intUsuario;
                Response.Redirect("Default.aspx");
            }
            else
            {
                switch (intUsuario)
                {
                case  0:                         // La contraseña es incorrecta
                    lblMensaje.Height = 24;
                    lblMensaje.Text   = ESMensajes.ObtenerMensaje(383);
                    intUsuError       = Usuario.Login(txtUsuario.Text);
                    ESLog.Log(intUsuError, Session["Host"].ToString(), ESLog.TipoLog.Informativo, ESLog.TipoTransaccion.Desconocida, "Principal", 8, Convert.ToString(intUsuError), "La contraseña del usuario es incorrecta");
                    return;

                case -1:
                    lblMensaje.Height = 24;
                    lblMensaje.Text   = ESMensajes.ObtenerMensaje(593);
                    intUsuError       = Usuario.Login(txtUsuario.Text);
                    string strUsuError = "El usuario " + txtUsuario.Text + " ha sido desactivado";
                    ESLog.Log(intUsuError, Session["Host"].ToString(), ESLog.TipoLog.Informativo, ESLog.TipoTransaccion.Desconocida, "Principal", 8, Convert.ToString(intUsuError), strUsuError);
                    return;

                case -2:                         // El usuario no existe en el sistema
                    lblMensaje.Height = 24;
                    lblMensaje.Text   = ESMensajes.ObtenerMensaje(594);
                    intUsuError       = Usuario.Login(txtUsuario.Text);
                    ESLog.Log(intUsuError, Session["Host"].ToString(), ESLog.TipoLog.Informativo, ESLog.TipoTransaccion.Desconocida, "Principal", 8, "", "El usuario no existe en el sistema");
                    return;

//===< By Ramón
                case -3:                                // Cierre de Sistema
                    lblMensaje.Text = ESMensajes.ObtenerMensaje(688);
                    return;

                case -4:                                // Publicación de SPIN
                    lblMensaje.Text = ESMensajes.ObtenerMensaje(691);
                    return;

                case -5:                                // Labores de mantenimiento
                    lblMensaje.Text = ESMensajes.ObtenerMensaje(692);
                    return;
//===>
                }
            }
        }
示例#28
0
 public static bool BorrarCamino(int rutaId)
 {
     SqlHelper.ExecuteNonQuery(ESSeguridad.FormarStringConexion(), Queries.WF_BorrarCamino, rutaId);
     return(true);
 }
示例#29
0
 public static string VerificarViaje(int intCodWorkFlow, string strReferencia)
 {
     return(Convert.ToString(SqlHelper.ExecuteScalar(ESSeguridad.FormarStringConexion(), Queries.WF_VerificarWFViaje, intCodWorkFlow, strReferencia)));
 }
示例#30
0
 public static void ActualizarReglas(int workflow, int intervalo_aprobacion, int intervalo_correccion, int num_recordatorios)
 {
     SqlHelper.ExecuteNonQuery(ESSeguridad.FormarStringConexion(), Queries.WF_ActualizarReglas, workflow, intervalo_aprobacion, intervalo_correccion, num_recordatorios);
 }