set_display($display_id); $view->override_path = $_GET['q']; if ($_POST['field_proyecto_unidadm_value'] && is_numeric($_POST['field_proyecto_unidadm_value'])) { $_POST['unidad_apro'] = $_POST['field_proyecto_unidadm_value']; } $view->set_exposed_input($_POST); $planificado = FALSE; $ejecutado = FALSE; $grafico = FALSE; if (isset($_POST['mostrar']) && count($_POST['mostrar'])) { foreach($_POST['mostrar'] as $mostrar){ if ($mostrar == 'planificado') { $planificado = TRUE; } elseif($mostrar == 'ejecutado') { $ejecutado = TRUE; } elseif($mostrar == 'grafico') { $grafico = TRUE; } } } if (!$planificado && !$ejecutado) { $view->set_exposed_input(array()); } $view->pre_execute(); $view->execute(); if (($planificado || $ejecutado) && count($view->result)) { $ftypes = array( 0 => t('Seleccione'), '1' => t('January'), '2' => t('February'), '3' => t('March'), '4' => t('April'), '5' => t('May'), '6' => t('June'), '7' => t('July'), '8' => t('August'), '9' => t('September'), '10' => t('Octuber'), '11' => t('November'), '12' => t('December'), ); $new_result = array(); $nids = array(); $mes_inicio = isset($_POST['mes_seguimiento_0']) && isset($ftypes[$_POST['mes_seguimiento_0'] - 1]) ? $_POST['mes_seguimiento_0'] - 1 : 0; $mes_final = isset($_POST['mes_seguimiento_1']) && isset($ftypes[$_POST['mes_seguimiento_1'] - 1]) ? $_POST['mes_seguimiento_1'] - 1 : 11; if ($mes_inicio > $mes_final) { $au = $mes_final; $mes_final = $mes_inicio; $mes_inicio = $au; } $partidas_labels = array(); $partidas = array(); $categorias = array(); $planificado_values = array(); $seguimiento_values = array(); if (isset($_POST['partidas']) && count($_POST['partidas'])) { foreach($_POST['partidas'] as $campo){ $partidas[] = $campo; if ($grafico && ($planificado || $ejecutado)) { $categorias[$campo] = check_plain($_POST['partida_label_' . $campo]); } $partidas_labels[$campo] = isset($_POST['partida_label_' . $campo])? $_POST['partida_label_' . $campo] : FALSE; } } $arreglo_label = array(); $financia = array(); if (isset($_POST['financiamiento']) && count($_POST['financiamiento'])) { foreach($_POST['financiamiento'] as $campo){ $father = isset($_POST['finaciamiento_father_' . $campo])? $_POST['finaciamiento_father_' . $campo] : FALSE; if ($father && !isset($arreglo_label[$father])) { $arreglo_label[$father] = array(); } if ($father && $_POST['finaciamiento_label_' . $campo]) { if ($grafico && $planificado) { $categorias[$campo] = check_plain($_POST['finaciamiento_label_' . $campo]); } $financia[] = $campo; $arreglo_label[$father][$campo] = $_POST['finaciamiento_label_' . $campo]; } } } $node_type = content_types('accion_especifica'); $fields = $node_type['fields']; $campos = array(); foreach($fields as $id => $field) { if ($field['module'] == 'number' && $field['multiple'] == 0 && $id != 'field_accion_esp_ponderacion') { $campos[$id] = 'SUM(a.' . $id . '_value) AS ' . $id; } } $campos_par = array(); for($j = $mes_inicio; $j <= $mes_final; $j++) { $texto = $j != 0? 'value_' . $j : 'value'; $campos_par[] = 'SUM(p.field_accion_esp_programacion_' . $texto . ')'; } $campos_partidas = implode(' + ', $campos_par); $campos_financiamiento = implode(',', $campos); $estado_aprobado = variable_get('acciones_centralizadas_state_aprobado', NULL); foreach($view->result as $i => $values) { $seguimientos = array(); if (!isset($nids[$values->nid])) { $nodo = node_load($values->nid); //SE OBTIENE EL SEGUIMIENTO POR PARTIDAS: if ($ejecutado) { $resultado = db_query('SELECT SUM(sap.comprometido) AS total_comprometido, sap.partida FROM seguimiento_aeproyecto_partida AS sap LEFT JOIN seguimiento_proyecto AS sp ON sp.id_seg = sap.id_seg LEFT JOIN {seguimiento_aeproyecto} AS saep ON saep.id_seg = sp.id_seg AND saep.mes >= %d AND saep.mes <= %d AND saep.estado = %d WHERE sp.nid = %d GROUP BY sap.partida', $mes_inicio, $mes_final, $estado_aprobado, $nodo->nid); while ($seguimiento = db_fetch_object($resultado)){ $seguimientos[$seguimiento->partida] = $seguimiento->total_comprometido; if ($grafico && $ejecutado) { if (!isset($seguimiento_values[$seguimiento->partida])) { $seguimiento_values[$seguimiento->partida] = 0; } $seguimiento_values[$seguimiento->partida] += $seguimiento->total_comprometido; } } $values->seg_partidas = $seguimientos; } $acciones = array(); if ($planificado && count($nodo->field_proyecto_accion_esp)) { foreach($nodo->field_proyecto_accion_esp as $value) { if (isset($value['nid']) && $value['nid']) { $acciones[] = $value['nid']; } } } $implode_acciones = implode(',', $acciones); if (count($financia) && count($acciones)) { $resultado = db_query('SELECT ' . $campos_financiamiento . ' FROM {content_type_accion_especifica} AS a LEFT JOIN {node} AS n ON n.nid = a.nid AND n.vid = a.vid WHERE n.nid IN (%s)', $implode_acciones); $fuente = db_fetch_object($resultado); $fuentes = array(); if ($fuente) { foreach ($financia as $field) { $varia = isset($nodo->variaciones[$field . '_' . $nodo->nid])? $nodo->variaciones[$field . '_' . $nodo->nid][0]['value'] : 0; $fuentes[$field] = $fuente->{$field} + $varia; if ($grafico && $planificado) { if (!isset($planificado_values[$field])) { $planificado_values[$field] = 0; } $planificado_values[$field] += $fuente->{$field} + $varia; } } } $values->financiamiento = $fuentes; } if (count($acciones)) { $resultado = db_query('SELECT ' . $campos_partidas . ' AS suma, p.field_accion_esp_programacion_tid FROM {content_field_accion_esp_programacion} AS p LEFT JOIN {node} AS n ON n.nid = p.nid AND n.vid = p.vid WHERE n.nid IN (%s) GROUP BY p.field_accion_esp_programacion_tid', $implode_acciones); $suma_partidas = array(); $variaciones = array(); foreach($acciones as $nid) { if (isset($nodo->variaciones['field_accion_esp_programacion_' . $nid])) { foreach($nodo->variaciones['field_accion_esp_programacion_' . $nid] as $tid => $value) { $suma = 0; for($j = $mes_inicio; $j <= $mes_final; $j++) { $texto = $j != 0? 'value_' . $j : 'value'; $suma += $value[$texto]; } if (!isset($variaciones[$tid])) { $variaciones[$tid] = 0; } $variaciones[$tid] += $suma; } } } while($partidas_load = db_fetch_object($resultado)){ $suma_partidas[$partidas_load->field_accion_esp_programacion_tid] = $partidas_load->suma + $variaciones[$partidas_load->field_accion_esp_programacion_tid]; if ($grafico && $planificado) { if (!isset($planificado_values[$partidas_load->field_accion_esp_programacion_tid])) { $planificado_values[$partidas_load->field_accion_esp_programacion_tid] = 0; } $planificado_values[$partidas_load->field_accion_esp_programacion_tid] += $suma_partidas[$partidas_load->field_accion_esp_programacion_tid]; } } $values->suma_partidas = $suma_partidas; } $nids[$values->nid] = $values->nid; $new_result[] = $values; } } $view->result = $new_result; } $texto_auxiliar = ''; if (!$planificado && !$ejecutado) { $texto_auxiliar = '
' . t('Debe seleccionar los datos a mostrar (Planificado y/o Ejecutado)') . '
'; } $output = ''; $output .= $view->render() . $texto_auxiliar; if ($grafico && count($categorias)) { $width = isset($_POST['width']) && is_numeric($_POST['width']) && $_POST['width']? $_POST['width'] : 800; $height = isset($_POST['height']) && is_numeric($_POST['height']) && $_POST['height']? $_POST['height'] : 400; $datos_grafica = array( 'labels' => $categorias, 'plan' => $planificado_values, 'exe' => $seguimiento_values, 'exe' => $seguimiento_values, 'planificado' => $planificado, 'ejecutado' => $ejecutado, 'width' => $width, 'height' => $height, ); $output .= sipp_report2_generate_graph_plan_exe_column($datos_grafica); } return $output; } /** * Implementation of sipp_report2_generate_graph_plan_exe_column(). * Display charts report */ function sipp_report2_generate_graph_plan_exe_column($datos_grafica) { $page_content = ''; $path = libraries_get_path('Highcharts-3.0.1'); $options = sipp_report2_generate_graph_plan_exe_column_options($datos_grafica); if (is_object($options)) { // Render the chart options object, and retrieve the chart id. highcharts_render($options); // Define required and optional chart container attributes. $attributes = array( // Required chart id passed by reference. 'id' => $options->chart->renderTo, // Optionally add styles or any other valid attribute. 'style' => 'height: ' . $datos_grafica['height'] . 'px;width: ' . $datos_grafica['width'] . 'px;' ); $page_content .= theme_highcharts_chart($options->chart->renderTo); $page_content .= theme('highcharts_chart', $attributes); } $path_biblioteca_Highcharts = libraries_get_path('Highcharts-3.0.1'); drupal_add_js($path_biblioteca_Highcharts . '/js/modules/exporting.js'); return $page_content; } /** * Column-basic highcharts options object. * * @see highcharts_render() */ function sipp_report2_generate_graph_plan_exe_column_options($datos_grafica) { $options = new stdClass(); // Chart. $options->chart = (object)array( 'renderTo' => 'container', 'plotBackgroundColor' => NULL, 'plotBorderWidth' => NULL, 'plotShadow' => FALSE, ); $options->chart->type = 'column'; // Title. $options->title->text = t('Reporte de Partidas y fuentes de financiamiento'); $categorias_xAxis = array(); $labels = array(); foreach($datos_grafica['labels'] as $id => $valor_opc_i){ $labels[] = $valor_opc_i; } $categorias_xAxis[] = $datos_grafica['labels']; $options->xAxis->categories = $labels; $options->yAxis->title->text = t('Monto (Bs)'); $options->yAxis->allowDecimals = FALSE; $options->tooltip->headerFormat = '{point.key}'; //$options->tooltip->shared = 'true'; $options->tooltip->useHTML = 'true'; $options->tooltip->formatter = "function() {return ''+ this.x + ': '+ Highcharts.numberFormat(this.point.y, 2, '.', ',') +' Bs (' + this.series.name + ')';}"; // Plot options. $options->plotOptions->column = (object)array( 'allowPointSelect' => TRUE, 'cursor' => 'pointer', 'dataLabels' => array( 'enabled' => FALSE, ), 'showInLegend' => TRUE, ); // Series. $options->series = array(); if ($datos_grafica['planificado']) { $series = new StdClass(); $series->name = t('Planificado'); $series->data = array(); foreach($datos_grafica['labels'] as $id => $valor_opc_i){ $series->data[] = $datos_grafica['plan'][$id]; } $options->series[] = $series; } if ($datos_grafica['ejecutado']) { $series = new StdClass(); $series->name = t('Ejecutado'); $series->data = array(); foreach($datos_grafica['labels'] as $id => $valor_opc_i){ if (is_numeric($id)) { $series->data[] = $datos_grafica['exe'][$id]; } else { $series->data[] = 0; } } $options->series[] = $series; } // Diable credits. $options->credits->enabled = FALSE; return $options; } /** * Implementation of sipp_report2_consulta_proyectos_operativos_reporte_page(). * Display consulta de proyectos operativos reports */ function sipp_report2_consulta_proyectos_operativos_reporte_page(){ $view = views_get_view('matriz_procesos'); $display_id = 'page_2'; $view->set_display($display_id); $view->override_path = $_GET['q']; if ($_POST['field_proyecto_unidadm_value'] && is_numeric($_POST['field_proyecto_unidadm_value'])) { $_POST['unidad_apro'] = $_POST['field_proyecto_unidadm_value']; } $view->set_exposed_input($_POST); $view->pre_execute(); $view->execute(); if (count($view->result)) { $ftypes = array( 0 => t('Seleccione'), '1' => t('January'), '2' => t('February'), '3' => t('March'), '4' => t('April'), '5' => t('May'), '6' => t('June'), '7' => t('July'), '8' => t('August'), '9' => t('September'), '10' => t('Octuber'), '11' => t('November'), '12' => t('December'), ); $new_result = array(); $nids = array(); $mes_inicio = isset($_POST['mes_seguimiento_0']) && isset($ftypes[$_POST['mes_seguimiento_0'] - 1]) ? $_POST['mes_seguimiento_0'] - 1 : 0; $mes_final = isset($_POST['mes_seguimiento_1']) && isset($ftypes[$_POST['mes_seguimiento_1'] - 1]) ? $_POST['mes_seguimiento_1'] - 1 : 11; if ($mes_inicio > $mes_final) { $au = $mes_final; $mes_final = $mes_inicio; $mes_inicio = $au; } $form = sipp_report2_proyecto_genera_campos_form(); $views = array(); $content = node_build_content($node); $valores = array(); $title_combos = $form['#title_combos']; foreach($_POST as $id => $campos){ if (is_array($campos) && count($campos)) { foreach($campos as $campo) { if ($campo) { $valores[$id][] = $campo; } } } } foreach($view->result as $i => $values) { if (!isset($nids[$values->nid])) { $values->nodo_reporte = sipp_report2_genera_vista_nodo($values->nid, $title_combos, $valores); $nids[$values->nid] = $values->nid; $new_result[] = $values; } } $view->result = $new_result; } return $view->render(); } /** * Implementation of sipp_report2_genera_vista_nodo(). * Generate node display in consulta de proyectos report */ function sipp_report2_genera_vista_nodo($nid, $title_combos, $valores){ $node_load = node_load($nid); $content = node_build_content($node_load); $views = array(); $views['titulo'] .= '

' . $node_load->titulo_asignado . '

'; foreach($title_combos as $id => $campos){ if (isset($valores[$id])) { $views[$id] = !isset($views[$id]) ? '
' . $campos['title'] . '' : $views[$id]; foreach($valores[$id] as $campo) { if ($campo && isset($content->content[$campo])) { $views[$id] .= drupal_render($content->content[$campo]); } elseif($campo == 'title') { $views[$id] .= '
' . t('Nombre del Proyecto') . ':
' . '
' . $node_load->titulo_asignado . '
'; } } $views[$id] .= '
'; } else { foreach($campos as $id_campo => $campo) { if (isset($valores[$id_campo])) { $muestra = TRUE; $views[$id] = !isset($views[$id]) ? '
' . $campos['title'] . '' : $views[$id]; $views[$id] .= '
' . $campo['title'] . ''; foreach($valores[$id_campo] as $id_field) { if ($id_field && isset($content->content[$id_field])) { $views[$id] .= drupal_render($content->content[$id_field]); } elseif($id_field == 'title') { $views[$id] .= '
' . t('Nombre del Proyecto') .':
' . '
' . $node_load->titulo_asignado . '
'; } } $views[$id] .= '
'; } } if (isset($views[$id])) { $views[$id] .= '
'; } } } $output = ''; if (count($views)) { $output = implode('', $views); } return $output; } /** * Implementation of sipp_report2_resultados_por_unidad_ejecutora_page(). * Display unidad ejecutora reports */ function sipp_report2_resultados_por_unidad_ejecutora_page(){ $view = views_get_view('matriz_procesos'); $display_id = 'page_1'; $view->set_display($display_id); $view->override_path = $_GET['q']; $view->set_exposed_input($_POST); $_POST['unidad_apro'] = $_POST['field_proyecto_unidadm_value'] && is_numeric($_POST['field_proyecto_unidadm_value']) ? $_POST['field_proyecto_unidadm_value'] : 0; $view->pre_execute(); $view->execute(); if (count($view->result)) { $ftypes = array( 0 => t('Seleccione'), '1' => t('January'), '2' => t('February'), '3' => t('March'), '4' => t('April'), '5' => t('May'), '6' => t('June'), '7' => t('July'), '8' => t('August'), '9' => t('September'), '10' => t('Octuber'), '11' => t('November'), '12' => t('December'), ); $new_result = array(); $nids = array(); $mes_inicio = isset($_POST['mes_seguimiento_0']) && isset($ftypes[$_POST['mes_seguimiento_0'] - 1]) ? $_POST['mes_seguimiento_0'] - 1 : 0; $mes_final = isset($_POST['mes_seguimiento_1']) && isset($ftypes[$_POST['mes_seguimiento_1'] - 1]) ? $_POST['mes_seguimiento_1'] - 1 : 11; if ($mes_inicio > $mes_final) { $au = $mes_final; $mes_final = $mes_inicio; $mes_inicio = $au; } foreach($view->result as $i => $values) { if (!isset($nids[$values->nid])) { $nodo = node_load($values->nid); $nids[$values->nid] = $values->nid; $seguimiento = _seguimiento_financiero_todosmes_proyecto_load_solo_datos_aprobados($nodo); $metafisica = _seguimiento_metafisica_todosmes_proyecto_load_solo_datos_aprobados($nodo); $totalCausado = 0; $asignadoMes = 0; $metatotalCausado = 0; $metaasignadoMes = 0; $totalComprometido = 0; $totalpagado = 0; for($j = $mes_inicio; $j <= $mes_final; $j++) { $asignadoMes += $seguimiento['seguimiento_financiero_todosmes'][$j]['asignadoMes']; $totalCausado += $seguimiento['seguimiento_financiero_todosmes'][$j]['causadoMes']; $totalComprometido += $seguimiento['seguimiento_financiero_todosmes'][$j]['comprometidoMes']; $totalpagado += $seguimiento['seguimiento_financiero_todosmes'][$j]['pagadoMes']; $metaasignadoMes += $metafisica['seguimiento_metafisica_todosmes'][$j]['planificadoMes']; $metatotalCausado += $metafisica['seguimiento_metafisica_todosmes'][$j]['ejecutadoMes']; } $porc_ejecucion_financiera = $asignadoMes ? (($totalCausado/$asignadoMes) *100) . '%' : 'N/A'; $porc_ejecucion_meta = $metaasignadoMes ? (($metatotalCausado/$metaasignadoMes) *100) . '%' : 'N/A'; $values->meta_asignado = $metaasignadoMes; $values->meta_causado = $metatotalCausado; $values->meta_porc = $porc_ejecucion_meta; $values->finan_asignado = $asignadoMes; $values->finan_causado = $totalCausado; $values->finan_comprometido = $totalComprometido; $values->finan_pagado = $totalpagado; $values->finan_porc = $porc_ejecucion_financiera; if ($values->proyectos_reformular_id_ref && $values->proyectos_reformular_unidad) { $values->node_data_field_proyecto_unidadm_field_proyecto_unidadm_value = $values->proyectos_reformular_unidad; } $new_result[] = $values; } } $view->result = $new_result; } return $view->render(); } /** * Implementation of sipp_report2_matriz_de_procesos_reporte_page(). * Display matriz de procesos reports */ function sipp_report2_matriz_de_procesos_reporte_page(){ $view = views_get_view('matriz_procesos'); $display_id = 'default'; $view->set_display($display_id); $view->override_path = $_GET['q']; $view->set_exposed_input($_POST); $_POST['unidad_apro'] = $_POST['field_proyecto_unidadm_value'] && is_numeric($_POST['field_proyecto_unidadm_value']) ? $_POST['field_proyecto_unidadm_value'] : 0; $view->pre_execute(); $view->execute(); if (count($view->result)) { $ftypes = array( 0 => t('Seleccione'), '1' => t('January'), '2' => t('February'), '3' => t('March'), '4' => t('April'), '5' => t('May'), '6' => t('June'), '7' => t('July'), '8' => t('August'), '9' => t('September'), '10' => t('Octuber'), '11' => t('November'), '12' => t('December'), ); $new_result = array(); $nids = array(); $mes_inicio = isset($_POST['mes_seguimiento_0']) && isset($ftypes[$_POST['mes_seguimiento_0'] - 1]) ? $_POST['mes_seguimiento_0'] - 1 : 0; $mes_final = isset($_POST['mes_seguimiento_1']) && isset($ftypes[$_POST['mes_seguimiento_1'] - 1]) ? $_POST['mes_seguimiento_1'] - 1 : 11; if ($mes_inicio > $mes_final) { $au = $mes_final; $mes_final = $mes_inicio; $mes_inicio = $au; } foreach($view->result as $i => $values) { if (!isset($nids[$values->nid])) { $nodo = node_load($values->nid); $nids[$values->nid] = $values->nid; $seguimiento = _seguimiento_financiero_todosmes_proyecto_load_solo_datos_aprobados($nodo); $metafisica = _seguimiento_metafisica_todosmes_proyecto_load_solo_datos_aprobados($nodo); $totalCausado = 0; $asignadoMes = 0; $metatotalCausado = 0; $metaasignadoMes = 0; for($j = $mes_inicio; $j <= $mes_final; $j++) { $asignadoMes += $seguimiento['seguimiento_financiero_todosmes'][$j]['asignadoMes']; $totalCausado += $seguimiento['seguimiento_financiero_todosmes'][$j]['causadoMes']; $metaasignadoMes += $metafisica['seguimiento_metafisica_todosmes'][$j]['planificadoMes']; $metatotalCausado += $metafisica['seguimiento_metafisica_todosmes'][$j]['ejecutadoMes']; } $porc_ejecucion_financiera = $asignadoMes ? (($totalCausado/$asignadoMes) *100) . '%' : 'N/A'; $porc_ejecucion_meta = $metaasignadoMes ? (($metatotalCausado/$metaasignadoMes) *100) . '%' : 'N/A'; $values->meta_asignado = $metaasignadoMes; $values->meta_causado = $metatotalCausado; $values->meta_porc = $porc_ejecucion_meta; $values->finan_asignado = $asignadoMes; $values->finan_causado = $totalCausado; $values->finan_porc = $porc_ejecucion_financiera; if ($values->proyectos_reformular_id_ref && $values->proyectos_reformular_unidad) { $values->node_data_field_proyecto_unidadm_field_proyecto_unidadm_value = $values->proyectos_reformular_unidad; } $new_result[] = $values; } } $view->result = $new_result; } return $view->render(); } /** * Implementation of hook__menu_alter(). */ function sipp_report2_menu_alter(&$items) { $items['principal']['page callback'] = 'sipp_report2_menu_principal_inicio_page'; $items['inicio']['page callback'] = 'sipp_report2_pagina_inicio_page'; } /** * Implementation of sipp_report2_menu_principal_inicio_page(). * Display alter menu principal */ function sipp_report2_menu_principal_inicio_page(){ $output = menu_principal_inicio_page(); // $output .= sipp_report2_page(); return $output; } /** * Implementation of sipp_report2_pagina_inicio_page(). * Display alter pagina inicio */ function sipp_report2_pagina_inicio_page() { global $user; if($user->uid > 0){ $page_content = sipp_report2_menu_principal_inicio_page(); } else { $page_content = pagina_inicio_page(); } return $page_content; } /* * Implementation of hook_menu() */ function sipp_report2_menu() { $items = array(); $items['sipp_report2'] = array( 'title' => t('Reportes'), 'page callback' => 'sipp_report2_page', 'access callback' => true, 'type' => MENU_CALLBACK, ); $items['sipp_report2/matriz_de_procesos'] = array( 'title' => t('Matríz de Procesos'), 'page callback' => 'sipp_report2_matriz_de_procesos_reporte_page', 'access callback' => true, 'type' => MENU_LOCAL_TASK, 'weight' => 1, ); $items['sipp_report2/resultados_por_unidad_ejecutora'] = array( 'title' => t('Resultados por Unidad Ejecutora'),//Mensual 'page callback' => 'sipp_report2_resultados_por_unidad_ejecutora_page', 'access callback' => true, 'type' => MENU_LOCAL_TASK, 'weight' => 2, ); $items['sipp_report2/consulta_proyectosoperativos'] = array( 'title' => t('Consulta de Proyectos Operativos'), 'page callback' => 'sipp_report2_consulta_proyectos_operativos_reporte_page', 'access callback' => true, 'type' => MENU_LOCAL_TASK, 'weight' => 5, ); $items['sipp_report2/consulta_partidas_fuentes'] = array( 'title' => t('Reporte de Partidas'), 'page callback' => 'sipp_report2_consulta_partidas_fuentes_page', 'access callback' => true, 'type' => MENU_LOCAL_TASK, 'weight' => 5, ); return $items; } /** * Implementation of sipp_report2_page(). * Display menu nuevos reportes */ function sipp_report2_page(){ $path_modulo_menu_principal = drupal_get_path('module', 'principal_inicio_sipp'); //reportes disponibles $page_content .= '

'; $page_content .= '

Nuevos Reportes

'; $page_content .= '
'; $image_tag = theme_image($path_modulo_menu_principal.'/img/reportes/matrizprocesos.png').'
'.''.t('Matriz de Procesos').''; $page_content .= ""; $image_tag = theme_image($path_modulo_menu_principal.'/img/reportes/unidadejecutora.png').'
'.''.t('Resultados por Unidad Ejecutora').''; $page_content .= ""; $image_tag = theme_image($path_modulo_menu_principal.'/img/reportes/areasestrategicasdelministerio.png').'
'.''.t('Partidas y Fuentes de Financiamiento').''; $page_content .= ""; $image_tag = theme_image($path_modulo_menu_principal.'/img/reportes/consultadeproyectos.png').'
'.''.t('Consultas de Proyectos').''; $page_content .= ""; $page_content .= '
".l($image_tag, 'sipp_report2/matriz_de_procesos', array('html'=>TRUE))."".l($image_tag, 'sipp_report2/resultados_por_unidad_ejecutora', array('html'=>TRUE))."".l($image_tag, 'sipp_report2/consulta_partidas_fuentes', array('html'=>TRUE))."".l($image_tag, 'sipp_report2/consulta_proyectosoperativos', array('html'=>TRUE))."
'; $page_content .= '

'; return $page_content; } /** * Implementation of hook_views_api(). */ function sipp_report2_views_api() { return array( 'api' => '2.0', 'path' => drupal_get_path('module', 'sipp_report2') . '/views', ); } /* * hook_form_alter() */ function sipp_report2_form_alter(&$form, $form_state, $form_id) { if ($form_id == 'views_exposed_form') { if ($form['#id'] == 'views-exposed-form-matriz-procesos-default' || $form['#id'] == 'views-exposed-form-matriz-procesos-page-1' || $form['#id'] == 'views-exposed-form-matriz-procesos-page-2' || $form['#id'] == 'views-exposed-form-matriz-procesos-page-3') { $form['#method'] = 'post'; $info = array(); $ftypes = array( 0 => t('Seleccione'), '1' => t('January'), '2' => t('February'), '3' => t('March'), '4' => t('April'), '5' => t('May'), '6' => t('June'), '7' => t('July'), '8' => t('August'), '9' => t('September'), '10' => t('Octuber'), '11' => t('November'), '12' => t('December'), ); $form['mes_seguimiento_0'] = array( '#type' => 'select', '#default_value' => 0, '#options' => $ftypes, ); $form['mes_seguimiento_1'] = array( '#type' => 'select', '#default_value' => 0, '#options' => $ftypes, ); $campo = $form['#id'] == 'views-exposed-form-matriz-procesos-page-3' ? 'filter-year' : 'filter-field_proyecto_status_value_many_to_one'; foreach($form['#info'] as $id => $value) { if ($id == $campo) { $instance = array(); $instance['value'] = 'mes_seguimiento_0'; $instance['label'] = t('Desde'); $instance['operator'] = NULL; $info['filter-' . 'mes_seguimiento_0'] = $instance; $instance = array(); $instance['value'] = 'mes_seguimiento_1'; $instance['label'] = t('Hasta'); $instance['operator'] = NULL; $info['filter-' . 'mes_seguimiento_1'] = $instance; } $info[$id] = $value; } $form['#info'] = $info; if ($form['#id'] != 'views-exposed-form-matriz-procesos-page-3') { $form['#info']['filter-unidad_apro']['label'] = ''; $form['unidad_apro'] = array('#type' => 'hidden', '#value' => isset($_POST['unidad_apro']) ? $_POST['unidad_apro'] : 0); } } } if ($form['#id'] == 'views-exposed-form-matriz-procesos-page-2') { $form1 = sipp_report2_proyecto_genera_campos_form(); foreach($form1['#title_combos'] as $id => $varia) { $instance = array(); $instance['value'] = $id;; $instance['operator'] = NULL; $form['#info']['filter-' . $id] = $instance; } $instance = array(); $instance['value'] = 'ae'; $instance['operator'] = NULL; $form['#info']['filter-ae'] = $instance; $instance = array(); $instance['value'] = 'otros'; $instance['operator'] = NULL; $form['#info']['filter-otros'] = $instance; $instance = array(); $instance['value'] = 'proyectos_reformulacion'; $instance['operator'] = NULL; $form['#info']['filter-proyectos_reformulacion'] = $instance; $form += $form1; } if ($form['#id'] == 'views-exposed-form-matriz-procesos-page-3') { $field = content_fields('field_accion_esp_programacion', 'accion_especifica'); $tree = taxonomy_get_tree($field['vid']); $vtid = $field['vtid']; $partidas = array(); if ($tree) { foreach ($tree as $term) { if (isset($vtid[$term->tid])) { $form['partida_label_' . $term->tid] = array('#type' => 'hidden', '#value' => $term->name); $partidas[$term->tid] = $term->name; } } } if (count($partidas)) { $form['partidas'] = array( '#type' => 'checkboxes', '#default_value' => 0, '#options' => $partidas, ); $instance = array(); $instance['value'] = 'partidas'; $instance['label'] = t('Partidas'); $instance['operator'] = NULL; $form['#info']['filter-' . 'partidas'] = $instance; } //financiamiento $arreglo_financiamiento = array(); $accion_especifica_number_fields = variable_get('accion_especifica_number_fields', 4); if ($accion_especifica_number_fields > 0) { for($i = 0; $i < $accion_especifica_number_fields; $i++) { $arreglo_financiamiento['financiamiento_' . $i] = variable_get('accion_especifica_financiamiento_label_' . $i, '') ? variable_get('accion_especifica_financiamiento_label_' . $i, '') : ''; $arreglo_campos = variable_get('accion_especifica_financiamiento_options_' . $i, array()); foreach($arreglo_campos as $id_cam) { if ($id_cam) { $field = content_fields($id_cam, 'accion_especifica'); $form['finaciamiento_father_' . $id_cam] = array('#type' => 'hidden', '#value' => $arreglo_financiamiento['financiamiento_' . $i]); $form['finaciamiento_label_' . $id_cam] = array('#type' => 'hidden', '#value' => $field['widget']['label']); $arreglo_financiamiento_fields[$arreglo_financiamiento['financiamiento_' . $i]][$id_cam] = $field['widget']['label']; } } } } if (count($arreglo_financiamiento_fields)) { $form['financiamiento'] = array( '#type' => 'select', '#default_value' => 0, '#options' => $arreglo_financiamiento_fields, '#multiple' => TRUE, ); $instance = array(); $instance['value'] = 'financiamiento'; $instance['label'] = t('Fuentes de Financiamiento'); $instance['operator'] = NULL; $form['#info']['filter-' . 'financiamiento'] = $instance; } $mostrar = array( 'planificado' => t('Planificado'), 'ejecutado' => t('Ejecutado'), 'grafico' => t('Mostrar Gráfico'), ); $form['mostrar'] = array( '#type' => 'checkboxes', '#default_value' => 0, '#options' => $mostrar, ); $instance = array(); $instance['value'] = 'mostrar'; $instance['operator'] = NULL; $form['#info']['filter-' . 'mostrar'] = $instance; drupal_add_js(drupal_get_path('module','sipp_report2').'/js/sipp_report2.js'); $form['graph_dimesions'] = array( '#type' => 'fieldset', '#title' => t('Dimensiones del Gráfico'), '#collapsible' => FALSE, '#collapsed' => 0, '#tree' => FALSE, ); $form['graph_dimesions']['width'] = array( '#type' => 'textfield', '#title' => t('Ancho'), '#default_value' => $node->title, '#size' => 20, '#maxlength' => 10, ); $form['graph_dimesions']['height'] = array( '#type' => 'textfield', '#title' => t('Largo'), '#default_value' => $node->title, '#size' => 20, '#maxlength' => 10, ); $instance = array(); $instance['value'] = 'graph_dimesions'; $instance['operator'] = NULL; $form['#info']['filter-' . 'graph_dimesions'] = $instance; } } /** * Implementation of sipp_report2_proyecto_genera_campos_form(). * Formulario con todos los campos disponibles en el proyecto. */ function sipp_report2_proyecto_genera_campos_form() { $form = array(); $node_type = content_types('proyectos_operativos'); $fields = $node_type['fields']; //DATOS BASICOS //Datos Básicos de Identificación del Proyecto $title_combos = array(); $title_combos['db']['title'] = t('Datos Básicos'); $arreglo['db']['identificacion'] = array(); $arreglo['db']['identificacion'] = array( 'title' => t('Nombre del Proyecto'), 'field_proyecto_codigo' => 'field_proyecto_codigo', 'field_proyecto_fecha_i' => 'field_proyecto_fecha_i', 'field_proyecto_fecha_f' => 'field_proyecto_fecha_f', 'field_proyecto_status' => 'field_proyecto_status', 'field_proyecto_situacion_p' => 'field_proyecto_situacion_p', 'field_proyecto_plurianual' => 'field_proyecto_plurianual', 'field_proyecto_monto_anual' => 'field_proyecto_monto_anual', 'field_proyecto_total' => 'field_proyecto_total', 'field_proyecto_poan' => 'field_proyecto_poan', ); $title_combos['db']['identificacion']['title'] = t('Datos Básicos de Identificación del Proyecto'); //Gerente del Proyecto $arreglo['db']['gerentep'] = array(); $arreglo['db']['gerentep'] = array( 'field_proyecto_ente' => 'field_proyecto_ente', 'field_proyecto_autoridad' => 'field_proyecto_autoridad', 'field_proyecto_lider' => 'field_proyecto_lider', 'field_proyecto_unidad_a' => 'field_proyecto_unidad_a', 'field_proyecto_cargo' => 'field_proyecto_cargo', 'field_proyecto_telefono' => 'field_proyecto_telefono', 'field_proyecto_correo' => 'field_proyecto_correo', ); $title_combos['db']['gerentep']['title'] = t('Gerente del Proyecto'); //Área Estrategica $pndes = variable_get('proyectos_operativos_muestra_pndes', TRUE); $mcti = variable_get('proyectos_operativos_muestra_mcti', TRUE); $arreglo['db']['areae'] = array(); if ($pndes) { $arreglo['db']['areae']['field_proyecto_pndes'] = 'field_proyecto_pndes'; } if ($mcti) { $arreglo['db']['areae']['field_proyecto_mcti'] = 'field_proyecto_mcti'; } $title_combos['db']['areae']['title'] = t('Área Estratégica'); //DATOS GENERALES $title_combos['dg']['title'] = t('Datos Generales'); //Clasificación Sectorial $arreglo['dg']['sector'] = array(); $arreglo['dg']['sector'] = array( 'field_proyecto_sector' => 'field_proyecto_sector', ); $title_combos['dg']['sector']['title'] = t('Clasificación Sectorial'); //Talento Humano $arreglo['dg']['talentoh'] = array(); if (variable_get('proyectos_operativos_muestra_talento', TRUE)) { $arreglo['dg']['talentoh'] = array( 'field_proyecto_institucionth' => 'field_proyecto_institucionth', 'field_proyecto_nombres_a' => 'field_proyecto_nombres_a', 'field_proyecto_cargo_th' => 'field_proyecto_cargo_th', 'field_proyecto_rol_th' => 'field_proyecto_rol_th', 'field_proyecto_esfuerzo' => 'field_proyecto_esfuerzo', 'field_proyecto_formacion' => 'field_proyecto_formacion', ); } $title_combos['dg']['talentoh']['title'] = t('Talento Humano'); //Capacidades $arreglo['dg']['capacidades'] = array(); if (variable_get('proyectos_operativos_muestra_capacidades', TRUE)) { $arreglo['dg']['capacidades'] = array( 'field_proyecto_institucion_alc' => 'field_proyecto_institucion_alc', 'field_proyecto_infraestructura' => 'field_proyecto_infraestructura', 'field_proyecto_equipos' => 'field_proyecto_equipos', 'field_proyecto_insumos' => 'field_proyecto_insumos', 'field_proyectos_servicios' => 'field_proyectos_servicios', ); } $title_combos['dg']['capacidades']['title'] = t('Capacidades'); //Instituciones $arreglo['dg']['relacion'] = array(); $arreglo['dg']['relacion'] = array( 'field_proyecto_relacion' => 'field_proyecto_relacion', ); $title_combos['dg']['relacion']['title'] = t('Instituciones'); //Empleos Generados $arreglo['dg']['empleosg'] = array(); if (variable_get('proyectos_operativos_muestra_beneficiario', TRUE)) { $arreglo['dg']['empleosg'] = array( 'field_proyecto_emdirecto' => 'field_proyecto_emdirecto', 'field_proyecto_efdirecto' => 'field_proyecto_efdirecto', ); if (variable_get('proyectos_operativos_muestra_beneficiarios_indirectos', TRUE)) { $arreglo['dg']['empleosg']['field_proyecto_emindirecto'] = 'field_proyecto_emindirecto'; $arreglo['dg']['empleosg']['field_proyecto_efindirecto'] = 'field_proyecto_efindirecto'; } } $title_combos['dg']['empleosg']['title'] = t('Empleos Generados'); //Objetivos del Proyecto $arreglo['dg']['objetivosp'] = array(); $arreglo['dg']['objetivosp'] = array( 'field_proyecto_og' => 'field_proyecto_og', 'field_proyecto_oe' => 'field_proyecto_oe', ); //INDICADORES DEL PROYECTO //Enunciado del Problema $title_combos['ip']['title'] = t('Indicadores del Proyecto'); $arreglo['ip']['enunciadop'] = array(); if (variable_get('proyectos_operativos_muestra_enunciado_problema', TRUE)) { $arreglo['ip']['enunciadop'] = array( 'field_proyecto_causas' => 'field_proyecto_causas', 'field_proyecto_problemas' => 'field_proyecto_problemas', 'field_proyecto_consecuencias' => 'field_proyecto_consecuencias', ); } $title_combos['ip']['enunciadop']['title'] = t('Enunciado del Problema'); //Justificación del Proyecto $arreglo['ip']['justificacion'] = array(); if (variable_get('proyectos_operativos_muestra_justicacion', TRUE)) { $arreglo['ip']['justificacion'] = array( 'field_proyecto_justificacion' => 'field_proyecto_justificacion', ); } $title_combos['ip']['justificacion']['title'] = t('Justificación del Proyecto'); //Alcance del Proyecto $arreglo['ip']['alcance'] = array(); if (variable_get('proyectos_operativos_muestra_alcance', TRUE)) { $arreglo['ip']['alcance'] = array( 'field_proyecto_alcance' => 'field_proyecto_alcance', ); } $title_combos['ip']['alcance']['title'] = t('Alcance del Proyecto'); //Situación Actual del Proyecto $arreglo['ip']['situaciona'] = array(); if (variable_get('proyectos_operativos_muestra_sa', TRUE)) { $arreglo['ip']['situaciona'] = array( 'field_proyecto_sa_descripcion' => 'field_proyecto_sa_descripcion', ); if (variable_get('proyectos_operativos_muestra_sa_cuantificacion', TRUE)) { $arreglo['ip']['situaciona']['field_proyecto_sa_cuantificacion'] = 'field_proyecto_sa_cuantificacion'; } $arreglo['ip']['situaciona']['field_proyecto_sa_formulai'] = 'field_proyecto_sa_formulai'; $arreglo['ip']['situaciona']['field_proyecto_sa_fuentei'] = 'field_proyecto_sa_fuentei'; $arreglo['ip']['situaciona']['field_proyecto_sa_fecha'] = 'field_proyecto_sa_fecha'; } $title_combos['ip']['situaciona']['title'] = t('Situación Actual del Proyecto'); //Situación Objetivo $arreglo['ip']['situaciono'] = array(); if (variable_get('proyectos_operativos_muestra_so', TRUE)) { $arreglo['ip']['situaciono'] = array( 'field_proyecto_so_descripcion' => 'field_proyecto_so_descripcion', 'field_proyecto_so_cuantificacion' => 'field_proyecto_so_cuantificacion', 'field_proyecto_tiempoi' => 'field_proyecto_tiempoi', ); } $title_combos['ip']['situaciono']['title'] = t('Situación Objetivo del Proyecto'); //Indicador del resultado del Proyecto $arreglo['ip']['resultadop'] = array(); $arreglo['ip']['resultadop'] = array( 'field_proyecto_descripcion_bien' => 'field_proyecto_descripcion_bien', 'field_proyecto_unidadm' => 'field_proyecto_unidadm', 'field_proyecto_meta_fisica' => 'field_proyecto_meta_fisica', ); $title_combos['ip']['resultadop']['title'] = t('Indicador del resultado del Proyecto'); $campos['todos-los-campos'] = t('Mostrar todos los campos'); //$campos['title'] = t('Nombre del Proyecto'); if (count($fields)) { foreach($fields as $id => $field) { if (!$field['display_settings']['full']['exclude']) { //DATOS BASICOS DEL PROYECTO //Datos Básicos de Identificación del Proyecto if (array_key_exists($id, $arreglo['db']['identificacion'])) { $arreglo['db']['identificacion'][$id] = $field['widget']['label']; } //Gerente del Proyecto elseif(array_key_exists($id, $arreglo['db']['gerentep'])) { $arreglo['db']['gerentep'][$id] = $field['widget']['label']; } //Área Estrategica elseif(array_key_exists($id, $arreglo['db']['areae'])) { $arreglo['db']['areae'][$id] = $field['widget']['label']; } //DATOS GENERALES //Clasificación Sectorial elseif(array_key_exists($id, $arreglo['dg']['sector'])) { $arreglo['dg']['sector'][$id] = $field['widget']['label']; } //Talento Humano elseif(array_key_exists($id, $arreglo['dg']['talentoh'])) { $arreglo['dg']['talentoh'][$id] = $field['widget']['label']; } //Capacidades elseif(array_key_exists($id, $arreglo['dg']['capacidades'])) { $arreglo['dg']['capacidades'][$id] = $field['widget']['label']; } //Instituciones elseif(array_key_exists($id, $arreglo['dg']['relacion'])) { $arreglo['dg']['relacion'][$id] = $field['widget']['label']; } //Empleos Generados elseif(array_key_exists($id, $arreglo['dg']['empleosg'])) { $arreglo['dg']['empleosg'][$id] = $field['widget']['label']; } //Objetivos del Proyecto elseif(array_key_exists($id, $arreglo['dg']['objetivosp'])) { $arreglo['dg']['objetivosp'][$id] = $field['widget']['label']; } //INDICADORES DEL PROYECTO //Enunciado del Problema elseif(array_key_exists($id, $arreglo['ip']['enunciadop'])) { $arreglo['ip']['enunciadop'][$id] = $field['widget']['label']; } //Justificación del Proyecto elseif(array_key_exists($id, $arreglo['ip']['justificacion'])) { $arreglo['ip']['justificacion'][$id] = $field['widget']['label']; } //Alcance del Proyecto elseif(array_key_exists($id, $arreglo['ip']['alcance'])) { $arreglo['ip']['alcance'][$id] = $field['widget']['label']; } //Situación Actual del Proyecto elseif(array_key_exists($id, $arreglo['ip']['situaciona'])) { $arreglo['ip']['situaciona'][$id] = $field['widget']['label']; } //Situación Objetivo elseif(array_key_exists($id, $arreglo['ip']['situaciono'])) { $arreglo['ip']['situaciono'][$id] = $field['widget']['label']; } //Indicador del resultado del Proyecto elseif(array_key_exists($id, $arreglo['ip']['resultadop'])) { $arreglo['ip']['resultadop'][$id] = $field['widget']['label']; } //DATOS BASICOS DEL PROYECTO //Datos Básicos de Identificación del Proyecto elseif (variable_get('proyectos_operativos_ac_d_' . $id, FALSE)) { $arreglo['db']['identificacion'][$id] = $field['widget']['label']; } //Gerente del Proyecto elseif (variable_get('proyectos_operativos_ac_di_' . $id, FALSE)) { $arreglo['db']['gerentep'][$id] = $field['widget']['label']; } //Área Estrategica elseif (variable_get('proyectos_operativos_ac_p_' . $id, FALSE)) { $arreglo['db']['areae'][$id] = $field['widget']['label']; } //DATOS GENERALES //Clasificación Sectorial elseif (variable_get('proyectos_operativos_dg_s_' . $id, FALSE)) { $arreglo['dg']['sector'][$id] = $field['widget']['label']; } //Instituciones elseif (variable_get('proyectos_operativos_dg_r_' . $id, FALSE)) { $arreglo['dg']['relacion'][$id] = $field['widget']['label']; } //Objetivos del Proyecto elseif (variable_get('proyectos_operativos_dg_o_' . $id, FALSE)) { $arreglo['dg']['objetivosp'][$id] = $field['widget']['label']; } //Enunciado del Problema elseif (variable_get('proyectos_operativos_ip_in_' . $id, FALSE)) { $arreglo['ip']['enunciadop'][$id] = $field['widget']['label']; } //Alcance del Proyecto elseif (variable_get('proyectos_operativos_ip_al_' . $id, FALSE)) { $arreglo['ip']['alcance'][$id] = $field['widget']['label']; } //Justificación del Proyecto elseif (variable_get('proyectos_operativos_ip_ju_' . $id, FALSE)) { $arreglo['ip']['justificacion'][$id] = $field['widget']['label']; } //Situación Actual del Proyecto elseif (variable_get('proyectos_operativos_ip_sa_' . $id, FALSE)) { $arreglo['ip']['situaciona'][$id] = $field['widget']['label']; } //Situación Objetivo elseif (variable_get('proyectos_operativos_ip_so_' . $id, FALSE)) { $arreglo['ip']['situaciono'][$id] = $field['widget']['label']; } //Indicador del resultado del Proyecto elseif (variable_get('proyectos_operativos_ip_re_' . $id, FALSE)) { $arreglo['ip']['resultadop'][$id] = $field['widget']['label']; } //$campos[$id] = $field['widget']['label']; } //DATOS BASICOS DEL PROYECTO //Datos Básicos de Identificación del Proyecto elseif (array_key_exists($id, $arreglo['db']['identificacion'])) { unset($arreglo['db']['identificacion'][$id]); } //Gerente del Proyecto elseif (array_key_exists($id, $arreglo['db']['gerentep'])) { unset($arreglo['db']['gerentep'][$id]); } //Área Estrategica elseif (array_key_exists($id, $arreglo['db']['areae'])) { unset($arreglo['db']['areae'][$id]); } //DATOS GENERALES //Clasificación Sectorial elseif (array_key_exists($id, $arreglo['dg']['sector'])) { unset($arreglo['dg']['sector'][$id]); } //Talento Humano elseif (array_key_exists($id, $arreglo['dg']['talentoh'])) { unset($arreglo['dg']['talentoh'][$id]); } //Capacidades elseif (array_key_exists($id, $arreglo['dg']['capacidades'])) { unset($arreglo['dg']['capacidades'][$id]); } //Instituciones elseif (array_key_exists($id, $arreglo['dg']['relacion'])) { unset($arreglo['dg']['relacion'][$id]); } //Empleos Generados elseif (array_key_exists($id, $arreglo['dg']['empleosg'])) { unset($arreglo['dg']['empleosg'][$id]); } //Objetivos del Proyecto elseif (array_key_exists($id, $arreglo['dg']['objetivosp'])) { unset($arreglo['dg']['objetivosp'][$id]); } //INDICADORES DEL PROYECTO //Enunciado del Problema elseif (array_key_exists($id, $arreglo['ip']['enunciadop'])) { unset($arreglo['ip']['enunciadop'][$id]); } //Justificación del Proyecto elseif (array_key_exists($id, $arreglo['ip']['justificacion'])) { unset($arreglo['ip']['justificacion'][$id]); } //Alcance del Proyecto elseif (array_key_exists($id, $arreglo['ip']['alcance'])) { unset($arreglo['ip']['alcance'][$id]); } //Situación Actual del Proyecto elseif (array_key_exists($id, $arreglo['ip']['situaciona'])) { unset($arreglo['ip']['situaciona'][$id]); } //Situación Objetivo elseif (array_key_exists($id, $arreglo['ip']['situaciono'])) { unset($arreglo['ip']['situaciono'][$id]); } //Indicador del resultado del Proyecto elseif (array_key_exists($id, $arreglo['ip']['resultadop'])) { unset($arreglo['ip']['resultadop'][$id]); } } } //$campos['proyectos_operativos_flujo'] = t('Flujo de Trabajo'); //DATOS BASICOS DEL PROYECTO $identificacion = count($arreglo['db']['identificacion']); $gerentep = count($arreglo['db']['gerentep']); $areae = count($arreglo['db']['areae']); if ($identificacion || $gerentep || $areae) { $form['db'] = array( '#type' => 'fieldset', '#title' => t('Datos Básicos'), ); } if ($identificacion) { $form['db']['identificacion'] = array( '#type' => 'checkboxes', '#options' => $arreglo['db']['identificacion'], '#default_value' => array(), '#title' => t('Datos Básicos de Identificación del Proyecto'), '#multiple' => TRUE, ); } if ($gerentep) { $form['db']['gerentep'] = array( '#type' => 'checkboxes', '#options' => $arreglo['db']['gerentep'], '#default_value' => array(), '#title' => t('Gerente del Proyecto'), '#multiple' => TRUE, ); } if ($areae) { $form['db']['areae'] = array( '#type' => 'checkboxes', '#options' => $arreglo['db']['areae'], '#default_value' => array(), '#title' => t('Área Estratégica'), '#multiple' => TRUE, ); } //DATOS GENERALES DEL PROYECTO $sector = count($arreglo['dg']['sector']); $talentoh = count($arreglo['dg']['talentoh']); $capacidades = count($arreglo['dg']['capacidades']); $beneficiarios = count($arreglo['dg']['empleosg']); $relacion = count($arreglo['dg']['relacion']); $objetivosp = count($arreglo['dg']['objetivosp']); if ($sector || $talentoh || $capacidades || $relacion || $objetivosp) { $form['dg'] = array( '#type' => 'fieldset', '#title' => t('Datos Generales'), ); } //Clasificación Sectorial if ($sector) { $form['dg']['sector'] = array( '#type' => 'checkboxes', '#options' => $arreglo['dg']['sector'], '#default_value' => array(), '#title' => t('Clasificación Sectorial'), '#multiple' => TRUE, ); } //Talento Humano if ($talentoh) { $form['dg']['talentoh'] = array( '#type' => 'checkboxes', '#options' => $arreglo['dg']['talentoh'], '#default_value' => array(), '#title' => t('Talento Humano'), '#multiple' => TRUE, ); } //Capacidades if ($capacidades) { $arreglo['dg']['empleosg']['proyectos_operativos_beneficiarios'] = 'proyectos_operativos_beneficiarios'; $form['dg']['capacidades'] = array( '#type' => 'checkboxes', '#options' => $arreglo['dg']['capacidades'], '#default_value' => array(), '#title' => t('Capacidades'), '#multiple' => TRUE, ); } //Beneficiarios if ($beneficiarios) { $arreglo['dg']['empleosg']['proyectos_operativos_beneficiarios'] = t('Benefiarios (Completo)'); $form['dg']['empleosg'] = array( '#type' => 'checkboxes', '#options' => $arreglo['dg']['empleosg'], '#default_value' => array(), '#title' => t('Beneficiarios'), '#multiple' => TRUE, ); } //Instituciones if ($relacion) { $form['dg']['relacion'] = array( '#type' => 'checkboxes', '#options' => $arreglo['dg']['relacion'], '#default_value' => array(), '#title' => t('Instituciones'), '#multiple' => TRUE, ); } //Objetivos del Proyecto if ($objetivosp) { $form['dg']['objetivosp'] = array( '#type' => 'checkboxes', '#options' => $arreglo['dg']['objetivosp'], '#default_value' => array(), '#title' => t('Objetivos del Proyecto'), '#multiple' => TRUE, ); } //INDICADORES DEL PROYECTO $enunciadop = count($arreglo['ip']['enunciadop']); $justificacion = count($arreglo['ip']['justificacion']); $alcance = count($arreglo['ip']['alcance']); $situaciona = count($arreglo['ip']['situaciona']); $situaciono = count($arreglo['ip']['situaciono']); $resultadop = count($arreglo['ip']['resultadop']); if ($enunciadop || $justificacion || $alcance || $situaciona || $situaciono || $resultadop) { $form['ip'] = array( '#type' => 'fieldset', '#title' => t('Indicadores del Proyecto'), ); } //Enunciado del Problema if ($enunciadop) { $form['ip']['enunciadop'] = array( '#type' => 'checkboxes', '#options' => $arreglo['ip']['enunciadop'], '#default_value' => array(), '#title' => t('Enunciado del Problema'), '#multiple' => TRUE, ); } //Justificación del Proyecto if ($justificacion) { $form['ip']['justificacion'] = array( '#type' => 'checkboxes', '#options' => $arreglo['ip']['justificacion'], '#default_value' => array(), '#title' => t('Justificación del Proyecto'), '#multiple' => TRUE, ); } //Alcance del Proyecto if ($alcance) { $form['ip']['alcance'] = array( '#type' => 'checkboxes', '#options' => $arreglo['ip']['alcance'], '#default_value' => array(), '#title' => t('Alcance del Proyecto'), '#multiple' => TRUE, ); } //Situación Actual del Proyecto if ($situaciona) { $form['ip']['situaciona'] = array( '#type' => 'checkboxes', '#options' => $arreglo['ip']['situaciona'], '#default_value' => array(), '#title' => t('Situación Actual del Proyecto'), '#multiple' => TRUE, ); } //Situación Objetivo if ($situaciono) { $form['ip']['situaciono'] = array( '#type' => 'checkboxes', '#options' => $arreglo['ip']['situaciono'], '#default_value' => array(), '#title' => t('Situación Objetivo'), '#multiple' => TRUE, ); } //Indicador del resultado del Proyecto if ($resultadop) { $form['ip']['resultadop'] = array( '#type' => 'checkboxes', '#options' => $arreglo['ip']['resultadop'], '#default_value' => array(), '#title' => t('Indicador del resultado del Proyecto'), '#multiple' => TRUE, ); } //Acciones especificas $form['ae'] = array( '#type' => 'fieldset', '#title' => t('Acciones Específicas'), ); $arreglo['ae']['field_proyecto_accion_esp'] = t('Acciones Específicas'); //Indicador del resultado del Proyecto $form['ae']['accionesesp'] = array( '#type' => 'checkboxes', '#options' => $arreglo['ae'], '#default_value' => array(), '#title' => t('Acciones Específicas'), '#multiple' => TRUE, '#weight' => 99, ); $title_combos['accionesesp']['title'] = t('Acciones Específicas'); //otros $form['otros'] = array( '#type' => 'fieldset', '#title' => t('Otros'), ); $arreglo['otros']['proyectos_operativos_flujo'] = t('Flujo de Trabajo'); //Indicador del resultado del Proyecto $form['otros']['fl'] = array( '#type' => 'checkboxes', '#options' => $arreglo['otros'], '#default_value' => array(), '#title' => t('Flujo de Trabajo'), '#multiple' => TRUE, '#weight' => 99, ); $title_combos['fl']['title'] = t('Flujo de Trabajo'); //REFORMULACION DEL PROYECTO $arreglo['proyectos_reformulacion']['reformulacion'] = array( 'proyectos_operativos_monto_anual_reformulado' => t('Monto Total del Proyecto para el año en curso (Reformulado)'), 'proyectos_operativos_monto_total_reformulado' => t('Monto Total del Proyecto (Reformulado)'), 'proyectos_operativos_unidad_medida_reformulado' => t('Unidad de Medida (Reformulado)'), 'proyectos_operativos_meta_fisica_reformulado' => t('Meta Física del proyecto (Reformulado)'), ); $form['proyectos_reformulacion'] = array( '#type' => 'fieldset', '#title' => t('Reformulación del Proyecto'), '#weight' => 1, ); //Clasificación Sectorial $form['proyectos_reformulacion']['reformulacion'] = array( '#type' => 'checkboxes', '#options' => $arreglo['proyectos_reformulacion']['reformulacion'], '#default_value' => array(), '#title' => t('Reformulación del Proyecto'), '#multiple' => TRUE, ); $form['#title_combos']['reformulacion']['title'] = t('Reformulación del Proyecto'); $form['#title_combos'] = $title_combos; return $form; }