Está en la página 1de 6

FACULTAD DE INGENIERÍA

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

EXPERIENCIA CURRICULAR GESTION DE DATOS E INFORMACION II

Apellidos Coloma Uchuya Semestre 2022-1 NOTA

Nombres Luis Edinson Ciclo V

Docente Luis Canchari Cuyutupac Aula C1

Fecha 08/07/2022 Turno NOCHE

I. RESULTADOS DE APRENDIZAJE:
✓ Implementa herramientas de auditaría y seguridad de la información en una base de
datos para una organización.
II. INSTRUCCIONES:
✓ Lea atentamente la cada indicación y requerimiento y desarrolle según lo solicitado.
✓ Descargar el proyecto ejemplo de la plataforma crear los objetos de base de datos,
configurar para la aplicación
✓ Implemente los requerimientos solicitados, realice las pruebas y documente la
evidencia solicitada.
✓ Publique su evaluación en la sección indicada.
III. CONDICIONES DE EVALUACIÓN:
✓ La práctica durará 120 minutos.
IV. INDICACIONES
• Descargar y configurar la aplicación ejemplo.
• Realizar los requerimientos solicitados.

V. REQUERIMIENTOS:

1
REQUERIMIENTO 1 (10 PUNTOS)
La aplicación de ejemplo “registro de gastos”, requiere implementar un filtrado de
documentos por tipo de documento.
Para atender el requerimiento se debe realizar lo siguiente:
• En la base de datos implementar un procedimiento almacenado llamado
usp_documentos_por_tipo
• En la clase DocumentoDB implementar el método “FiltrarPorTipo”
• En el formulario principal agregar una lista desplegable con los tipos de documentos.
Luego de seleccionar el tipo de documento y procesar la consulta, se debe mostrar
únicamente los documentos con el tipo de documento seleccionado.

Copie aquí el script del procedimiento desarrollado


CREATE PROCEDURE usp_documentos_por_tipo
@tipo nvarchar(10)
as
Begin
Select * from documentos where tipo like @tipo+'%';
end
go

Copie aquí el script del método “FiltarPorTipo”


public List<Documento> Filtrartipodoc(string T)
{
List<Documento> documentos = new List<Documento>();

string query = "usp_documentos_por_tipo";


using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(query, connection);
command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add("@Tipo", SqlDbType.VarChar).Value = A;
try
{
connection.Open();
SqlDataReader reader = command.ExecuteReader();

while (reader.Read())
{
Documento documento = new Documento();
documento.Id = reader.GetInt32(0);
documento.Tipo = reader.GetString(1);
documento.Numero = reader.GetString(2);
documento.Fecha = reader.GetDateTime(3);
documento.Descripcion = reader.GetString(4);
documento.Total = reader.GetDecimal(5);
documentos.Add(documento);
}
reader.Close();
connection.Close();
}
catch (Exception ex)
{
throw new Exception("Hay un error: " + ex.Message);
}
2
}
return documentos;
}

Captura de la prueba y pantalla resultante

3
REQUERIMIENTO 2 (10 PUNTOS)
La aplicación de ejemplo “registro de gastos”, requiere una funcionalidad que permita filtrar
los documentos por un mes especifico del año actual.
Para atender el requerimiento se debe realizar lo siguiente:
• En la base de datos implementar el procedimiento almacenado llamado
“usp_documentos_por_mes_y_anio”. El procedimiento debe utilizar como parámetro
el mes y año para listar los documentos que fueron registrados en el mes del año
actual.
• En la clase DocumentoDB implementar el método “FiltrarPorAnioMes”
• En el formulario principal agregar una lista desplegable con los meses del año.
La funcionalidad debe operar de la siguiente forma: El usuario debe elegir el mes y luego
de procesar la consulta la aplicación debe mostrar únicamente los documentos del mes
seleccionado del año actual.

Copie aquí el script del procedimiento desarrollado


create procedure usp_documentos_por_mes_y_anio
@m varchar (10)
as
begin
select * from documentos doc WHERE DATENAME(MONTH ,doc.fecha) = @m

end

Copie aquí el script del método “FiltrarPorAnioMes”


public List<Documento> FiltraPorAnioMes(string A)
{
List<Documento> documentos = new List<Documento>();

string query = "usp_documentos_por_mes_y_anio";


using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(query, connection);
command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add("@mes", SqlDbType.VarChar).Value = A;
try
{
connection.Open();
SqlDataReader reader = command.ExecuteReader();

while (reader.Read())
{
Documento documento = new Documento();
documento.Id = reader.GetInt32(0);
documento.Tipo = reader.GetString(1);
documento.Numero = reader.GetString(2);
documento.Fecha = reader.GetDateTime(3);
documento.Descripcion = reader.GetString(4);
documento.Total = reader.GetDecimal(5);

4
documentos.Add(documento);
}
reader.Close();
connection.Close();
}
catch (Exception ex)
{
throw new Exception("Hay un error: " + ex.Message);
}
}
return documentos;
}

Resultado de la prueba:

VI. CRITERIOS DE CALIFICACIÓN

DESCRIPTORES.
CRITERIO
Logro destacado Logro esperado En proceso En inicio

Cumple entre el Cumple entre el Implementa menos


Cumple con más del
Adecuación 70% y 90% de las 50% y 69% de las del 50%.de las
90% de las
Funcionalidad funcionalidades funcionalidades funcionalidades
funcionalidades.
requeridas requeridas requeridas
14 11 7 4

5
Entre el 70 y 90% del
Más del 90% del código Entre el 50% y 69% del Menos del 50% del
90% del código
respeta las buenas código respeta las código respeta las
respeta las buenas
prácticas de buenas prácticas de buenas prácticas de
prácticas de
codificación codificación codificación
Mantenibilidad codificación
*orden *orden *orden
*orden
*identado *identado *identado
*identado
*varibales *varibales *varibales
*varibales
*estructuras *estructuras *estructuras
*estructuras
6 4 3 2

También podría gustarte