//////////////////////////  GRID RECEPCIONES DE DOCUMENTOS		//////////////////////////////////////
 //////////////////////////   GRID DETALLE PRESUPUESTARIO		//////////////////////////////////////
 $lb_valido = $io_report->uf_select_detalle_spg($ls_numsol);
 // Cargar el DS con los datos del reporte
 if ($lb_valido) {
     $li_totrowspg = $io_report->ds_detalle_spg->getRowCount("codestpro");
     $la_data = "";
     $li_totpre = 0;
     for ($li_s = 1; $li_s <= $li_totrowspg; $li_s++) {
         $ls_codestpro = $io_report->ds_detalle_spg->data["codestpro"][$li_s];
         $ls_spgcuenta = $io_report->ds_detalle_spg->data["spg_cuenta"][$li_s];
         $ls_denominacion = $io_report->ds_detalle_spg->data["denominacion"][$li_s];
         $li_monto = $io_report->ds_detalle_spg->data["monto"][$li_s];
         $li_totpre = $li_totpre + $li_monto;
         $li_monto = number_format($li_monto, 2, ",", ".");
         $io_fun_cxp->uf_formatoprogramatica($ls_codestpro, &$ls_programatica);
         $la_data[$li_s] = array('codestpro' => $ls_programatica, 'spg_cuenta' => $ls_spgcuenta, 'denominacion' => $ls_denominacion, 'monto' => $li_monto);
     }
     $li_totpre = number_format($li_totpre, 2, ",", ".");
     uf_print_detalle_spg($la_data, $li_totpre, &$io_pdf);
     unset($la_data);
 }
 //////////////////////////      GRID DETALLE PRESUPUESTARIO		//////////////////////////////////////
 //////////////////////////         GRID DETALLE CONTABLE	    //////////////////////////////////////
 $lb_valido = $io_report->uf_select_detalle_scg($ls_numsol);
 // Cargar el DS con los datos del reporte
 if ($lb_valido) {
     $li_totrowscg = $io_report->ds_detalle_scg->getRowCount("sc_cuenta");
     $la_data = "";
     $li_totdeb = 0;
     $li_tothab = 0;