コード例 #1
0
	function uf_print_creditos($as_titulo,$ai_total,$as_cargarcargos,$as_tipo)
	{	
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		//	     Function: uf_print_creditos
		//		   Access: private
		//	    Arguments: ai_total  // Total de filas a imprimir
		//                 as_titulo // Titulo de bienes o servicios
		//                 as_cargarcargos // Si cargamos los cargos ó solo pintamos
		//                 as_tipo // Tipo de SEP si es de bienes ó de servicios
		//	  Description: Método que imprime el grid de créditos y busca los creditos de un Bien, un Servicio ò un concepto
		//	   Creado Por: Ing. Yesenia Moreno/ Ing. Luis Lang
		// Fecha Creación: 17/03/2007								Fecha Última Modificación : 
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		global $io_grid, $io_funciones_sep, $la_cuentacargo, $li_cuenta, $io_solicitud;

		// Titulos del Grid
		$lo_title[1]=$as_titulo;
		$lo_title[2]="Código";
		$lo_title[3]="Denominación";
		$lo_title[4]="Base Imponible";
		$lo_title[5]="Monto del Cargo";
		$lo_title[6]="Sub-Total";
		$ls_estmodpart=$io_solicitud->uf_validar_cambio_imputacion();//verifica si tiene permiso para modificar las partidas
		if ($ls_estmodpart==1)
		{
			$lo_title[7]="";
		}	
		$lo_object[0]="";		
		// Recorrido de el grid de Cargos
		for($li_fila=1;$li_fila<=$ai_total;$li_fila++)
		{
			$ls_codservic  = $io_funciones_sep->uf_obtenervalor("txtcodservic".$li_fila,"");
			$ls_codcar	   = $io_funciones_sep->uf_obtenervalor("txtcodcar".$li_fila,"");
			$ls_dencar	   = $io_funciones_sep->uf_obtenervalor("txtdencar".$li_fila,"");
			$li_bascar	   = $io_funciones_sep->uf_obtenervalor("txtbascar".$li_fila,"");
			$li_moncar	   = $io_funciones_sep->uf_obtenervalor("txtmoncar".$li_fila,"");
			$li_subcargo   = $io_funciones_sep->uf_obtenervalor("txtsubcargo".$li_fila,"");
			$ls_spg_cuenta = $io_funciones_sep->uf_obtenervalor("cuentacargo".$li_fila,"");
			$ls_formula    = $io_funciones_sep->uf_obtenervalor("formulacargo".$li_fila,"");
			$ls_codpro	   = trim($io_funciones_sep->uf_obtenervalor("txtcodgascre".$li_fila,"")); 
			$ls_cuenta	   = trim($io_funciones_sep->uf_obtenervalor("txtcodspgcre".$li_fila,""));
			$ls_estcla	   = trim($io_funciones_sep->uf_obtenervalor("txtstatuscre".$li_fila,""));
			$lo_object[$li_fila][1]="<input name=txtcodservic".$li_fila." type=text id=txtcodservic".$li_fila." class=sin-borde  size=22   style=text-align:center value='".$ls_codservic."' readonly>
									 <input type=hidden name=txtcodgascre".$li_fila." id=txtcodgascre".$li_fila."  value='".$ls_codpro."' readonly>
									 <input type=hidden name=txtcodspgcre".$li_fila." id=txtcodspgcre".$li_fila."  value='".$ls_cuenta."' readonly>
									 <input type=hidden name=txtstatuscre".$li_fila." id=txtstatuscre".$li_fila."  value='".$ls_estcla."' readonly>";
			$lo_object[$li_fila][2]="<input name=txtcodcar".$li_fila."    type=text id=txtcodcar".$li_fila."    class=sin-borde  size=10   style=text-align:center value='".$ls_codcar."' readonly>";
			$lo_object[$li_fila][3]="<input name=txtdencar".$li_fila."    type=text id=txtdencar".$li_fila."    class=sin-borde  size=36   style=text-align:left   value='".$ls_dencar."' readonly>";
			$lo_object[$li_fila][4]="<input name=txtbascar".$li_fila."    type=text id=txtbascar".$li_fila."    class=sin-borde  size=17   style=text-align:right  value='".$li_bascar."' readonly>";
			$lo_object[$li_fila][5]="<input name=txtmoncar".$li_fila."    type=text id=txtmoncar".$li_fila."    class=sin-borde  size=13   style=text-align:right  value='".$li_moncar."' readonly>";
			$lo_object[$li_fila][6]="<input name=txtsubcargo".$li_fila."  type=text id=txtsubcargo".$li_fila."  class=sin-borde  size=17   style=text-align:right  value='".$li_subcargo."' readonly>".
									"<input name=cuentacargo".$li_fila."  type=hidden id=cuentacargo".$li_fila."  value='".$ls_spg_cuenta."'>".
									"<input name=formulacargo".$li_fila." type=hidden id=formulacargo".$li_fila." value='".$ls_formula."'>
									 <input name=codcargo".$li_fila." type=hidden id=codcargo".$li_fila." value='".$ls_codcar."'>";
			if ($ls_estmodpart==1)
            {
				$lo_object[$li_fila][7]="<a href=javascript:ue_cambiar_creditos('".$li_fila."','".$ls_codpro."','".$ls_cuenta."','".$ls_estcla."','2');><img src=../shared/imagebank/mas.gif title=Cambiar width=14 height=14 border=0></a>";
			}
		}
		if($as_cargarcargos=="1")
		{	// Si se deben cargar los cargos Buscamos el Código del último Bien cargado 
			// y obtenemos los cargos de dicho Bien
			require_once("sigesp_sep_c_solicitud.php");
			$io_solicitud=new sigesp_sep_c_solicitud("../../");
			$ls_codigo		 = $io_funciones_sep->uf_obtenervalor("txtcodservic","");
			$ls_codprounidad = $io_funciones_sep->uf_obtenervalor("codprounidad","");
			$ls_estcla       = $io_funciones_sep->uf_obtenervalor("estcla","");
			switch ($as_tipo)
			{
				case "B":
					$rs_data = $io_solicitud->uf_load_cargosbienes($ls_codigo,$ls_codprounidad,$ls_estcla);
					break;
				case "S":
					$rs_data = $io_solicitud->uf_load_cargosservicios($ls_codigo,$ls_codprounidad,$ls_estcla);
					break;
				case "O":
					$rs_data = $io_solicitud->uf_load_cargosconceptos($ls_codigo,$ls_codprounidad,$ls_estcla);
					break;
			}
			while($row=$io_solicitud->io_sql->fetch_row($rs_data))	  
			{
				$lb_existecargo  = true;
				$ls_codservic    = $row["codigo"];
				$ls_codcar       = $row["codcar"];
				$ls_dencar       = $row["dencar"];
				$ls_spg_cuenta   = trim($row["spg_cuenta"]);
				$ls_formula      = $row["formula"];
				$li_bascar       = "0,00";
				$li_moncar       = "0,00";
				$li_subcargo     = "0,00";
				$ls_existecuenta = $row["existecuenta"];
				
				if($ls_spg_cuenta!="")
				{// Si la cuenta presupuestaria es diferente de blanco llenamos un arreglo de cuentas
					$la_cuentacargo[$li_cuenta]["cargo"]=$ls_codcar;
					$la_cuentacargo[$li_cuenta]["cuenta"]=$ls_spg_cuenta;
					if($ls_existecuenta==0)
					{
						$la_cuentacargo[$li_cuenta]["programatica"]="";
						$la_cuentacargo[$li_cuenta]["estcla"]=$ls_estcla;	
					}
					else
					{
						$la_cuentacargo[$li_cuenta]["programatica"]=$ls_codprounidad;
						$la_cuentacargo[$li_cuenta]["estcla"]=$ls_estcla;						
					}
					$li_cuenta++;
				}
				
				$ai_total++;
				///---------campos relacionados al gasto----------------------------------------
				$ls_codpro=trim($io_funciones_sep->uf_obtenervalor("txtcodprocar".$ai_total,"")); 
			    $ls_cuenta=trim($io_funciones_sep->uf_obtenervalor("txtcuentacar".$ai_total,""));
			    $ls_estcla=trim($io_funciones_sep->uf_obtenervalor("txtestclacar".$ai_total,""));
				//------------------------------------------------------------------------------
				if ($as_cargarcargos=="1")
				   { // si los cargos se deben cargar recorremos el arreglo de cuentas
					 // que se lleno con los cargos 
					 $ls_estcla ="";
					 $li_cuenta=count($la_cuentacargo);
					 for ($li_fila2=1;($li_fila2<$li_cuenta);$li_fila2++)
					     {
						   $ls_cuenta       = trim($la_cuentacargo[$li_fila2]["cuenta"]);
						   $ls_programatica = trim($la_cuentacargo[$li_fila2]["programatica"]);
						   $ls_estcla       = $la_cuentacargo[$li_fila2]["estcla"];						
					     }
					 $ls_codpro=$ls_programatica; 
			         $ls_cuenta=$ls_cuenta;
			         $ls_estcla=$ls_estcla;
				   }
				$lo_object[$ai_total][1]="<input name=txtcodservic".$ai_total." type=text id=txtcodservic".$ai_total." class=sin-borde  size=22   style=text-align:center value='".$ls_codservic."' readonly>
										  <input type=hidden name=txtcodgascre".$ai_total." id=txtcodgascre".$ai_total."  value='".$ls_codpro."' readonly>
										  <input type=hidden name=txtcodspgcre".$ai_total." id=txtcodspgcre".$ai_total."  value='".$ls_cuenta."' readonly>
										  <input type=hidden name=txtstatuscre".$ai_total." id=txtstatuscre".$ai_total."  value='".$ls_estcla."' readonly>";
				$lo_object[$ai_total][2]="<input name=txtcodcar".$ai_total."    type=text id=txtcodcar".$ai_total."    class=sin-borde  size=10   style=text-align:center value='".$ls_codcar."' readonly>";
				$lo_object[$ai_total][3]="<input name=txtdencar".$ai_total."    type=text id=txtdencar".$ai_total."    class=sin-borde  size=36   style=text-align:left   value='".$ls_dencar."' readonly>";
				$lo_object[$ai_total][4]="<input name=txtbascar".$ai_total."    type=text id=txtbascar".$ai_total."    class=sin-borde  size=17   style=text-align:right  value='".$li_bascar."' readonly>";
				$lo_object[$ai_total][5]="<input name=txtmoncar".$ai_total."    type=text id=txtmoncar".$ai_total."    class=sin-borde  size=13   style=text-align:right  value='".$li_moncar."' readonly>";
				$lo_object[$ai_total][6]="<input name=txtsubcargo".$ai_total."  type=text id=txtsubcargo".$ai_total."  class=sin-borde  size=17   style=text-align:right  value='".$li_subcargo."' readonly>".
										 "<input name=cuentacargo".$ai_total."  type=hidden id=cuentacargo".$ai_total."  value='".$ls_spg_cuenta."'>".
										 "<input name=formulacargo".$ai_total." type=hidden id=formulacargo".$ai_total." value='".$ls_formula."'>
										  <input name=codcargo".$ai_total." type=hidden id=codcargo".$ai_total." value='".$ls_codcar."'>";
				if ($ls_estmodpart==1)
            	{
					$lo_object[$ai_total][7]="<a href=javascript:ue_cambiar_creditos('".$ai_total."','".$ls_codpro."','".$ls_cuenta."','".$ls_estcla."','2');><img src=../shared/imagebank/mas.gif title=Cambiar width=14 height=14 border=0></a>";
				}
			}
		}		
		print "<p>&nbsp;</p>";
		$io_grid->makegrid($ai_total,$lo_title,$lo_object,840,"Cr&eacute;ditos","gridcreditos");
		unset($io_solicitud);		
		print "<table width='840' height='22' border='0' align='center' cellpadding='0' cellspacing='0'>";
		print "        <tr>";
		print "          <td width='175' height='22' align='right'><div align='left'><input name='btncrear' type='button' class='boton' id='btncerrar' value='Crear Asiento' onClick='javascript: ue_crear_asiento();'></div></td>";
		print "        </tr>";
		print "</table>";
	}// end function uf_print_creditos