$ds_prorep->updateRow("enero",$ld_div_asig,$i);
		$ds_prorep->updateRow("febrero",$ld_div_asig,$i);
		$ds_prorep->updateRow("marzo",$ld_div_asig,$i);
		$ds_prorep->updateRow("abril",$ld_div_asig,$i);
		$ds_prorep->updateRow("mayo",$ld_div_asig,$i);
		$ds_prorep->updateRow("junio",$ld_div_asig,$i);
		$ds_prorep->updateRow("julio",$ld_div_asig,$i);
		$ds_prorep->updateRow("agosto",$ld_div_asig,$i);
		$ds_prorep->updateRow("septiembre",$ld_div_asig,$i);
		$ds_prorep->updateRow("octubre",$ld_div_asig,$i);
		$ds_prorep->updateRow("noviembre",$ld_div_asig,$i);
		$ds_prorep->updateRow("diciembre",$ld_diciembre,$i);
		$ds_prorep->updateRow("modrep",$ls_modrep,$i);		
		$ds_prorep->updateRow("distribuir",$ls_distribuir,$i);
				
		$ls_next_cta = $int_scg->uf_scg_next_cuenta_nivel($ls_cuenta);
		$li_nivel_cta= $int_scg->uf_scg_obtener_nivel($ls_next_cta);//Obtiene nivel de la cta
		$li_totrows=$ds_prorep->getRowCount("sc_cuenta");
		$ls_cta_ceros  = $int_scg->uf_scg_sin_ceros($ls_cuenta);
		$ld_total_asignado=0;
		$ld_total_asig=0;
		$ld_total_diciembre=0;
		
		while($li_nivel_cta>1 && !empty($ls_next_cta))
		{
			$ld_total_asignado=0;
			$ld_total_asig=0;
			$ld_total_diciembre=0;
			$ls_cta_aux=$ls_next_cta;
			$ls_cta_ceros  = $int_scg->uf_scg_sin_ceros($ls_next_cta);
			$pos=$ds_prorep->find("sc_cuenta",$ls_next_cta);
	function uf_valida_cuenta($as_cuenta )
	{
		$li_nivel =0;
		$lb_valido=true;
		$ls_pad_cuenta="";$ls_denominacion="";$ls_status="";$ls_NextCuenta="";$ls_mensaje_error="";
		$int_scg=new class_sigesp_int_scg();
		$msg=new class_mensajes();
		$dat=$_SESSION["la_empresa"];
		$ls_formplan=$dat["formplan"];
		$is_codemp=$dat["CodEmp"];
		
		$ls_pad_cuenta = $int_scg->uf_pad_cuenta_plan($ls_formplan ,$as_cuenta); 

		if(!$int_scg->uf_select_plan_unico_cuenta($ls_pad_cuenta,$ls_denominacion))
		{
			$msg->message("La cuenta no existe en el Plan Unico de Cuentas.");		
			return false;
		}
		
		/*if($int_scg->uf_scg_select_cuenta($is_codemp,$as_cuenta,$ls_status,$ls_denominacion))      
		{
			$msg->message("La cuenta ya existe en el Plan de Cuentas.");	
			return false;	
		}*/
		
		// verifico si el nivel es el apropiado
		//$msg->message($as_cuenta);	
		$int_scg->uf_init_niveles();
		$li_nivel = $int_scg->uf_scg_obtener_nivel($as_cuenta);
			
		if($li_nivel<=1)
		{
		   $msg->message("Las cuentas de nivel 1 no son validas.");				
		   return false;
		}
		// verifico si no hay cuentas con movimientos de nivel superior
		if($li_nivel > 1)
		{
		   $ls_NextCuenta = $int_scg->uf_scg_next_cuenta_nivel($as_cuenta);
			
			do
			{
			  
			  if($int_scg->uf_scg_select_cuenta($is_codemp,$ls_NextCuenta,$ls_status,$ls_denominacion))
			  {
					if ($ls_status == "C")
					{
						$msg_message("Existen cuentas de nivel superior con Movimiento.");			      
						return false;				
					}
			  }
		   $ls_NextCuenta = $int_scg->uf_scg_next_cuenta_nivel($ls_NextCuenta);
		   $li_nivel=$int_scg->uf_scg_obtener_nivel($ls_NextCuenta);
		   
		   }while( $li_nivel > 1);
		}
		
		return $lb_valido;
	
	}//uf_valida_cuenta
 function uf_reprocesar_plancuenta($ls_codemp, $aa_seguridad)
 {
     ////////////////////////////////////////////////////////////////////////////////////////////////////
     // 	 Function:  uf_reprocesar_plancuenta
     // 	   Access:  public
     //  Arguments:
     //	  Returns:  Boolean
     //Description:  Este método realiza la actualización del plan de cuenta con cuentas contables que no existan
     ////////////////////////////////////////////////////////////////////////////////////////////////////
     $lb_valido = true;
     $int_scg = new class_sigesp_int_scg();
     $int_scg->is_codemp = $ls_codemp;
     $this->io_sql->begin_transaction();
     $ls_mensaje = "";
     //Obtengo los movimientos contables realizados
     $ls_sql = "SELECT sc_cuenta " . "  FROM scg_cuentas " . " WHERE codemp ='" . $ls_codemp . "'" . "   AND status ='C'" . " ORDER BY sc_cuenta ";
     $rs_data = $this->io_sql->select($ls_sql);
     if ($rs_data === false) {
         $this->io_message->message("CLASE->Reprocesar SCG MÉTODO->uf_reprocesar_saldos ERROR->" . $this->io_function->uf_convertirmsg($this->io_sql->message));
         $lb_valido = false;
     } else {
         while (!$rs_data->EOF && $lb_valido) {
             $ls_cuenta = $rs_data->fields["sc_cuenta"];
             $ls_nextCuenta = $ls_cuenta;
             $li_nivel = $int_scg->uf_scg_obtener_nivel($ls_nextCuenta);
             do {
                 $ls_status = '';
                 $ls_denominacion = '';
                 if ($int_scg->uf_scg_select_cuenta($ls_codemp, $ls_nextCuenta, &$ls_status, &$ls_denominacion)) {
                     $ls_denominacionant = $ls_denominacion;
                 } else {
                     $li_nivel = $int_scg->uf_scg_obtener_nivel($ls_nextCuenta);
                     $ls_referencia = $int_scg->uf_scg_next_cuenta_nivel($ls_nextCuenta);
                     $ls_mensaje = $ls_mensaje . ' CUENTA ' . $ls_nextCuenta . '  -  NIVEL ' . $li_nivel . ' - REFERENCIA ' . $ls_referencia . '\\n';
                     $lb_valido = $int_scg->uf_scg_insert_cuenta($ls_codemp, $ls_nextCuenta, $ls_denominacionant, 'S', $li_nivel, $ls_referencia, '');
                 }
                 if ($int_scg->uf_scg_obtener_nivel($ls_nextCuenta) == 0) {
                     break;
                 }
                 $ls_nextCuenta = $int_scg->uf_scg_next_cuenta_nivel($ls_nextCuenta);
                 if ($ls_nextCuenta != "") {
                     $li_nivel = $int_scg->uf_scg_obtener_nivel($ls_nextCuenta);
                 }
             } while ($li_nivel >= 1 && $lb_valido && $ls_nextCuenta != "");
             $rs_data->MoveNext();
         }
     }
     if ($lb_valido) {
         /////////////////////////////////         SEGURIDAD               /////////////////////////////
         $ls_evento = "PROCESS";
         $ls_descripcion = "Reproceso el plan de cuentas Contable";
         $lb_valido = $this->io_seguridad->uf_sss_insert_eventos_ventana($aa_seguridad["empresa"], $aa_seguridad["sistema"], $ls_evento, $aa_seguridad["logusr"], $aa_seguridad["ventanas"], $ls_descripcion);
         /////////////////////////////////         SEGURIDAD               /////////////////////////////
     }
     if ($lb_valido) {
         $this->io_sql->commit();
     } else {
         $this->io_sql->rollback();
     }
     if ($ls_mensaje != "") {
         $ls_mensaje = ' SE INSERTARON LAS SIGUIENTES CUENTAS CONTABLES  \\n\\n  ' . $ls_mensaje;
         $this->io_message->message($ls_mensaje);
     } else {
         $ls_mensaje = ' EL PLAN DE CUENTAS ESTA CORRECTO  \\n\\n  ' . $ls_mensaje;
         $this->io_message->message($ls_mensaje);
     }
     return $lb_valido;
 }