'; $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' => '
', '#suffix' => '
', ); $form['buttons']['submit'] = array( '#type' => 'submit', '#value' => t('Consultar'), ); return $form; } /** * Implementation of consulta_matriz_de_procesos_reporte_form_submit(). * cambia el filtro de busqueda de proyectos. */ function consulta_resultados_por_unidad_ejecutora_reporte_mensual_form_submit($form, &$form_state) { $_SESSION['datos_para_generar_reporte_rpue_mensual'] = array(); $_SESSION['datos_para_generar_reporte_rpue_mensual']['ente'] = $form_state['values']['ente_seleccionado_para_reporte']; $_SESSION['datos_para_generar_reporte_rpue_mensual']['anho'] = $form_state['values']['anno_seleccionado_para_reporte']; $_SESSION['datos_para_generar_reporte_rpue_mensual']['mes'] = $form_state['values']['mes_seleccionado_para_reporte']; }