/*===========================================================================================================================
* Instituto Costarricense de Acueductos y Alcantarillados. - 2015
* Administración de la Seguridad
* Nombre de la Pantalla: frwUsuario.aspx
*
* Explicación de los contenidos del archivo
*===========================================================================================================================
* HISTORIAL
*
* PERSONA DIA – MES - AÑO DESCRIPCIÓN
* Esteban Gutierrez Rapso 20 – 04 - 2015 Se inicia con el diseño de la pagina
* …………………………………………………………
* …………………………………………………………
*===========================================================================================================================
* Derechos Reservados (C) 2015 AyA.
* ESTE CÓDIGO ES PROVEÍDO “TAL CUAL ES” SIN GARANTÍA ALGUNA
* DE NINGÚN TIPO, SEA IMPLICITA O EXPLICITA.
* NO SE PERMITE SU REPRODUCCIÓN PARCIAL O TOTAL, NI SU COMERCIALIZACIÓN
*===========================================================================================================================
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using AyABL;
using AyABL.AUT.Autenticacion;
//using AyABL.APL;
using AyADAL;
using System.Configuration;
using AyABL.RCS;
using AyABL.Usuario;
using AyABL.APL;
public partial class Forms_Usuarios_frwCantonales : General
{
#region Inicializar Formulario (R0)
override protected void OnInit(EventArgs e) //M0
{
try
{
base.OnInit(e);
InicializarFormulario();
}
catch (Exception ex)
{
MensajeError("Error en R0M0", ex);
}
}
private void InicializarFormulario() //M1
{
try
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
construirGridView();
Javascript.CheckAllGridViewItems(Page);
cuwBusquedaList.Buscar += new _controlesusuario_Estandar_cuwBusquedaList.SearchEvent(Buscar);
}
catch (Exception ex)
{
MensajeError("Error en R0M1", ex);
}
}
#endregion
#region Variables (R1)
GridView grvListaDatosCantonalesTemp, grvCantonalesADTemp;
oficinaayaBL objOficinaBL;
AutenticacionBL objAutenticacionBL;
UsuarioRolBL objUsuarioRolBL;
RolItemMenuComandoBL objRolItemMenuComandoBL;
AplicacionBL objAplicacionBL;
RolBL objRolBL;
regionBL objRegionBL;
usuarioBL objUsuarioBL;
ArrayList arlCondicionesFiltroBusqueda = new ArrayList();
UsuarioBL objUsuarioAyABL;
#endregion
#region Eventos Formulario (R2)
protected void Page_Load(object sender, EventArgs e) //M0
{
try
{
//Este codigo es para obligar al boton a hacer un postback completo y no uno parcial que se da cuando el boton esta dentro del updatepanel
ScriptManager.GetCurrent(Page).RegisterPostBackControl(btnImprimir);
if ((!IsPostBack) && (Session.Count > 0))
{
llenarGridView(true);
mostrarFilaTabla(1);
llenarDDLregion();
llenarDDLjefatura();
llenarTipoDependencia();
llenarDDLProvincia();
llenarDDLCanton();
llenarDDLDistrito();
ComandosxMenu();
}
// Trace.IsEnabled = true;
// string strURL = Request.Url.AbsoluteUri.Replace("http://" + Request.Url.Authority + Request.ApplicationPath.ToString(), "~/").ToString().Replace("//", "/");
// Trace.Write(strURL);
// strURL = strURL.Replace(".aspx", string.Empty);
// Trace.Write(strURL);
////Trace.Write(ViewState["MODO"].ToString());
//Trace.Write(ViewState["PUEDEMODIFICAR"].ToString());
}
catch (Exception ex)
{
MensajeError("Error en R2M0", ex);
}
}
#endregion
#region Eventos Controles Web (R3)
///
/// Metodo que se utiliza para extraer información del registro de la base de datos y ser mostrado en el acordeon de Controles
///
///
///
protected void grvListaDatosUsuarios_RowCommand(object sender, GridViewCommandEventArgs e) //M0
{
try
{
if (e.CommandName == "editar")
{
llenarDDLjefatura();
int i = Convert.ToInt32(e.CommandArgument);
GridViewRow selectedRow = grvListaDatosUsuarios.Rows[i];
int intPKDEPENDENCIASIGDD = Convert.ToInt32(selectedRow.Cells[2].Text);
ViewState["PKDEPENDENCIASIGDD"] = intPKDEPENDENCIASIGDD;
ViewState["MODO"] = "Modifica";
mostrarFilaTabla(2);
mostrarDatos(intPKDEPENDENCIASIGDD);
}
}
catch (Exception ex)
{
MensajeError("Error en R3M0", ex);
}
}
///
/// Metodo que se utiliza para la paginación del Grid en caso de que el usuario desee ver mas registros
///
///
///
protected void grvListaDatosUsuarios_PageIndexChanging(object sender, GridViewPageEventArgs e) //M3
{
try
{
grvListaDatosUsuarios.PageIndex = e.NewPageIndex;
llenarGridView(true);
}
catch (Exception ex)
{
MensajeError("Error en R3M3", ex);
}
}
///
///Activar el botón de Refrescar
///
///
///
protected void btnRefrescar_Click(object sender, System.Web.UI.ImageClickEventArgs e) //M4
{
try
{
llenarGridView(true);
}
catch (Exception ex)
{
MensajeError("Error en R3M4" + MensajesAplicacion.RefrescarFallido.ToString(), ex);
}
}
///
/// Activa el evento del botón Buscar (binoculares)
///
///
///
protected void btnBuscar_Click(object sender, System.Web.UI.ImageClickEventArgs e) //M7
{
try
{
llenarGridView(true);
}
catch(Exception ex)
{
MensajeError("Error en R3M7" + MensajesAplicacion.UsuarioInexistente.ToString(), ex);
}
}
///
/// Activa el evento del boton Nuevo
///
///
///
protected void btnNuevo_Click(object sender, EventArgs e) //M8
{
try
{
ViewState["MODO"] = "Nuevo";
mostrarFilaTabla(2);
//Limpia el grid de Active Directory
ddlRegion.Focus();
ddlTipoDependencia.Focus();
ddlJefatura.Focus();
ddlProvincia.Focus();
ddlCanton.Focus();
ddlDistrito.Focus();
limpiarCampos();
}
catch (Exception ex)
{
MensajeError("Error en R3M8" + MensajesAplicacion.GuardadoFallido.ToString(), ex);
}
}
///
/// Metodo que activa el botón de Eliminar
///
///
///
protected void btnActivar_Click(object sender, EventArgs e) //M9
{
try
{
foreach (GridViewRow row in grvListaDatosUsuarios.Rows)
{
HtmlInputCheckBox chkTemp = (HtmlInputCheckBox)row.Controls[0].Controls[1];
if (chkTemp != null)
{
// si el registro esta marcado
if (chkTemp.Checked)
{
int intPkEliminar = Convert.ToInt32(row.Cells[2].Text);
ActivarDesactivar(intPkEliminar);
MensajeInformativo(AyABL.BASESDEDATOS.ADS + "Interfaz: " + MensajesAplicacion.GuardadoExitoso.ToString());
}
}
}
llenarGridView(true);
}
catch (Exception ex)
{
MensajeError("Error en R3M9", ex);
}
}
///
/// Activa el evento del ddlApp para cargar el listado de roles de la aplicación seleccionada
///
///
///
protected void ddlAplicacion_SelectedIndexChanged(object sender, EventArgs e) //M10
{
try
{
llenarDDLregion();
}
catch (Exception ex)
{
MensajeError("Error en R3M10", ex);
}
}
///
///Activa el metodo del boton Anterior, regresa a la primera fila de la tabla
///
///
///
protected void btnAnterior_Click(object sender, EventArgs e) //M12
{
try
{
llenarGridView(true);
divDatosSuperiores.Visible = true;
divDatosMedios.Visible = false;
}
catch (Exception ex)
{
MensajeError("Error en R3M12", ex);
}
}
///
/// Activa el evento del boton guardar.1
///
///
///
protected void btnGuardar_Click(object sender, EventArgs e) //M14
{
try
{
//if (Page.IsValid)
{
if (txtCantonal.Text != "" && ddlRegion.SelectedValue != "-1" && ddlJefatura.SelectedValue != "-1" && ddlTipoDependencia.SelectedValue != "-1"
&& ddlProvincia.SelectedValue != "-1" && ddlCanton.SelectedValue != "-1" && ddlDistrito.SelectedValue != "-1")
{
int pkRegistro = GuardarDatos();
llenarGridView(true);
mostrarFilaTabla(1);
MensajeInformativo(AyABL.BASESDEDATOS.ADS + "Interfaz: " + MensajesAplicacion.GuardadoExitoso.ToString() + ViewState["MODO"].ToString() + ViewState["PUEDEMODIFICAR"].ToString() + pkRegistro.ToString());
}
else
{
MensajeAlerta("Debe seleccionar todos los campos antes de guardar la información.");
}
}
}
catch (Exception ex)
{
MensajeError("Error en R3M14", ex);
}
}
///
/// Imprime el contendo del gridview
///
///
///
protected void Imprimir(object sender, EventArgs e)
{
try
{
condicionesBusqueda();
DataSet dsCantonales = objOficinaBL.dsListaCantonal(arlCondicionesFiltroBusqueda);
DataTable dt = dsCantonales.Tables[0];
String FileName = "Reporte Dependencias";
if (dt.Rows.Count > 0)
{
string filename = "Dependencias" + ".xls";
System.IO.StringWriter tw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);
DataGrid dgGrid = new DataGrid();
dgGrid.DataSource = dt;
dgGrid.DataBind();
//Get the HTML for the control.
dgGrid.RenderControl(hw);
//Write the HTML back to the browser.
//Response.ContentType = application/vnd.ms-excel;
Response.ContentType = "application/vnd.ms-excel";
Response.AppendHeader("Content-Disposition",
"inline; filename=" + filename + "");
this.EnableViewState = false;
Response.Write(tw.ToString());
Response.End();
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Imprime el contendo del gridview
///
///
///
protected void ddlJefatura_SelectedIndexChanged(object sender, EventArgs e)
{
try
{
objUsuarioBL = new usuarioBL();
objUsuarioBL.objusuarioEL.PK = Int32.Parse(ddlJefatura.SelectedValue);
txtCorreo.Text = objUsuarioBL.strUsuario() + "@aya.go.cr";
}
catch (Exception ex)
{
throw ex;
}
}
protected void ddlProvincia_SelectedIndexChanged(object sender, EventArgs e) //M8
{
try
{
llenarDDLCanton();
llenarDDLDistrito();
}
catch (Exception ex)
{
MensajeError("Error en R3M9", ex);
}
finally
{
//EjecutarScript("inicializaAcordeon('datosCliente');"); //esta linea es para que se limpie el acordeon y se posicione sobre la pestanna actual ya que se pierde al hacer postback
}
}
protected void ddlCanton_SelectedIndexChanged(object sender, EventArgs e) //M10
{
try
{
llenarDDLDistrito();
}
catch (Exception ex)
{
MensajeError("Error en R3M11", ex);
}
finally
{
// EjecutarScript("inicializaAcordeon('datosCliente');"); //esta linea es para que se limpie el acordeon y se posicione sobre la pestanna actual ya que se pierde al hacer postback
}
}
protected void ddlDistrito_SelectedIndexChanged(object sender, EventArgs e) //M9
{
try
{
}
catch (Exception ex)
{
MensajeError("Error en R3M11", ex);
}
finally
{
// EjecutarScript("inicializaAcordeon('datosCliente');"); //esta linea es para que se limpie el acordeon y se posicione sobre la pestanna actual ya que se pierde al hacer postback
}
}
#endregion
#region Metodos Personalizados (R4)
///
/// Oculta las filas que lo requieran
///
///
private void mostrarFilaTabla(int p_intFila) //M0
{
try
{
divDatosSuperiores.Visible = false;
divDatosMedios.Visible = false;
switch (p_intFila)
{
case 1:
llenarGridView(true);
divDatosSuperiores.Visible = true;
break;
case 2:
llenarGridView(true);
divDatosMedios.Visible = true;
break;
case 3:
llenarGridView(true);
break;
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Metodo que se utiliza para contruir el Grid al inicio de la pantalla
///
private void construirGridView() //M1
{
try
{
grvListaDatosCantonalesTemp = (GridView)tdLista.FindControl("grvListaDatosUsuarios");
GridViewBoundField bdfPKDEPENDENCIA = new GridViewBoundField("PKDEPENDENCIASIGDD", "PK", false, false, false);
GridViewBoundField bdfDESCRIPCION = new GridViewBoundField("DESCRIPCIONDEPENDENCIASIGDD", "Dependencias", true, false, true);
GridViewBoundField bdfRegion = new GridViewBoundField("DESCRIPCIONREGION", "Región", true, false, true);
GridViewBoundField bdfDependencia = new GridViewBoundField("DESCRIPCIONTIPODEPENDENCIA", "Cobertura", true, false, true);
GridViewBoundField bdfTELEFONO = new GridViewBoundField("TELEFONODEPENDENCIASIGDD", "Teléfono", true, false, true);
GridViewBoundField bdfFAX = new GridViewBoundField("FAXDEPENDENCIASIGDD", "Fax", true, false, true);
GridViewBoundField bdfAPARTADO = new GridViewBoundField("APARTADODEPENDENCIASIGDD", "Apartado", true, false, true);
GridViewBoundField bdfASTATE = new GridViewBoundField("ASTATEDEPENDENCIASIGDD", "Activo", true, "Si", "No", true);
GridViewBoundField bdfUSUARIO = new GridViewBoundField("USUARIOUSUARIOXDEPENDENCIA", "correo", false, false, false);
grvListaDatosCantonalesTemp.Columns.Add(bdfPKDEPENDENCIA);
grvListaDatosCantonalesTemp.Columns.Add(bdfDESCRIPCION);
grvListaDatosCantonalesTemp.Columns.Add(bdfRegion);
grvListaDatosCantonalesTemp.Columns.Add(bdfDependencia);
grvListaDatosCantonalesTemp.Columns.Add(bdfTELEFONO);
grvListaDatosCantonalesTemp.Columns.Add(bdfFAX);
grvListaDatosCantonalesTemp.Columns.Add(bdfAPARTADO);
grvListaDatosCantonalesTemp.Columns.Add(bdfASTATE);
//grvListaDatosCantonalesTemp.Columns.Add(bdfUSUARIO);
grvListaDatosCantonalesTemp.Columns[0].ItemStyle.Width = 25;
grvListaDatosCantonalesTemp.Columns[1].ItemStyle.Width = 25;
cuwBusquedaList.LlenarCHKLBusqueda(grvListaDatosCantonalesTemp);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Metodo que se encarga de agregar el filtro de busqueda seleccionado por el usuario
///
///
private void condicionesBusqueda() //M2
{
objOficinaBL = new oficinaayaBL();
CondicionDAL condicion;
DateTime dteFechaInicio = new DateTime();
DateTime dteFechaFin = new DateTime();
ListItem li = new ListItem();
string p_parametros;
p_parametros = this.cuwBusquedaList.getValorBusqueda();
try
{
if (p_parametros != "")
{
//aqui se construye el listItem con los datos que vienen del control en formato {valor : texto , valor : texto}
char[] separadorTuplas = { ',' };
char[] separadorValores = { ':' };
string[] arrayTupla = p_parametros.Split(separadorTuplas);
for (int i = 0; i <= (arrayTupla.Length - 1); i++)
{
if (arrayTupla[i].ToString() != "")
{
string[] arrayValores = arrayTupla[i].ToString().Split(separadorValores);
li = new ListItem(arrayValores[1], arrayValores[0]);
if (li.Value.Contains("FECHA") && li.Text != string.Empty)
{
if (li.Value.Contains("INICIO"))
{
dteFechaInicio = Convert.ToDateTime(li.Text.ToString());
}
if (li.Value.Contains("FIN"))
{
dteFechaFin = Convert.ToDateTime(li.Text.ToString());
if (dteFechaFin != null || dteFechaInicio != null)
if (dteFechaInicio < dteFechaFin || dteFechaFin == dteFechaInicio)
{
objOficinaBL = new oficinaayaBL();
arlCondicionesFiltroBusqueda = objOficinaBL.buscarPorFechas(Tablas.dependenciasigdd, dteFechaInicio, dteFechaFin, operadorLogico.AND, arlCondicionesFiltroBusqueda);
}
else
MensajeInformativo(AyABL.BASESDEDATOS.ADS + "Interfaz: " + "Verifique que la Fecha de Inicio sea menor que la Fecha Final" + "M2");
else
MensajeInformativo(AyABL.BASESDEDATOS.ADS + "Interfaz: " + "Verifique que los campos de las fechas no estén vacíos" + "M2");
}
}
else
{
if (li.Value.Contains("booleano") && li.Text != "2")
{
condicion = new CondicionDAL();
char[] separadorColumna = { '|' };
string[] strColumna = li.Value.Split(separadorColumna);
condicion.valorIzquierdo = strColumna[1].ToString();
condicion.operadorGeneral = operadorGeneral.EQUAL;
condicion.operadorLogico = operadorLogico.AND;
condicion.valorDerecho = li.Text.Trim();
arlCondicionesFiltroBusqueda.Add(condicion);
}
else
{
if (li.Text != string.Empty && !li.Value.Contains("booleano"))
{
condicion = new CondicionDAL();
condicion.valorIzquierdo = li.Value;
condicion.operadorGeneral = operadorGeneral.LIKEALL;
condicion.operadorLogico = operadorLogico.AND;
condicion.valorDerecho = "%" + li.Text.Trim() + "%";
arlCondicionesFiltroBusqueda.Add(condicion);
}
}
}
}
}
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Metodo que se utiliza con el buscador de la parte superior de la pantalla, y hace que se despliegue la información de acuerdo
/// a lo solicitado
/// |
private void Buscar() //M4
{
try
{
llenarGridView(true);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Metodo que se utiliza para el despliegue de los botones
///
private void ComandosxMenu() //M6
{
try
{
DataSet dsComandos = getComandos();
if (dsComandos != null)
{
foreach (DataRow drTemp in dsComandos.Tables[0].Rows)
{
switch (drTemp["NOMBRECOMANDO"].ToString().ToUpper())
{
case "NUEVO":
btnNuevo.Visible = true;
break;
case "MODIFICA":
//Inicio de variable tipo VIEWSTATE
ViewState["PUEDEMODIFICAR"] = true;
btnGuardar.Visible = true;
btnActivar.Visible = true;
break;
}
}
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Limpia los campos
///
private void limpiarCampos()
{
txtApartado.Text = string.Empty;
txtCantonal.Text = string.Empty;
txtDireccion.Text = string.Empty;
txtFax.Text = string.Empty;
txtTelefono.Text = string.Empty;
ddlRegion.SelectedValue = "-1";
ddlJefatura.SelectedValue = "-1";
ddlTipoDependencia.SelectedValue = "-1";
ddlProvincia.SelectedValue = "-1";
ddlCanton.SelectedValue = "-1";
ddlDistrito.SelectedValue = "-1";
txtCorreo.Text = string.Empty;
}
#endregion
#region Metodos Controles a Datos (R5)
///
/// guarda y modifica registros en la tabla.
///
///
private int GuardarDatos() //M0
{
int nValorRetornado = 0;
try
{
string strModo = ViewState["MODO"].ToString();
objOficinaBL = new oficinaayaBL();
//objOficinaBL.objoficinaayaEL.CODCANTONAL = Int32.Parse(ddlRegion.SelectedValue);
objOficinaBL.objoficinaayaEL.DESCRIPCION = txtCantonal.Text;
objOficinaBL.objoficinaayaEL.DIRECCION = txtDireccion.Text;
objOficinaBL.objoficinaayaEL.TELEFONO = txtTelefono.Text;
objOficinaBL.objoficinaayaEL.FAX = txtFax.Text;
objOficinaBL.objoficinaayaEL.APARTADO = txtApartado.Text;
objOficinaBL.objoficinaayaEL.ASTATE = true;
objOficinaBL.objoficinaayaEL.FECHA = DateTime.Now;
objOficinaBL.objoficinaayaEL.USUARIOXDEPENDENCIA = Int32.Parse(ddlJefatura.SelectedValue);//asumo que este es el campo de jefatura Session["LOGIN"].ToString();
objOficinaBL.objoficinaayaEL.TIPODEPENDENCIA = Int32.Parse(ddlTipoDependencia.SelectedValue);
objOficinaBL.objoficinaayaEL.REGION = Int32.Parse(ddlRegion.SelectedValue);
objOficinaBL.objoficinaayaEL.FKPROVINCIA = Int32.Parse(ddlProvincia.SelectedValue);
objOficinaBL.objoficinaayaEL.FKCANTON = Int32.Parse(ddlCanton.SelectedValue);
objOficinaBL.objoficinaayaEL.FKDISTRITO = Int32.Parse(ddlDistrito.SelectedValue);
if (strModo == "Nuevo")
{
nValorRetornado = objOficinaBL.insertarOficina();
llenarDDLregion();
llenarDDLjefatura();
llenarTipoDependencia();
llenarDDLProvincia();
llenarDDLCanton();
llenarDDLDistrito();
limpiarCampos();
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": Se ha ingresado la cantonal " + txtCantonal.Text.Trim(),
"frwDependencias.aspx",
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
else if (strModo == "Modifica" && bool.Parse(ViewState["PUEDEMODIFICAR"].ToString()) == true)
{
objOficinaBL.objoficinaayaEL.PK = Convert.ToInt32(ViewState["PKDEPENDENCIASIGDD"]);
nValorRetornado = objOficinaBL.modificarOficina();
//llenarDDLregion();
//llenarDDLjefatura();
//llenarTipoDependencia();
//llenarDDLProvincia();
//llenarDDLCanton();
//llenarDDLDistrito();
//limpiarCampos();
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.IngresarRegistro + ": Se ha modificado la cantonal " + txtCantonal.Text.Trim(),
"frwCantonales.aspx",
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
}
catch (Exception ex)
{
throw ex;
}
return nValorRetornado;
}
///
/// Activa o desactiva el usuario
///
///
private bool ActivarDesactivar(int p_intPkEliminar) //M2
{
bool blnValorRetornado = false;
bool blnActivo = false;
try
{
objOficinaBL = new oficinaayaBL();
objOficinaBL.objoficinaayaEL.PK = p_intPkEliminar;
DataSet dsOficinasDS = objOficinaBL.listarOficinas(null, false, null);
//Verifica que el usuario se encuentre en la BD
if (dsOficinasDS.Tables[0].Rows.Count != 0)
{
//Si esta activado que lo desactive
if (Convert.ToBoolean(dsOficinasDS.Tables[0].Rows[0][Concepto.ASTATE.ToString() + Tablas.dependenciasigdd.ToString()]))
blnActivo = false;
//Si esta desactivado que lo active
else
blnActivo = true;
objOficinaBL.objoficinaayaEL.ASTATE = blnActivo;
//objOficinaBL.objoficinaayaEL.PK = (int) dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigpc.PK.ToString() + Tablas.dependenciasigpc.ToString()];
objOficinaBL.objoficinaayaEL.DESCRIPCION = dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.DESCRIPCION.ToString() + Tablas.dependenciasigdd.ToString()].ToString();
objOficinaBL.objoficinaayaEL.DIRECCION = dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.DIRECCION.ToString() + Tablas.dependenciasigdd.ToString()].ToString();
objOficinaBL.objoficinaayaEL.TELEFONO = dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.TELEFONO.ToString() + Tablas.dependenciasigdd.ToString()].ToString();
objOficinaBL.objoficinaayaEL.FAX = dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FAX.ToString() + Tablas.dependenciasigdd.ToString()].ToString();
objOficinaBL.objoficinaayaEL.APARTADO = dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.APARTADO.ToString() + Tablas.dependenciasigdd.ToString()].ToString();
objOficinaBL.objoficinaayaEL.FECHA = Convert.ToDateTime(dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FECHAINGRESO.ToString() + Tablas.dependenciasigdd.ToString()]);
objOficinaBL.objoficinaayaEL.USUARIOXDEPENDENCIA = (int)dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FKUSUARIOXDEPENDENCIA.ToString()];
objOficinaBL.objoficinaayaEL.TIPODEPENDENCIA = (int)dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FKTIPODEPENDENCIA.ToString()];
objOficinaBL.objoficinaayaEL.REGION = (int) dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FKREGION.ToString()];
objOficinaBL.objoficinaayaEL.FKPROVINCIA = (int)dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FKPROVINCIA.ToString()];
objOficinaBL.objoficinaayaEL.FKCANTON = (int)dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FKCANTON.ToString()];
objOficinaBL.objoficinaayaEL.FKDISTRITO = (int)dsOficinasDS.Tables[0].Rows[0][t_adm_dependenciasigdd.FKDISTRITO.ToString()];
objOficinaBL.modificarOficina();
}
GuardarEventoBitacora(
Session["LOGIN"].ToString(),
AccionBitacora.INSERT.ToString(),
MensajesBitacora.ModificarRegistro + ": Se ha puesto el registro de la PK=" + p_intPkEliminar + " en " + blnActivo,
"frwDependencias.aspx",
Convert.ToInt32(ConfigurationManager.AppSettings["pkApp"])
);
}
catch (Exception ex)
{
throw ex;
}
return blnValorRetornado;
}
#endregion
#region Metodos Datos a Controles (R6)
///
/// Carga el grid principal
///
///
private void llenarGridView(bool p_Llenar) //M0
{
try
{
if (!IsPostBack || p_Llenar)
{
condicionesBusqueda();
DataSet dsCantonales = objOficinaBL.dsListaCantonal(arlCondicionesFiltroBusqueda);
General.detalleGridView(dsCantonales, grvListaDatosCantonalesTemp, lblTotalDatos);
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Muestra los datos del registro
///
///
private void mostrarDatos(int p_intPkConsultar) //M1
{
try
{
objOficinaBL = new oficinaayaBL();
objOficinaBL.objoficinaayaEL.PK = p_intPkConsultar;
DataSet dsUsuario = objOficinaBL.dsListaCantonal(null);
if (dsUsuario.Tables[0].Rows.Count > 0)
{
//Información de la cantonal
ddlRegion.SelectedValue = dsUsuario.Tables[0].Rows[0]["PKREGION"].ToString();
ddlTipoDependencia.SelectedValue = dsUsuario.Tables[0].Rows[0]["PKTIPODEPENDENCIA"].ToString();
ddlJefatura.SelectedValue = dsUsuario.Tables[0].Rows[0]["PKUSUARIOXDEPENDENCIA"].ToString();
txtCantonal.Text = dsUsuario.Tables[0].Rows[0]["DESCRIPCIONDEPENDENCIASIGDD"].ToString();
txtDireccion.Text = dsUsuario.Tables[0].Rows[0]["DIRECCIONDEPENDENCIASIGDD"].ToString();
txtTelefono.Text = dsUsuario.Tables[0].Rows[0]["TELEFONODEPENDENCIASIGDD"].ToString();
txtFax.Text = dsUsuario.Tables[0].Rows[0]["FAXDEPENDENCIASIGDD"].ToString();
txtApartado.Text = dsUsuario.Tables[0].Rows[0]["APARTADODEPENDENCIASIGDD"].ToString();
txtCorreo.Text = dsUsuario.Tables[0].Rows[0]["USUARIOUSUARIOXDEPENDENCIA"].ToString() + "@aya.go.cr";
ddlProvincia.SelectedValue = dsUsuario.Tables[0].Rows[0]["PKPROVINCIA"].ToString();
llenarDDLCanton();
ddlCanton.SelectedValue = dsUsuario.Tables[0].Rows[0]["PKCANTON"].ToString();
llenarDDLDistrito();
ddlDistrito.SelectedValue = dsUsuario.Tables[0].Rows[0]["PKDISTRITO"].ToString();
}
else
{
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Muestra los datos del registro
///
///
//private void mostrarcorreo(int p_intPkConsultar) //M2 -- Para desplegar correo.
//{
// try
// {
// //objOficinaBL = new oficinaayaBL();
// //objOficinaBL.objoficinaayaEL.PK = p_intPkConsultar;
// //DataSet dsUsuario = objOficinaBL.dsListaCantonal(null);
// objUsuarioAyABL = new UsuarioBL();
// objUsuarioAyABL.objUsuarioEL.PK = p_intPkConsultar;
// DataSet ds2 = objUsuarioAyABL.dsListaUsuarios(null);
// if (ds2.Tables[0].Rows.Count > 0)
// {
// ////Información del correo
// //ddlJefatura.SelectedValue = ds2.Tables[0].Rows[0]["CORREO"].ToString();
// txtCorreo.Text = ds2.Tables[0].Rows[0]["CORREO"].ToString();
// }
// else
// {
// }
// }
// catch (Exception ex)
// {
// throw ex;
// }
//}
///
/// Llena el dropdownlist de Cantonales según la aplicación
///
private void llenarDDLregion() //M2
{
try
{
//Limpia el control
ddlRegion.Items.Clear();
//Instancia el bjeto
objRegionBL = new regionBL ();
//Asigna datos al atributo
objRegionBL.objregionEL.PK = 0;
objRegionBL.objregionEL.Descripcion = "";
//Carga la información en un dataset
DataSet dsRegion = objRegionBL.dsListaRegiones(arlCondicionesFiltroBusqueda);
if (dsRegion.Tables[0].Rows.Count != 0)
{
ddlRegion.DataSource = dsRegion;
ddlRegion.DataTextField = dsRegion.Tables[0].Columns["DESCRIPCIONREGION"].ColumnName;
ddlRegion.DataValueField = dsRegion.Tables[0].Columns["PKREGION"].ColumnName;
ddlRegion.DataBind();
ddlRegion.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
ddlRegion.Items.Insert(0, new ListItem("----- Vacio -----", "-1"));
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Llena el dropdownlist de Cantonales según la aplicación
///
private void llenarDDLjefatura() //M3
{
try
{
//Limpia el control
ddlJefatura.Items.Clear();
//Instancia el bjeto
objUsuarioBL = new usuarioBL();
//Carga la información en un dataset
DataSet dsRegion = objUsuarioBL.dsListaUsuariosJefatura(arlCondicionesFiltroBusqueda);
objUsuarioAyABL = new UsuarioBL();
DataSet ds2 = objUsuarioAyABL.dsListaUsuarios(arlCondicionesFiltroBusqueda);
DataTable dtJefes = new DataTable();
dtJefes.Columns.Add("PKUSUARIOXDEPENDENCIA");
//dtJefes.Columns.Add("USUARIOUSUARIOXDEPENDENCIA");
dtJefes.Columns.Add("NOMBRECOMPLETO");
if (dsRegion.Tables[0].Rows.Count != 0)
{
foreach (DataRow row in dsRegion.Tables[0].Rows)
{
foreach (DataRow rowUsuario in ds2.Tables[0].Rows)
{
var region = row[1].ToString();
var Usuario = rowUsuario[1].ToString();
if (row[1].ToString() == rowUsuario[1].ToString())
{
DataRow rowFinal = dtJefes.NewRow();
rowFinal["PKUSUARIOXDEPENDENCIA"] = row[0].ToString();
//rowFinal["USUARIOUSUARIOXDEPENDENCIA"] = row[1].ToString();
rowFinal["NOMBRECOMPLETO"] = rowUsuario[12].ToString();
dtJefes.Rows.Add(rowFinal);
}
}
}
}
if (dtJefes.Rows.Count != 0)
{
ddlJefatura.DataSource = dtJefes;
ddlJefatura.DataTextField = dtJefes.Columns["NOMBRECOMPLETO"].ColumnName;
//ddlJefatura.DataTextField = dtJefes.Columns["USUARIOUSUARIOXDEPENDENCIA"].ColumnName;
ddlJefatura.DataValueField = dtJefes.Columns["PKUSUARIOXDEPENDENCIA"].ColumnName;
ddlJefatura.DataBind();
ddlJefatura.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
ddlJefatura.Items.Insert(0, new ListItem("----- Vacio -----", "-1"));
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Llena el dropdownlist de grado academico según la aplicación
///
private void llenarTipoDependencia() //M1
{
try
{
//Limpia el control
ddlTipoDependencia.Items.Clear();
//Instancia el bjeto
oficinaayaBL objoficinaayaBL;
objoficinaayaBL = new oficinaayaBL();
//Asigna datos al atributo
//Carga la información en un dataset
DataSet dsDependencia = objoficinaayaBL.dsListaTipoDependencia(null);
if (dsDependencia.Tables[0].Rows.Count != 0)
{
ddlTipoDependencia.DataSource = dsDependencia;
ddlTipoDependencia.DataTextField = dsDependencia.Tables[0].Columns["DESCRIPCIONTIPODEPENDENCIA"].ColumnName;
ddlTipoDependencia.DataValueField = dsDependencia.Tables[0].Columns["PKTIPODEPENDENCIA"].ColumnName;
ddlTipoDependencia.DataBind();
ddlTipoDependencia.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
ddlTipoDependencia.Items.Insert(0, new ListItem("---- - Vacio-----", "-1"));
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Llena el dropdownlist de grado academico según la aplicación
///
private void llenarDDLProvincia() //M4
{
try
{
//Limpia el control
ddlProvincia.Items.Clear();
//Instancia el bjeto
provinciaBL objprovinciaBL = new provinciaBL();
//Asigna datos al atributo
//Carga la información en un dataset
DataSet ds = objprovinciaBL.dsListaProvincias(null);
if (ds.Tables[0].Rows.Count != 0)
{
ddlProvincia.DataSource = ds;
ddlProvincia.DataTextField = ds.Tables[0].Columns["DESCRIPCIONPROVINCIA"].ColumnName;
ddlProvincia.DataValueField = ds.Tables[0].Columns["PKPROVINCIA"].ColumnName;
ddlProvincia.DataBind();
ddlProvincia.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
ddlProvincia.Items.Insert(0, new ListItem("----- No existen opciones -----", "-1"));
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Llena el dropdownlist de grado academico según la aplicación
///
private void llenarDDLCanton() //M5
{
try
{
//Limpia el control
ddlCanton.Items.Clear();
//Instancia el bjeto
cantonBL objcantonBL = new cantonBL();
//Asigna datos al atributo
objcantonBL.objcantonEL.FKPROVINCIA = int.Parse(ddlProvincia.SelectedValue);
//Carga la información en un dataset
DataSet ds = objcantonBL.dsListaCanton(null);
if (ds.Tables[0].Rows.Count != 0)
{
ddlCanton.DataSource = ds;
ddlCanton.DataTextField = ds.Tables[0].Columns["DESCRIPCIONCANTON"].ColumnName;
ddlCanton.DataValueField = ds.Tables[0].Columns["PKCANTON"].ColumnName;
ddlCanton.DataBind();
ddlCanton.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
{
ddlCanton.Items.Insert(0, new ListItem("----- No existen opciones -----", "-1"));
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// Llena el dropdownlist de grado academico según la aplicación
///
private void llenarDDLDistrito() //M6
{
try
{
//Limpia el control
ddlDistrito.Items.Clear();
//Instancia el bjeto
distritoBL objdistritoBL = new distritoBL();
//Asigna datos al atributo
objdistritoBL.objdistritoEL.FKCANTON = int.Parse(ddlCanton.SelectedValue);
//Carga la información en un dataset
DataSet ds = objdistritoBL.dsListaDistritos(null);
if (ds.Tables[0].Rows.Count != 0)
{
ddlDistrito.DataSource = ds;
ddlDistrito.DataTextField = ds.Tables[0].Columns["DESCRIPCIONDISTRITO"].ColumnName;
ddlDistrito.DataValueField = ds.Tables[0].Columns["PKDISTRITO"].ColumnName;
ddlDistrito.DataBind();
ddlDistrito.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
else
ddlDistrito.Items.Insert(0, new ListItem("----- No existen opciones -----", "-1"));
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}