'; $output .= _mostrar_datos_ae($proyecto, $ae); $output .= _mostrar_indicadores_metafisica_seg_ae($proyecto, $ae); $output .= _mostrar_indicadores_financieros_seg_ae($proyecto, $ae); $output .= _mostrarleyendazonacritica(); return $output; } /** * Pagina que carga los datos generales de una accion especifica (datos del proyecto y datos de la accion) */ function _mostrar_datos_ae($proyecto = 0, $ae = 0) { $output = ''; //cargar el nodo del proyecto al que pertenece $node_type = content_types('proyectos_operativos'); $fields = $node_type['fields']; $output .= '
'; $output .= '' . t('Datos del Proyecto al que pertenece la Acción Específica') . ''; $output .= '' . $fields['field_proyecto_codigo']['widget']['label'] . ': ' . $proyecto->field_proyecto_codigo[0]['value'] . '
'; $output .= '' . t('Nombre del Proyecto') . ': '.$proyecto->titulo_asignado.'
'; $output .= '' . $fields['field_proyecto_monto_anual']['widget']['label'] . ': '.number_format($proyecto->field_proyecto_monto_anual[0]['value'], 0, ',', '.').' Bs
'; $output .= '
'; $tablas = array();//tabla de ubicacion geografica $header = array(); $header[] = array('data' => t('País')); $header[] = array('data' => t('Estado')); $header[] = array('data' => t('Municipio')); $header[] = array('data' => t('Parroquia')); $header[] = array('data' => t('Latitud')); $header[] = array('data' => t('Longitud')); $rows = array(); $varlugar = array(); $padres = array_reverse(taxonomy_get_parents_all($ae->field_accion_esp_localizacion[0]['value'])); $varlugar[0] = isset($padres[0]) ? $padres[0]->name : '-'; $varlugar[1] = isset($padres[1]) ? $padres[1]->name : '-'; $varlugar[2] = isset($padres[2]) ? $padres[2]->name : '-'; $varlugar[3] = isset($padres[3]) ? $padres[3]->name : '-'; $row[] = array('data' => $varlugar[0],); $row[] = array('data' => $varlugar[1],); $row[] = array('data' => $varlugar[2],); $row[] = array('data' => $varlugar[3],); $id_field1 = 'field_accion_esp_latitud'; $row[] = array('data' => $ae->{$id_field1}[0]['value'],); $id_field1 = 'field_accion_esp_longitud'; $row[] = array('data' => $ae->{$id_field1}[0]['value'],); $rows[] = $row; $tablas[]= theme('table', $header, $rows); $output .= '
' . t('Datos de la Acción Específica') . ''; $output .= '' . t('Nombre de la AE') . ': ' . $ae->titulo_asignado . '
'; $id_field1 = 'field_accion_esp_fechai'; $fecha = explode(' ', $ae->{$id_field1}[0]['value']); $fecha = explode('-', $fecha[0]); $output .= '' . t('Fecha de Inicio'). ': ' . $fecha[2] . '/' . $fecha[1] . '/' . $fecha[0] . '
'; $id_field1 = 'field_accion_esp_fechaf'; $fecha = explode(' ', $ae->{$id_field1}[0]['value']); $fecha = explode('-', $fecha[0]); $output .= '' . t('Fecha Fin') . ': ' . $fecha[2] . '/' . $fecha[1] . '/' . $fecha[0] . '
'; $id_field1 = 'field_accion_esp_ejecutor'; $output .= '' . t('Ejecutor') . ': '.$ae->{$id_field1}[0]['value'].'
'; $output .= implode('', $tablas).'
'; $output .= '
'; return $output; } /** * Pagina que carga la tabla de indicadores de meta fisica de la accion especifica */ function _mostrar_indicadores_metafisica_seg_ae($proyecto = 0, $ae = 0) { $output = ''; $ftypes = array( 'value' => t('January'), 'value_1' => t('February'), 'value_2' => t('March'), 'value_3' => t('April'), 'value_4' => t('May'), 'value_5' => t('June'), 'value_6' => t('July'), 'value_7' => t('August'), 'value_8' => t('September'), 'value_9' => t('Octuber'), 'value_10' => t('November'), 'value_11' => t('December'), ); $meses = json_decode(MESES); $destination = drupal_get_destination(); //tabla de indicadores financieros de la accion especifica $tablas = array(); //_proyectos_reformulacion_load($node->proyecto_asignado); $header = array(); $header[] = array('data' => t('Mes')); $header[] = array('data' => t('Planificado')); $header[] = array('data' => t('Ejecutado')); $header[] = array('data' => t('% de Logro')); $header[] = array('data' => t('Estatus de Ejecución')); $header[] = array('data' => t('Información Complementaria')); $header[] = array('data' => t('Opciones Disponibles'),); //calcular planificado $planificadoMes = array(); $acumuladoPlanificado = 0; $id_field1 = 'field_accion_esp_metaf'; $i = 0; foreach($ae->{$id_field1} as $nombrescampo) { foreach($ftypes as $ids =>$texto) { //calcular variacion en el planificado de la meta fisica $mes = $i; $variacion_planificado_mes = _seguimiento_mesactual_metafisica_ae_deproyecto_reformulaciones_load($ae, $mes); $planificadoMes[$i] = $nombrescampo[$ids] + $variacion_planificado_mes; $acumuladoPlanificado += $planificadoMes[$i]; $i++; } } //cargar y procesar informacion de ejecutado meta fisica y informacion complementaria $Ejecutado = array(); $infocomplementaria_metafisica = array(); $AcumuladoEjecutado = 0; $consulta_metafisica_seguimiento_meses = _seguimiento_metafisica_todosmes_ae_deproyecto_load($ae); // foreach($meses as $mes => $id) { $asinadovalor=0; foreach ($consulta_metafisica_seguimiento_meses as $consulta_seguimiento_mes) {//colocando valor en consulta $mes = $consulta_seguimiento_mes['mes']; // if($mes == $consulta_seguimiento_mes['mes']){ $asinadovalor=1; $Ejecutado[$mes] = $consulta_seguimiento_mes['ejecutadometafisica']; $infocomplementaria_metafisica[$mes] = isset($consulta_seguimiento_mes['infocomplementaria_metafisica'])? $consulta_seguimiento_mes['infocomplementaria_metafisica']:''; $AcumuladoEjecutado += is_numeric($Ejecutado[$mes]) ? $Ejecutado[$mes] : 0;//aumenta acumulador } // } /* if ($asinadovalor == 0){ $Ejecutado[$mes] = 'N/A'; $infocomplementaria_metafisica[$mes] = ''; } }*/ //creacion de la tabla (solo asignacion de valores) $rows = array(); $i = 0; foreach ($ftypes as $ids =>$texto) { $mesi = $i +1; $estatus_ejecucion = _calcularzonacritica($planificadoMes[$i], $Ejecutado[$mesi]); $porczonacritica = $estatus_ejecucion['porczonacritica']; $textozona = $estatus_ejecucion['textozona']; $colorzona = $estatus_ejecucion['colorzona']; $colorfontzona = $estatus_ejecucion['colorfontzona']; $row = array(); $row[] = array('data' => $texto,); //si el mes esta dentro del periodo de duracion de la accion especifica //if(_mes_dentro_de_duracion_ae_proyecto($ae, $mesi)){ $row[] = array('data' => number_format($planificadoMes[$i], 0, ',', '.'),); $valor = isset($Ejecutado[$mesi]) ? number_format($Ejecutado[$mesi], 0, ',', '.') : 'N/A'; $row[] = array('data' => $valor,); $row[] = array('data' => $porczonacritica,); $row[] = array('data' => $textozona, 'style' => 'font-weight: bold;background:' . $colorzona . '; color:' . $colorfontzona); $row[] = array('data' => $infocomplementaria_metafisica[$mesi],); $links = array(); $seguimiento_proyecto = _seguimiento_mesactual_proyecto_load($proyecto, $mesi); $acciones_seguimiento = _seguimiento_mesactual_partida_ae_deproyecto_load($ae, $mesi); if (_proyecto_operativo_seguimiento_modificar_mes_access($proyecto, $mesi)) { $title = ' ' . t('Agregar'); if ($acciones_seguimiento['segmes']['id_seg']) { $title = ' ' . t('Modificar'); } $links[] = '' . l($title, 'proyectosop/' . $proyecto->nid . '/seguimiento/ae/' . $ae->nid . '/' . $mesi . '/edit/comentario_metafisica', array('query' => $destination)).''; $row[] = array('data' => theme('item_list', $links),); } else{ $row[] = array('data' => '',); } $rows[] = $row; $i++; } $row = array(); if ($ae->es_acumulativo) { $row[] = array('data' => t('Acumulado'),); $row[] = array('data' => number_format($acumuladoPlanificado, 0, ',', '.'),); $row[] = array('data' => number_format($AcumuladoEjecutado, 0, ',', '.'),);//total ejecutado $row[] = array('data' => '', 'colspan' => 6); } $rows[] = $row; $tablas[]= theme('table', $header, $rows); if (count($tablas)) { $output .= '
' . t('Indicadores de la Meta Física de la Acción Específica') . ''; $id_field1 = 'field_accion_esp_bien'; $output .= '' . t('Descripción del Bien y Servicio') . ': ' . $ae->{$id_field1}[0]['value'] . '
'; $term_id = isset($ae->variaciones) && isset($ae->variaciones['field_accion_esp_metaf_'. $ae->nid][0]['unidad']) ? $ae->variaciones['field_accion_esp_metaf_'. $ae->nid][0]['unidad'] : $ae->field_accion_esp_unidadm[0]['value']; $id_field1 = 'field_accion_esp_unidadm'; $term = taxonomy_get_term($term_id); $output .= '' . t('Unidad de Medida') . ': ' . $term->name . '

'; $output .= implode('', $tablas) . '
'; } return $output; } /** * Pagina que carga la tabla de indicadores de meta fisica de la accion especifica */ function _mostrar_indicadores_financieros_seg_ae($proyecto = 0, $ae = 0) { $output = ''; $ftypes = array( 'value' => t('January'), 'value_1' => t('February'), 'value_2' => t('March'), 'value_3' => t('April'), 'value_4' => t('May'), 'value_5' => t('June'), 'value_6' => t('July'), 'value_7' => t('August'), 'value_8' => t('September'), 'value_9' => t('Octuber'), 'value_10' => t('November'), 'value_11' => t('December'), ); $meses = json_decode(MESES); //tabla de indicadores financieros de la accion especifica $tablas = array(); $header = array(); $header[] = array('data' => t('Mes')); $header[] = array('data' => t('Asignado')); $header[] = array('data' => t('Comprometido')); $header[] = array('data' => t('Causado')); $header[] = array('data' => t('Pagado')); $header[] = array('data' => t('% de Inversión')); $header[] = array('data' => t('Estatus de la Inversión')); $header[] = array('data' => t('Información Complementaria')); $header[] = array('data' => t('Opciones Disponibles'),); //calcular asignado $asignadoMes = array(); $i=0; foreach($ftypes as $ids =>$texto) { $asignadoMes[$i]=0; $i += 1; } $acumuladoAsignado = 0; $id_field1 = 'field_accion_esp_programacion'; foreach($ae->{$id_field1} as $partidascampo) {//recorrido a grupo de partidas $i=0; foreach($ftypes as $ids =>$texto) { $asignadoMes[$i] += $partidascampo[$ids]; $acumuladoAsignado += $partidascampo[$ids]; $i += 1; } } //calcular la variación por reformulaciones for($i=0; $i<12; $i++){ if(_mes_dentro_de_duracion_ae_proyecto($ae, $i)){ $mes = $i; $variacion_asignado = _seguimiento_mesactual_total_ae_deproyecto_reformulaciones_load($ae, $mes); $variacion_asignado = isset($variacion_asignado)? $variacion_asignado : 0; $asignadoMes[$i] += $variacion_asignado; $acumuladoAsignado += $variacion_asignado; } } //calcular comprometido, causado, pagado $totalComprometido = array(); $totalCausado = array(); $totalPagado = array(); $infocomplementaria_financiera = array(); $AcumuladoTotalComprometido = 0; $AcumuladoTotalCausado = 0; $AcumuladoTotalPagado = 0; foreach($meses as $it => $id) { $mes = $it + 1; $consulta_totales_seguimiento_mes = _seguimiento_mesactual_partida_ae_deproyecto_totales_load($ae, $mes); $totalComprometido[$mes] = isset($consulta_totales_seguimiento_mes['segmespartidastotales']['totalcomprometido'])? $consulta_totales_seguimiento_mes['segmespartidastotales']['totalcomprometido']: 'N/A'; $totalCausado[$mes] = isset($consulta_totales_seguimiento_mes['segmespartidastotales']['totalcausado'])?$consulta_totales_seguimiento_mes['segmespartidastotales']['totalcausado']: 'N/A'; $totalPagado[$mes] = isset($consulta_totales_seguimiento_mes['segmespartidastotales']['totalpagado'])?$consulta_totales_seguimiento_mes['segmespartidastotales']['totalpagado']: 'N/A'; $infocomplementaria_financiera[$mes] = isset($consulta_totales_seguimiento_mes['segmes']['infocomplementaria_metafinanciera'])? $consulta_totales_seguimiento_mes['segmes']['infocomplementaria_metafinanciera']:''; $AcumuladoTotalComprometido += is_numeric($totalComprometido[$mes]) ? $totalComprometido[$mes] : 0; $AcumuladoTotalCausado += is_numeric($totalCausado[$mes]) ? $totalCausado[$mes] : 0; $AcumuladoTotalPagado += is_numeric($totalPagado[$mes]) ? $totalPagado[$mes] : 0; } //$mes_seguimiento_proyecto_y_aes = variable_get('accion_especifica_de_proyecto_seguimiento_mes_seguimiento', 0); //Asignacion de valores para la creacion de la tabla $rows = array(); $i = 0; foreach($ftypes as $ids =>$texto) { $mesi = $i +1; $estatus_inversion = _calcularzonacritica($asignadoMes[$i], $totalCausado[$mesi]); $porczonacritica = $estatus_inversion['porczonacritica']; $textozona = $estatus_inversion['textozona']; $colorzona = $estatus_inversion['colorzona']; $colorfontzona = $estatus_inversion['colorfontzona']; $row = array(); $row[] = array('data' => $texto,); $valor = is_numeric($asignadoMes[$i]) ? number_format($asignadoMes[$i], 0, ',', '.') : $asignadoMes[$i]; $row[] = array('data' => $valor,); $valor = is_numeric($totalComprometido[$mesi]) ? number_format($totalComprometido[$mesi], 0, ',', '.') : $totalComprometido[$mesi]; $row[] = array('data' => $valor,); $valor = is_numeric($totalCausado[$mesi]) ? number_format($totalCausado[$mesi], 0, ',', '.') : $totalCausado[$mesi]; $row[] = array('data' => $valor,); $valor = is_numeric($totalPagado[$mesi]) ? number_format($totalPagado[$mesi], 0, ',', '.') : $totalPagado[$mesi]; $row[] = array('data' => $valor,); $row[] = array('data' => $porczonacritica,); $row[] = array('data' => $textozona, 'style' => 'font-weight: bold;background:' . $colorzona . '; color:' . $colorfontzona); $row[] = array('data' => $infocomplementaria_financiera[$mesi],); $links = array(); if (is_numeric($totalComprometido[$mesi])) { $links[] = l(t('Seguimiento por partidas'), 'proyectosop/' . $proyecto->nid . '/seguimiento/ae/' . $ae->nid . '/' . $mesi . '/view'); } $seguimiento_proyecto = _seguimiento_mesactual_proyecto_load($proyecto, $mesi); $acciones_seguimiento = _seguimiento_mesactual_partida_ae_deproyecto_load($ae, $mesi); if (_proyecto_operativo_seguimiento_modificar_mes_access($proyecto, $mesi)) { $title = ' ' . t('Agregar'); if ($acciones_seguimiento['segmes']['id_seg']) { $title = ' ' . t('Modificar'); } $links[] = '' . l ($title, 'proyectosop/' . $proyecto->nid . '/seguimiento/ae/' . $ae->nid . '/' . ($mesi) . '/edit/comentario_informacionfinanciera', array('query' => $destination)) . ''; } $row[] = array('data' => theme('item_list', $links),); $rows[] = $row; $i++; } $row = array(); $row[] = array('data' => t('TOTAL'),); $row[] = array('data' => number_format($acumuladoAsignado, 0, ',', '.'),); $row[] = array('data' => number_format($AcumuladoTotalComprometido, 0, ',', '.'),);//total comprometido $row[] = array('data' => number_format($AcumuladoTotalCausado, 0, ',', '.'),);//total causado $row[] = array('data' => number_format($AcumuladoTotalPagado, 0, ',', '.'),);//total pagado $row[] = array('data' => '', 'colspan' => 4); $rows[] = $row; $tablas[]= theme('table', $header, $rows); if (count($tablas)) { $output .= '
' . t('Indicadores Financieros de la Acción Específica') . '' . implode('', $tablas); $output .= '
'; } return $output; }