';
$output .= drupal_get_form('consulta_resultados_por_unidad_ejecutora_reporte_mensual_form');
$output .= '
';
//mostrar datos de la consulta
$mes_seleccionado_para_reporte = isset($_SESSION['datos_para_generar_reporte_rpue_mensual']['mes']) ? $_SESSION['datos_para_generar_reporte_rpue_mensual']['mes'] : date('M') -1;
$meses_disponibles = array(t('Enero'), t('Febrero'), t('Marzo'), t('Abril'), t('Mayo'), t('Junio'), t('Julio'), t('Agosto'), t('Septiembre'), t('Octubre'), t('Noviembre'), t('Diciembre'), t('Todos (Total Anual)'),);
$anno_seleccionado_para_reporte = isset($_SESSION['datos_para_generar_reporte_rpue_mensual']) && isset($_SESSION['datos_para_generar_reporte_rpue_mensual']['anho']) ? $_SESSION['datos_para_generar_reporte_rpue_mensual']['anho'] : date('Y');
if($anno_seleccionado_para_reporte > 0){
$anho_selecc = $anno_seleccionado_para_reporte;
}else{
$anho_selecc = 'Por seleccionar';
}
$ente_seleccionado_para_reporte = isset($_SESSION['datos_para_generar_reporte_rpue_mensual']) && isset($_SESSION['datos_para_generar_reporte_rpue_mensual']['ente']) ? $_SESSION['datos_para_generar_reporte_rpue_mensual']['ente'] : 0;
if($ente_seleccionado_para_reporte > 0){
$nodo_ente = node_load($ente_seleccionado_para_reporte);
$ente_selecc = l($nodo_ente->title, 'node/' . $nodo_ente->nid);
}else{
$ente_selecc = 'Por seleccionar';
}
if(($anho_selecc != 'Por seleccionar')&&($ente_selecc != 'Por seleccionar')){
$estado_aprobado_proyecto = variable_get('proyectos_operativos_state_aprobado', NULL);
$consulta_sql0 = "SELECT count(po.nid) as total from {proyectos_operativos} as po, {workflow_node} as w WHERE po.nid=w.nid AND po.year=%d AND po.ente=%d AND w.sid=%d ";
$consulta_sql1 = "SELECT po.nid as nid from {proyectos_operativos} as po, {workflow_node} as w WHERE po.nid=w.nid AND po.year=%d AND po.ente=%d AND w.sid=%d ";
$Resultado_consulta0 = db_query ($consulta_sql0, $anno_seleccionado_para_reporte, $ente_seleccionado_para_reporte, $estado_aprobado_proyecto);
$Resultado_consulta1 = db_query ($consulta_sql1, $anno_seleccionado_para_reporte, $ente_seleccionado_para_reporte, $estado_aprobado_proyecto);
$proyectos_aprobados = db_fetch_array ( $Resultado_consulta0 );
$cant_proyectos_del_ente_para_anho_actual = $proyectos_aprobados['total'];
}else{
$cant_proyectos_del_ente_para_anho_actual = 0;
}
$header = array();
$rows = array();
$row = array();
$row[] = array('data' => 'Año', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => $anho_selecc, 'bgcolor' => 'FCFCFC',);
$rows[] = $row;
$row = array();
$row[] = array('data' => 'Mes(es)', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => $meses_disponibles[$mes_seleccionado_para_reporte], 'bgcolor' => 'FCFCFC',);
$rows[] = $row;
$row = array();
$row[] = array('data' => 'Unidad Ejecutora', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => $ente_selecc, 'bgcolor' => 'FCFCFC',);
$rows[] = $row;
$row = array();
$row[] = array('data' => 'Cantidad de Proyectos Aprobados', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => $cant_proyectos_del_ente_para_anho_actual, 'bgcolor' => 'FCFCFC',);
$rows[] = $row;
$output .= theme('table', $header, $rows);
$output .= '
';
//****************************************************************************
$inputs = array();
$sql = '';
$header = array();
$header[] = array('data' => t('Proyecto'));
$header[] = array('data' => t('Indicador de Resultado'), 'colspan' => 3);
$header[] = array('data' => t('Beneficiarios'));
$header[] = array('data' => t('Indicador Financiero'), 'colspan' => 2);
$cab = 7;
$rows = array();
//continuacion de cabecera
$row = array();
$row[] = array('data' => 'Nombre del Proyecto', 'rowspan' => 4, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => 'Unidad de Medida', 'rowspan' => 4, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => 'Planificado', 'rowspan' => 2, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => '% de Logro', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => 'Directos e Indirectos', 'rowspan' => 4, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => 'Asignado', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => '% de Inversión', 'rowspan' => 1, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$rows[] = $row;
$row = array();
$row[] = array('data' => 'Estatus de Ejecución', 'rowspan' => 3, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => 'Comprometido', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => 'Estatus de Inversión', 'rowspan' => 3, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$rows[] = $row;
$row = array();
$row[] = array('data' => 'Ejecutado', 'rowspan' => 2, 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$row[] = array('data' => 'Causado', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$rows[] = $row;
$row = array();
$row[] = array('data' => 'Pagado', 'bgcolor' => 'E6E6E6', 'style' => 'font-weight: bold;');
$rows[] = $row;
//cargar datos
$sombreado = TRUE;
while($proyectos_aprobados = db_fetch_array ( $Resultado_consulta1 ) ){
$color_celdas_fila = $sombreado ? 'F4F4F4': 'FCFCFC';
$nodo_proyecto = node_load($proyectos_aprobados['nid']);
if($mes_seleccionado_para_reporte == 12){
//calcular cantidad de meta fisica y de beneficiarios
$datos_mf_benef_monto = _calcular_cantmf_beneficiarios_montoref_total($nodo_proyecto);
$cant_benef_mes = $datos_mf_benef_monto['cant_beneficiarios_mes'];
$total_mf_planificado_mes = 0;
$total_mf_ejecutado_mes = 0;
$total_financiera_asignado_mes = 0;
$total_financiera_comprometido_mes = 0;
$total_financiera_causado_mes = 0;
$total_financiera_pagado_mes = 0;
//calcular todos los meses
for($id = 0; $id < 12; $id++){
$porcentajes_avance = _calcular_porcentaje_avance_para_mes($nodo_proyecto, $id);
$mf_planificado_mes = isset($porcentajes_avance['valores_particulares']['mf_planificado_mes'])? $porcentajes_avance['valores_particulares']['mf_planificado_mes'] : 0;
$mf_ejecutado_mes = isset($porcentajes_avance['valores_particulares']['mf_ejecutado_mes'])? $porcentajes_avance['valores_particulares']['mf_ejecutado_mes'] : 0;
$financiera_asignado_mes = isset($porcentajes_avance['valores_particulares']['financiera_asignado_mes'])? $porcentajes_avance['valores_particulares']['financiera_asignado_mes'] : 0;
$financiera_comprometido_mes = isset($porcentajes_avance['valores_particulares']['financiera_comprometido_mes'])? $porcentajes_avance['valores_particulares']['financiera_comprometido_mes'] : 0;
$financiera_causado_mes = isset($porcentajes_avance['valores_particulares']['financiera_causado_mes'])? $porcentajes_avance['valores_particulares']['financiera_causado_mes'] : 0;
$financiera_pagado_mes = isset($porcentajes_avance['valores_particulares']['financiera_pagado_mes'])? $porcentajes_avance['valores_particulares']['financiera_pagado_mes'] : 0;
$total_mf_planificado_mes += $mf_planificado_mes;
$total_mf_ejecutado_mes += $mf_ejecutado_mes;
$total_financiera_asignado_mes += $financiera_asignado_mes;
$total_financiera_comprometido_mes += $financiera_comprometido_mes;
$total_financiera_causado_mes += $financiera_causado_mes;
$total_financiera_pagado_mes += $financiera_pagado_mes;
}
$mf_planificado_mes = $total_mf_planificado_mes;
$mf_ejecutado_mes = $total_mf_ejecutado_mes;
$financiera_asignado_mes = $total_financiera_asignado_mes;
$financiera_comprometido_mes = $total_financiera_comprometido_mes;
$financiera_causado_mes = $total_financiera_causado_mes;
$financiera_pagado_mes = $total_financiera_pagado_mes;
$estatus_ejecucion_mf = _calcularzonacritica($total_mf_planificado_mes, $total_mf_ejecutado_mes);
$porczonacritica_mf = $estatus_ejecucion_mf['porczonacritica'];
$textozona_mf = $estatus_ejecucion_mf['textozona'];
$colorzona_mf = $estatus_ejecucion_mf['colorzona'];
$colorfontzona_mf = $estatus_ejecucion_mf['colorfontzona'];
$estatus_inversion_financ = _calcularzonacritica($total_financiera_asignado_mes, $total_financiera_causado_mes);
$porczonacritica_financ = $estatus_inversion_financ['porczonacritica'];
$textozona_financ = $estatus_inversion_financ['textozona'];
$colorzona_financ = $estatus_inversion_financ['colorzona'];
$colorfontzona_financ = $estatus_inversion_financ['colorfontzona'];
}else{
//calcular cantidad de meta fisica y de beneficiarios
$datos_mf_benef_monto = _calcular_cantmf_beneficiarios_montoref_para_mes($nodo_proyecto, $mes_seleccionado_para_reporte);
$cant_benef_mes = $datos_mf_benef_monto['cant_beneficiarios_mes'];
//calcular mes actual
$porcentajes_avance = _calcular_porcentaje_avance_para_mes($nodo_proyecto, $mes_seleccionado_para_reporte);
$avance_fisico = $porcentajes_avance['avance_fisico'];
$avance_financiero = $porcentajes_avance['ejecucion_financiera'];
$mf_planificado_mes = isset($porcentajes_avance['valores_particulares']['mf_planificado_mes'])? $porcentajes_avance['valores_particulares']['mf_planificado_mes'] : 0;
$mf_ejecutado_mes = isset($porcentajes_avance['valores_particulares']['mf_ejecutado_mes'])? $porcentajes_avance['valores_particulares']['mf_ejecutado_mes'] : 0;
$financiera_asignado_mes = isset($porcentajes_avance['valores_particulares']['financiera_asignado_mes'])? $porcentajes_avance['valores_particulares']['financiera_asignado_mes'] : 0;
$financiera_comprometido_mes = isset($porcentajes_avance['valores_particulares']['financiera_comprometido_mes'])? $porcentajes_avance['valores_particulares']['financiera_comprometido_mes'] : 0;
$financiera_causado_mes = isset($porcentajes_avance['valores_particulares']['financiera_causado_mes'])? $porcentajes_avance['valores_particulares']['financiera_causado_mes'] : 0;
$financiera_pagado_mes = isset($porcentajes_avance['valores_particulares']['financiera_pagado_mes'])? $porcentajes_avance['valores_particulares']['financiera_pagado_mes'] : 0;
$estatus_ejecucion_mf = _calcularzonacritica($mf_planificado_mes, $mf_ejecutado_mes);
$porczonacritica_mf = $estatus_ejecucion_mf['porczonacritica'];
$textozona_mf = $estatus_ejecucion_mf['textozona'];
$colorzona_mf = $estatus_ejecucion_mf['colorzona'];
$colorfontzona_mf = $estatus_ejecucion_mf['colorfontzona'];
$estatus_inversion_financ = _calcularzonacritica($financiera_asignado_mes, $financiera_causado_mes);
$porczonacritica_financ = $estatus_inversion_financ['porczonacritica'];
$textozona_financ = $estatus_inversion_financ['textozona'];
$colorzona_financ = $estatus_inversion_financ['colorzona'];
$colorfontzona_financ = $estatus_inversion_financ['colorfontzona'];
}
$avance_fisico = $porczonacritica_mf.'%';
$avance_financiero= $porczonacritica_financ.'%';
//imprimir columna
$row = array();
$row[] = array('data' => l($nodo_proyecto->title, 'proyectosop/' . $nodo_proyecto->nid), 'rowspan' => 4, 'bgcolor' => $color_celdas_fila);
$term = taxonomy_get_term($nodo_proyecto->field_proyecto_unidadm[0]['value']);
$row[] = array('data' => $term->name, 'rowspan' => 4, 'bgcolor' => $color_celdas_fila);//'Unidad de Medida'
$row[] = array('data' => $mf_planificado_mes, 'rowspan' => 2, 'bgcolor' => $color_celdas_fila);
$row[] = array('data' => $avance_fisico, 'bgcolor' => $color_celdas_fila);//'% de Logro'
$row[] = array('data' => $cant_benef_mes, 'rowspan' => 4, 'bgcolor' => $color_celdas_fila);//'Directos e Indirectos'
$row[] = array('data' => $financiera_asignado_mes, 'bgcolor' => $color_celdas_fila);
$row[] = array('data' => $avance_financiero, 'rowspan' => 1, 'bgcolor' => $color_celdas_fila);//'% de Inversión'
$rows[] = $row;
$row = array();
$row[] = array('data' => $textozona_mf, 'rowspan' => 3, 'style' => 'font-weight: bold;background:' . $colorzona_mf . '; color:' . $colorfontzona_mf);//Estatus de Ejecución
$row[] = array('data' => $financiera_comprometido_mes, 'bgcolor' => $color_celdas_fila);
$row[] = array('data' => $textozona_financ, 'rowspan' => 3, 'style' => 'font-weight: bold;background:' . $colorzona_financ . '; color:' . $colorfontzona_financ);
$rows[] = $row;
$row = array();
$row[] = array('data' => $mf_ejecutado_mes, 'rowspan' => 2, 'bgcolor' => $color_celdas_fila);//'Ejecutado'
$row[] = array('data' => $financiera_causado_mes, 'bgcolor' => $color_celdas_fila);
$rows[] = $row;
$row = array();
$row[] = array('data' => $financiera_pagado_mes, 'bgcolor' => $color_celdas_fila);
$rows[] = $row;
$sombreado = !$sombreado;
}
if (!(count($rows)>4)) {
$row = array();
$row[] = array('data' => t('No hay resultados para la consulta actual'), 'colspan' => $cab);
$rows[] = $row;
}
$output .= theme('table', $header, $rows);
$output .= _mostrarleyendazonacritica();
$output .= '
';
return $output;
}
/**
* Implementation of consulta_matriz_de_procesos_reporte_form().
* Formulario de busqueda de proyecto.
*/
function consulta_resultados_por_unidad_ejecutora_reporte_mensual_form($form_state) {
$form = array();
//entes planificadores
$entes = array();
$result = db_query('SELECT e.nid, n.title FROM {ente_planificador} AS e INNER JOIN {node} AS n ON n.nid = e.nid WHERE n.status = 1 AND e.tipo = 2 ');
while($ente = db_fetch_object($result)) {
$entes[$ente->nid] = $ente->title;
}
$ente_seleccionado_para_reporte = isset($_SESSION['datos_para_generar_reporte_rpue_mensual']) && isset($_SESSION['datos_para_generar_reporte_rpue_mensual']['ente']) ? $_SESSION['datos_para_generar_reporte_rpue_mensual']['ente'] : 0;
$form['ente_seleccionado_para_reporte'] = array(
'#title' => t('Ente Planificador'),
'#type' => 'select',
'#default_value' => $ente_seleccionado_para_reporte,
'#options' => $entes,
);
//años disponibles
$anno_actual = date("Y");
for($i = $anno_actual - 10; $i <= $anno_actual; $i++) {
$annos[$i] = $i;
}
$anno_seleccionado_para_reporte = isset($_SESSION['datos_para_generar_reporte_rpue_mensual']) && isset($_SESSION['datos_para_generar_reporte_rpue_mensual']['anho']) ? $_SESSION['datos_para_generar_reporte_rpue_mensual']['anho'] : date('Y');
$form['anno_seleccionado_para_reporte'] = array(
'#title' => t('Consultar para el año'),
'#type' => 'select',
'#default_value' => $anno_seleccionado_para_reporte,
'#options' => $annos,
);
//tipo de periodo
$tipo_periodo = t('Mensual');
//subopciones de periodo
$sub_opciones = array(t('Enero'), t('Febrero'), t('Marzo'), t('Abril'), t('Mayo'), t('Junio'), t('Julio'), t('Agosto'), t('Septiembre'), t('Octubre'), t('Noviembre'), t('Diciembre'), t('Todos (Total Anual)'),);
$mes_seleccionado_para_reporte = isset($_SESSION['datos_para_generar_reporte_rpue_mensual']) && isset($_SESSION['datos_para_generar_reporte_rpue_mensual']['mes']) ? $_SESSION['datos_para_generar_reporte_rpue_mensual']['mes'] : date('M') -1;
$form['mes_seleccionado_para_reporte'] = array(
'#title' => t('Mes(es)'),
'#type' => 'select',
'#default_value' => $mes_seleccionado_para_reporte,
'#options' => $sub_opciones,
);
//boton de enviar consulta
$form['buttons'] = array(
'#prefix' => '