SlideShare una empresa de Scribd logo
1 de 18
SOFTWARE DE BÚSQUEDA
Rivas Castillo, Sobeida
Julio 2017
El Jefe de Departamento del PNF en Informática de la UPT
“Ludovico Silva” realizó un registro de datos de los
Proyectos Socio Tecnológicos inscritos en el Trayecto
2017-2 que está por finalizar.
A todo Proyecto se le asignó un Código, Título, Autor,
Tutor y Estatus. El código está formado por 5 caracteres
que identifican el año, trayecto y número de proyecto.
El estatus del Proyecto tiene 3 opciones: En Proceso,
Entregado y Presentado.
Se necesita buscar el estatus en que se encuentra un
código de Proyecto determinado.
Enunciado
Datos de Entrada
• Código
• Título
• Autor
• Tutor
• Estatus
Datos de Salida
• Estatus del código
buscado.
Condiciones o
Restricciones
• El código está
formado por 5
caracteres que
identifican el año,
trayecto y número
de proyecto.
• El estatus del
Proyecto tiene 3
opciones: En
Proceso,
Entregado y
Presentado.
1)Análisis del problema
1)Análisis del problema
Requerimientos Funcionales:
 El sistema deberá leer y almacenar los datos de los
proyectos ingresados por el usuario.
 El código del proyecto está formado por 5 caracteres
que identifican el año, trayecto y número de proyecto.
 El estatus del Proyecto tiene 3 opciones: En Proceso,
Entregado y Presentado.
 El sistema deberá buscar el código de proyecto
indicado.
 El sistema debe mostrar el Estatus del código de
proyecto solicitado.
1)Análisis del problema
Requerimientos No Funcionales:
El sistema deberá:
 Estar programado en lenguaje PHP.
 Tener una interfaz gráfica sencilla, amigable y en
idioma español.
 Ser multiplataforma.
 Tener rápidez y rendimiento de respuesta.
 Captar la información a ser ingresada al mismo desde
los dispositivos de entrada como el teclado o el mouse.
 Hacer uso de dispositivos de salida como el monitor y
la impresora.
 Estar disponible durante el horario laboral.
Proceso
1. Inicio
2. Definir Matriz de Proyectos
3. Leer cantidad de proyectos a procesar
4. Para cont=1 hasta cantidad de proyectos
5. Leer el código
6. Leer el Título
7. Leer el Autor
8. Leer el Estatus
9. Almacenar datos en la matriz
10. Fin del Para
11. Leer código del proyecto a buscar
12. Buscar en la matriz de Proyectos
13. Si código existe
14. Mostrar Estatus del Proyecto
15. Sino
16. Mostrar que el Código no existe
17. Fin
2)Diseño del Algoritmo
Algoritmo
Proceso Búsqueda
//Primero se crea la matriz de 3 x 5 y se define su tipo, así
como los dos índices para la fila y columna
Dimension M[3,5];
Definir M Como Caracter;
Definir I,J Como Entero;
Definir campo Como Caracter;
Definir s Como Logico;
s<-F;
// Leer valores, aqui se cargan los valores en cada celda
Para J<-1 Hasta 5 Hacer
Para I<-1 Hasta 3 Hacer
Si J=1 Entonces
campo='Código';
FinSi
Si J=2 Entonces
campo='Título';
FinSi
Si J=3 Entonces
campo='Autor';
FinSi
Si J=4 Entonces
campo=‘Tutor';
FinSi
Si J=5 Entonces
campo='Estatus';
FinSi
Escribir 'Ingrese Valor para Fila ',I,', ',campo,' ,',J,':';
Leer M[I,J];
FinPara
FinPara
Escribir 'Ingrese el código a buscar?: ';
Leer v;
Para I<-1 Hasta 3 Hacer
Para J<-1 Hasta 4 Hacer
Si v=M[I,J]
Escribir 'Estatus: ',M[I,4];
s<-Verdadero;
FinSi
FinPara
Escribir ' ';
FinPara
si s=Verdadero
Escribir 'Código Encontrado!';
Sino
Escribir 'Código No Encontrado!';
FinSi
FinProceso
Diagrama de Flujo
***PANTALLA PRINCIPAL**
<!-- proceso para llamar mis archivos necesarios que me van a
permitir conectarme con la bd y mi paginación de
resultados -->
<?php
include 'conexion/conexion.php';
include_once 'funciones/funcion_proyectos.php';
$crud = new crud($DB_con);
?>
<!-- proceo para llamar mis archivos necesarios que me van a
permitir conectarme con la bd y mi paginacion de
resultados -->
<!-- metodo para eliminar -->
<?php
if(isset($_GET['id_proyectos']))
{
$sql_delete = $DB_con->prepare('DELETE FROM proyectos
WHERE id_proyectos =:id_proyectos');
$sql_delete-
>bindParam(':id_proyectos',$_GET['id_proyectos']);
$sql_delete->execute();
$errMSG = "¡ Atención: El Registro a sido Eliminado
!";//muestro mensaje por pantalla
header("refresh:5;proyectos.php");//refrescamos
despues de eliminar
}
?>
<!-- fin metodo para eliminar -->
3) Programación Se incluye parte del código fuente en PHP
<!DOCTYPE html>
<html lang="es">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Sistema Administrativo Proyectos</title>
<!--Import Google Icon Font-->
<link
href="http://fonts.googleapis.com/icon?family=Material+Icons
" rel="stylesheet">
<!--Import materialize.css-->
<link type="text/css" rel="stylesheet"
href="css/materialize.min.css" media="screen,projection"/>
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width,
initial-scale=1.0"/>
</head>
<body class="blue lighten-5">
<br>
<br>
<br>
<section>
<div class="row">
<div class="container">
<a href='anadirproyectos.php' button class='btn waves-effect blue-grey
darken-4 btn-medium' type='submit'>+ Registros</a>
<a href='detallesproyectosporcodigo.php' button class='btn waves-effect
blue-grey darken-4 btn-medium' type='submit'>+ Consulta
Código</a>
<a href='detallesproyectos.php' button class='btn waves-effect blue-grey
darken-4 btn-medium' type='submit'>+ Consulta Estatus</a>
<!-- VALIDACION -->
<?php
if(isset($errMSG))
{
?>
<div id="element" class='col s5 card-panel red right'>
<h6 class='black-text text-darken-2 center CONDENSED LIGHT5'>
<?php echo $errMSG; ?>
</h6>
</div>
<?php
}
else if(isset($successMSG))
{
?>
<div id="element" class='col s5 card-panel teal lighten-2 right'>
<h6 class='black-text text-darken-2 center CONDENSED LIGHT5'>
<?php echo $successMSG; ?>
</h6>
</div>
<?php
}
?>
<!-- FIN VALIDACION -->
<div class="row">
<div class="card cyan darken-3">
<div class="card-tabs">
<ul class="tabs tabs-fixed-width tabs-transparent">
<li class="tab"><a class="active">Listado General
Proyectos</a></li>
</ul>
</div>
<div class="card-content white">
<div id="test1" class="center-align light">
<!-- muestro mis resultados y creo la paginacion de resultados -->
<table class='striped responsive-table'>
<thead>
<tr>
<th data-field='n°' class='black-text'>N°</th>
<th data-field='Código' class='black-text'>Código</th>
<th data-field='Título' class='black-text'>Título</th>
<th data-field='Autor' class='black-text'>Autor</th>
<th data-field='Tutor' class='black-text'>Tutor</th>
<th data-field='status' class='black-text'>Status</th>
</tr>
</thead>
<?php
$query = "SELECT * FROM proyectos";
$records_per_page=4;
$newquery = $crud->paging($query,$records_per_page);
$crud->dataview($newquery);
?>
</table>
3) Programación Se incluye parte del código fuente en PHP
<div class="center-align">
<div class="pagination-wrap">
<?php $crud->paginglink($query,$records_per_page); ?>
</div>
</div>
<!-- muestro mis resultados y creo la paginacion de resultados -->
<!-- muestro el total de registros -->
<?php
$consulta = $DB_con->query("SELECT * FROM proyectos");
$consulta->execute();
$cuenta = $consulta->rowCount();
?>
<h6 class="right-align black-text"><?php print("Total Registros
Existentes: $cuentan"); ?></h6>
<!-- fin muestro el total de registros -->
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!--Import jQuery before materialize.js-->
<script type="text/javascript"
src="https://code.jquery.com/jquery-
2.1.1.min.js"></script>
<script type="text/javascript"
src="js/materialize.min.js"></script>
<!-- Scripts-->
<script>
$(document).ready(function() {
$(".button-collapse").sideNav();
$(".dropdown-button").dropdown();
});
</script>
</body>
</html>
***FUNCIONES DE BUSQUEDA***
<?php
class crud
{
private $db;
function __construct($DB_con)
{
$this->db = $DB_con;
}
/* paging */
public function dataview($query)
{
$stmt = $this->db->prepare($query);
$stmt->execute();
if($stmt->rowCount() > 0){
$i=1;
while($linea=$stmt-
>fetch(PDO::FETCH_ASSOC))
{
3) Programación Se incluye parte del código fuente en PHP
<div class="center-align">
<div class="pagination-wrap">
<?php $crud->paginglink($query,$records_per_page); ?>
</div>
</div>
<!-- muestro mis resultados y creo la paginacion de resultados
-->
<!-- muestro el total de registros -->
<?php
$consulta = $DB_con->query("SELECT * FROM proyectos");
$consulta->execute();
$cuenta = $consulta->rowCount();
?>
<h6 class="right-align black-text"><?php print("Total
Registros Existentes: $cuentan"); ?></h6>
<!-- fin muestro el total de registros -->
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!--Import jQuery before materialize.js-->
<script type="text/javascript"
src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script type="text/javascript"
src="js/materialize.min.js"></script>
<!-- Scripts-->
<script>
$(document).ready(function() {
$(".button-collapse").sideNav();
$(".dropdown-button").dropdown();
});
</script>
</body>
</html>
3) Programación Se incluye parte del código fuente en PHP
4)Ejecución y Pruebas
Registra Datos del
Proyecto
Consulta por Código
Consulta por Estatus
Actualiza Datos del
Proyecto
Elimina Datos del
Proyecto
4)Ejecución y Pruebas
Al seleccionar la opción Registros, se muestra la siguiente pantalla, donde el
usuario podrá ingresar los datos del Proyecto.
4)Ejecución y Pruebas
Ingresar Código a
Consultar
Al presionar Consultar Registro, se muestra el siguiente reporte en PDF.
4)Ejecución y Pruebas
REPORTE GENERAL PROYECTO POR CÓDIGO
4)Ejecución y Pruebas
Seleccione el Estatus a
Consultar
Se le incluyó una búsqueda adicional, de modo que el Jefe de Departamento
pueda buscar determinado estatus para la toma de decisiones. Por ejemplo:
buscar todos los proyectos que están en Estatus “Entregado” y asignarle jurados
y fecha de presentación.
Al presionar Consultar Registro, se muestra el siguiente reporte en PDF.
4)Ejecución y Pruebas

Más contenido relacionado

Similar a Software de Búsqueda

Guía Practica conexión BD 2021
Guía Practica conexión BD  2021Guía Practica conexión BD  2021
Guía Practica conexión BD 2021lissette_torrealba
 
eyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicacióneyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicaciónJose Luis Lopez Pino
 
Jefferson cuenca practica#10
Jefferson cuenca practica#10Jefferson cuenca practica#10
Jefferson cuenca practica#10paulcuenca9
 
Guia N3 Proyectos Web Php Css, Js
Guia N3   Proyectos Web   Php Css, JsGuia N3   Proyectos Web   Php Css, Js
Guia N3 Proyectos Web Php Css, JsJose Ponce
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)lenny
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)INSIGNIA4U
 
Documentación de pruebas del software
Documentación de pruebas del softwareDocumentación de pruebas del software
Documentación de pruebas del softwareLina Vega
 
Javascript es6-ejercicios-resueltos-parte-1
Javascript es6-ejercicios-resueltos-parte-1Javascript es6-ejercicios-resueltos-parte-1
Javascript es6-ejercicios-resueltos-parte-1josegmay
 
Introducción a Django
Introducción a DjangoIntroducción a Django
Introducción a DjangoJoaquim Rocha
 
Primeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigoPrimeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigoPHP Vigo
 

Similar a Software de Búsqueda (20)

Guía Practica conexión BD 2021
Guía Practica conexión BD  2021Guía Practica conexión BD  2021
Guía Practica conexión BD 2021
 
Jquery para principianes
Jquery para principianesJquery para principianes
Jquery para principianes
 
J M E R L I N P H P
J M E R L I N P H PJ M E R L I N P H P
J M E R L I N P H P
 
In 10
In 10In 10
In 10
 
EXAMEN
EXAMENEXAMEN
EXAMEN
 
eyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicacióneyeOS: Arquitectura y desarrollo de una aplicación
eyeOS: Arquitectura y desarrollo de una aplicación
 
4.Programación con PHP y MySQL
4.Programación con PHP y MySQL4.Programación con PHP y MySQL
4.Programación con PHP y MySQL
 
I10
I10I10
I10
 
10
1010
10
 
6.funciones y recursividad en c++
6.funciones y recursividad en c++6.funciones y recursividad en c++
6.funciones y recursividad en c++
 
Jefferson cuenca practica#10
Jefferson cuenca practica#10Jefferson cuenca practica#10
Jefferson cuenca practica#10
 
Guia N3 Proyectos Web Php Css, Js
Guia N3   Proyectos Web   Php Css, JsGuia N3   Proyectos Web   Php Css, Js
Guia N3 Proyectos Web Php Css, Js
 
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
Descubriendo Ruby on Rails (Desarrollo Agil de Aplicaciones Web)
 
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
Descubriendo Ruby On Rails (Desarrollo Agil De Aplicaciones Web)
 
MODELO VISTA CONTROLADOR EN PHP
MODELO VISTA CONTROLADOR EN PHPMODELO VISTA CONTROLADOR EN PHP
MODELO VISTA CONTROLADOR EN PHP
 
Documentación de pruebas del software
Documentación de pruebas del softwareDocumentación de pruebas del software
Documentación de pruebas del software
 
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScriptFull-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
Full-stack JavaScript: Desarrollo integral de aplicaciones Web con JavaScript
 
Javascript es6-ejercicios-resueltos-parte-1
Javascript es6-ejercicios-resueltos-parte-1Javascript es6-ejercicios-resueltos-parte-1
Javascript es6-ejercicios-resueltos-parte-1
 
Introducción a Django
Introducción a DjangoIntroducción a Django
Introducción a Django
 
Primeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigoPrimeros pasos Symfony PHPVigo
Primeros pasos Symfony PHPVigo
 

Último

Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfJonathanCovena1
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesLauraColom3
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 

Último (20)

Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdf
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Éteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reaccionesÉteres. Química Orgánica. Propiedades y reacciones
Éteres. Química Orgánica. Propiedades y reacciones
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 

Software de Búsqueda

  • 1. SOFTWARE DE BÚSQUEDA Rivas Castillo, Sobeida Julio 2017
  • 2. El Jefe de Departamento del PNF en Informática de la UPT “Ludovico Silva” realizó un registro de datos de los Proyectos Socio Tecnológicos inscritos en el Trayecto 2017-2 que está por finalizar. A todo Proyecto se le asignó un Código, Título, Autor, Tutor y Estatus. El código está formado por 5 caracteres que identifican el año, trayecto y número de proyecto. El estatus del Proyecto tiene 3 opciones: En Proceso, Entregado y Presentado. Se necesita buscar el estatus en que se encuentra un código de Proyecto determinado. Enunciado
  • 3. Datos de Entrada • Código • Título • Autor • Tutor • Estatus Datos de Salida • Estatus del código buscado. Condiciones o Restricciones • El código está formado por 5 caracteres que identifican el año, trayecto y número de proyecto. • El estatus del Proyecto tiene 3 opciones: En Proceso, Entregado y Presentado. 1)Análisis del problema
  • 4. 1)Análisis del problema Requerimientos Funcionales:  El sistema deberá leer y almacenar los datos de los proyectos ingresados por el usuario.  El código del proyecto está formado por 5 caracteres que identifican el año, trayecto y número de proyecto.  El estatus del Proyecto tiene 3 opciones: En Proceso, Entregado y Presentado.  El sistema deberá buscar el código de proyecto indicado.  El sistema debe mostrar el Estatus del código de proyecto solicitado.
  • 5. 1)Análisis del problema Requerimientos No Funcionales: El sistema deberá:  Estar programado en lenguaje PHP.  Tener una interfaz gráfica sencilla, amigable y en idioma español.  Ser multiplataforma.  Tener rápidez y rendimiento de respuesta.  Captar la información a ser ingresada al mismo desde los dispositivos de entrada como el teclado o el mouse.  Hacer uso de dispositivos de salida como el monitor y la impresora.  Estar disponible durante el horario laboral.
  • 6. Proceso 1. Inicio 2. Definir Matriz de Proyectos 3. Leer cantidad de proyectos a procesar 4. Para cont=1 hasta cantidad de proyectos 5. Leer el código 6. Leer el Título 7. Leer el Autor 8. Leer el Estatus 9. Almacenar datos en la matriz 10. Fin del Para 11. Leer código del proyecto a buscar 12. Buscar en la matriz de Proyectos 13. Si código existe 14. Mostrar Estatus del Proyecto 15. Sino 16. Mostrar que el Código no existe 17. Fin 2)Diseño del Algoritmo
  • 7. Algoritmo Proceso Búsqueda //Primero se crea la matriz de 3 x 5 y se define su tipo, así como los dos índices para la fila y columna Dimension M[3,5]; Definir M Como Caracter; Definir I,J Como Entero; Definir campo Como Caracter; Definir s Como Logico; s<-F; // Leer valores, aqui se cargan los valores en cada celda Para J<-1 Hasta 5 Hacer Para I<-1 Hasta 3 Hacer Si J=1 Entonces campo='Código'; FinSi Si J=2 Entonces campo='Título'; FinSi Si J=3 Entonces campo='Autor'; FinSi Si J=4 Entonces campo=‘Tutor'; FinSi Si J=5 Entonces campo='Estatus'; FinSi Escribir 'Ingrese Valor para Fila ',I,', ',campo,' ,',J,':'; Leer M[I,J]; FinPara FinPara Escribir 'Ingrese el código a buscar?: '; Leer v; Para I<-1 Hasta 3 Hacer Para J<-1 Hasta 4 Hacer Si v=M[I,J] Escribir 'Estatus: ',M[I,4]; s<-Verdadero; FinSi FinPara Escribir ' '; FinPara si s=Verdadero Escribir 'Código Encontrado!'; Sino Escribir 'Código No Encontrado!'; FinSi FinProceso
  • 9. ***PANTALLA PRINCIPAL** <!-- proceso para llamar mis archivos necesarios que me van a permitir conectarme con la bd y mi paginación de resultados --> <?php include 'conexion/conexion.php'; include_once 'funciones/funcion_proyectos.php'; $crud = new crud($DB_con); ?> <!-- proceo para llamar mis archivos necesarios que me van a permitir conectarme con la bd y mi paginacion de resultados --> <!-- metodo para eliminar --> <?php if(isset($_GET['id_proyectos'])) { $sql_delete = $DB_con->prepare('DELETE FROM proyectos WHERE id_proyectos =:id_proyectos'); $sql_delete- >bindParam(':id_proyectos',$_GET['id_proyectos']); $sql_delete->execute(); $errMSG = "¡ Atención: El Registro a sido Eliminado !";//muestro mensaje por pantalla header("refresh:5;proyectos.php");//refrescamos despues de eliminar } ?> <!-- fin metodo para eliminar --> 3) Programación Se incluye parte del código fuente en PHP <!DOCTYPE html> <html lang="es"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Sistema Administrativo Proyectos</title> <!--Import Google Icon Font--> <link href="http://fonts.googleapis.com/icon?family=Material+Icons " rel="stylesheet"> <!--Import materialize.css--> <link type="text/css" rel="stylesheet" href="css/materialize.min.css" media="screen,projection"/> <!--Let browser know website is optimized for mobile--> <meta name="viewport" content="width=device-width, initial-scale=1.0"/> </head> <body class="blue lighten-5"> <br> <br> <br> <section> <div class="row"> <div class="container">
  • 10. <a href='anadirproyectos.php' button class='btn waves-effect blue-grey darken-4 btn-medium' type='submit'>+ Registros</a> <a href='detallesproyectosporcodigo.php' button class='btn waves-effect blue-grey darken-4 btn-medium' type='submit'>+ Consulta Código</a> <a href='detallesproyectos.php' button class='btn waves-effect blue-grey darken-4 btn-medium' type='submit'>+ Consulta Estatus</a> <!-- VALIDACION --> <?php if(isset($errMSG)) { ?> <div id="element" class='col s5 card-panel red right'> <h6 class='black-text text-darken-2 center CONDENSED LIGHT5'> <?php echo $errMSG; ?> </h6> </div> <?php } else if(isset($successMSG)) { ?> <div id="element" class='col s5 card-panel teal lighten-2 right'> <h6 class='black-text text-darken-2 center CONDENSED LIGHT5'> <?php echo $successMSG; ?> </h6> </div> <?php } ?> <!-- FIN VALIDACION --> <div class="row"> <div class="card cyan darken-3"> <div class="card-tabs"> <ul class="tabs tabs-fixed-width tabs-transparent"> <li class="tab"><a class="active">Listado General Proyectos</a></li> </ul> </div> <div class="card-content white"> <div id="test1" class="center-align light"> <!-- muestro mis resultados y creo la paginacion de resultados --> <table class='striped responsive-table'> <thead> <tr> <th data-field='n°' class='black-text'>N°</th> <th data-field='Código' class='black-text'>Código</th> <th data-field='Título' class='black-text'>Título</th> <th data-field='Autor' class='black-text'>Autor</th> <th data-field='Tutor' class='black-text'>Tutor</th> <th data-field='status' class='black-text'>Status</th> </tr> </thead> <?php $query = "SELECT * FROM proyectos"; $records_per_page=4; $newquery = $crud->paging($query,$records_per_page); $crud->dataview($newquery); ?> </table> 3) Programación Se incluye parte del código fuente en PHP
  • 11. <div class="center-align"> <div class="pagination-wrap"> <?php $crud->paginglink($query,$records_per_page); ?> </div> </div> <!-- muestro mis resultados y creo la paginacion de resultados --> <!-- muestro el total de registros --> <?php $consulta = $DB_con->query("SELECT * FROM proyectos"); $consulta->execute(); $cuenta = $consulta->rowCount(); ?> <h6 class="right-align black-text"><?php print("Total Registros Existentes: $cuentan"); ?></h6> <!-- fin muestro el total de registros --> </div> </div> </div> </div> </div> </div> </section> <!--Import jQuery before materialize.js--> <script type="text/javascript" src="https://code.jquery.com/jquery- 2.1.1.min.js"></script> <script type="text/javascript" src="js/materialize.min.js"></script> <!-- Scripts--> <script> $(document).ready(function() { $(".button-collapse").sideNav(); $(".dropdown-button").dropdown(); }); </script> </body> </html> ***FUNCIONES DE BUSQUEDA*** <?php class crud { private $db; function __construct($DB_con) { $this->db = $DB_con; } /* paging */ public function dataview($query) { $stmt = $this->db->prepare($query); $stmt->execute(); if($stmt->rowCount() > 0){ $i=1; while($linea=$stmt- >fetch(PDO::FETCH_ASSOC)) { 3) Programación Se incluye parte del código fuente en PHP
  • 12. <div class="center-align"> <div class="pagination-wrap"> <?php $crud->paginglink($query,$records_per_page); ?> </div> </div> <!-- muestro mis resultados y creo la paginacion de resultados --> <!-- muestro el total de registros --> <?php $consulta = $DB_con->query("SELECT * FROM proyectos"); $consulta->execute(); $cuenta = $consulta->rowCount(); ?> <h6 class="right-align black-text"><?php print("Total Registros Existentes: $cuentan"); ?></h6> <!-- fin muestro el total de registros --> </div> </div> </div> </div> </div> </div> </section> <!--Import jQuery before materialize.js--> <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.1.min.js"></script> <script type="text/javascript" src="js/materialize.min.js"></script> <!-- Scripts--> <script> $(document).ready(function() { $(".button-collapse").sideNav(); $(".dropdown-button").dropdown(); }); </script> </body> </html> 3) Programación Se incluye parte del código fuente en PHP
  • 13. 4)Ejecución y Pruebas Registra Datos del Proyecto Consulta por Código Consulta por Estatus Actualiza Datos del Proyecto Elimina Datos del Proyecto
  • 14. 4)Ejecución y Pruebas Al seleccionar la opción Registros, se muestra la siguiente pantalla, donde el usuario podrá ingresar los datos del Proyecto.
  • 15. 4)Ejecución y Pruebas Ingresar Código a Consultar Al presionar Consultar Registro, se muestra el siguiente reporte en PDF.
  • 16. 4)Ejecución y Pruebas REPORTE GENERAL PROYECTO POR CÓDIGO
  • 17. 4)Ejecución y Pruebas Seleccione el Estatus a Consultar Se le incluyó una búsqueda adicional, de modo que el Jefe de Departamento pueda buscar determinado estatus para la toma de decisiones. Por ejemplo: buscar todos los proyectos que están en Estatus “Entregado” y asignarle jurados y fecha de presentación. Al presionar Consultar Registro, se muestra el siguiente reporte en PDF.