Autor Tema: Generar reporte de asistencia ARRAY  (Leído 1512 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado rgcu

  • Novato
  • *
  • Mensajes: 5
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
Generar reporte de asistencia ARRAY
« : 29 de septiembre de 2013, 01:27:43 pm »
Buenas tardes amigos.

Tengo una gran duda nuevamente. ¿Como hago para generar un reporte de los dias que posse cada empleado que ha asistido al trabajo?

Requiero hacer una tabla impresa en pantalla que quede de esta forma o algo parecido, en los dias a imprimir necesito solo los digitos de los dias, el campo fecha es tipo DATE. No tengo ni la minima idea de como hacerlo mucho menos de llamar los datos desde la BD.

------------------------------------------------------------------------------------------------------
Nombre-------Cedula-------------Departamento----dia--dia--dia--dia--dia--dia
------------------------------------------------------------------------------------------------------
jose perez     12345          administracion      22   23   24   25   26   27
------------------------------------------------------------------------------------------------------
maria lopez    25554                juridico          22   23   00   25   26   27   28
------------------------------------------------------------------------------------------------------
carlos marin   56666              despacho         22    00  00   25   26   27   28
------------------------------------------------------------------------------------------------------
Aqui las tablas que utiliza mi sistema:

TABLA horarios
IdHorario   
IdEmpleado
HEntrada
HSalida
Fecha

TABLA personal
Id
huenombre
hueapellido
cedula
huehuella   
puesto

Desconectado csalazart33

  • Novato
  • *
  • Mensajes: 20
  • Puntuación: 1
  • Sexo: Masculino
    • Ver Perfil
    • Hospedaje Web a Medida
Re:Generar reporte de asistencia ARRAY
« Respuesta #1 : 29 de septiembre de 2013, 04:35:22 pm »
Bueno Si no sabes ni idea.. Supongo es en PHP que lo necesitas...

La idea es la Siguiente..
+ Conexion la Base de datos:
Código: [Seleccionar]
$mysqli = new mysqli("localhost", "usuario", "contraseña", "basedatos");
if ($mysqli->connect_errno) {
    echo "Fallo al contenctar a MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}


  <-- Sacado de google. -> Solo digo..


+ Ejecutar la Sentencia SQL
   *Primero Lanzas la Consulta a la Tabla de Empleados para Optener sus Credenciales
y luego Buscar esas credenciales y horas en la de horarios.. y haces un ciclo para cada uno de los registros
Código: [Seleccionar]
// Ejecuta la consulta
$result= $mysqli->query("select Id, huenombre, hueapellido, cedula  from personal");
//Optienes los Registros
$datos=$result->fecth_all(1);
// Luego Lanzas el Ciclo.
$construyeTabla='';
$separador='&nbsp;&nbsp;&nbsp;&nbsp;'; //Separador entre Columnas -> Codigo espacio en blanco. o pones guiones o lo que se te ocurra
//    * Luego Viene el Ciclo para Optener la info de la Otra Tabla
foreach($datos as $data) {
  // Aca viene el la Otra Consulta y el calculo de las horas laborables eso lo haces tu..

$result= $mysqli->query("select HEntrada, HSalida,Fecha  from horarios where IdEmpleado=".$data['id']);
// Si quieres que la consulta sea de una Fecha hasta una Fecha Espeficca tienes que cambiar al Sentencia SQL y agregar  los parametros para la fecha en el where
//  and (Fecha>='yyyy/mm/dd' and Fecha<='yyyy/mm/dd')
// Depende como esta la fecha en tu tabla si es Date o es varchar o como sea..
// Donde: yyyyy: año / mm: mes / dd: Dia
//Optienes los Registros
$horarios=$result->fecth_all(1);


// Esta funcion calcularia las horas Trabajadas de ese empleado
$horasDias=FuncionCanculoDeHoras($horarios);



$construyeTabla.= $data['huenombre'] .'  '.$data['hueapellido'].$separador.
$data['cedula'].$separador.
$data['puesto'].$separador.
$horasDias;
}
// Luego Simplemente Imprimes la Variable.


echo $construyeTabla;


Y con eos tiene slo basico luego haras tu el resto y tendras que recorrer el array de $horarios para que puedas calcular el uso de las horas y demas cosas..


Es esenciall.


 * Conectarse a la base de datos
 * hacer la consultas a la tablas
 * buscar y calcular horario
 * Imprimir resultado..

« Última Modificación: 29 de septiembre de 2013, 04:37:08 pm por csalazart33 »
<---------------------->
Carlos A Salazar
Desarrollo Web
Web Hosting
www.symfony-project.com.ve
www.tuhostingweb.com