#!/perl/bin/perl.exe
$|=1;
#------------------------------------------------------
#Perl Modules
use CGI;
use DBI;
use XML::Simple;
use Data::Dumper;
use Date::Calc qw(Add_Delta_YMD);
use CGI::Carp qw(fatalsToBrowser);
binmode STDOUT, ":encoding(utf8)";
#------------------------------------------------------
#------------------------------------------------------
#HTML printing activation
print "Content-type: text/html\n\n";
#------------------------------------------------------
#------------------------------------------------------
#Get parameters
$form			= new CGI;
$clase			= $form->param('clase');
#$i8_contribuyente_id	= $form->param('i8_contribuyente_id');
$i8_nuc_id		= $form->param('id');
#$properties		= $form->param('properties');
#-------------------------------------------------------------------------
#-------------------------------------------------------------------------
# GET CLASE SCHEMA AND VARIABLES
get_app_data();
open_conection();
#------------------------------------------------------
#------------------------------------------------------
#Define subdirectories and general variables

$PATH		= "../".$lan."/";
$expediente 	= $lan."_nuc_expedientes.html";
$expediente_tr	= $lan."_nuc_expedientes.tr";
$empresas_rept	= $lan."_empresas_rept.html";
$inmuebles_rept	= $lan."_inmuebles_rept.html";

#Variables Globales
$inmuebles=0;#aqui se guardarán los id de inmuebles relacionados al nuc
$empresas=0;#aqui se guardarán los id de empresas relacionados al nuc

#sdm_empresas

$i8_empresa_id 		= "";
#$c14_nit_id		= "";
$v128_denominacion_comercial = "";
$i2_tipo_sociedad_id 	= "";
$c1_tipo_empresa_id 	= "";
$c1_tipo_local_id 	= "";
$c10_matricula 		= "";
$dt_inicio_operaciones 	= "";
$v32_tipo_sociedad 	= "";

#para rep resentante legal de la empresa
$c14_nit_id_rep		= "";
$c11_dui_id_rep		= "";
$c16_pasaporte_id_rep	= "";
$c14_iva_id_rep		= "";

$c64_num_id 		= "";
$c16_codigo_catastral_id = "";
$c11_sector_id 		= "";
$c2_poligono_id 	= "";
$c2_block_id 		= "";
$i4_parcela 		= "";
$c2_zona_id 		= "";
$c2_barrio_id 		= "";
$c4_calle_id 		= "";
$c4_avenida_id 		= "";
$c2_pasaje_id 		= "";
$c2_senda_id 		= "";
$c4_casa 		= "";
$i2_tipo_sector_id 	= "";
$ts_update 		= "";
$ts_in 			= "";
$txt_referencia 	= "";

#sdm_inmuebles
$id_temp 		= "";
$i8_inmueble_id 	= "";
$c64_num_id		= "";
$c11_sector_id		= "";
$i2_tipo_sector_id 	= "";
$c4_casa		= "";
$i4_parcela		= "";
$c2_poligono_id 	= "";
$c2_block_id		= "";
$c2_zona_id		= "";
$c2_barrio_id		= "";
$c4_calle_id		= "";
$c4_avenida_id		= "";
$c2_pasaje_id		= "";
$c2_senda_id		= "";
$v64_sector		= "";
$v64_tipo_sector	= "";

#ign:
$c11_ign_id 		= "";
$c8_libro_id 		= "";
$c8_folio_id 		= "";
$c8_numero_id 		= "";
$c8_referencia_id  	= "";

#contribuyente
$i8_contribuyente_id	= "";
$v64_nombres		= "";
$v64_apellidos 		= "";
$c14_nit_id		= "";
$c11_dui_id		= "";
$c16_pasaporte_id	= "";
$c14_iva_id		= "";
$v128_contribuyente	= "";

#poligono
$v64_poligono= "";

#block
$v64_block= "";
	
#barrio:
$v64_barrio= "";

#zona:
$v64_zona= "";

#calle:
$v64_calle= "";

#avenida:
$v64_avenida= "";

#pasaje:
$v64_pasaje= "";

#senda;
$v64_senda= "";
	
#propietarios
$propietarios="";
	
#suministros
$suministros="";
	
#recolecciones
$recolecciones="";
	
#alcantarillados
$alcantarillados="";
	
#telecomunicaciones
$telecomunicaciones="";

#servicios
$servicios="";

#imponibles
$imponibles="";

#areas
$areas="";

#frentes
$frentes="";
	
#consumos
$consumos="";
	
#pesas
$pesas="";


#tipo_construccion
$i2_tipo_construccion_id = "";
$i2_tipo_techo_id	 = "";
$v64_tipo_construccion   = "";
$v64_tipo_techo 	 = "";
		
#condicion_terreno
$i2_tipo_condicion_terreno_id 	= "";
$v64_tipo_condicion_terreno 	= "";
				
#valuos
$v64_valuo = "";
#$expediente_incons 	= $appid."_incons_".$lan.".html";
$fin_href	= "</a>";	
#------------------------------------------------------
#-----------------------------------------------------
###Conexiones para base de datos de catastro			

#-------------------------------------------------------
#MAIN PROGRAM
#print "<br>".$clase;
#print "<br>".$appid;
#print "<br>".$i8_nuc_id;

get_nuc_expedientes();


exit;
#-------------------------------------------------------
#SUB-ROUTINES
sub get_nuc_expedientes{
	my $i=0;
	$inmuebles=0;
	$empresas=0;
	@params=split(/\|/,$clase);
	$clase=$params[0];
	$tabla="sdd_nuc_expedientes";
	my $sql="select i8_expediente_id,c3_tipo_generador_id from $tabla WHERE i8_nuc_id='$i8_nuc_id' and c3_tipo_generador_id='INM' group by i8_expediente_id ";
	#print "<br>".$query."<br>";
	my $sth 	= $dbh->prepare($sql);
	$sth->execute or die SQL_fail($sql,$dbh,'sub get_nuc');
	while (my @row = $sth->fetchrow_array) {
		$inmuebles[$i] =  $row[0];
		generar_rept_inmuebles($row[0]);
		$i++;
	}
	my $sql2="select i8_expediente_id,c3_tipo_generador_id from $tabla WHERE i8_nuc_id='$i8_nuc_id' and c3_tipo_generador_id='EMP' group by i8_expediente_id ";;	
	#Obteniendo las empresas
	$i=0;
	my $sth2 	= $dbh->prepare($sql2);
	$sth2->execute or die SQL_fail($sql2,$dbh,'sub get_nuc');
	while (my @row = $sth2->fetchrow_array) {
		$empresas[$i] =  $row[0];
		generar_rept_empresas($row[0]);
		$i++;
	}
	if ($i==0){return 0}
	return 1;
}

sub generar_rept_inmuebles{
	my($id)=@_;
	my $p=0;
	
	$id_temp = $id;

	#sdm_inmuebles
	$i8_inmueble_id 	= "";
	$c64_num_id		= "";
	$c11_sector_id		= "";
	$i2_tipo_sector_id 	= "";
	$c4_casa		= "";
	$i4_parcela		= "";
	$c2_poligono_id 	= "";
	$c2_block_id		= "";
	$c2_zona_id		= "";
	$c2_barrio_id		= "";
	$c4_calle_id		= "";
	$c4_avenida_id		= "";
	$c2_pasaje_id		= "";
	$c2_senda_id		= "";
	$v64_sector		= "";
	$v64_tipo_sector	= "";

	#ign:
	$c11_ign_id 		= "";
	$c8_libro_id 		= "";
	$c8_folio_id 		= "";
	$c8_numero_id 		= "";
	$c8_referencia_id  	= "";

	#contribuyente
	$i8_contribuyente_id	= "";
	$v64_nombres		= "";
	$v64_apellidos 		= "";
	$c14_nit_id		= "";
	$c11_dui_id		= "";
	$c16_pasaporte_id	= "";
	$c14_iva_id		= "";
	$v128_contribuyente	= "";

	#poligono
	$v64_poligono= "";
	
	#block
	$v64_block= "";
	
	#barrio:
	$v64_barrio= "";

	#zona:
	$v64_zona= "";
		
	#calle:
	$v64_calle= "";
	
	#avenida:
	$v64_avenida= "";

	#pasaje:
	$v64_pasaje= "";

	#senda;
	$v64_senda= "";
		
	#propietarios
	$propietarios="";
	
	#suministros
	$suministros="";
	
	#nisc_nics
	$nis_nic="";
	
	#recolecciones
	$recolecciones="";
	
	#alcantarillados
	$alcantarillados="";
	
	#telecomunicaciones
	$telecomunicaciones="";

	#servicios
	$servicios="";

	#imponibles
	$imponibles="";
	
	#areas
	$areas="";

	#frentes
	$frentes="";
		
	#consumos
	$consumos="";
		
	#pesas
	$pesas="";
	
	
	#tipo_construccion
	$i2_tipo_construccion_id = "";
	$i2_tipo_techo_id	 = "";
	$v64_tipo_construccion   = "";
	$v64_tipo_techo 	 = "";
		
	#condicion_terreno
	$i2_tipo_condicion_terreno_id 	= "";
	$v64_tipo_condicion_terreno 	= "";
				
	#valuos
	$v64_valuo = "";
	$template_rows = "";
	$body = "";
	my $sql11="SELECT i8_inmueble_id,c11_sector_id,i2_tipo_sector_id,c4_casa,i4_parcela,c2_poligono_id,c2_block_id,c2_zona_id,c2_barrio_id,c4_calle_id,c4_avenida_id,c2_pasaje_id,c2_senda_id,c8_cuenta_rct_id,c16_estado,c16_codigo_catastral_id FROM sdm_inmuebles where i8_inmueble_id=$id";
	my $sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_inmueble_id 	= $row[0];
		#$c64_num_id		= $row[1];
		$c11_sector_id		= $row[1];
		$i2_tipo_sector_id 	= $row[2];
		$c4_casa		= $row[3];
		$i4_parcela		= $row[4];
		$c2_poligono_id 	= $row[5];
		$c2_block_id		= $row[6];
		$c2_zona_id		= $row[7];
		$c2_barrio_id		= $row[8];
		$c4_calle_id		= $row[9];
		$c4_avenida_id		= $row[10];
		$c2_pasaje_id		= $row[11];
		$c2_senda_id		= $row[12];
		$c8_cuenta_rct_id	= $row[13];			
		$c16_estado		= $row[14];
		$c16_codigo_catastral_id= $row[15];
		
		#obteniendo el nombre del sector
		if($c11_sector_id){
			$sql12="SELECT v64_sector FROM sdm_sectores where c11_sector_id='$c11_sector_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			if (my @row11 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row11;$i++){
					$row11[$i]=~ s/\Ã±/ñ/g;
					$row11[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_sector		= $row11[0];
			}
		}
		if($i2_tipo_sector_id){
			$sql12="SELECT v64_tipo_sector FROM sdm_tipo_sectores where i2_tipo_sector_id='$i2_tipo_sector_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			while (my @row11 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row11;$i++){
					$row11[$i]=~ s/\Ã±/ñ/g;
					$row11[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_tipo_sector	= $row11[0];
			}
		}
	}

	$sql11="SELECT a.c11_ign_id,a.c8_libro_id,a.c8_folio_id,a.c8_numero_id,a.c8_referencia_id FROM sdd_inmueble_cnr a, sdm_inmuebles b WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$c11_ign_id 		= $row[0];
		$c8_libro_id 		= $row[1];
		$c8_folio_id 		= $row[2];
		$c8_numero_id 		= $row[3];
		$c8_referencia_id  	= $row[4];
	}
	
	$sql11="SELECT a.v64_nombres,a.v64_apellidos,a.c14_nit_id,a.c11_dui_id,a.c16_pasaporte_id,a.c14_iva_id,a.v128_contribuyente FROM sdm_contribuyentes a, sdd_inmueble_contribuyentes b, sdm_inmuebles c WHERE c.i8_inmueble_id=b.i8_inmueble_id and  b.i8_contribuyente_id=a.i8_contribuyente_id and b.i2_tipo_contribuyente_id='1' and c.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_nombres		= $row[0];
		$v64_apellidos 		= $row[1];
		$c14_nit_id		= $row[2];
		$c11_dui_id		= $row[3];
		$c16_pasaporte_id	= $row[4];
		$c14_iva_id		= $row[5];
		$v128_contribuyente	= $row[6];
		
		#print "<br>contribuyente: $v128_contribuyente<br>";
		
	}
				
	#poligonos:
	$sql11="SELECT a.v64_poligono FROM sdd_sector_poligonos a, sdm_inmuebles b WHERE a.c11_sector_id=b.c11_sector_id and a.c2_poligono_id=b.c2_poligono_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_poligono		= $row[0];
	}
	
	#blocks:
	$sql11="SELECT a.v64_block FROM sdd_sector_blocks a, sdm_inmuebles b WHERE a.c11_sector_id=b.c11_sector_id and a.c2_block_id=b.c2_block_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_block		= $row[0];
	}
	
	#barrio:
	$sql11="SELECT a.v64_barrio FROM sdd_sector_barrios a, sdm_inmuebles b WHERE a.c11_sector_id=b.c11_sector_id and a.c2_barrio_id=b.c2_barrio_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_barrio		= $row[0];
	}
	
	#zona:
	$sql11="SELECT a.v64_zona FROM sdd_sector_zonas a, sdm_inmuebles b WHERE a.c11_sector_id=b.c11_sector_id and a.c2_zona_id=b.c2_zona_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_zona		= $row[0];
	}
	
	#calle:
	$sql11="SELECT a.v64_calle FROM sdd_sector_calles a, sdm_inmuebles b  WHERE a.c11_sector_id=b.c11_sector_id and a.c4_calle_id=b.c4_calle_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_calle		= $row[0];
	}
	
	#avenida:
	$sql11="SELECT a.v64_avenida FROM sdd_sector_avenidas a, sdm_inmuebles b WHERE a.c11_sector_id=b.c11_sector_id and a.c4_avenida_id=b.c4_avenida_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_avenida		= $row[0];
	}
	
	#pasaje:
	$sql11="SELECT a.v64_pasaje FROM sdd_sector_pasajes a, sdm_inmuebles b WHERE a.c11_sector_id=b.c11_sector_id and a.c2_pasaje_id=b.c2_pasaje_id and b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_pasaje		= $row[0];
	}
	
	#senda;
	$sql11="SELECT a.v64_senda FROM sdd_sector_sendas a, sdm_inmuebles b WHERE a.c11_sector_id=b.c11_sector_id and a.c2_senda_id=b.c2_senda_id and  b.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_senda		= $row[0];
	}

	#propietarios - varios;
	$template_rows="";
	$body="";
	$sql11="SELECT b.i8_contribuyente_id,b.i2_tipo_contribuyente_id,b.dt_desde,c.v128_contribuyente,d.v64_tipo_contribuyente,c.c14_nit_id,c.c11_dui_id,c.c14_iva_id,c.c16_pasaporte_id FROM sdm_inmuebles a, sdd_inmueble_contribuyentes b, sdm_contribuyentes c, sdm_tipo_contribuyentes d WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i8_contribuyente_id=c.i8_contribuyente_id and b.i2_tipo_contribuyente_id=d.i2_tipo_contribuyente_id and a.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_contribuyente_id 	= $row[0];
		$i2_tipo_contribuyente_id = $row[1];
		$dt_desde		= $row[2];
		$v128_contribuyente_tmp	= $row[3];
		$v64_tipo_contribuyente = $row[4];
		$c14_nit_id			= $row[5];
		$c11_dui_id			= $row[6];
		$c14_iva_id			= $row[7];
		$c16_pasaporte_id		= $row[8];
		$body = "<TD>$i8_contribuyente_id</TD><TD>$v128_contribuyente_tmp</TD><TD>$v64_tipo_contribuyente</TD><TD>$dt_desde</TD><TD>$c14_iva_id</TD><TD>$c11_dui_id</TD><TD>$c14_iva_id</TD><TD>$c16_pasaporte_id</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	
	$propietarios=$template_rows;
	
	##resoluciones
	$template_rows="";
	$body="";
	$sql11="SELECT a.i8_resolucion_id,a.dt_resolucion,a.tm_resolucion,concat(b.v32_fname,' ',b.v32_lname) from sdd_inmueble_resoluciones a inner join sdm_users b on a.i8_user_id=b.i8_user_id where a.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_resolucion_id 	= $row[0];
		$dt_resolucion		= $row[1];
		$tm_resolucion		= $row[2];
		$usuario		= $row[3];
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_resolucion_id</TD><TD>$dt_resolucion</TD><TD>$tm_resolucion</TD><TD>$usuario</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	
	$resoluciones=$template_rows;

	#suministros
	$sql23="SELECT b.i8_nis_id,b.c2_gravable,b.v64_nombres,b.v64_apellidos,b.c16_medidor_id,b.c8_cuenta,b.dt_desde,b.dt_hasta FROM sdm_inmuebles a, sdd_inmueble_suministros_energias b WHERE  a.i8_inmueble_id=b.i8_inmueble_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_nis_id		= $row[0];
		$c2_gravable		= $row[1];
		$v64_nombres2		= $row[2];
		$v64_apellidos2		= $row[3];
		$c16_medidor_id		= $row[4];
		$c8_cuenta		= $row[5];
		$dt_desde		= $row[6];
		$dt_hasta		= $row[7];
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_nis_id</TD><TD>$c2_gravable</TD><TD>$v64_nombres2</TD><TD>$v64_apellidos2</TD><TD>$c16_medidor_id</TD><TD>$c8_cuenta</TD><TD>$dt_desde</TD><TD>$dt_hasta</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$suministros=$template_rows;

	#nis_nics
	$sql23="SELECT b.i8_nis_id,b.i8_nic_id,b.i8_contrato_id,c16_unicom,c16_medidor_id,c8_estado,c3_facturador_id FROM sdm_inmuebles a, sdd_inmueble_suministro_nics b WHERE  a.i8_inmueble_id=b.i8_inmueble_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql23);
	$sth11->execute or die SQL_fail($sql23,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_nis_id		= $row[0];
		$i8_nic_id		= $row[1];
		$i8_contrato_id	= $row[2];
		$c16_unicom		= $row[3];
		$c16_medidor_id	= $row[4];
		$c8_estado		= $row[5];
		$c3_facturador  = $row[6];

		$body = "<TD>$i8_nis_id</TD><TD>$i8_nic_id</TD><TD>$i8_contrato_id</TD><TD>$c16_unicom</TD><TD>$c16_medidor_id</TD><TD>$c8_estado</TD><TD>$c3_facturador</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$nis_nic=$template_rows;
		
	#recolecciones
	$sql11="SELECT b.i2_tipo_recolector_id,b.i8_proveedor_id,b.v128_proveedor,b.c4_ruta,b.dt_desde,b.dt_hasta,c.v64_tipo_recolector FROM sdm_inmuebles a, sdd_inmueble_servicios_recolecciones b, sdm_tipo_recolectores c WHERE  a.i8_inmueble_id=b.i8_inmueble_id and b.i2_tipo_recolector_id=c.i2_tipo_recolector_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";	
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i2_tipo_recolector_id  = $row[0];
		$i8_proveedor_id	= $row[1];
		$v128_proveedor		= $row[2];
		$c4_ruta		= $row[3];
		$dt_desde		= $row[4];
		$dt_hasta		= $row[5];
		$v64_tipo_recolector	= $row[6];
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$v64_tipo_recolector</TD><TD>$i8_proveedor_id</TD><TD>$v128_proveedor</TD><TD>$c4_ruta</TD><TD>$dt_desde</TD><TD>$dt_hasta</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$recolecciones=$template_rows;
		
	#alcantarillados
	$sql11="SELECT b.i2_tipo_alcantarillado_id,b.i2_tipo_alcantarillado_estado_id,b.v128_proveedor,b.dt_desde,c.v64_tipo_alcantarillado,d.v64_tipo_alcantarillado_estado FROM sdm_inmuebles a, sdd_inmueble_condiciones_sanitarias b, sdm_tipo_alcantarillados c, sdm_tipo_alcantarillado_estados d WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i2_tipo_alcantarillado_id=c.i2_tipo_alcantarillado_id and b.i2_tipo_alcantarillado_estado_id=d.i2_tipo_alcantarillado_estado_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i2_tipo_alcantarillado_id		= $row[0];
		$i2_tipo_alcantarillado_estado_id	= $row[1];
		$v128_proveedor				= $row[2];
		$dt_desde				= $row[3];
		$v64_tipo_alcantarillado		= $row[4];
		$v64_tipo_alcantarillado_estado		= $row[5];
		#faltan los otros, debe ser una tabla
		$body = "<TD>$v64_tipo_alcantarillado</TD><TD>$v64_tipo_alcantarillado_estado</TD><TD>$v128_proveedor</TD><TD>$dt_desde</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$alcantarillados=$template_rows;
		
	#telecomunicaciones
	$sql11="SELECT b.i2_tipo_telecomunicacion_id,b.i2_tipo_telecomunicacion_estado_id,b.v128_proveedor,b.dt_desde,c.v64_tipo_telecomunicacion,d.v64_tipo_telecomunicacion_estado FROM sdm_inmuebles a, sdd_inmueble_telecomunicaciones b, sdm_tipo_telecomunicaciones c, sdm_tipo_telecomunicacion_estados d WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i2_tipo_telecomunicacion_id=c.i2_tipo_telecomunicacion_id and b.i2_tipo_telecomunicacion_estado_id=d.i2_tipo_telecomunicacion_estado_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i2_tipo_telecomunicacion_id 		= $row[0];
		$i2_tipo_telecomunicacion_estado_id 	= $row[1];
		$v128_proveedor 			= $row[2];
		$dt_desde 				= $row[3];
		$v64_tipo_telecomunicacion 		= $row[4];
		$v64_tipo_telecomunicacion_estado	= $row[5];
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$v64_tipo_telecomunicacion</TD><TD>$v64_tipo_telecomunicacion_estado</TD><TD>$v128_proveedor</TD><TD>$dt_desde</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";

	}
	$telecomunicaciones=$template_rows;
		
		#servicios
	$sql11="SELECT b.c8_tributo_id,b.c1_tipo_tarifa_id,b.v64_codigo,b.i2_tipo_nivel_id,b.c2_gravable,b.dt_desde,b.dt_hasta FROM sdm_inmuebles a,sdd_inmueble_servicios b WHERE a.i8_inmueble_id=b.i8_inmueble_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$c8_tributo_id		= $row[0];
		$c1_tipo_tarifa_id	= $row[1];
		$v64_codigo		= $row[2];
		$i2_tipo_nivel_id	= $row[3];
		$c2_gravable		= $row[4];
		$dt_desde		= $row[5];
		$dt_hasta		= $row[6];
		
		if($c8_tributo_id){
			$sql12="SELECT v64_tributo FROM sdm_tributos where c8_tributo_id='$c8_tributo_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			if (my @row11 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row11;$i++){
					$row11[$i]=~ s/\Ã±/ñ/g;
					$row11[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_tributo		= $row11[0];
			}#while
		}#if
		
		if($i2_tipo_nivel_id){
			$sql12="SELECT v64_tipo_nivel FROM sdm_tipo_niveles where i2_tipo_nivel_id='$i2_tipo_nivel_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			if (my @row12 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row12;$i++){
					$row12[$i]=~ s/\Ã±/ñ/g;
					$row12[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_tipo_nivel		= $row12[0];
			}#while
		
		}
		
		if($c1_tipo_tarifa_id){
			$sql12="SELECT v64_tipo_tarifa FROM sdm_tipo_tarifas where c1_tipo_tarifa_id='$c1_tipo_tarifa_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			if (my @row13 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row13;$i++){
					$row13[$i]=~ s/\Ã±/ñ/g;
					$row13[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_tipo_tarifa	= $row13[0];
			}#while
		}
		#faltan los otros, debe ser una tabla
		$body = "<TD>$v64_tributo</TD><TD>$v64_tipo_tarifa</TD><TD>$v64_codigo</TD><TD>$v64_tipo_nivel</TD><TD>$c2_gravable</TD><TD>$dt_desde</TD><TD>$dt_hasta</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$servicios=$template_rows;
	
	#imponibles
	$sql11="SELECT b.c2_tipo_base_imponible_id,b.i2_tipo_nivel_id,b.f4_total,b.f4_deducible,b.dt_desde,c.v64_tipo_base_imponible,d.v64_tipo_nivel FROM sdm_inmuebles a, sdd_inmueble_bases_imponibles b, sdm_tipo_bases_imponibles c, sdm_tipo_niveles d WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.c2_tipo_base_imponible_id=c.c2_tipo_base_imponible_id and b.i2_tipo_nivel_id=d.i2_tipo_nivel_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$c2_tipo_base_imponible_id = $row[0];
		$i2_tipo_nivel_id	= $row[1];
		$f4_total		= $row[2];
		$f4_deducible		= $row[3];
		$dt_desde		= $row[4];
		$v64_tipo_base_imponible	= $row[5];
		$v64_tipo_nivel			= $row[6];
		#faltan los otros, debe ser una tabla
		
		$body = "<TD>$v64_tipo_base_imponible</TD><TD>$v64_tipo_nivel</TD><TD>$f4_total</TD><TD>$f4_deducible</TD><TD>$dt_desde</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$imponibles=$template_rows;
	
	#areas
	$sql11="SELECT b.i2_tipo_nivel_id,b.i2_factor_division,b.c2_tipo_uso_suelo_id,b.f4_area,b.f4_area_deducible,b.dt_desde,c.v64_tipo_nivel,d.v64_tipo_uso_suelo FROM sdm_inmuebles a, sdd_inmueble_areas b, sdm_tipo_niveles c, sdm_tipo_uso_suelos d WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i2_tipo_nivel_id=c.i2_tipo_nivel_id and b.c2_tipo_uso_suelo_id=d.c2_tipo_uso_suelo_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i2_tipo_nivel_id	= $row[0];
		$i2_factor_division	= $row[1];
		$c2_tipo_uso_suelo_id	= $row[2];
		$f4_area		= $row[3];
		$f4_area_deducible	= $row[4];
		$dt_desde		= $row[5];
		$v64_tipo_nivel		= $row[6];
		$v64_tipo_uso_suelo	= $row[7];
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$v64_tipo_nivel</TD><TD>$i2_factor_division</TD><TD>$v64_tipo_uso_suelo</TD><TD>$f4_area</TD><TD>$f4_area_deducible</TD><TD>$dt_desde</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$areas=$template_rows;
	
	#frentes
	$sql11="SELECT b.i2_tipo_nivel_id,b.i2_tipo_frente_id,b.f4_longitud,b.f4_ancho_calle,b.dt_desde,c.v64_tipo_nivel,d.v64_tipo_frente FROM sdm_inmuebles a, sdd_inmueble_frentes b, sdm_tipo_niveles c, sdm_tipo_frentes d WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i2_tipo_nivel_id=c.i2_tipo_nivel_id and b.i2_tipo_frente_id=d.i2_tipo_frente_id and a.i8_inmueble_id='$id' ";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i2_tipo_nivel_id	= $row[0];
		$i2_tipo_frente_id	= $row[1];
		$f4_longitud		= $row[2];
		$f4_ancho_calle		= $row[3];
		$dt_desde		= $row[4];
		$v64_tipo_nivel		= $row[5];
		$v64_tipo_frente	= $row[6];
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$v64_tipo_nivel</TD><TD>$v64_tipo_frente</TD><TD>$f4_longitud</TD><TD>$f4_ancho_calle</TD><TD>$dt_desde</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$frentes=$template_rows;
	
	
	#consumos
	$sql11="SELECT b.i8_nis_id,b.f4_consumo,b.dt_desde,b.dt_hasta FROM sdm_inmuebles a, sdd_inmueble_suministro_energia_consumos b WHERE a.i8_inmueble_id=b.i8_inmueble_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_nis_id		= $row[0];
		$f4_consumo		= $row[1];
		$dt_desde		= $row[2];
		$dt_hasta		= $row[3];
		
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_nis_id</TD><TD>$f4_consumo</TD><TD>$dt_desde</TD><TD>$dt_hasta</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$consumos=$template_rows;
	
	#pesas
	$sql11="SELECT b.i8_proveedor_id,b.f4_peso,b.dt_desde,b.dt_hasta FROM sdm_inmuebles a, sdd_inmueble_servicio_recoleccion_pesas b WHERE a.i8_inmueble_id=b.i8_inmueble_id and a.i8_inmueble_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	while (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_proveedor_id	= $row[0];
		$f4_peso		= $row[1]; 
		$dt_desde		= $row[2];
		$dt_hasta		= $row[3];
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_proveedor_id</TD><TD>$f4_peso</TD><TD>$dt_desde</TD><TD>$dt_hasta</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$pesas=$template_rows;
	
	#tipo_construccion
	$sql11="SELECT b.i2_tipo_construccion_id,b.i2_tipo_techo_id,c.v64_tipo_construccion,d.v64_tipo_techo FROM sdm_inmuebles a, sdd_inmueble_tipo_construcciones b, sdm_tipo_construcciones c, sdm_tipo_techos d WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i2_tipo_construccion_id=c.i2_tipo_construccion_id and b.i2_tipo_techo_id=d.i2_tipo_techo_id and a.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i2_tipo_construccion_id = $row[0];
		$i2_tipo_techo_id	 = $row[1];
		$v64_tipo_construccion   = $row[2];
		$v64_tipo_techo 	 = $row[3];
	}
	
	#condicion_terreno
	$sql11="SELECT b.i2_tipo_condicion_terreno_id,c.v64_tipo_condicion_terreno FROM sdm_inmuebles a, sdd_inmueble_condiciones_terrenos b, sdm_tipo_condiciones_terrenos c WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.i2_tipo_condicion_terreno_id=c.i2_tipo_condicion_terreno_id and a.i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i2_tipo_condicion_terreno_id = $row[0];
		$v64_tipo_condicion_terreno = $row[1];
	}
	
	#valuos
	$sql11="SELECT f4_valuo FROM sdd_inmueble_valuos WHERE i8_inmueble_id='$id'";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_valuo = $row[0];
	}

	construct_page_inmuebles($id);
	
}

sub generar_rept_empresas{
	my($id)=@_;
	my $p=0;
	
	$id_temp = $id;
	#sdm_empresas
	$i8_empresa_id 		= "";
	$c14_nit_id		= "";
	$v128_denominacion_comercial = "";
	$i2_tipo_sociedad_id 	= "";
	$c1_tipo_empresa_id 	= "";
	$c1_tipo_local_id 	= "";
	$c10_matricula 		= "";
	$dt_inicio_operaciones 	= "";
	$v32_tipo_sociedad 	= "";
	
	#sdm_inmuebles
	$i8_inmueble_id 	= "";
	$c64_num_id		= "";
	$c11_sector_id		= "";
	$i2_tipo_sector_id 	= "";
	$c4_casa		= "";
	$i4_parcela		= "";
	$c2_poligono_id 	= "";
	$c2_block_id		= "";
	$c2_zona_id		= "";
	$c2_barrio_id		= "";
	$c4_calle_id		= "";
	$c4_avenida_id		= "";
	$c2_pasaje_id		= "";
	$c2_senda_id		= "";
	$v64_sector		= "";
	$v64_tipo_sector	= "";

	#ubicacion
	
	$c64_num_id 		= "";
	$c16_codigo_catastral_id = "";
	$c11_sector_id 		= "";
	$c2_poligono_id 	= "";
	$c2_block_id 		= "";
	$i4_parcela 		= "";
	$c2_zona_id 		= "";
	$c2_barrio_id 		= "";
	$c4_calle_id 		= "";
	$c4_avenida_id 		= "";
	$c2_pasaje_id 		= "";
	$c2_senda_id 		= "";
	$c4_casa 		= "";
	$i2_tipo_sector_id 	= "";
	$ts_update 		= "";
	$ts_in 			= "";
	$txt_referencia 	= "";

	#ign:
	$c11_ign_id 		= "";
	$c8_libro_id 		= "";
	$c8_folio_id 		= "";
	$c8_numero_id 		= "";
	$c8_referencia_id  	= "";

	#contribuyente
	$i8_contribuyente_id	= "";
	$v64_nombres		= "";
	$v64_apellidos 		= "";
	
	#para representante legal de empresa
	$c14_nit_id_rep		= "";
	$c11_dui_id_rep		= "";
	$c16_pasaporte_id_rep	= "";
	$c14_iva_id_rep		= "";
	$v128_contribuyente	= "";

	#poligono
	$v64_poligono= "";
	
	#block
	$v64_block= "";
	
	#barrio:
	$v64_barrio= "";

	#zona:
	$v64_zona= "";
		
	#calle:
	$v64_calle= "";
	
	#avenida:
	$v64_avenida= "";

	#pasaje:
	$v64_pasaje= "";

	#senda;
	$v64_senda= "";
		
	#propietarios
	$propietarios="";
	
	#suministros
	$suministros="";
	
	#recolecciones
	$recolecciones="";
	
	#alcantarillados
	$alcantarillados="";
	
	#telecomunicaciones
	$telecomunicaciones="";

	#servicios
	$servicios="";

	#imponibles
	$imponibles="";
	
	#areas
	$areas="";

	#frentes
	$frentes="";
		
	#consumos
	$consumos="";
		
	#pesas
	$pesas="";
	
	
	
	#tipo_construccion
	$i2_tipo_construccion_id = "";
	$i2_tipo_techo_id	 = "";
	$v64_tipo_construccion   = "";
	$v64_tipo_techo 	 = "";
		
	#condicion_terreno
	$i2_tipo_condicion_terreno_id 	= "";
	$v64_tipo_condicion_terreno 	= "";
				
	#valuos
	$v64_valuo = "";
	
	#sdm_empresas
	$template_rows 	= "";
	$body 		= "";
	
	#obteniendo los datos que no se repiten del inmueble
	$sql11="SELECT a.i8_empresa_id,a.i8_contribuyente_id,a.c14_nit_id,a.v128_denominacion_comercial,a.i2_tipo_sociedad_id,a.c1_tipo_empresa_id,a.c1_tipo_local_id,a.c10_matricula,a.dt_inicio_operaciones,b.v32_tipo_sociedad,a.c16_estado FROM sdm_empresas a, sdm_tipo_sociedades b WHERE a.i2_tipo_sociedad_id=b.i2_tipo_sociedad_id  and a.i8_empresa_id='$id'";
	#print "$sql11 <br>";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_empresa_id 		= $row[0];
		$i8_contribuyente_id	= $row[1];
		$c14_nit_id 		= $row[2];
		$v128_denominacion_comercial = $row[3];
		$i2_tipo_sociedad_id 	= $row[4];
		$c1_tipo_empresa_id 	= $row[5];
		$c1_tipo_local_id	= $row[6];
		$c10_matricula 		= $row[7];
		$dt_inicio_operaciones  = $row[8];
		$v32_tipo_sociedad 	= $row[9];
		$c16_estado		= $row[10];
	}
		
	#ubicacion
	$sql11="SELECT b.i8_empresa_id,b.c64_num_id,b.c16_codigo_catastral_id,b.c11_sector_id,b.c2_poligono_id,b.c2_block_id,b.i4_parcela,b.c2_zona_id,b.c2_barrio_id,b.c4_calle_id,b.c4_avenida_id,b.c2_pasaje_id,b.c2_senda_id,b.c4_casa,b.i2_tipo_sector_id,b.ts_update,b.ts_in,b.txt_referencia,b.c16_codigo_catastral_id FROM sdm_empresas a, sdd_empresa_ubicacion b WHERE a.i8_empresa_id=b.i8_empresa_id and a.i8_empresa_id = '$id' ";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_empresa_id 		= $row[0];
		$c64_num_id 		= $row[1];
		$c16_codigo_catastral_id = $row[2];
		$c11_sector_id 		= $row[3];
		$c2_poligono_id 	= $row[4];
		$c2_block_id 		= $row[5];
		$i4_parcela 		= $row[6];
		$c2_zona_id 		= $row[7];
		$c2_barrio_id 		= $row[8];
		$c4_calle_id 		= $row[9];
		$c4_avenida_id 		= $row[10];
		$c2_pasaje_id 		= $row[11];
		$c2_senda_id 		= $row[12];
		$c4_casa 		= $row[13];
		$i2_tipo_sector_id 	= $row[14];
		$ts_update 		= $row[15];
		$ts_in 			= $row[16];
		$txt_referencia 	= $row[17];
		$c16_codigo_catastral_id= $row[18];
		#sector:
		
		if($c11_sector_id){
			#sector
			$sql_temp="SELECT v64_sector FROM sdm_sectores WHERE c11_sector_id='$c11_sector_id'";
			my $sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				
				$v64_sector		= $row[0];
			}
			
			#poligonos:
			$sql_temp="SELECT v64_poligono FROM sdd_sector_poligonos WHERE c11_sector_id='$c11_sector_id' and c2_poligono_id='$c2_poligono_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_poligono		= $row[0];
			}
			
			#blocks:
			$sql_temp="SELECT v64_block FROM sdd_sector_blocks WHERE c11_sector_id='$c11_sector_id' and c2_block_id='$c2_block_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_block		= $row[0];
			}
			
			#barrio:
			$sql_temp="SELECT v64_barrio FROM sdd_sector_barrios WHERE c11_sector_id='$c11_sector_id' and c2_barrio_id='$c2_barrio_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_barrio		= $row[0];
			}
			
			#zona:
			$sql_temp="SELECT v64_zona FROM sdd_sector_zonas WHERE c11_sector_id='$c11_sector_id' and c2_zona_id='$c2_zona_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_zona		= $row[0];
			}
			
			#calle:
			$sql_temp="SELECT v64_calle FROM sdd_sector_calles WHERE c11_sector_id='$c11_sector_id' and c4_calle_id='$c4_calle_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_calle		= $row[0];
			}
			
			#avenida:
			$sql_temp="SELECT v64_avenida FROM sdd_sector_avenidas WHERE c11_sector_id='$c11_sector_id' and c4_avenida_id='$c4_avenida_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_avenida		= $row[0];
			}
			
			#pasaje:
			$sql_temp="SELECT v64_pasaje FROM sdd_sector_pasajes WHERE c11_sector_id='$c11_sector_id' and c2_pasaje_id='$c2_pasaje_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_pasaje		= $row[0];
			}
			
			#senda;
			$sql_temp="SELECT v64_senda FROM sdd_sector_sendas WHERE c11_sector_id='$c11_sector_id' and c2_senda_id='$c2_senda_id'";
			$sth12 	= $dbh2->prepare($sql_temp);
			$sth12->execute or die SQL_fail($sql_temp,$dbh2,'sub');
			if (my @row = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_senda		= $row[0];
			}
	
		}#if
	}
	

	$sql11 ="SELECT a.c11_ign_id,a.c8_libro_id,a.c8_folio_id,a.c8_numero_id,a.c8_referencia_id FROM sdd_empresa_cnr a, sdm_empresas b WHERE a.i8_empresa_id=b.i8_empresa_id and b.i8_empresa_id='$id'";
	$sth11 = $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		
		$c11_ign_id 		= $row[0];
		$c8_libro_id 		= $row[1];
		$c8_folio_id 		= $row[2];
		$c8_numero_id 		= $row[3];
		$c8_referencia_id  	= $row[4];
	}
	
	#contribuyente:
	$sql11 = "SELECT a.v64_nombres,a.v64_apellidos,a.c14_nit_id,a.c11_dui_id,a.c16_pasaporte_id,a.c14_iva_id,a.v128_contribuyente FROM sdm_contribuyentes a, sdd_empresa_contribuyentes b, sdm_empresas c WHERE c.i8_empresa_id=b.i8_empresa_id and  b.i8_contribuyente_id=a.i8_contribuyente_id and b.i2_tipo_contribuyente_id='3' and c.i8_empresa_id='$id'";
	$sth11 = $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$v64_nombres		= $row[0];
		$v64_apellidos 		= $row[1];
		$c14_nit_id_rep		= $row[2];
		$c11_dui_id_rep		= $row[3];
		$c16_pasaporte_id_rep	= $row[4];
		$c14_iva_id_rep		= $row[5];
		$v128_contribuyente	= $row[6];
		
	}
	
	#propietarios - varios;
	$sql11="SELECT b.i8_contribuyente_id,b.i2_tipo_contribuyente_id,b.dt_desde,c.v128_contribuyente,d.v64_tipo_contribuyente,c.c14_nit_id,c.c11_dui_id,c.c14_iva_id,c.c16_pasaporte_id FROM sdm_empresas a, sdd_empresa_contribuyentes b, sdm_contribuyentes c, sdm_tipo_contribuyentes d WHERE a.i8_empresa_id=b.i8_empresa_id and b.i8_contribuyente_id=c.i8_contribuyente_id and b.i2_tipo_contribuyente_id=d.i2_tipo_contribuyente_id and a.i8_empresa_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_contribuyente_id 	= $row[0];
		$i2_tipo_contribuyente_id = $row[1];
		$dt_desde		= $row[2];
		$v128_contribuyente_tmp	= $row[3];
		$v64_tipo_contribuyente = $row[4];
		$c14_nit_id			= $row[5];
		$c11_dui_id			= $row[6];
		$c14_iva_id			= $row[7];
		$c16_pasaporte_id		= $row[8];
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_contribuyente_id</TD><TD>$v128_contribuyente_tmp</TD><TD>$v64_tipo_contribuyente</TD><TD>$dt_desde</TD><TD>$c14_nit_id</TD><TD>$c11_dui_id</TD><TD>$c14_iva_id</TD><TD>$c16_pasaporte_id</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	
	$propietarios=$template_rows;
	
	#suministros
	$sql11="SELECT b.i8_nis_id,b.c2_gravable,b.v64_nombres,b.v64_apellidos,b.c16_medidor_id,b.c8_cuenta,b.dt_desde,b.dt_hasta FROM sdm_empresas a, sdd_empresa_suministros_energias b WHERE  a.i8_empresa_id=b.i8_empresa_id and a.i8_empresa_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_nis_id		= $row[0];
		$c2_gravable		= $row[1];
		$v64_nombres		= $row[2];
		$v64_apellidos		= $row[3];
		$c16_medidor_id		= $row[4];
		$c8_cuenta		= $row[5];
		$dt_desde		= $row[6];
		$dt_hasta		= $row[7];
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_nis_id</TD><TD>$c2_gravable</TD><TD>$v64_nombres</TD><TD>$v64_apellidos</TD><TD>$c16_medidor_id</TD><TD>$c8_cuenta</TD><TD>$dt_desde</TD><TD>$dt_hasta</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$suministros=$template_rows;
		
	#servicios
	#$sql27="SELECT b.c8_tributo_id,b.c1_tipo_tarifa_id,b.v64_codigo,b.i2_tipo_nivel_id,b.c2_gravable,b.dt_desde,c.v64_tributo,d.v64_tipo_nivel,e.v64_tipo_tarifa FROM sdm_inmuebles a,sdd_inmueble_servicios b, sdm_tributos c,sdm_tipo_niveles d,sdm_tipo_tarifas e WHERE a.i8_inmueble_id=b.i8_inmueble_id and b.c8_tributo_id=c.c8_tributo_id and b.i2_tipo_nivel_id=d.i2_tipo_nivel_id and b.c1_tipo_tarifa_id=e.c1_tipo_tarifa_id and a.i8_inmueble_id='$id'";
	$sql11="SELECT b.c8_tributo_id,b.c1_tipo_tarifa_id,b.v64_codigo,b.i2_tipo_nivel_id,b.c2_gravable,b.dt_desde FROM sdm_empresas a,sdd_empresa_servicios b WHERE a.i8_empresa_id=b.i8_empresa_id and a.i8_empresa_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
					$row[$i]=~ s/\Ã±/ñ/g;
					$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$c8_tributo_id		= $row[0];
		$c1_tipo_tarifa_id	= $row[1];
		$v64_codigo		= $row[2];
		$i2_tipo_nivel_id	= $row[3];
		$c2_gravable		= $row[4];
		$dt_desde		= $row[5];
		
		if($c8_tributo_id){
			$sql12="SELECT v64_tributo FROM sdm_tributos where c8_tributo_id='$c8_tributo_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			if (my @row11 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row11;$i++){
					$row11[$i]=~ s/\Ã±/ñ/g;
					$row11[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_tributo		= $row11[0];
			}#while
		}#if
		
		if($i2_tipo_nivel_id){
			$sql12="SELECT v64_tipo_nivel FROM sdm_tipo_niveles where i2_tipo_nivel_id='$i2_tipo_nivel_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			if (my @row12 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row12;$i++){
					$row12[$i]=~ s/\Ã±/ñ/g;
					$row12[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_tipo_nivel		= $row12[0];
			}#while
		
		}
		
		if($c1_tipo_tarifa_id){
			$sql12="SELECT v64_tipo_tarifa FROM sdm_tipo_tarifas where c1_tipo_tarifa_id='$c1_tipo_tarifa_id'";
			my $sth12 	= $dbh2->prepare($sql12);
			$sth12->execute or die SQL_fail($sql12,$dbh2,'sub get_');
			if (my @row13 = $sth12->fetchrow_array) {
				for(my $i=0;$i<$#row13;$i++){
					$row13[$i]=~ s/\Ã±/ñ/g;
					$row13[$i]=~ s/\Ã‘/Ñ/g;
				}
				$v64_tipo_tarifa	= $row13[0];
			}
		}
		#faltan los otros, debe ser una tabla
		$body = "<TD>$v64_tributo</TD><TD>$v64_tipo_tarifa</TD><TD>$v64_codigo</TD><TD>$v64_tipo_nivel</TD><TD>$c2_gravable</TD><TD>$dt_desde</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$servicios=$template_rows;
	
	#imponibles
	$sql11="SELECT b.c2_tipo_base_imponible_id,b.i2_tipo_nivel_id,b.f4_total,b.f4_deducible,b.dt_desde,c.v64_tipo_base_imponible,d.v64_tipo_nivel FROM sdm_empresas a, sdd_empresa_bases_imponibles b, sdm_tipo_bases_imponibles c, sdm_tipo_niveles d WHERE a.i8_empresa_id=b.i8_empresa_id and b.c2_tipo_base_imponible_id=c.c2_tipo_base_imponible_id and b.i2_tipo_nivel_id=d.i2_tipo_nivel_id and a.i8_empresa_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$c2_tipo_base_imponible_id = $row[0];
		$i2_tipo_nivel_id	= $row[1];
		$f4_total		= $row[2];
		$f4_deducible		= $row[3];
		$dt_desde		= $row[4];
		$v64_tipo_base_imponible	= $row[5];
		$v64_tipo_nivel			= $row[6];
		#faltan los otros, debe ser una tabla
		
		$body = "<TD>$v64_tipo_base_imponible</TD><TD>$v64_tipo_nivel</TD><TD>$f4_total</TD><TD>$f4_deducible</TD><TD>$dt_desde</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$imponibles=$template_rows;
		
	#consumos
	$sql11="SELECT b.i8_nis_id,b.f4_consumo,b.dt_desde,b.dt_hasta FROM sdm_empresas a, sdd_empresa_suministro_energia_consumos b WHERE a.i8_empresa_id=b.i8_empresa_id and a.i8_empresa_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_nis_id		= $row[0];
		$f4_consumo		= $row[1];
		$dt_desde		= $row[2];
		$dt_hasta		= $row[3];
		
		
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_nis_id</TD><TD>$f4_consumo</TD><TD>$dt_desde</TD><TD>$dt_hasta</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
	$consumos=$template_rows;
	
	##resoluciones
	$sql11="SELECT a.i8_resolucion_id,a.dt_resolucion,a.tm_resolucion,concat(b.v32_fname,' ',b.v32_lname) from sdd_empresa_resoluciones a inner join sdm_users b on a.i8_user_id=b.i8_user_id where a.i8_empresa_id='$id'";
	$template_rows="";
	$body="";
	$sth11 	= $dbh1->prepare($sql11);
	$sth11->execute or die SQL_fail($sql11,$dbh1,'sub get_');
	if (my @row = $sth11->fetchrow_array) {
		for(my $i=0;$i<$#row;$i++){
			$row[$i]=~ s/\Ã±/ñ/g;
			$row[$i]=~ s/\Ã‘/Ñ/g;
		}
		$i8_resolucion_id 	= $row[0];
		$dt_resolucion	= $row[1];
		$tm_resolucion		= $row[2];
		$usuario		= $row[3];
		#faltan los otros, debe ser una tabla
		$body = "<TD>$i8_resolucion_id</TD><TD>$dt_resolucion</TD><TD>$tm_resolucion</TD><TD>$usuario</TD>";
		$template_rows=$template_rows."<TR class=my_style>".$body."</TR>";
	}
		
	$resoluciones=$template_rows;
	construct_page_empresas();

}#generar_rept_empresas


sub construct_page_inmuebles { 
	my ($id)= @_;
	#print "<br>entra a construir la pagina de inmuebles, con direccion: $PATH$inmuebles_rept<br>";
	open (DATA, "$PATH$inmuebles_rept");
	$clase="inmuebles";
	while ($line = <DATA>) {
		
		$line =~ s/\{lan}/$lan/g;
        $line =~ s/\{id}/$id_temp/g;
		$line =~ s/\{appid}/$appid/g;
		$line =~ s/\{city}/$city/g;
		$line =~ s/\{state}/$state/g;
        $line =~ s/\{clase}/$clase/g;
		$line =~ s/\{haber1}/$haber100/g;
		$line =~ s/\{table}/$table/g;
		$line =~ s/\{resoluciones}/$resoluciones/g;
	 
		#sdm_inmuebles
		$line =~ s/\{i8_inmueble_id}/$id_temp/g;
		$line =~ s/\{i8_inmueble_id}/$i8_inmueble_id/g;
		$line =~ s/\{c64_num_id}/$c64_num_id/g;
		$line =~ s/\{c11_sector_id}/$c11_sector_id/g;
		$line =~ s/\{i2_tipo_sector_id}/$i2_tipo_sector_id/g;
		$line =~ s/\{c4_casa}/$c4_casa/g;
		$line =~ s/\{i4_parcela}/$i4_parcela/g;
		$line =~ s/\{c2_poligono_id}/$c2_poligono_id/g;
		$line =~ s/\{c2_block_id}/$c2_block_id/g;
		$line =~ s/\{c2_zona_id}/$c2_zona_id/g;
		$line =~ s/\{c2_barrio_id}/$c2_barrio_id/g;
		$line =~ s/\{c4_calle_id}/$c4_calle_id/g;
		$line =~ s/\{c4_avenida_id}/$c4_avenida_id/g;
		$line =~ s/\{c2_pasaje_id}/$c2_pasaje_id/g;
	 
		$line =~ s/\{c2_senda_id}/$c2_senda_id/g;
		$line =~ s/\{v64_sector}/$v64_sector/g;
		$line =~ s/\{v64_tipo_sector}/$v64_tipo_sector/g;
		
		$line =~ s/\{c8_cuenta_rct_id}/$c8_cuenta_rct_id/g;
		$line =~ s/\{c16_estado}/$c16_estado/g;
		$line =~ s/\{c16_codigo_catastral_id}/$c16_codigo_catastral_id/g;
		#ing
		$line =~ s/\{c11_ign_id}/$c11_ign_id/g;
		$line =~ s/\{c8_folio_id}/$c8_folio_id/g;
		$line =~ s/\{c8_libro_id}/$c8_libro_id/g;
		$line =~ s/\{c8_numero_id}/$c8_numero_id/g;
		$line =~ s/\{c8_referencia_id}/$c8_referencia_id/g;

		#contribuyente
		$line =~ s/\{i8_contribuyente_id}/$i8_contribuyente_id/g;
		$line =~ s/\{v64_nombres}/$v64_nombres/g;
		$line =~ s/\{v64_apellidos}/$v64_apellidos/g;
		$line =~ s/\{c14_nit_id}/$c14_nit_id/g;
		$line =~ s/\{c11_dui_id}/$c11_dui_id/g;
		$line =~ s/\{c16_pasaporte_id}/$c16_pasaporte_id/g;
		$line =~ s/\{c14_iva_id}/$c14_iva_id/g;
		$line =~ s/\{v128_contribuyente}/$v128_contribuyente/g;
		
		#poligono
		$line =~ s/\{v64_poligono}/$v64_poligono/g;
		
		#block
		$line =~ s/\{v64_block}/$v64_block/g;
	 
		#barrio:
		$line =~ s/\{v64_barrio}/$v64_barrio/g;

		#zona
		$line =~ s/\{v64_zona}/$v64_zona/g;
		
		#calle:				
		$line =~ s/\{v64_calle}/$v64_calle/g;

		#avenida:
		$line =~ s/\{v64_avenida}/$v64_avenida/g;
		
		#pasaje:
		$line =~ s/\{v64_pasaje}/$v64_pasaje/g;
		
		#senda;
		$line =~ s/\{v64_senda}/$v64_senda/g;
			
		#propietarios
		$line =~ s/\{propietarios}/$propietarios/g;
	
		#suministros
		$line =~ s/\{suministros}/$suministros/g;
		 
		#nis_nics
		$line =~ s/\{nis}/$nis_nic/g;
	
		#recolecciones
		$line =~ s/\{recolecciones}/$recolecciones/g;
			
		#alcantarillados
		$line =~ s/\{alcantarillados}/$alcantarillados/g;
			
		#telecomunicaciones
		$line =~ s/\{telecomunicaciones}/$telecomunicaciones/g;

		#servicios
		$line =~ s/\{servicios}/$servicios/g;

		#imponibles
		$line =~ s/\{imponibles}/$imponibles/g;

		#areas
		$line =~ s/\{areas}/$areas/g;

		#frentes
		$line =~ s/\{frentes}/$frentes/g;
	
		#consumos
		$line =~ s/\{consumos}/$consumos/g;
	
		#pesas
		$line =~ s/\{pesas}/$pesas/g;
	 
		#tipo_construccion
		$line =~ s/\{i2_tipo_construccion_id}/$i2_tipo_construccion_id/g;
		$line =~ s/\{i2_tipo_techo_id}/$i2_tipo_techo_id/g;
		$line =~ s/\{v64_tipo_construccion}/$v64_tipo_construccion/g;
		$line =~ s/\{v64_tipo_techo}/$v64_tipo_techo/g;
			
		#condicion_terreno
		$line =~ s/\{i2_tipo_condicion_terreno_id}/$i2_tipo_condicion_terreno_id/g;
		$line =~ s/\{v64_tipo_condicion_terreno}/$v64_tipo_condicion_terreno/g;
				
		#valuos
		$line =~ s/\{v64_valuo}/$v64_valuo/g;
         
		print "$line";
	}
}

#funcion para crear la pagina
sub construct_page_empresas { 
	#my ($rowset)= @_;
	#print "<br>entra a construir la pagina de empresas, con direccion: $PATH$empresas_rept<br>";
	open (DATA, "$PATH$empresas_rept");
	$clase="empresas";
	while ($line = <DATA>) {
		$line =~ s/\{lan}/$lan/g;
		$line =~ s/\{city}/$city/g;
		$line =~ s/\{state}/$state/g;
        $line =~ s/\{clase}/$clase/g;
        $line =~ s/\{id}/$id_temp/g;
		$line =~ s/\{appid}/$appid/g;
		$line =~ s/\{haber1}/$haber100/g;
		$line =~ s/\{table}/$table/g;
		$line =~ s/\{resoluciones}/$resoluciones/g;
		#sdm_inmuebles
		$line =~ s/\{i8_empresa_id}/$id_temp/g;
		$line =~ s/\{i8_empresa_id}/$i8_empresa_id/g;
		
	 
	 
	 #sdm_empresas
	
		$line =~ s/\{c14_nit_id}/$c14_nit_id/g;
		$line =~ s/\{v128_denominacion_comercial}/$v128_denominacion_comercial/g;
		$line =~ s/\{i2_tipo_sociedad_id}/$i2_tipo_sociedad_id/g;
		$line =~ s/\{c1_tipo_empresa_id}/$c1_tipo_empresa_id/g;
		$line =~ s/\{c1_tipo_local_id}/$c1_tipo_local_id/g;
		$line =~ s/\{c10_matricula}/$c10_matricula/g;
		$line =~ s/\{dt_inicio_operaciones}/$dt_inicio_operaciones/g;
		$line =~ s/\{v32_tipo_sociedad}/$v32_tipo_sociedad/g;
	 
	
		#ubicacion
		
		$line =~ s/\{c64_num_id}/$c64_num_id/g;
		$line =~ s/\{c11_sector_id}/$c11_sector_id/g;
		$line =~ s/\{i2_tipo_sector_id}/$i2_tipo_sector_id/g;
		$line =~ s/\{c4_casa}/$c4_casa/g;
		$line =~ s/\{i4_parcela}/$i4_parcela/g;
		$line =~ s/\{c2_poligono_id}/$c2_poligono_id/g;
		$line =~ s/\{c2_block_id}/$c2_block_id/g;
		$line =~ s/\{c2_zona_id}/$c2_zona_id/g;
		$line =~ s/\{c2_barrio_id}/$c2_barrio_id/g;
		$line =~ s/\{c4_calle_id}/$c4_calle_id/g;
		$line =~ s/\{c4_avenida_id}/$c4_avenida_id/g;
		$line =~ s/\{c2_pasaje_id}/$c2_pasaje_id/g;
	 
		$line =~ s/\{c2_senda_id}/$c2_senda_id/g;
		$line =~ s/\{v64_sector}/$v64_sector/g;
		$line =~ s/\{v64_tipo_sector}/$v64_tipo_sector/g;
		
		$line =~ s/\{c16_estado}/$c16_estado/g;
		$line =~ s/\{c16_codigo_catastral_id}/$c16_codigo_catastral_id/g;
		#ing
		$line =~ s/\{c11_ign_id}/$c11_ign_id/g;
		$line =~ s/\{c8_folio_id}/$c8_folio_id/g;
		$line =~ s/\{c8_libro_id}/$c8_libro_id/g;
		$line =~ s/\{c8_numero_id}/$c8_numero_id/g;
		$line =~ s/\{c8_referencia_id}/$c8_referencia_id/g;

		#contribuyente
		$line =~ s/\{i8_contribuyente_id}/$i8_contribuyente_id/g;
		$line =~ s/\{v64_nombres}/$v64_nombres/g;
		$line =~ s/\{v64_apellidos}/$v64_apellidos/g;
		$line =~ s/\{c14_nit_id_rep}/$c14_nit_id_rep/g;
		$line =~ s/\{c11_dui_id_rep}/$c11_dui_id_rep/g;
		$line =~ s/\{c16_pasaporte_id_rep}/$c16_pasaporte_id_rep/g;
		$line =~ s/\{c14_iva_id_rep}/$c14_iva_id_rep/g;
		$line =~ s/\{v128_contribuyente}/$v128_contribuyente/g;
		
		#mas de ubicacion
		
		
		#poligono
		$line =~ s/\{v64_poligono}/$v64_poligono/g;
		
		#block
		$line =~ s/\{v64_block}/$v64_block/g;
	 
		#barrio:
		$line =~ s/\{v64_barrio}/$v64_barrio/g;

		#zona
		$line =~ s/\{v64_zona}/$v64_zona/g;
		
		#calle:				
		$line =~ s/\{v64_calle}/$v64_calle/g;

		#avenida:
		$line =~ s/\{v64_avenida}/$v64_avenida/g;
		
		#pasaje:
		$line =~ s/\{v64_pasaje}/$v64_pasaje/g;
		
		#senda;
		$line =~ s/\{v64_senda}/$v64_senda/g;
			
		#propietarios
		$line =~ s/\{propietarios}/$propietarios/g;
	
		#suministros
		$line =~ s/\{suministros}/$suministros/g;
		 
		#nis_nics
		$line =~ s/\{nis}/$nis_nic/g;
	
		#recolecciones
		$line =~ s/\{recolecciones}/$recolecciones/g;
			
		#alcantarillados
		$line =~ s/\{alcantarillados}/$alcantarillados/g;
			
		#telecomunicaciones
		$line =~ s/\{telecomunicaciones}/$telecomunicaciones/g;

		#servicios
		$line =~ s/\{servicios}/$servicios/g;

		#imponibles
		$line =~ s/\{imponibles}/$imponibles/g;

		#areas
		$line =~ s/\{areas}/$areas/g;

		#frentes
		$line =~ s/\{frentes}/$frentes/g;
	
		#consumos
		$line =~ s/\{consumos}/$consumos/g;
	
		#pesas
		$line =~ s/\{pesas}/$pesas/g;
	 
	 
		
		#tipo_construccion
		$line =~ s/\{i2_tipo_construccion_id}/$i2_tipo_construccion_id/g;
		$line =~ s/\{i2_tipo_techo_id}/$i2_tipo_techo_id/g;
		$line =~ s/\{v64_tipo_construccion}/$v64_tipo_construccion/g;
		$line =~ s/\{v64_tipo_techo}/$v64_tipo_techo/g;
			
		#condicion_terreno
		$line =~ s/\{i2_tipo_condicion_terreno_id}/$i2_tipo_condicion_terreno_id/g;
		$line =~ s/\{v64_tipo_condicion_terreno}/$v64_tipo_condicion_terreno/g;
				
		#valuos
		$line =~ s/\{v64_valuo}/$v64_valuo/g;
	
		print "$line";
	}
}
sub get_app_data {
    my $schema  = "app.data.xml";
    my $xml     = new XML::Simple;
    my $data 	= $xml->XMLin("../xml/".$schema);
    $appid      = $data->{portal}->{app};
	$lan      	= $data->{portal}->{lang};
	$city      	= $data->{portal}->{city};
	$state     	= $data->{portal}->{state};
}
sub open_conection {
	$dbh 	= DBI->connect("dbi:ODBC:$appid",'','',{PrintError => 1, RaiseError => 1});
	if (!$dbh) {print "error: connection: $DBI::err\n$DBI::errstr\n$DBI::state\n";}
	$dbh->{LongReadLen} = 512 * 1024;
	$dbh->{LongTruncOk} = 1;	
	$dbh1 	= DBI->connect("dbi:ODBC:$appid",'','',{PrintError => 1, RaiseError => 1});
	if (!$dbh1) {print "error: connection: $DBI::err\n$DBI::errstr\n$DBI::state\n";}
	$dbh1->{LongReadLen} = 512 * 1024;
	$dbh1->{LongTruncOk} = 1;
	$dbh2 	= DBI->connect("dbi:ODBC:$appid",'','',{PrintError => 1, RaiseError => 1});
	if (!$dbh2) {print "error: connection: $DBI::err\n$DBI::errstr\n$DBI::state\n";}
	$dbh2->{LongReadLen} = 512 * 1024;
	$dbh2->{LongTruncOk} = 1;	
	$dbh3 	= DBI->connect("dbi:ODBC:$appid",'','',{PrintError => 1, RaiseError => 1});
	if (!$dbh3) {print "error: connection: $DBI::err\n$DBI::errstr\n$DBI::state\n";}
	$dbh3->{LongReadLen} = 512 * 1024;
	$dbh3->{LongTruncOk} = 1;
}
sub SQL_fail {
    my ($dbh,$query,$section)= @_;
    print "SQL failed in Section $section<br>";
    print "Query: ".$query."<br>";    
    exit;
}