Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Djonatan Buss

[Resolvido] Inclusão de classe gera erro de parser expecting T_FU

Recommended Posts

Bom pessoal, dou manutenção em alguns sistemas e estou com um problema chato agora.

 

O que acontece é que o sistema que esta na produção funciona perfeitamente, quando importo pra meu localhost pra fazer testes ele reporta erro.

 

No index de certa área do sistema, são chamadas algumas classes. Uma dessas classes trava ao ser chamada pelo require_once (ja testei outras funções como include, include_onde e etc.). Tentando debugar ela encontrei o seguinte erro

Parse error: syntax error, unexpected T_UNSET, expecting T_FUNCTION in D:\xampp\htdocs\....\planejamento.inc.php on line 2703

A princípio pesquisei pra entender melhor a função unset, mas não interessa o que eu coloco no lugar de unset, o parser acusa erro.

 

A parte estranha, é que funciona na produção, ele renderiza a página inteira sem erros, enquanto no ambiente de testes ele tranca a renderização no exato momento que é chamado o include dessa class.

A única diferença é o php. No ambiente de testes é PHP Version 5.3.1 e no ambiente de produção PHP Version 5.2.6-1+lenny9

 

O código é muito grande pra postar aqui, e uso o netbeans que também tem um parser próprio, então to com dúvidas...

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Djonatan Buss,

 

Leia atentamente as Orientações para uma boa participação, depois poste o código que está utilizando.

 

Caso o código seja muito grande, utilize a tag

para postá-lo

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Djonatan Buss,

Leia atentamente as Orientações para uma boa participação, depois poste o código que está utilizando.

 

Eu havia recem lido o tópico, se puder me dizer onde falhei em segui-lo me ajudaria a não repetir, li de novo e ainda assim não vi problemas...

 

Como eu disse, estou dando manutenção, não criei esse código. Vou postar todo o while que antecede a linha 2702 que da erro no parser, sendo que a ultima linha é onde o parser ta travando. Repito, só no meu ambiente.

 

 

if ($num==0)
{
	echo "<tr><td colspan='4'> Nenhuma função em MO DIRETA encontrada. </td></tr>";
} else {
	$total_hrs_direta = 0;
        $total_prev_efetivo_direto = 0;
	$total_qtd_mod_rdo = 0;
	$total_hh_mod_rdo = 0;
	$aux = new Planejamento;
	while($linha = mysql_fetch_array($dados))
	{
		$funcao = $linha["funcoes_cod"];
		$nome_funcao = $linha["descricao"];
		$hprevista = $linha["horas_planejadas"];
		$classe = $linha["classes_cod"];
		$efetivo_rdo = 0;
		$hh_rdo = 0;
        	switch($classe)
		{
			case 1; $img_classe = "classe_contrato.jpg"; $alt_classe = "Execução Contratual"; break;
			case 2; $img_classe = "classe_civil.jpg"; $alt_classe = "Execução Civil"; break;
			case 3; $img_classe = "classe_mecanica.jpg"; $alt_classe = "Execução Mecânica"; break;
			case 4; $img_classe = "classe_eletrica.jpg"; $alt_classe = "Execução Elétr./Instrum"; break;
			case 5; $img_classe = "classe_pintura.jpg"; $alt_classe = "Execução Jato e Pintura"; break;
			case 6; $img_classe = "classe_projeto.jpg"; $alt_classe = "Execução Projeto"; break;
		        case 7; $img_classe = "classe_andaime.jpg"; $alt_classe = "Execução Andaimes"; break;
			case 8; $img_classe = "classe_total_canteiro.jpg"; $alt_classe = "Execução Total Canteiro"; break;
		}
		//ver se é até o dia, até hoje (acumulado) ou no dia
		if ($tipo=="nodia")
		{
		//verificar se data nao eh menor que a data de inicio da classe
			$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' AND p.data_ate>='$data_sql' ");
        		if (mysql_num_rows($dados2)==1)
	        	{
	        	# homens previstos por dia
	        		$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"direta",$classe);
			# hh previsto
	         		$hh_real_previsto = $h_dia_funcao*8.8;
	        	}else{
		        	$hh_real_previsto = 0;
	            		$h_dia_funcao = 0;
		}
		# efetivo rdo
		$efetivo_rdo = $aux->Efetivo_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
		# hh rdo
		$hh_rdo = $aux->HH_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
	}elseif ($tipo=="atedata"){
		//verificar se data nao eh menor que a data de inicio da classe
		$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' ");
		if (mysql_num_rows($dados2)==1)	{
			# homens previstos por dia
			$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"direta",$classe);
			# hh previsto
			$decorrido_util = $aux->decorrido_util($coduser,$obra,$classe,$data);
			//$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
			$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
			$h_dia_funcao = ($hh_real_previsto/($decorrido_util/30))/184;
		}else{
			$hh_real_previsto = 0;
			$h_dia_funcao = 0;
		}
		# efetivo rdo
		$efetivo_rdo = $aux->Efetivo_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
		# hh rdo
		$hh_rdo = $aux->HH_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
		///EFETIVO REAL
		conectabd();
		$cont = 0;
		$select = mysql_query("SELECT * from avancoprevisto where obras_cod = $obra");
		while($linha = mysql_fetch_array($select))
		{ if ($cont==0) { $data1 = $linha['DIA']; $cont++; } }
		$data_sql1 = explode("/",$data_sql);
		$data2 = $data_sql1[0]."-".$data_sql1[1]."-".$data_sql1[2];
		$data1 = eua_to_br($data1);
		$data2 = eua_to_br($data2);
		$diferenca = DiasUteis($data1,$data2);
		$hmes = Hmes($data1,$data2);
		$diferenca = $diferenca / 30;
		$efetivo_rdo = $hh_rdo/$diferenca/184;
		$efetivo_rdo = masc_2($efetivo_rdo);
		//$efetivo_rdo = $hmes;
		//$efetivo_rdo = $diferenca;
		//FIM DO EFETIVO REAL
	}elseif ($tipo=="acumulado"){
		//verificar se data nao eh menor que a data de inicio da classe
		$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' ");
		if (mysql_num_rows($dados2)==1)	{
			# homens previstos por dia
			$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"direta",$classe);
			# hh previsto
			$decorrido_util = $aux->decorrido_util($coduser,$obra,$classe,$data);
			//$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
			$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
			$h_dia_funcao = ($hh_real_previsto/($decorrido_util/30))/184;
		}else{
			$hh_real_previsto = 0;
			$h_dia_funcao = 0;
		}
			# efetivo rdo
			$efetivo_rdo = $aux->Efetivo_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
			# hh rdo
			$hh_rdo = $aux->HH_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
			////função
			///EFETIVO REAL
			conectabd();
			$cont = 0;
			$select = mysql_query("SELECT * from avancoprevisto where obras_cod = $obra");
			while($linha = mysql_fetch_array($select))
			{ if ($cont==0) { $data1 = $linha['DIA']; $cont++; } }
			$data_sql1 = explode("/",$data_sql);
			$data2 = $data_sql1[0]."-".$data_sql1[1]."-".$data_sql1[2];
			$data1 = eua_to_br($data1);
			$data2 = eua_to_br($data2);
			$diferenca = DiasUteis($data1,$data2);
			$diferenca = $diferenca / 30;
			$efetivo_rdo = $hh_rdo/$diferenca/184;
			$efetivo_rdo = masc_2($efetivo_rdo);
			//$efetivo_rdo = $diferenca;
			//FIM DO EFETIVO REAL
		}
		//se hh real previsto(vai aumentando conforme data) passou previsto(cadastro da obra) mostra somente o previsto com fundo vermelho
		if ($hh_real_previsto>$hprevista){
			$aux_cor = "bgcolor='#FFCCCC'";
			$hh_real_previsto = $hprevista;
			//$h_dia_funcao = 0;
		}else
			$aux_cor = "";
		# sinaleira
		if ($hh_real_previsto>0){ //se tem previsto 
			$sinal_hh = ($hh_rdo/$hh_real_previsto)*100;
			if ($sinal_hh<=100)
				$sinal_hh = "<img src='../../imagens/marcador_verde.gif' border='0' alt='".masc_1($sinal_hh)."%' />";
			else
				$sinal_hh = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_hh)."%' />";
		} else { // se nao tem previsto
			if ($hh_rdo>0) //mas tem hh no rdo
				$sinal_hh = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_hh)."%' />";
			else
				$sinal_hh = "";
		}
		if ($h_dia_funcao>0) {//se tem previsto
			$sinal_efet = ($efetivo_rdo/$h_dia_funcao)*100;
			if ($sinal_efet<=100)
                        	$sinal_efet = "<img src='../../imagens/marcador_verde.gif' border='0' alt='".masc_1($sinal_efet)."%' />";
			else
				$sinal_efet = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_efet)."%' />";
		} else { // se nao tem previsto
			if ($efetivo_rdo>0) //mas tem efetivo no rdo
				$sinal_efet = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_efet)."%' />";
			else
				$sinal_efet = "";
		}
		# somatórios
		$total_prev_efetivo_direto = $total_prev_efetivo_direto+$h_dia_funcao;
		$total_hrs_direta = $total_hrs_direta+$hh_real_previsto;
		$total_qtd_mod_rdo = $total_qtd_mod_rdo + $efetivo_rdo; //total efetivo das funcoes
		$total_hh_mod_rdo = $total_hh_mod_rdo + $hh_rdo; //total hh das funcoes */
		echo "<tr>";
		echo "<td align='center'><img src='../../imagens/$img_classe' border='0' alt='$alt_classe'></td>";
		echo "<td align='left'>".(strtoupper($nome_funcao))."</td>";
		echo "<td $aux_cor bgcolor='#F7F7F7' align='center'>".masc_1($hh_real_previsto)."</td>";
		echo "<td bgcolor='#F7F7F7' align='center'>".masc_1($h_dia_funcao)."</td>";
		//relogio
		echo "<td bgcolor='#EFEFEF' align='center'>"; ?>
		<!--<img src="../../imagens/relogio.gif" border="0" alt="Atualizar dados do relógio" onclick="" />-->
		<div id="<?php echo "hh_indireta_".$funcao."_".$classe; ?>"></div> <?php
		echo "</td>";
		echo "<td bgcolor='#EFEFEF' align='center'>"; ?>
		<div id="<?php echo "efet_indireta_".$funcao."_".$classe; ?>"></div> <?php
		echo "</td>";
		//rdo
		echo "<td bgcolor='#E4E4E4' align='center'>".masc_1($hh_rdo)."</td>";
		echo "<td bgcolor='#E4E4E4' align='center'>".$efetivo_rdo."</td>";
		//sinaleira
		echo "<td colspan='2' width='' align='center'>$sinal_hh     $sinal_efet</td>";
		echo "</tr>";
	}
	unset($aux);

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu havia recem lido o tópico, se puder me dizer onde falhei em segui-lo me ajudaria a não repetir, li de novo e ainda assim não vi problemas...

 

A única falha, amigo, foi não postar o código. Quanto mais informação você oferecer, mais fácil é para conseguir ajudá-lo.

 

Uma dessas classes trava ao ser chamada pelo require_once (ja testei outras funções como include, include_onde e etc.).

 

Vou postar todo o while que antecede a linha 2702 que da erro no parser, sendo que a ultima linha é onde o parser ta travando.

Você disse que o erro é causado quando uma classe é chamada com require_once, mas não há qualquer require_once no código que você postou.

 

A linha 2072 é onde o erro aparece, mas a origem não é lá, na verdade, todo esse fragmento que você postou não tem qualquer erro notório.

 

Poste todo o seu código, tanto o código que faz a chamada com o require_once, quanto o código que é chamado pelo require.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você disse que o erro é causado quando uma classe é chamada com require_once, mas não há qualquer require_once no código que você postou.

 

A linha 2072 é onde o erro aparece, mas a origem não é lá, na verdade, todo esse fragmento que você postou não tem qualquer erro notório.

 

Poste todo o seu código, tanto o código que faz a chamada com o require_once, quanto o código que é chamado pelo require.

 

A chamada é no cabeçalho de outro arquivo, mas tudo bem vou postar tudo...

 

Ok então, vo colocar os dois arquivos

 

index.php

 

 

<?php
session_start();
$acesso = $_SESSION["acesso_matriz"];
$coduser = $_SESSION["coduser"];
if (!$acesso) {
    header("Location: ../../index.html");
    exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <title> WS_Usimec </title>
        <link href="../../css/estilo_sistema.css" rel="stylesheet" type="text/css" />
            <link href="../../css/estilo_relatorios.css" rel="stylesheet" type="text/css" />
                <link href="../../css/estilo_menu_seplan.css" rel="stylesheet" type="text/css" />
                    <link href="../../css/estilo_rdo.css" rel="stylesheet" type="text/css" />
                        <script type="text/javascript" src="../../includes/scripts.js"></script>
                        <script type="text/javascript" src="../../css/menu_seplan.js"></script>
                        <script type="text/javascript" src="../../ajax/ajax_compSalario.js"></script>
                        <script type="text/javascript" src="../../ajax/ajax_opcoes_rdo.js"></script>
                        <script type="text/javascript" src="../../ajax/ajax_aud_efetivo.js"></script>
                        </head>
                        <body onload="loaded_audefet()">
                            <div id="container">
                                <div id="topo"></div>
                                <div id="menu">
                                    <span class="itens_menu"><?php require_once ("../../includes/menus.inc.php");
menu_superior($coduser); ?></span>
                                </div>
                                <?php
                                echo "aqui1";
                                require_once ("../../includes/planejamento.inc.php");
                                echo "aqui2";
                                require_once ("../../includes/conectabd.php");
                                echo "aqui3";
                                require_once ("../../includes/funcoes.inc.php");
                                echo "aqui4";
                                require_once ("../../includes/orcamento.inc.php");
                                echo "aqui5";
                                include("../../includes/custos.inc.php");
                                echo "aqui6";

 

o index acaba entrando só até aqui, e trava.

 

 

planejamento.inc.php é um codigo absurdo 8k linhas, to colocando as primeiras 2706

 

 

<?php

class Planejamento
{
	//ERRO DE PERMISSÃO


	function erro_plan()
	{

		echo "<script type=\"text/javascript\" language=\"javascript\">";
		echo "alert(\"Ops! Você não tem permissão para esta operação.\");(window.location = '../home/home.php')";
		echo "</script>";
	}
	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
	 *																PERIODOS																		   *
	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
	// OBRA -> RETORNA DURACAO DA OBRA (dias) DATA DE INICIO E FIM
	function duracao($coduser,$cod_obra)
	{
		conectabd();
		//prazo contratual
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=1 ");
		while($linha = mysql_fetch_array($dados))
		{ $contratual = $linha["existe"]; $contratual_de = $linha["datade"]; $contratual_ate = $linha["dataate"]; }
		//prazo civil
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=2 ");
		while($linha = mysql_fetch_array($dados))
		{ $civil = $linha["existe"]; $civil_de = $linha["datade"]; $civil_ate = $linha["dataate"]; }
		//prazo mecanica
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=3 ");
		while($linha = mysql_fetch_array($dados))
		{ $mecanica = $linha["existe"]; $mecanica_de = $linha["datade"]; $mecanica_ate = $linha["dataate"]; }
		//prazo ei
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=4 ");
		while($linha = mysql_fetch_array($dados))
		{ $ei = $linha["existe"]; $ei_de = $linha["datade"]; $ei_ate = $linha["dataate"]; }
		//prazo jp
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=5 ");
		while($linha = mysql_fetch_array($dados))
		{ $jp = $linha["existe"]; $jp_de = $linha["datade"]; $jp_ate = $linha["dataate"]; }
		//prazo projeto
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=6 ");
		while($linha = mysql_fetch_array($dados))
		{ $projeto = $linha["existe"]; $projeto_de = $linha["datade"]; $projeto_ate = $linha["dataate"]; }
		//prazo andaime
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=7 ");
		while($linha = mysql_fetch_array($dados))
		{ $andaime = $linha["existe"]; $andaime_de = $linha["datade"]; $andaime_ate = $linha["dataate"]; }
		//prazo canteiro
		$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=8 ");
		while($linha = mysql_fetch_array($dados))
		{ $canteiro = $linha["existe"]; $canteiro_de = $linha["datade"]; $canteiro_ate = $linha["dataate"]; }
		mysql_close();

		$menor = array();
		$maior = array();
		$data_menor = array();
		$data_maior = array();
		if ($contratual==1)
		{
			array_push($menor,mktime(0,0,0,substr($contratual_de,3,2),substr($contratual_de,0,2),substr($contratual_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($contratual_ate,3,2),substr($contratual_ate,0,2),substr($contratual_ate,6,4)));
		}

		if ($civil==1)
		{
			array_push($menor,mktime(0,0,0,substr($civil_de,3,2),substr($civil_de,0,2),substr($civil_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($civil_ate,3,2),substr($civil_ate,0,2),substr($civil_ate,6,4)));
		}
		if ($mecanica==1)
		{
			array_push($menor,mktime(0,0,0,substr($mecanica_de,3,2),substr($mecanica_de,0,2),substr($mecanica_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($mecanica_ate,3,2),substr($mecanica_ate,0,2),substr($mecanica_ate,6,4)));
		}
		if ($ei==1)
		{
			array_push($menor,mktime(0,0,0,substr($ei_de,3,2),substr($ei_de,0,2),substr($ei_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($ei_ate,3,2),substr($ei_ate,0,2),substr($ei_ate,6,4)));
		}
		if ($jp==1)
		{
			array_push($menor,mktime(0,0,0,substr($jp_de,3,2),substr($jp_de,0,2),substr($jp_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($jp_ate,3,2),substr($jp_ate,0,2),substr($jp_ate,6,4)));
		}
		if ($projeto==1)
		{
			array_push($menor,mktime(0,0,0,substr($projeto_de,3,2),substr($projeto_de,0,2),substr($projeto_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($projeto_ate,3,2),substr($projeto_ate,0,2),substr($projeto_ate,6,4)));
		}
		if ($andaime==1)
		{
			array_push($menor,mktime(0,0,0,substr($andaime_de,3,2),substr($andaime_de,0,2),substr($andaime_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($andaime_ate,3,2),substr($andaime_ate,0,2),substr($andaime_ate,6,4)));
		}
		if ($canteiro==1)
		{
			array_push($menor,mktime(0,0,0,substr($canteiro_de,3,2),substr($canteiro_de,0,2),substr($canteiro_de,6,4)));
			array_push($maior,mktime(0,0,0,substr($canteiro_ate,3,2),substr($canteiro_ate,0,2),substr($canteiro_ate,6,4)));
		}
		rsort($maior); //ordena decrescente
		rsort($menor); //ordena decrescente
		$mktime_menor = array_pop($menor); //pega o ultimo (o menor)
		//duracao: retorna duracao da obra em dias //de: retorna mktime da data de inicio //ate: retorna mktime da data de fim
												  //para pegar data apartir do mktime date("d/m/Y",$var);
		$result = array("duracao" => (round($maior[0]/(60*60*24),0)-round($mktime_menor/(60*60*24),0))+1 , "de" => $mktime_menor , "ate"=> $maior[0]);

		return $result;

	}
	// OBRA -> RETORNA DIAS RESTANTES DE OBRA
	function restante($coduser,$obra)
	{
		$acao_plan = new Planejamento;
		$total = $acao_plan->duracao($coduser,$obra);
		$n_dias = calcula_dias(date("m"),date("d"),date("Y"),date("m",$total["de"]),date("d",$total["de"]),date("Y",$total["de"]));
		$restante = $total["duracao"]-$n_dias;
		unset($acao_plan);
		return $restante;
	}
	// OBRA -> RETORNA DECORRIDO GERAL DA OBRA ATÉ DATA
	function decorrido_obra($coduser,$obra,$tipo,$data_ate)
	{
		$acao_plan = new Planejamento;
		$total = $acao_plan->duracao($coduser,$obra);
		$decorrido = calcula_dias(substr($data_ate,3,2),substr($data_ate,0,2),substr($data_ate,6,4),date("m",$total["de"]),date("d",$total["de"]),date("Y",$total["de"]));
		unset($acao_plan);
		$decorrido = $decorrido+1;
		if ($tipo=="porc")
		{
			$decorrido = ($decorrido*100)/$total["duracao"];
			$decorrido = masc_2($decorrido);
				return $decorrido;
		}
		elseif ($tipo=="meses")
		{
			$decorrido = $decorrido/30;
			$decorrido = masc_2($decorrido);
				return $decorrido;
		}
		else //dias
			return $decorrido;
	}
	// CLASSE -> RETORNA NUMERO DE DIAS DO PERIODO DA CLASSE
	function periodo($coduser,$obra,$classe)
	{
		conectabd();

		//pegar datas da classe
		/*$dados = mysql_query("select date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe ");
		while($linha = mysql_fetch_array($dados))
		{ $contratual_de = $linha["datade"]; $contratual_ate = $linha["dataate"]; }

		$n_dias = calcula_dias(substr($contratual_ate,3,2), substr($contratual_ate,0,2), substr($contratual_ate,6,4),substr($contratual_de,3,2), substr($contratual_de,0,2), substr($contratual_de,6,4));
		*/

		$dados = mysql_query("select datediff(p.data_ate, p.data_de) as periodo, p.existe from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe ");
		while($linha = mysql_fetch_array($dados))
		{ $n_dias = $linha["periodo"];  $existe = $linha["existe"]; }

		if ($existe==1)
			$n_dias = $n_dias+1;

		return $n_dias;
	}
	// CLASSE -> RETORNA NUMERO DE DIAS UTEIS DO PERIODO DA CLASSE
	function DiasUteisClasse($coduser,$obra,$classe)
	{
		conectabd();
		//pegar datas da classe
		$dados = mysql_query("select date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe ");
		while($linha = mysql_fetch_array($dados))
		{ $datade = $linha["datade"]; $dataate = $linha["dataate"]; }

		$n_dias = DiasUteis($datade,$dataate);

		return $n_dias;
	}
	// CLASSE -> RETORNA NUMERO DE MESES DO PERIODO DA CLASSE
	function periodoClasseMeses($coduser,$obra,$classe)
	{
		$auxp = new Planejamento;
		$meses = $auxp->periodo($coduser,$obra,$classe);
		$meses = $meses/30;
		unset($auxp);
		return $meses;
		mysql_close();
	}
	// CLASSE -> RETORNA DIAS RESTANTES DE UMA CLASSE
	function restanteClasse($coduser,$obra,$classe,$data_ate)
	{
		$acao_planx = new Planejamento;
		$total = $acao_planx->periodo($coduser,$obra,$classe);
		$data_ate = br_to_eua($data_ate);

		//pegar data de incio
		conectabd();
		$dados = mysql_query("select datediff('$data_ate' , p.data_de) as data from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe ");
		while($linha = mysql_fetch_array($dados))
		{ $corrido = $linha["data"]; }
		mysql_close();

		$restante = $total-$corrido;
		unset($acao_planx);
		return $restante;
	}
	// CLASSE -> RETORNAR PERIODO DECORRIDO  DE UMA CLASSE DE TRABALHO (tipo: porc , dias , meses)
	function decorrido($coduser,$obra,$classe,$tipo,$data_ate)
	{
		$acao_aux = new Planejamento;
		$n_dias = $acao_aux->periodo($coduser,$obra,$classe);
		$restante = $acao_aux->restanteClasse($coduser,$obra,$classe,$data_ate);
		unset($acao_aux);

		$decorrido = ($n_dias-$restante)+1;

		if ($tipo=="porc")
		{
			$decorrido = ($decorrido*100)/$n_dias;
			if ($decorrido<0) $decorrido = 0;
			return $decorrido;
		}
		elseif ($tipo=="meses")
		{
			$decorrido = $decorrido/30;
			if ($decorrido<0) $decorrido = 0;
			return $decorrido;
		}
		else
		{
			if ($decorrido<0) $decorrido = 0;
			return $decorrido;
		}
	}
	// CLASSE -> RETORNAR PERIODO ÚTIL DECORRIDO  DE UMA CLASSE DE TRABALHO em dias
	function decorrido_util($coduser,$obra,$classe,$data_ate)
	{
		conectabd();
		$dados = mysql_query("select date_format(p.data_de, '%d/%m/%Y') as inicio from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe ");
		while($linha = mysql_fetch_array($dados))
		{ $inicio = $linha["inicio"]; }

		$n_dias = DiasUteis($inicio,$data_ate);

		return $n_dias;
	}
	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
	 *																	OBRA																		   *
	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
	//CABEÇALHO INFO DA OBRA

	function relatorio($coduser,$cod_obra)
	{
		require_once ("../usi/relatorio.php");
	}

	function eap($coduser,$cod_obra)
	{
		require_once ("../pierre/cad_eap.php");
	}

	function mostra_bm($coduser,$cod_obra)
	{
		require_once ("../pierre/lista_bm.php");
	}

	function visualiza_bm($coduser,$cod_obra)
	{
		require_once ("../pierre/visualiza_bm.php");
	}

	function revisa_bm($coduser,$cod_obra)
	{
		require_once ("../../matriz/pierre/revisa_bm.php");
	}

	function edita_bm($coduser,$cod_obra)
	{
		require_once ("../pierre/edita_bm.php");
	}

	function edita_bm_obra($coduser,$cod_obra)
	{
		require_once ("../../matriz/pierre/edita_bm.php");
	}

	function visualiza_bm_obra($coduser,$cod_obra)
	{
		require_once ("../../matriz/pierre/visualiza_bm.php");
	}

	function lista_bm_obra($coduser,$cod_obra)
	{
		require_once ("../../matriz/pierre/lista_bm_obra.php");
	}

	function cad_bm_obra($coduser,$cod_obra)
	{
		require_once ("../../matriz/pierre/cad_bm.php");
	}

	function adiantamento($coduser,$cod_obra)
	{
		require_once ("../../matriz/pierre/adiantamento.php");
	}

	function adiantamento_matriz($coduser,$cod_obra)
	{
		require_once ("../pierre/adiantamento.php");
	}

	function cad_bm_obra1($coduser,$cod_obra,$cod_med,$nro_bm,$acao,$de,$ate)
	{
		require_once ("../../matriz/pierre/bm_cad.php");
		//echo "aaa";
	}

	function mostra_eap($coduser,$cod_obra)
	{
		require_once ("../pierre/mostra_eap.php");
	}

	function mostra_eap_obra($coduser,$cod_obra)
	{
		ini_set("allow_url_fopen", 1);
		require_once ("../../matriz/pierre/mostra_eap.php");
	}

	function infoObra($coduser,$cod_obra,$tipo)
	{
			conectabd();
			$dados = mysql_query("select o.descricao, o.contato, o.func_contato, o.tel_contato, o.servico, o.logotipo, o.encargos_indireta, o.encargos_direta, o.distancia_containers, o.base_hm, o.valor_contrato from obras o where o.cod=$cod_obra ");
			while($linha = mysql_fetch_array($dados))
			{
				$nomeobra = $linha["descricao"];
				$contato = $linha["contato"];
				$func_contato = $linha["func_contato"];
				$tel_contato = $linha["tel_contato"];
				$servico = $linha["servico"];
				$logotipo = $linha["logotipo"];
				$enc_indireta = $linha["encargos_indireta"];
				$enc_direta = $linha["encargos_direta"];
				$dist = $linha["distancia_containers"];
				$base = $linha["base_hm"];
				$valor_contrato = $linha["valor_contrato"];
			}
			//prazo contratual
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=1 ");
			while($linha = mysql_fetch_array($dados))
			{ $contratual = $linha["existe"]; $contratual_de = $linha["datade"]; $contratual_ate = $linha["dataate"]; }
			//prazo civil
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=2 ");
			while($linha = mysql_fetch_array($dados))
			{ $civil = $linha["existe"]; $civil_de = $linha["datade"]; $civil_ate = $linha["dataate"]; }
			//prazo mecanica
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=3 ");
			while($linha = mysql_fetch_array($dados))
			{ $mecanica = $linha["existe"]; $mecanica_de = $linha["datade"]; $mecanica_ate = $linha["dataate"]; }
			//prazo ei
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=4 ");
			while($linha = mysql_fetch_array($dados))
			{ $ei = $linha["existe"]; $ei_de = $linha["datade"]; $ei_ate = $linha["dataate"]; }
			//prazo jp
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=5 ");
			while($linha = mysql_fetch_array($dados))
			{ $jp = $linha["existe"]; $jp_de = $linha["datade"]; $jp_ate = $linha["dataate"]; }
			//prazo projeto
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=6 ");
			while($linha = mysql_fetch_array($dados))
			{ $projeto = $linha["existe"]; $projeto_de = $linha["datade"]; $projeto_ate = $linha["dataate"]; }
			//prazo andaime
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=7 ");
			while($linha = mysql_fetch_array($dados))
			{ $andaime = $linha["existe"]; $andaime_de = $linha["datade"]; $andaime_ate = $linha["dataate"]; }
			//prazo canteiro
			$dados = mysql_query("select p.existe, date_format(p.data_de, '%d/%m/%Y') as datade, date_format(p.data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=8 ");
			while($linha = mysql_fetch_array($dados))
			{ $canteiro = $linha["existe"]; $canteiro_de = $linha["datade"]; $canteiro_ate = $linha["dataate"]; }
			mysql_close();
			//pegar tempo restante
			$acao_plan = new Planejamento;
			$restante = $acao_plan->restante($coduser,$cod_obra);
			$decorrido_obra = $acao_plan->decorrido_obra($coduser,$cod_obra,"porc",date("d/m/Y"));
			unset($acao_plan);
			//parte fixa de cima
			?>

				<div id="info_obra" >
					<table width="965px" id="tab_info_obra" align="left">
						<tr>
							<td align="center" bgcolor="#CCCCCC" width="125" rowspan="3"><IMG SRC="../../obra/logotipos/<?php echo $logotipo; ?>" border="0" width="120" height="60"></td>
							<td width="330" align="left"><b>Nome da Obra: </b><?php echo strtoupper($nomeobra); ?></td>
							<td align="left"><b>Contato: </b><?php echo $contato; ?></td>
							<td width="150px" align="left" rowspan="3"><img src="../../imagens/calendario_peq.jpg" border="0" />
															<?php echo $restante; ?> dias restantes <br /><br />
															<img src="../../imagens/clock.png" border="0" />
															<?php echo $decorrido_obra; ?>% decorrido
															</td>
						</tr>
						<tr>
							<td align="left"><b>Centro de Custo nº </b><?php echo $cod_obra; ?></td>
							<td align="left"><b>Função: </b><?php echo $func_contato; ?></td>
						</tr>
						<tr>
							<td align="left"><b>Valor Contrato: </b>R$ <?php echo masc_real($valor_contrato); ?></td>
							<td align="left"><b>Telefone: </b> <?php echo $tel_contato; ?></td>
						</tr>
					</table>
				</div>
			<?php
				echo "<table id='tab2' width='780px' align='center' border='1'>";
					if ($tipo!='nome')
					{
						echo "<tr bgcolor='#EFEFEF'>";
							echo "<td width='225px' align='center'><b>Classe</b></td>
								  <td align='center'><b>Período de Trabalho</b></td>
								  <td align='center'><b>Período Decorrido</b></td>
								  ";
						echo "</tr>";
						$acao_plan = new Planejamento;
						if ($contratual==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,1);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,1,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Contratual:</td>
									  <td align='center'>$contratual_de a $contratual_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									  <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						if ($civil==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,2);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,2,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Civil:</td>
									  <td align='center'>$civil_de a $civil_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									   <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						if ($mecanica==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,3);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,3,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Mecânica:</td>
									  <td align='center'>$mecanica_de a $mecanica_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									   <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						if ($ei==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,4);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,4,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Elétr./Instrum.:</td>
									  <td align='center'>$ei_de a $ei_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									   <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						if ($jp==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,5);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,5,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Jato e Pintura:</td>
									  <td align='center'>$jp_de a $jp_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									   <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						if ($projeto==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,6);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,6,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Projeto:</td>
									  <td align='center'>$projeto_de a $projeto_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									   <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						if ($andaime==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,7);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,7,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Andaimes:</td>
									  <td align='center'>$andaime_de a $andaime_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									   <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						if ($canteiro==1)
						{
							$n_dias = $acao_plan->periodo($coduser,$cod_obra,8);
							$div_30 = $n_dias/30;
							$decorrido = $acao_plan->decorrido($coduser,$cod_obra,8,"porc",date("d/m/Y"));
							if ($decorrido>100) $decorrido = 100;

							echo "<tr>";
								echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Prazo de execução Total Canteiro:</td>
									  <td align='center'>$canteiro_de a $canteiro_ate <i>($n_dias dias - ".masc_2($div_30)." meses)</i></td>
									   <td align='center'>".masc_2($decorrido)."%</td>";
							echo "</tr>";
						}
						echo "<tr>";
							echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Encargos MO Indireta: <b>$enc_indireta</b></td>
							    <td style=\"padding-left:20px\" colspan='2' rowspan='4' align='left'><b>Descrição do Serviço:</b> $servico</td>";
						echo "</tr>";
						echo "<tr>";
							echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Encargos MO Direta: <b>$enc_direta</b></td>";
						echo "</tr>";
						echo "<tr>";
							echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Distância transp. containers: <b>$dist Km</b></td>";
						echo "</tr>";
						$duracao = $acao_plan->duracao($coduser,$cod_obra);
						echo "<tr>";
							echo "<td bgcolor='#EFEFEF' width='225px' align='right'>Duração da Obra: <b>$duracao[duracao] dias</b></td>";
						echo "</tr>";
						unset($acao_plan);
					}
				echo "</table>";
	}
	//COMPOSIÇÃO SALARIAL
	function compSalario($coduser,$cod_obra,$funcao,$mo,$classe)
	{
			conectabd();
			$dados = "select f.descricao, m.valor_hh, m.peric, m.pf, m.valor_pfhh, o.encargos_indireta, o.encargos_direta, o.encargos_folha_indireta, o.encargos_folha_direta ";
			if ($mo=="direta")
				$dados = $dados."from modireta m, funcoes f, obras o ";
			elseif ($mo=="indireta")
				$dados = $dados."from moindireta m, funcoes f, obras o ";
			$dados = mysql_query($dados."where o.cod=$cod_obra AND m.obras_cod=o.cod AND m.funcoes_cod=f.cod AND f.cod=$funcao AND m.classes_cod=$classe ");
			while($linha = mysql_fetch_array($dados))
			{
				$nome_funcao = $linha["descricao"];
				$hh = $linha["valor_hh"];
				$peri = $linha["peric"];
				$pf = $linha["pf"];
				$hora_pf = $linha["valor_pfhh"];
				$enc_indireta = $linha["encargos_indireta"];
				$enc_direta = $linha["encargos_direta"];
                $enc_folha_indireta = $linha["encargos_folha_indireta"];
				$enc_folha_direta = $linha["encargos_folha_direta"];

				if ($peri==1)
				{
					$taxa_peri = 0.30; //% da periculosidade
					$perc_peri = "30%";
				}
				else
				{
					$taxa_peri = 0;
					$perc_peri = "0%";
				}

				//HOMEM $hh -> hora homem
				$hm = $hh*220; //valor homem/mes
				//PERICULOSIDADE
				$hora_peri = $hh*$taxa_peri; //valor da periculosidade por hora
				$mes_peri = $hora_peri*220; //valor total da peridulosidade por mes
				//ENCARGOS
				if ($mo=="direta") $taxa_encargo = $enc_direta; //taxa de encargos caso seja mo direta
				elseif ($mo=="indireta") $taxa_encargo = $enc_indireta; //taxa de encargos caso seja mo indireta
				$mes_encargo = ($hm+$mes_peri)*$taxa_encargo; //valor do mes de encargos
				$hora_encargo = $mes_encargo/220; //valor da hora de encargos
				//PF $hora_pf -> valor da hora pf

                if ($mo=="direta") $taxa_encargo_folha = $enc_folha_direta; //taxa de encargos caso seja mo direta
				elseif ($mo=="indireta") $taxa_encargo_folha = $enc_folha_indireta; //taxa de encargos caso seja mo indireta
				$mes_encargo_folha = ($hm+$mes_peri)*$taxa_encargo_folha; //valor do mes de encargos
				$hora_encargo_folha = $mes_encargo_folha/220; //valor da hora de encargos
				//PF $hora_pf -> valor da hora pf

				if ($pf==1)
				{
					$mes_pf = $hora_pf*220; //valor do mes pf
				}
				else
				{
					$hora_pf=0;
					$mes_pf=0;
				}
				//TOTAIS
				$custo_empresa = $hm+$mes_peri+$mes_encargo+$mes_pf+$mes_encargo_folha;
				$total_carteira = $hm+$mes_peri;
				$total_salario = $total_carteira+$mes_pf;

				//tabela de visualização
				echo "<table id='tab3' width='600px' align=center border='1'>";
					echo "<tr ><td bgcolor='#DDDDDD' align='center' colspan='4'><b>".(strtoupper($nome_funcao))."</b></td><td bgcolor='#DDDDDD' align='center' colspan='2'><b>R$ MÊS</b></td></tr>";
					echo "<tr><td bgcolor='#EFEFEF' colspan='4'></td><td bgcolor='#EFEFEF' align='center'><b>CARTEIRA</b></td><td bgcolor='#EFEFEF' align='center'><b>F-10</b></td></tr>";
					echo "<tr>";
						echo "
							<td width='40px' align='center'><b>Item</b></td>
							<td align='center'><b>Descrição</b></td>
							<td width='50px' align='center'><b>Perc.</b></td>
							<td width='90px' align='center'><b>R$ p/hora</b></td>
							<td width='90px' align='center' bgcolor='#FFFF5E'><b>R$ ".masc_real($total_carteira)."</b></td>
							<td width='90px' align='center' bgcolor='#FFFF5E'><b>R$ ".masc_real($mes_pf)."</b></td>
							";
					echo "</tr>";
					echo "<tr>";
						echo "
							<td align='center'>1</td>
							<td align='left'>VALOR HORA</td>
							<td align='center'></td>
							<td align='center'>R$ ".masc_real($hh)."</td>
							<td align='center'>R$ ".masc_real($hm)."</td>
							<td align='center'></td>
							";
					echo "</tr>";
					echo "<tr>";
						echo "
							<td align='center'>2</td>
							<td align='left'>PERICULOSIDADE</td>
							<td align='center'>$perc_peri</td>
							<td align='center'>R$ ".masc_real($hora_peri)."</td>
							<td align='center'>R$ ".masc_real($mes_peri)."</td>
							<td align='center'></td>
							";
					echo "</tr>";
					echo "<tr>";
						echo "
							<td align='center'>3</td>
							<td align='left'>ENCARGOS SOCIAIS</td>
							<td align='center'>".masc_2($taxa_encargo*100)."%</td>
							<td align='center'>R$ ".masc_real($hora_encargo)."</td>
							<td align='center'>R$ ".masc_real($mes_encargo)."</td>
							<td align='center'></td>
							";
					echo "</tr>";
                    echo "<tr>";
						echo "
							<td align='center'>3</td>
							<td align='left'>ENCARGOS FOLHA</td>
							<td align='center'>".masc_2($taxa_encargo_folha*100)."%</td>
							<td align='center'>R$ ".masc_real($hora_encargo_folha)."</td>
							<td align='center'>R$ ".masc_real($mes_encargo_folha)."</td>
							<td align='center'></td>
							";
					echo "</tr>";
					if ($pf==1)
					{
						echo "<tr>";
							echo "
								<td align='center'>4</td>
								<td align='left'>F-10</td>
								<td align='center'></td>
								<td align='center'>R$ ".masc_real($hora_pf)."</td>
								<td align='center'>R$ ".masc_real($mes_pf)."</td>
								<td align='center'></td>
								";
						echo "</tr>";
					}
					echo "<tr><td align='center' colspan='4' bgcolor='#FFFF5E'><b>CUSTO TOTAL POR MÊS</b></td><td align='center' colspan='2' bgcolor='#FFFF5E'><b>R$ ".masc_real($custo_empresa)."</b></td></tr>";
				echo "</table>";
			}
		return true;
	}
	//FORM DE CADASTRO DE AVANÇO PREVISTO tipo: altera ou novo (save, alçteração e conclusão está em index.php)
	function CadAvanco($coduser,$obra,$tipo)
	{
		$libera = 0;
		if ($tipo=="ver")
		{
			if (((verif_perm($coduser,$obra,22,"L"))==true) || ((verif_perm($coduser,1,22,"L"))==true))
				$libera = 1;
		}
		else
		{
			if ((verif_perm($coduser,$obra,22,"G"))==true)
				$libera = 1;
		}
		if ($libera==1)
		{
			$aux_plan = new Planejamento;

			$duracao = $aux_plan->duracao($coduser,$obra);
			$dias_de_obra = $duracao["duracao"]; //dias de obra
			$data_inicio = date("d/m/Y",$duracao["de"]); //data de inicio da obra
			$data_fim = date("d/m/Y",$duracao["ate"]); //data final da obra

			$dia_inicial = date(w,$duracao["de"]);
			$cont_dias = 0;
			$escreve = 0;

			$linhas = $dias_de_obra/7;
			$linhas = intval($linhas)+2;

			$data_do_dia = br_to_eua($data_inicio);

			?>
			<center><span class='rdo_texto'><b>Período da Obra: <?php echo $data_inicio." a ".$data_fim; ?></b></span></center><br />
			<table id="tab_qualidade" width="950px" align="center" border="1">
				<?php if ($tipo!="ver") { ?> <form action="index.php?<?php echo md5('envio')."=".md5('save_ap'); ?>" method="post" name="formap"> <?php } ?>
				<tr>
					<th colspan="7" align="center" >CADASTRO DE AVANÇO PREVISTO (%)</th>
				</tr>
				<tr bgcolor="EFEFEF">
					<td align="center" >Domingo</td>
					<td align="center" >Segunda</td>
					<td align="center" >Terça</td>
					<td align="center" >Quarta</td>
					<td align="center" >Quinta</td>
					<td align="center" >Sexta</td>
					<td align="center" >Sábado</td>
				</tr>
			<?php
			if ($tipo=="ver")
				$dis = "disabled";
			else
				$dis = "";
			$total_previsto = 0;
			conectabd();
			for ($L=1; $L<=$linhas; $L++)
			{
				echo "<tr>";
					for ($i=0; $i<=6; $i++)
					{
						$data_valor = mktime(0,0,0,substr($data_do_dia,5,2),substr($data_do_dia,8,2),substr($data_do_dia,0,4));
						if (date(w,$data_valor)==6) //sabado
							$cor = "bgcolor='#FFFF00'";
						elseif (date(w,$data_valor)==0) //domingo
							$cor = "bgcolor='#66CCFF'";
						else
							$cor = "";

						echo "<td $cor align='center'>";
							if (($L==1) && ($i<=6) && ($escreve==0)) //para escrever no dia da semana que começa
							{
								if ($i==$dia_inicial)
									$escreve=1;
							}
							if ($escreve==1)
							{
								if (($data_valor>=$duracao["de"]) && ($data_valor<=$duracao["ate"])) //se data estiver no periodo da obra
								{
									$cont_dias = $cont_dias+1;
									echo "Dia $cont_dias<br />".eua_to_br($data_do_dia)."<br />";
									if (($tipo=="altera") || ($tipo=="ver"))
									{
										$dados = mysql_query("select a.avanco from avancoprevisto a where a.obras_cod=$obra AND a.dia='$data_do_dia' ");
										while($linha = mysql_fetch_array($dados))
										{ $x_avanco = $linha["avanco"]; }
										$total_previsto = $total_previsto + $x_avanco;
										?>
										<input <?php echo $dis; ?> style="text-align:center" name="<?php echo $data_do_dia; ?>" type="text" size="9" maxlength="8" value="<?php echo masc_2($x_avanco); ?>">
										<?php
									}
									else
									{
									?>
									<input style="text-align:center" name="<?php echo $data_do_dia; ?>" type="text" size="9" maxlength="8">
									<?php
									}
								}
								$data_do_dia = add_dia_data(substr($data_do_dia,0,4).substr($data_do_dia,5,2).substr($data_do_dia,8,2),1);
							}
						echo "</td>";
					}
				echo "</tr>";
			}
			mysql_close();
			?>
			</tr>
			<?php if ($tipo!="ver") { ?>
			<tr>
				<td colspan="7" align="center"><br><input name="sub" type="submit" value="    Salvar    " class="botao"><br /><br /></td>
			</tr>
			</form> <?php } ?>
			<tr>
				<td colspan="7" align="center"><br>
				<?php
					echo '<b>Avanço Total: '.masc_2($total_previsto).'%</b><br>';
					if (masc_2($total_previsto)>=100)
					{
						conectabd();
						$dados = mysql_query("SELECT * FROM obras o WHERE o.cod=$obra AND o.avanco_previsto='S' ");
						$num = mysql_num_rows($dados);
						if ($num==0)
							echo "Para CONCLUIR o cadastro de avanço previsto <a href='index.php?".md5('envio')."=".md5('conclui_ap')."'>CLIQUE AQUI</a>.<br><u>Obs</u>: Após concluído o cadastro não poderá ser alterado.";
					}
					elseif (($total_previsto!=100) && ($tipo!="ver"))
					{
						echo "Para CONCLUIR o cadastro de avanço previsto da obra é necessário que o total seja 100% (atualmente está em ".masc_2($total_previsto)."%)";
					}
				?>
				<br /><br /></td>
			</tr>
			</table>
			<?php
			unset($duracao);
			unset($aux_plan);
		}
		else
		{
			echo "<center><span class='rdo_texto'><b>Visualização negada ou avanço previsto ainda não concluído. </b></span> <img src=\"../../imagens/exclui.gif\" border=\"0\" ALT=\"Error!\"></center><br>";
		}
	}
	//FORM DE ALTERACAO PERIODO DAS CLASSES (save alterações na index)
	function AltClasses($coduser,$cod_obra)
	{
		if (((verif_perm($coduser,$cod_obra,22,"L"))==true) || ((verif_perm($coduser,1,22,"L"))==true))
		{
			conectabd();
			$dados = mysql_query("SELECT * FROM prazos_obra p WHERE p.obras_cod=$cod_obra AND p.existe=1 AND p.orca_data_de<>p.data_de OR p.orca_data_ate<>p.data_ate ");
			$cont = mysql_num_rows($dados);
			mysql_close();
			if ($cont==0)
				$disa = "";
			else
				$disa = "disabled";

			conectabd();
			//prazo contratual
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=1 ");
			while($linha = mysql_fetch_array($dados))
			{ $contratual = $linha["existe"]; $contratual_de = $linha["datade"]; $contratual_ate = $linha["dataate"]; }
			//prazo civil
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=2 ");
			while($linha = mysql_fetch_array($dados))
			{ $civil = $linha["existe"]; $civil_de = $linha["datade"]; $civil_ate = $linha["dataate"]; }
			//prazo mecanica
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=3 ");
			while($linha = mysql_fetch_array($dados))
			{ $mecanica = $linha["existe"]; $mecanica_de = $linha["datade"]; $mecanica_ate = $linha["dataate"]; }
			//prazo ei
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=4 ");
			while($linha = mysql_fetch_array($dados))
			{ $ei = $linha["existe"]; $ei_de = $linha["datade"]; $ei_ate = $linha["dataate"]; }
			//prazo jp
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=5 ");
			while($linha = mysql_fetch_array($dados))
			{ $jp = $linha["existe"]; $jp_de = $linha["datade"]; $jp_ate = $linha["dataate"]; }
			//prazo projeto
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=6 ");
			while($linha = mysql_fetch_array($dados))
			{ $projeto = $linha["existe"]; $projeto_de = $linha["datade"]; $projeto_ate = $linha["dataate"]; }
			//prazo andaime
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=7 ");
			while($linha = mysql_fetch_array($dados))
			{ $andaime = $linha["existe"]; $andaime_de = $linha["datade"]; $andaime_ate = $linha["dataate"]; }
			//prazo canteiro
			$dados = mysql_query("select p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as datade, date_format(p.orca_data_ate, '%d/%m/%Y') as dataate from prazos_obra p where p.obras_cod=$cod_obra AND p.classes_cod=8 ");
			while($linha = mysql_fetch_array($dados))
			{ $canteiro = $linha["existe"]; $canteiro_de = $linha["datade"]; $canteiro_ate = $linha["dataate"]; }
			mysql_close();
			?>
			<table id="tab2" width="900px" align="center" border="1">
				<form action="?<?php echo md5('envio')."=".md5('save_altclasses'); ?>" method="post" name="formobra_geral">
				<input name="obra" type="hidden" size="5" maxlength="10" value="<?php echo $obra; ?>">
				<!-- PRAZOS  -->
				<?php
				if ($contratual==1)
				{
					?>
					<tr bgcolor="#EFEFEF">
						<td width="200px" align="center"><b>Classe</b></td>
						<td width="250px" align="center"><b>Período</b></td>
						<td align="left">                <b>Novo Período</b></td>
					</tr>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Contratual:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $contratual_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $contratual_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="contratual_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(1,contratual_de.value,contratual_ate.value)"> a <input <?php echo $disa; ?> name="contratual_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(1,contratual_de.value,contratual_ate.value)"> <span id="calc_contratual"></span></td>
					</tr>
					<?php
				}
				if ($civil==1)
				{
					?>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Execução Civil:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $civil_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $civil_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="civil_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(2,civil_de.value,civil_ate.value)"> a <input <?php echo $disa; ?> name="civil_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(2,civil_de.value,civil_ate.value)">  <span id="calc_civil"></span></td>
					</tr>
					<?php
				}
				if ($mecanica==1)
				{
					?>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Execução Mecânica:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $mecanica_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $mecanica_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="mecanica_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(3,mecanica_de.value,mecanica_ate.value)"> a <input <?php echo $disa; ?> name="mecanica_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(3,mecanica_de.value,mecanica_ate.value)"> <span id="calc_mecanica"></span></td>
					</tr>
					<?php
				}
				if ($ei==1)
				{
					?>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Execução Elétrica/Instrum.:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $ei_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $ei_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="ei_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(4,ei_de.value,ei_ate.value)"> a <input <?php echo $disa; ?> name="ei_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(4,ei_de.value,ei_ate.value)"> <span id="calc_ei"></span></td>
					</tr>
					<?php
				}
				if ($jp==1)
				{
					?>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Execução Jato e Pintura:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $jp_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $jp_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="jp_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(5,jp_de.value,jp_ate.value)"> a <input <?php echo $disa; ?> name="jp_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(5,jp_de.value,jp_ate.value)"> <span id="calc_jp"></span></td>
					</tr>
					<?php
				}
				if ($projeto==1)
				{
					?>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Execução Projeto:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $projeto_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $projeto_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="projeto_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(6,projeto_de.value,projeto_ate.value)"> a <input <?php echo $disa; ?> name="projeto_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(6,projeto_de.value,projeto_ate.value)"> <span id="calc_projeto"></span></td>
					</tr>
					<?php
				}
				if ($andaime==1)
				{
					?>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Execução Andaimes:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $andaime_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $andaime_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="andaime_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(7,andaime_de.value,andaime_ate.value)"> a <input <?php echo $disa; ?> name="andaime_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(7,andaime_de.value,andaime_ate.value)"> <span id="calc_andaime"></span></td>
					</tr>
					<?php
				}
				if ($canteiro==1)
				{
					?>
					<tr>
						<td bgcolor="#EFEFEF" align="right">Prazo Execução Total Canteiro:</td>
						<td align="center"><input readonly="true" type="text" size="13" value="<?php echo $canteiro_de; ?>" /> a <input readonly="true" type="text" size="13" value="<?php echo $canteiro_ate; ?>" /></td>
						<td><input <?php echo $disa; ?> name="canteiro_de" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(8,canteiro_de.value,canteiro_ate.value)"> a <input <?php echo $disa; ?> name="canteiro_ate" type="text" size="13" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')" onkeyup="calcula_dias(8,canteiro_de.value,canteiro_ate.value)"> <span id="calc_canteiro"></span></td>
					</tr>
					<?php
				}
				?>
				<tr><td colspan="3" align="center"></td></tr>
				<tr>
					<td colspan="3" align="center"><input <?php echo $disa; ?> name="sub" type="submit" value="  Salvar Alterações  " class="botao"></td>
				</tr>
				</form>
			</table>
			<?php
		}
		else
		{
			$plan = new Planejamento;
			$plan->erro_plan();
		}
	}
	//VER PERIODO ALTERADO
	function VerAltClasses($coduser,$cod_obra)
	{
		if (((verif_perm($coduser,$cod_obra,22,"L"))==true) || ((verif_perm($coduser,1,22,"L"))==true))
		{
			conectabd();
			$dados = mysql_query("SELECT * FROM prazos_obra p WHERE p.obras_cod=$cod_obra AND p.existe=1 AND p.orca_data_de<>p.data_de OR p.orca_data_ate<>p.data_ate ");
			$cont = mysql_num_rows($dados);
			mysql_close();
			?>
			<table id="tab2" width="780px" align="center" border="1">
				<tr bgcolor="#EFEFEF">
					<td width="225px" align="center"><b>Classe</b></td>
					<td width="270px" align="center"><b>Pelo Orçamento</b></td>
					<td align="center"><b>Pelo Planejamento</b></td>
				</tr>
				<?php
				conectabd();
				$dados = mysql_query("select c.descricao, c.cod, p.existe, date_format(p.orca_data_de, '%d/%m/%Y') as orca_de,
													   				date_format(p.orca_data_ate, '%d/%m/%Y') as orca_ate,
													  				date_format(p.data_de, '%d/%m/%Y') as de,
													  				date_format(p.data_ate, '%d/%m/%Y') as ate
									  from prazos_obra p, classes c where p.obras_cod=$cod_obra AND p.classes_cod=c.cod order by c.cod ");
				while($linha = mysql_fetch_array($dados))
				{
					$classe = $linha["descricao"];
					$cod_classe = $linha['cod'];
					$existe = $linha["existe"];
					$orca_de = $linha["orca_de"];
					$orca_ate = $linha["orca_ate"];
					$de = $linha["de"];
					$ate = $linha["ate"];

					if ($existe==1)
					{
						if ($cont==0)
						{
							$de = "";
							$ate = "";
						}

						?>
						<tr>
							<td bgcolor="#EFEFEF" align="right">Prazo de <?php echo $classe; ?></td>
							<td align="center"><input style="text-align:center;" readonly="true" type="text" size="13" value="<?php echo $orca_de; ?>" /> a <input style="text-align:center;" readonly="true" type="text" size="13" value="<?php echo $orca_ate; ?>" /></td>
							<form action="../pierre/cad_planej.php" method="post">
							<td align="center">
							<input style="text-align:center;"  type="text" size="13" value="<?php echo $de; ?>" /> a <input style="text-align:center;" type="text" size="13" value="<?php echo $ate; ?>" />
							<!--<img src="../../imagens/editar_1.png" alt="alterar" onClick="popup('http://www.google.com.br');" />-->
							<a href="#" style="border:none" onClick="window.open('../pierre/cad_planej.php?cod_obra=<?=$cod_obra?>&cod_classe=<?=$cod_classe?>&coduser=<?=$coduser?>&de=<?=$de?>&ate=<?=$ate?>&classe=<?=$classe?>','Janela','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=340,height=200,left=340,top=300'); return false;"> <img src="../../imagens/editar_1.png" style="border:none"> </a>
							<!--<a href="#" onclick="document.getElementById('teste').style.display='block';"> <img src="../../imagens/editar_1.png" style="border:none"> </a>-->
							<div id="teste" style="display:none">
							<input type="text" size="13" /> a <input type="text" size="13" style="margin-right:19px" />
							<input type="hidden" name="cod_obra" value="<?=$cod_obra?>" />
							<input type="hidden" name="classe" value="<?=$cod_classe?>" />
							</div>
							</td>

							</form>
						</tr>

						<?php

					}

				}
				mysql_close();


				?>
				 <!-- Cadastro de dias de medições. -->
				 <?php
				 conectabd();
				 $seleciona = mysql_query("select m.de, m.ate from medicoes m where m.obras_cod=$cod_obra");
				 $nmed = mysql_num_rows($seleciona);


				 ?>
				 <form action="../pierre/cad_med.php" method="post" name="form1" onsubmit="return validar();">
				 <input type="hidden" value="<?=$coduser?>" name="coduser" />
				 <input type="hidden" value="<?=$cod_obra?>" name="cod_obra" />
				 <input type="hidden" value="<?=$de?>" name="inicio_obra" />
				 <input type="hidden" value="<?=$ate?>" name="fim_obra" />
				 <tr>
				     <td bgcolor="#EFEFEF" align="right">Prazo de medições</td>
					 <td align="center"><input style="text-align:center;" readonly="true" type="text" size="13" value="<?php echo $de; ?>" /> a <input style="text-align:center;" readonly="true" type="text" size="13" value="<?php echo $ate; ?>" /></td>
					 <td align="center" rowspan="2" colspan="2">
					 <?php
					 //SELECT
					 //echo "Código da obra: ".$cod_obra;

						if ($nmed == 0 )
						   echo "Nenhuma medição cadastrada para esta obra até o momento.";
						else
						{
							echo "Medições cadastradas até o momento.<br /><br />";
							while($linha = mysql_fetch_array($seleciona))
							{
								$de = $linha['de'];
								$ate = $linha['ate'];
								$de = explode ("-",$de);
								$ate = explode ("-",$ate);
								$de = $de[2]."/".$de[1]."/".$de[0];
								$ate = $ate[2]."/".$ate[1]."/".$ate[0];

								?>
								<input style="text-align:center;"  type="text" size="13" value="<?php echo $de; ?>" /> a <input style="text-align:center;" type="text" size="13" value="<?php echo $ate; ?>" /> <a href="#" style="border:none" onClick="window.open('../pierre/cad_planej.php?cod_obra=<?=$cod_obra?>&cod_classe=<?=$cod_classe?>&coduser=<?=$coduser?>&de=<?=$de?>&ate=<?=$ate?>&classe=<?=$classe?>','Janela','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=340,height=200,left=340,top=300'); return false;"> <img src="../../imagens/editar_1.png" style="border:none"> </a>
								<?php
							}
						}
					 ?>
					 </td>
				 </tr>
				 <tr>
				 	<td>
						<?php
						//	if ($nmed == 0)
						///	{
						?>
						<input type="radio" name="op" value="datas_definidas" onclick="document.getElementById('nmed').style.display='block'; document.getElementById('tp').style.display='none'; document.getElementById('datai').style.display='none'; "  /> Datas Definidas
						<br />
						<input type="radio" name="op" value="criterio" onclick="document.getElementById('tp').style.display='block'; document.getElementById('nmed').style.display='none'; document.getElementById('datai').style.display='none'; " /> Critério
						<br />

						<div id="tp" style="display:none; margin-left: 20px;">
							<br />
							<input type="radio" name="dcriterio" value="15" onclick="document.getElementById('datai').style.display='block';" /> 15 dias

							<br />
							<input type="radio" name="dcriterio" value="30" onclick="document.getElementById('datai').style.display='block';" /> 30 dias
						</div>
					    <?php
						//	}
						//	else
						//		echo "<span style='text-align:right'>Medições cadastradas.</span>";
						?>

					</td>
					<td align="center">
					<script>
							function formata_data_aux(src, mask)
							{
								var i = src.value.length;
								var saida = mask.substring(0,1);
								var texto = mask.substring(i);
								if (texto.substring(0,1) != saida)
								{
									src.value += texto.substring(0,1);
								}
							}

							function nmedicoes(qtde)
							{
								nmedicoes=document.getElementById('nmed');
								nmedicoes.innerHTML="";
								for (c=1;c<=qtde;c++)
								{
									nmedicoes.innerHTML=nmedicoes.innerHTML+c+": <input style='text-align:center;' type='text' size='13' name='mdatasi[]' maxlength='10' OnKeyPress=\"formata_data_aux(this, '##/##/####')\" /> a <input style='text-align:center;' type='text' size='13' name='mdatasf[]' maxlength='10' OnKeyPress=\"formata_data_aux(this, '##/##/####')\" />  <br /> ";
								}
							}
					</script>
						<div id="nmed" style="display:none; margin-left: 20px;">
							Número de medições: <br />
							<input type="text" name="nmedi" style="width:20px"  maxlength="3"/>
							<input type="buttom" size="2" value="Ok" onclick="nmedicoes(nmedi.value)" OnKeyPress="formata_data_aux(this, '##/##/####')" />
						</div>
							<br />

						<div id="nmedicoes">

						</div>


						<div id="datai" style="display:none">
							Data da primeira medição: <br />
							<input style="text-align:center;" type="text" size="13" name="dtimed" maxlength="10" OnKeyPress="formata_data_aux(this, '##/##/####')"/>
						</div>


					</td>

				</tr>
				<tr>
					<td>

					</td>
					<input type="hidden" name="coduser" value="<?=$coduser?>"/>
					<?php
					//if ($nmed == 0)
					//{
					?>
					<script type="text/javascript">
					function validar()
					{
					  if(confirm("Confirmar Período de Classes"))
					  {
						return true;
					  } else
					  {
						alert("Cadastro não Realizado.");
						return false;
					  }
					}
					</script>
					<td><input type="submit" style="float:right; width:80px; border:1px #000000;" value="Cadastrar" name="Cadastrar" /></td>
					<?php
					//}
					?>
					<td>

					</td>
				 </tr>
				 </form>

			</table>
			<?php
		}
		else
		{
			$plan = new Planejamento;
			$plan->erro_plan();
		}
	}
	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
	 *																	RETORNADORES																   *
	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
	/* * * * * * * * * * * * * * * * * * * * * * *
	 *		          AUDITORIA					 *
	 * * * * * * * * * * * * * * * * * * * * * * */
	// RETORNA NUMERO DE HOMENS PREVISTO POR DIA PARA TODA OBRA
	function H_previstos($coduser,$obra,$funcao,$mo,$classe)
	{
		conectabd();
		if ($mo=="direta")
			$dados = mysql_query("select m.horas_planejadas from modireta m where m.obras_cod=$obra AND m.funcoes_cod=$funcao AND classes_cod=$classe ");
		elseif ($mo=="indireta")
			$dados = mysql_query("select m.horas_planejadas from moindireta m where m.obras_cod=$obra AND m.funcoes_cod=$funcao AND classes_cod=$classe ");
		while($linha = mysql_fetch_array($dados))
		{
			$hprevista = $linha["horas_planejadas"];
		}
		$aux = new Planejamento;
		$periodo = $aux->periodoClasseMeses($coduser,$obra,$classe);
		$result = $hprevista/$periodo/184;
		unset($aux);
		return $result;
	}
	// QTD EFETIVO AUDITORIA (PARTE RDO) : tipo = acumulado, nodia, atedata
	function Efetivo_Aud_RDO($coduser,$obra,$mo,$tipo,$data,$funcao,$classe)
	{
		$qtd_usimec = 0;
		$qtd_subcontratada = 0;
		conectabd();
		if ($tipo=="acumulado")
		{
			if ($mo=="direta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomod m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomodsub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
			elseif ($mo=="indireta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomoi m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomoisub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
		}
		elseif ($tipo=="nodia")
		{
			if ($mo=="direta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomod m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomodsub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
			elseif ($mo=="indireta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomoi m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomoisub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
		}
		elseif ($tipo=="atedata")
		{
		if ($mo=="direta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomod m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomodsub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
			elseif ($mo=="indireta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomoi m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.nfunc) as qtd FROM rdomoisub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
		}
		while($linha_sql_usimec = mysql_fetch_array($sql_usimec))
		{ $qtd_usimec = $linha_sql_usimec["qtd"]; }
		while($linha_sql_sub = mysql_fetch_array($sql_sub))
		{ $qtd_subcontratada = $linha_sql_sub["qtd"]; }

		$qtd = $qtd_usimec+$qtd_subcontratada;

		return $qtd;
	}

	//Diferença entre datas
	function DataMaior($data1,$data2)
	{
	$ano_banco1 = substr($data1,0,4);
	$mes_banco1 = substr($data1,5,2);
	$dia_banco1 = substr($data1,8,2);
	$data1 = $dia_banco1."-".$mes_banco1."-".$ano_banco1;

	$ano_banco2 = substr($data2,0,4);
	$mes_banco2 = substr($data2,5,2);
	$dia_banco2 = substr($data2,8,2);
	$data2 = $dia_banco2."-".$mes_banco2."-".$ano_banco2;

	$data1 = mktime(0,0,0,$mes_banco1,$dia_banco1,$ano_banco1);
	$data2 = mktime(0,0,0,$mes_banco2,$dia_banco2,$ano_banco2);

	$dias = ($data2 - $data1)/86400;
	$dias = ceil($dias);

	return $dias+1;
	}




	// HH EFETIVO AUDITORIA (PARTE RDO) : tipo = acumulado, nodia, atedata
	function HH_Aud_RDO($coduser,$obra,$mo,$tipo,$data,$funcao,$classe)
	{
		$qtd_usimec = 0;
		$qtd_subcontratada = 0;
		conectabd();
		if ($tipo=="acumulado")
		{
			if ($mo=="direta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.hh) as qtd FROM rdomod m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.hh) as qtd FROM rdomodsub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
			elseif ($mo=="indireta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.hh) as qtd FROM rdomoi m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.hh) as qtd FROM rdomoisub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='".date("Y/m/d")."' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
		}
		elseif ($tipo=="nodia")
		{
			if ($mo=="direta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.hh) as qtd FROM rdomod m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.hh) as qtd FROM rdomodsub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
			elseif ($mo=="indireta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.hh) as qtd FROM rdomoi m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.hh) as qtd FROM rdomoisub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
		}
		elseif ($tipo=="atedata")
		{
			if ($mo=="direta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.hh) as qtd FROM rdomod m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.hh) as qtd FROM rdomodsub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
			elseif ($mo=="indireta")
			{
				$sql_usimec = mysql_query("SELECT sum(m.hh) as qtd FROM rdomoi m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao AND m.classes_cod=$classe ");
				$sql_sub = mysql_query("SELECT sum(m.hh) as qtd FROM rdomoisub m, rdo r
									WHERE r.obras_cod=$obra AND r.cod=m.rdo_cod AND r.data_rdo<='$data' AND r.aprovado='S' AND m.funcoes_cod=$funcao ");
			}
		}
		while($linha_sql_usimec = mysql_fetch_array($sql_usimec))
		{ $qtd_usimec = $linha_sql_usimec["qtd"]; }
		while($linha_sql_sub = mysql_fetch_array($sql_sub))
		{ $qtd_subcontratada = $linha_sql_sub["qtd"]; }

		$qtd = $qtd_usimec+$qtd_subcontratada;

		return $qtd;
	}
	// EFETIVO PREVISTO DE TODA OBRA EM UM DETERMINADO DIA
	function EfetivoPrevisto($coduser,$obra,$data_sql)
	{
			$total_prev_efetivo_direto = 0;
			$total_prev_efetivo_indireto = 0;

			$aux = new Planejamento;

			# efetivo mo direta
			conectabd();
			//$dados = "select m.funcoes_cod, m.horas_previstas, m.classes_cod ";
			$dados = "select m.funcoes_cod, m.horas_previstas, m.classes_cod ";
			$dados = $dados."from funcoes f, modireta m ";
			$dados = mysql_query($dados."where m.obras_cod=$obra AND m.funcoes_cod=f.cod order by f.cod ");
			$num=mysql_num_rows($dados);
			if ($num>0)
			{
				while($linha = mysql_fetch_array($dados))
				{
					$funcao = $linha["funcoes_cod"];
					$hprevista = $linha["horas_planejadas"];
					$classe = $linha["classes_cod"];

					//verificar se data nao eh menor nem maior que o periodo da classe
					$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' AND p.data_ate>='$data_sql' ");
					if (mysql_num_rows($dados2)==1)
					{
						# homens previstos por dia
						$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"direta",$classe);
						$total_prev_efetivo_direto = $total_prev_efetivo_direto + $h_dia_funcao;
					}
				}
			}

			# efetivo mo indireta
			conectabd();
			$dados = "select m.funcoes_cod, m.horas_previstas, m.classes_cod ";
			$dados = $dados."from funcoes f, moindireta m ";
			$dados = mysql_query($dados."where m.obras_cod=$obra AND m.funcoes_cod=f.cod order by f.cod ");
			$num=mysql_num_rows($dados);
			if ($num>0)
			{
				while($linha = mysql_fetch_array($dados))
				{
					$funcao = $linha["funcoes_cod"];
					$hprevista = $linha["horas_previstas"];
					$classe = $linha["classes_cod"];

					//verificar se data nao eh menor nem maior que o periodo da classe
					$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' AND p.data_ate>='$data_sql' ");
					if (mysql_num_rows($dados2)==1)
					{
						# homens previstos por dia
						$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"indireta",$classe);
						$total_prev_efetivo_indireto = $total_prev_efetivo_indireto + $h_dia_funcao;
					}
				}
			}

			unset($aux);
			return $total_prev_efetivo_direto + $total_prev_efetivo_indireto;
	}
	/* * * * * * * * * * * * * * * * * * * * * * *
	 *		             RDO					 *
	 * * * * * * * * * * * * * * * * * * * * * * */
	// RDO -> FALTAS MOI
	function faltas_moi($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.faltas) as qtd FROM rdomoi r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }
		mysql_close();

		return $qtd;
	}
	// RDO -> FALTAS MOD
	function faltas_mod($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.faltas) as qtd FROM rdomod r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }
		mysql_close();

		return $qtd;
	}
	// RDO -> EFETIVO MOI
	function moi($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.nfunc) as qtd FROM rdomoi r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }

		return $qtd;
	}
	// RDO -> EFETIVO MOD
	function mod($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.nfunc) as qtd FROM rdomod r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }

		return $qtd;
	}
	// RDO -> EFETIVO TOTAL SUBCONTRATADAS
	function efetivo_sub($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.nfunc) as qtd FROM rdomoisub r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd_moi = $linha_sql["qtd"]; }
		$sql = mysql_query("SELECT sum(r.nfunc) as qtd FROM rdomodsub r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd_mod = $linha_sql["qtd"]; }

		$qtd = $qtd_moi+$qtd_mod;

		return $qtd;
	}
	// RDO -> EFETIVO TOTAL
	function efetivo_total($coduser,$rdo)
	{
		$aux_plan = new Planejamento;
		$qtd = $aux_plan->moi($coduser,$rdo) + $aux_plan->mod($coduser,$rdo) + $aux_plan->efetivo_sub($coduser,$rdo);
		unset($aux_plan);
		return $qtd;
	}
	// RDO -> HORAS MOI
	function horas_moi($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.hh) as qtd FROM rdomoi r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }
		mysql_close();

		return $qtd;
	}
	// RDO -> HORAS MOD
	function horas_mod($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.hh) as qtd FROM rdomod r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }
		mysql_close();

		return $qtd;
	}
	// RDO -> HORAS SUBCONTRATADAS
	function horas_efetivo_sub($coduser,$rdo)
	{
		conectabd();
		$sql = mysql_query("SELECT sum(r.hh) as qtd FROM rdomoisub r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd_moi = $linha_sql["qtd"]; }
		$sql = mysql_query("SELECT sum(r.hh) as qtd FROM rdomodsub r WHERE r.rdo_cod=$rdo ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd_mod = $linha_sql["qtd"]; }
		mysql_close();

		$qtd = $qtd_moi+$qtd_mod;

		return $qtd;
	}
	// RDO -> HORAS TOTAL ACUMULADO (ATÉ O RDO)
	function Horas_efetivo_subAcumuladas($coduser,$rdo)
	{
		$qtd_hrs = 0;
		$aux_plan2 = new Planejamento;
		conectabd();
		$dados = mysql_query("SELECT r.obras_cod, r.data_rdo FROM rdo r WHERE r.cod=$rdo ");
		while($linha = mysql_fetch_array($dados))
		{
			$obracod = $linha["obras_cod"];
			$datardo = $linha["data_rdo"];
		}

		$dados = mysql_query("SELECT r.cod FROM rdo r WHERE r.obras_cod=$obracod AND r.data_rdo<='$datardo' order by r.data_rdo ");
		while($linha = mysql_fetch_array($dados))
		{
			$rdo=$linha['cod'];
			$qtd_hrs_1=$aux_plan2->horas_efetivo_sub($coduser,$rdo);
			$qtd_hrs+=$qtd_hrs_1;
		}
    	unset($aux_plan2);
		return $qtd_hrs;
	}
	// RDO -> HORAS TOTAL EM UM RDO
	function HorasExecutadas($coduser,$rdo)
	{
		$aux_plan = new Planejamento;
		$qtd = $aux_plan->horas_moi($coduser,$rdo) + $aux_plan->horas_mod($coduser,$rdo) + $aux_plan->horas_efetivo_sub($coduser,$rdo);
		unset($aux_plan);
		return $qtd;
	}

	// RDO -> HORAS TOTAL ACUMULADO (ATÉ O RDO)
	function HorasAcumuladas($coduser,$rdo)
	{
		$qtd_hrs = 0;
		$thh_extra = 0;
		$aux_plan2 = new Planejamento;
		conectabd();
		$dados = mysql_query("SELECT r.obras_cod, r.data_rdo FROM rdo r WHERE r.cod=$rdo ");
		while($linha = mysql_fetch_array($dados))
		{ $obracod = $linha["obras_cod"]; $datardo = $linha["data_rdo"]; }
		$dados = mysql_query("SELECT r.cod, r.hh_extra FROM rdo r WHERE r.obras_cod=$obracod AND r.data_rdo<='$datardo' order by r.data_rdo ");
		while($linha = mysql_fetch_array($dados))
		{
			$rdocod = $linha["cod"];
			$hh_extra = $linha['hh_extra'];
			$dados1 = mysql_query("SELECT sum(r.hh) qtd FROM rdomoi r WHERE rdo_cod=$rdocod ");
			while($linha1 = mysql_fetch_array($dados1))
			{
				$qtd1 = $linha1['qtd'];
				$qtd_hrs += $qtd1;
			}
			$dados2 = mysql_query("SELECT sum(r.hh) qtd FROM rdomod r WHERE rdo_cod=$rdocod ");
			while($linha2 = mysql_fetch_array($dados2))
			{
				$qtd2 = $linha2['qtd'];
				$qtd_hrs += $qtd2;
			}
			$thh_extra = $thh_extra + $hh_extra;

		}
		$qtd_hrs += $thh_extra;
    	unset($aux_plan2);
		return $qtd_hrs;

	}


	function HorasExtras($coduser,$rdo,$hed,$hen)
	{
		$qtd_hrs = 0;
		conectabd();
		$aux_plan2 = new Planejamento;

		$dados1 = mysql_query("SELECT hh_extra FROM rdo r WHERE r.cod=$rdo");
		while($linha1 = mysql_fetch_array($dados1))
		{ $qtd = $linha1['hh_extra']; }

		/*$x_extras_d = 0;
		$x_extras_n = 0;
		$x_extras_d1 = 0;
		$x_extras_n1 = 0;

		//Extra1
		$dados1 = mysql_query("SELECT inicio,termino FROM rdohorarios r WHERE r.rdo_COD=$rdo AND r.turno='E1'");
		while($linha1 = mysql_fetch_array($dados1))
		{ $inicio1 = $linha1["inicio"]; $termino1 = $linha1["termino"]; }

		//Extra2
		$dados2 = mysql_query("SELECT inicio,termino FROM rdohorarios r WHERE r.rdo_COD=$rdo AND r.turno='E2'");
		while($linha2 = mysql_fetch_array($dados2))
		{ $inicio2 = $linha2["inicio"]; $termino2 = $linha2["termino"]; }


		$a1 = substr($inicio1,0,2);
		$a2 = substr($inicio1,3,2);
		$a3 = substr($termino1,0,2);
		$a4 = substr($termino1,3,2);

		$a5 = substr($inicio2,0,2);
		$a6 = substr($inicio2,3,2);
		$a7 = substr($termino2,0,2);
		$a8 = substr($termino2,3,2);


		$h1 = $a3 - $a1;
		$h2 = $a2 + $a4;
		if ($h2 >= 60)
		{
			$h1 = $h1 + 1;
			$h2 = $h2 - 60;
		}
		$h2 = (($h2*100)/60);
		$htdp = "$h1.$h2";
		$htd = $htdp * $hed;


		$h5 = $a7 - $a5;
		$h6 = $a8 + $a6;
		if ($h6 >= 60)
		{
			$h5 = $h5 + 1;
			$h6 = $h6 - 60;
		}
		$h6 = (($h6*100)/60);
		$htdn = "$h5.$h6";
		$htn = $htdn * $hen;

		$qtd = $htd + $htn;

		$h2 = $a7 - $a5;
		$ht12 = $h1+h2;

		$h3 = $a4 - $a2;
		$h4 = $a8 - $a6;


		$ht34 = $h3 + $h4;
		if ($ht34 >= 60)
		{
			$ht12 = $ht12 + 1;
			$ht34 = $ht34 - 60;
		}
		$ht34 = (($ht34*100)/60);

		$qtd = "$ht12.$ht34";
		unset($aux_plan2);*/

		return $qtd;
	}

	// RDO -> SUBCONTRATADA EFETIVO
	function Sub_nfunc($coduser,$rdo,$codsub,$mo)
	{
		conectabd();
		if ($mo=="indireta")
			$sql = mysql_query("SELECT sum(r.nfunc) as qtd FROM rdomoisub r WHERE r.rdo_cod=$rdo AND r.subcontratadas_cod=$codsub ");
		elseif ($mo=="direta")
			$sql = mysql_query("SELECT sum(r.nfunc) as qtd FROM rdomodsub r WHERE r.rdo_cod=$rdo AND r.subcontratadas_cod=$codsub ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }
		mysql_close();

		return $qtd;
	}

	// RDO -> SUBCONTRATADA HH
	function Sub_hh($coduser,$rdo,$codsub,$mo)
	{
		conectabd();
		if ($mo=="indireta")
			$sql = mysql_query("SELECT sum(r.hh) as qtd FROM rdomoisub r WHERE r.rdo_cod=$rdo AND r.subcontratadas_cod=$codsub ");
		elseif ($mo=="direta")
			$sql = mysql_query("SELECT sum(r.hh) as qtd FROM rdomodsub r WHERE r.rdo_cod=$rdo AND r.subcontratadas_cod=$codsub ");
		while($linha_sql = mysql_fetch_array($sql))
		{ $qtd = $linha_sql["qtd"]; }

		return $qtd;
	}

	// RDO -> TOTAL PARALIZACAO
	function TotalParalizacao($coduser,$rdo)
	{
		conectabd();
		$dados = mysql_query("SELECT m.cod, r.inicio, r.termino from motivospara m, rdoparalizacao r WHERE r.rdo_cod=$rdo AND r.motivospara_cod=m.cod order by m.cod ");
		$soma_horas = 0;
		$soma_min = 0;
		while($linha = mysql_fetch_array($dados))
		{
			$cod_para = $linha["cod"];
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];

			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		if ($soma_min>59)
		{
			$soma_horas = $soma_horas + intval($soma_min/60);
			$soma_min = $soma_min - intval($soma_min/60)*60;
		}
		if ($soma_horas<10)
			$soma_horas = "0".$soma_horas;
		if ($soma_min<10)
			$soma_min = "0".$soma_min;

		return $soma_horas.":".$soma_min;
	}


	// RDO -> TOTAL PARALIZACAO
	function TotalParalizacaoT($coduser,$rdo,$t)
	{
		conectabd();
		$dados = mysql_query("SELECT m.cod, r.inicio, r.termino from motivospara m, rdoparalizacao r WHERE r.turno='$t' AND r.rdo_cod=$rdo AND r.motivospara_cod=m.cod order by m.cod ");
		$soma_horas = 0;
		$soma_min = 0;
		while($linha = mysql_fetch_array($dados))
		{
			$cod_para = $linha["cod"];
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];

			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		if ($soma_min>59)
		{
			$soma_horas = $soma_horas + intval($soma_min/60);
			$soma_min = $soma_min - intval($soma_min/60)*60;
		}
		if ($soma_horas<10)
			$soma_horas = "0".$soma_horas;
		if ($soma_min<10)
			$soma_min = "0".$soma_min;

		return $soma_horas.":".$soma_min;
	}

	// RDO -> TOTAL DE HORAS TURNOS
	function TotalTurnos($coduser,$rdo)
	{
		$soma_horas = 0;
		$soma_min = 0;
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		conectabd();
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='D1' ");
		while($linha = mysql_fetch_array($dados))
		{
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='D2' ");
		while($linha = mysql_fetch_array($dados))
		{
		 	$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='N1' ");
		while($linha = mysql_fetch_array($dados))
		{
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='N2' ");
		while($linha = mysql_fetch_array($dados))
		{
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}

		if ($soma_min>59)
		{
			$soma_horas = $soma_horas + intval($soma_min/60);
			$soma_min = $soma_min - intval($soma_min/60)*60;
		}
		if ($soma_horas<10)
			$soma_horas = "0".$soma_horas;
		if ($soma_min<10)
			$soma_min = "0".$soma_min;

		return $soma_horas.":".$soma_min;
	}


	function ParcialDiurno($coduser,$rdo)
	{
		$soma_horas = 0;
		$soma_min = 0;
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		conectabd();
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='D1' ");
		while($linha = mysql_fetch_array($dados))
		{
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='D2' ");
		while($linha = mysql_fetch_array($dados))
		{
		 	$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}

		if ($soma_min>59)
		{
			$soma_horas = $soma_horas + intval($soma_min/60);
			$soma_min = $soma_min - intval($soma_min/60)*60;
		}
		if ($soma_horas<10)
			$soma_horas = "0".$soma_horas;
		if ($soma_min<10)
			$soma_min = "0".$soma_min;

		return $soma_horas.":".$soma_min;
	}

	function ParcialNoturno($coduser,$rdo)
	{
		$soma_horas = 0;
		$soma_min = 0;
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		conectabd();
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='N1' ");
		while($linha = mysql_fetch_array($dados))
		{
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='N2' ");
		while($linha = mysql_fetch_array($dados))
		{
		 	$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}

		if ($soma_min>59)
		{
			$soma_horas = $soma_horas + intval($soma_min/60);
			$soma_min = $soma_min - intval($soma_min/60)*60;
		}
		if ($soma_horas<10)
			$soma_horas = "0".$soma_horas;
		if ($soma_min<10)
			$soma_min = "0".$soma_min;

		return $soma_horas.":".$soma_min;
	}

	function ParcialExtras($coduser,$rdo)
	{
		$soma_horas = 0;
		$soma_min = 0;
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		conectabd();
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='E1' ");
		while($linha = mysql_fetch_array($dados))
		{
			$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}
		$tempo_para = 0;
		$x_inicio = "";
		$x_termino = "";
		$dados = mysql_query("SELECT r.inicio, r.termino FROM rdohorarios r  WHERE r.rdo_cod=$rdo AND r.turno='E2' ");
		while($linha = mysql_fetch_array($dados))
		{
		 	$x_inicio = $linha["inicio"];
			$x_termino = $linha["termino"];
			if (($x_inicio!="") || ($x_termino!=""))
			{
				if (ValidaHoras($x_inicio,$x_termino,"periodo")==true)
				{
					$tempo_para = CalculaTempo($x_inicio,$x_termino);
					$hora = substr($tempo_para,0,2);
					$min = substr($tempo_para,3,2);

					$soma_horas = $soma_horas + $hora;
					$soma_min = $soma_min + $min;
				}
			}
		}

		if ($soma_min>59)
		{
			$soma_horas = $soma_horas + intval($soma_min/60);
			$soma_min = $soma_min - intval($soma_min/60)*60;
		}
		if ($soma_horas<10)
			$soma_horas = "0".$soma_horas;
		if ($soma_min<10)
			$soma_min = "0".$soma_min;

		return $soma_horas.":".$soma_min;
	}



		function CalculaHora($coduser,$rdo,$h1,$h2)
		{

		$soma_horas = 0;
		$soma_min = 0;
		$tempo_para = 0;
		$x_inicio = $h1;
		$x_termino = $h2;

		$tempo_para = CalculaTempo($x_inicio,$x_termino);
		$hora = substr($tempo_para,0,2);
		$min = substr($tempo_para,3,2);
		$soma_horas = $soma_horas + $hora;
		$soma_min = $soma_min + $min;

		if ($soma_min>59)
		{
			$soma_horas = $soma_horas + intval($soma_min/60);
			$soma_min = $soma_min - intval($soma_min/60)*60;
		}
		if ($soma_horas<10)
			$soma_horas = "0".$soma_horas;
		if ($soma_min<10)
			$soma_min = "0".$soma_min;

		return $soma_horas.":".$soma_min;
	}

	function SomaHoras($h1,$h2)
	{

		$a1 = substr($h1,0,2);
		$a2 = substr($h1,3,2);

		$b1 = substr($h2,0,2);
		$b2 = substr($h2,3,2);



		$hh = $a1 + $b1;
		$hm = $a2 + $b2;


		if ($hm > 59)
		{
			$hh = $hh + intval($hm/60);
			$hm = $hm - (intval($hm/60));
		}

		if ((substr($a2,3,1)==0) && (substr($b2,3,1)==0) && ($a2+$b2 < 10))
			$hm = '0'.$hm;

		$ht = $hh.":".$hm;
		return $ht;

	}



	function ConverteHoras($h1,$h2)
	{

		$a1 = substr($h1,0,2);
		$a2 = substr($h1,3,2);

		$b1 = substr($h2,0,2);
		$b2 = substr($h2,3,2);

		$hh = $a1 + $b1;
		$hm = $a2 + $b2;

		if ($hm > 59)
		{
			$hh = $hh + intval($hm/60);
			$hm = $hm - (intval($hm/60));
		}

		$x = strpos($hm,'.');
		$hm1 = substr($hm,0,$x-1);
		$hm2 = substr($hm,$x+1,2);
		$hm = $hm1.$hm2;

		$hm = ($hm*100)/60;
		$ht = $hh.".".$hm;
		return $ht;

	}


	//PRODUTIVIDADE
	function tabela_produtividade($obra)
	{


		 ###################################### AVANÇO FÍSICO RDO #######################################################
		 conectabd();
		 $dados = mysql_query("select sum(r.avanco) as rdohoje from rdo r where r.obras_cod=$obra AND r.aprovado='S' ");
		 while($linha = mysql_fetch_array($dados))
		 { $hoje_rdo = $linha["rdohoje"]; }
			$hoje_rdo = masc_2($hoje_rdo);
		 mysql_close();

		###################################### RETORNA OS VALORES DE HORAS REALIZADAS HH - RDO ##########################
		conectabd();
		$tothr = 0;
		$tothr1 = 0;
		$cod_func = mysql_query("SELECT cod as cod_rdo FROM rdo r WHERE r.obras_cod = $obra");
		while($linha_cod_func = mysql_fetch_array($cod_func))
		{
			$cod_rdo = $linha_cod_func["cod_rdo"];
			$sql = mysql_query("SELECT sum(r.hh) as tothr FROM rdomod r WHERE r.rdo_cod = $cod_rdo");
			while($linha_sql_usimec = mysql_fetch_array($sql))
			{
				$tothr = $tothr + $linha_sql_usimec["tothr"];
			}
			$sql = mysql_query("SELECT sum(r.hh) as tothr1 FROM rdomoi r WHERE r.rdo_cod = $cod_rdo");
			while($linha_sql_usimec = mysql_fetch_array($sql))
			{
				$tothr1 = $tothr1 + $linha_sql_usimec["tothr1"];
			}

		}
		$tothr = $tothr + $tothr1;
		mysql_close();


		 #################################### SOMA DE HORAS PREVISTAS ##################################################
		 conectabd();
		 $dados = mysql_query("select sum(m.horas_previstas) as hrmo from modireta m where m.obras_cod=$obra");
		 while($linha = mysql_fetch_array($dados))
		 { $hrmo = $linha["hrmo"]; }

		 $dados = mysql_query("select sum(m.horas_previstas) as hrmi from moindireta m where m.obras_cod=$obra");
		 while($linha = mysql_fetch_array($dados))
		 { $hrmi = $linha["hrmi"]; }

		 $hrm = $hrmi + $hrmo;


		############################ CÁLCULOS ####################################
		$prod = ($tothr * 100) / $hrm ;
		$prod = masc_2($prod);
		@$produti = $hoje_rdo / $prod;
		@$produtividade = $hoje_rdo / $prod * 100;


		 if ($produti >= 1)
			$sinal = "<img src='../../imagens/marcador_verde.gif' border='0' alt='".masc_2($produti)."%' />";
		 else if ($prod >= 0.95 && $prod <= 0.99)
		    $sinal = "<img src='../../imagens/marcador_amarelo.gif' border='0' alt='".masc_2($produti)."%' />";
		 else
		    $sinal = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_2($produti)."%' />";

		 ?>
		 <table id="tab_info_obra" width="500px" align="center" border="1" style="margin-left:230px">
					<tr><td colspan='4' bgcolor="EFEFEF" align='center'> <b> Produtividade </b> </td></tr>
					<tr>
					<td width='250px' align='right'>% Obra:</td><td width='100px' align='center'><?=masc_2($hoje_rdo)?>%</td>
					<td width='250px' align='right' rowspan='3'>Produtividade:</td>
						<td width='100px' align='center' rowspan='3'><?php echo masc_2($produtividade)."%"  ?>
						</td>
					</tr>
					<tr>
					<td width='250px' align='right'>% Horas RDO:</td>
					<td width='100px' align='center'><?php echo masc_2($prod)."%";?></td>
					</tr>
					<tr>
					<td width='250px' align='right' colspan='2'>Hrs RDO. / Hrs. Plan.</td>


				   	</tr>
					<tr>
					<td width='250px' align='right' colspan='2'>Produtividade</td>
					<td width='50px' align='right' colspan='2'> <?=$sinal?> </td>
				   	</tr>
				</table>

		 <?

	}

	//COMPARATIVO ORÇADO X PLANEJADO

	function comparativo($coduser,$obra)
	{
		//Selecionar MOD Planejada
		conectabd();
		$sql_usimec = mysql_query("SELECT sum(m.horas_planejadas) as hp FROM modireta m
			WHERE m.obras_cod=$obra");
		while($linha_sql_usimec = mysql_fetch_array($sql_usimec))
		{ $hplad = $linha_sql_usimec["hp"]; }
		mysql_close();
		//Selecionar MOI Planejada
		conectabd();
		$sql_usimec = mysql_query("SELECT sum(m.horas_planejadas) as hp FROM moindireta m
			WHERE m.obras_cod=$obra");
		while($linha_sql_usimec = mysql_fetch_array($sql_usimec))
		{ $hplai = $linha_sql_usimec["hp"]; }
		mysql_close();

		//Selecionar MOI Orçada
		conectabd();
		$dados = mysql_query ("select sum(m.horas_previstas) as hprei from moindireta m where m.obras_cod=$obra");
		while($linha = mysql_fetch_array($dados))
		{ $hprei = $linha["hprei"]; }
		mysql_close();

		//Selecionar MOD Orçada
		conectabd();
		$dados = mysql_query ("select sum(m.horas_previstas) as hpred from modireta m where m.obras_cod=$obra");
		while($linha = mysql_fetch_array($dados))
		{ $hpred = $linha["hpred"]; }
		mysql_close();


		//Selecionar MOD Orçada
		$custoorc = 0;
		$custoplan = 0;
		conectabd();
		$dados = mysql_query ("select m.horas_previstas as hpre, m.horas_planejadas as hplan, m.valor_hh as val from modireta m where m.obras_cod=$obra");
		while($linha = mysql_fetch_array($dados))
		{
			/*echo "H Previstas: ".$linha['hpre'];
			echo "Val :".$linha['val'];
			echo "<br />"; */
			$custoorc = $custoorc + ($linha['hpre'] * $linha['val'] );
			$custoplan = $custoplan + ($linha['hplan'] * $linha['val'] );

		}
		mysql_close();


		conectabd();
		$dados = mysql_query ("select m.horas_previstas as hpre, m.horas_planejadas as hplan, m.valor_hh as val from moindireta m where m.obras_cod=$obra");
		while($linha = mysql_fetch_array($dados))
		{

			$custoorc = $custoorc + ($linha['hpre'] * $linha['val'] );
			$custoplan = $custoplan + ($linha['hplan'] * $linha['val'] );

		}
		mysql_close();


		?>
		<table style="font-size:10px; font-family:verdana; border:solid 1px #999999;" align="center">
		<tr><td colspan="5" align="center" style="border-bottom:1px solid #999999;"> COMPARATIVO ORÇADO x PLANEJADO</td></tr>
		<tr><td colspan="5" align="center">   </td></tr>
		<tr><td style="width:150px;" align="center">Horas MOD Orçada</td><td style="width:50px;" align="center"><?=$hpred?></td><td></td><td style="width:50px;" align="center"><?=$hplad?></td><td style="width:150px;" align="center">Horas MOD Planejada</td></tr>
		<tr><td colspan="5" align="center">   </td></tr>
		<tr><td style="width:150px;" align="center">Horas MOI Orçada</td><td style="width:50px;" align="center"><?=$hprei?></td><td></td><td style="width:50px;" align="center"><?=$hplai?></td><td style="width:150px;" align="center">Horas MOI Planejada</td></tr>
		<tr><td colspan="5" align="center">   </td></tr>
		<tr><td style="width:150px;" align="center">Custo MO Orçado</td><td style="width:50px;" align="center"><?=masc_real($custoorc)?></td><td></td><td><?=masc_real($custoplan)?></td><td style="width:150px;" align="center" align="center">Custo MO Planejado</td></tr>
		</table>
		<?

	}

	/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
	 *																		AUDITORIA															   	   *
	 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
	# TABELA DE PERIODOS DAS CLASSES $mo tipo q mostra os periodos meses ou dias
	function tabela_periodos($coduser,$obra,$tipo)
	{
		switch($tipo)
		{
			case "meses":
				$acao_plan = new Planejamento;
				//prazo contratual
				$contratual = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,1));
				//prazo civil
				$civil = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,2));
				//prazo mecanica
				$mecanica = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,3));
				//prazo ei
				$ei = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,4));
				//prazo jp
				$jp = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,5));
				//prazo projeto
				$projeto = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,6));
				//prazo andaime
				$andaime = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,7));
				//prazo canteiro
				$canteiro = masc_2($acao_plan->periodoClasseMeses($coduser,$obra,8));
				unset($acao_plan);
				$unidade = "meses";
			break;

			case "dias":
				$acao_plan = new Planejamento;
				//prazo contratual
				$contratual = $acao_plan->periodo($coduser,$obra,1);
				//prazo civil
				$civil = $acao_plan->periodo($coduser,$obra,2);
				//prazo mecanica
				$mecanica = $acao_plan->periodo($coduser,$obra,3);
				//prazo ei
				$ei = $acao_plan->periodo($coduser,$obra,4);
				//prazo jp
				$jp = $acao_plan->periodo($coduser,$obra,5);
				//prazo projeto
				$projeto = $acao_plan->periodo($coduser,$obra,6);
				//prazo andaime
				$andaime = $acao_plan->periodo($coduser,$obra,7);
				//prazo canteiro
				$canteiro = $acao_plan->periodo($coduser,$obra,8);
				unset($acao_plan);
				$unidade = "dias";
			break;
		}
				echo "<table id='tab_info_obra' width='700px' align='center' border='1'>";
					echo "<tr>";
						echo "<td width='250px' align='right'>Prazo de execução Contratual:</td>
							  <td width='100px' align='center'>".$contratual." $unidade</td>";
						echo "<td width='250px' align='right'>Prazo de execução Civil:</td>
							  <td width='100px' align='center'>".$civil." $unidade</td>";
					echo "</tr>";

					echo "<tr>";
						echo "<td width='250px' align='right'>Prazo de execução Mecânica:</td>
							  <td width='100px' align='center'>".$mecanica." $unidade</td>";
						echo "<td width='250px' align='right'>Prazo de execução Elétr./Instrum.:</td>
							  <td width='100px' align='center'>".$ei." $unidade</td>";
					echo "</tr>";
					echo "<tr>";
						echo "<td width='250px' align='right'>Prazo de execução Jato e Pintura:</td>
							  <td width='100px' align='center'>".$jp." $unidade</td>";
						echo "<td width='250px' align='right'>Prazo de execução Projeto:</td>
							  <td width='100px' align='center'>".$projeto." $unidade</td>";
					echo "</tr>";
					echo "<tr>";
						echo "<td width='250px' align='right'>Prazo de execução Andaimes:</td>
							  <td width='100px' align='center'>".$andaime." $unidade</td>";
						echo "<td width='250px' align='right'>Prazo de execução Total Canteiro:</td>
							  <td width='100px' align='center'>".$canteiro." $unidade</td>";
					echo "</tr>";
				echo "</table>";
	}
	# EFETIVO -> AUDITORIA EFETIVO (tipo nodia , atedata , acumulado(hoje))
	function AudEfetivo($coduser,$obra,$mo,$tipo,$data)
	{

			//data para ver se data de inicio das classes é menor
			$data_sql = br_to_eua($data);

			//EFETIVO MAO DE OBRA DIRETA
			conectabd();
			$dados = "select m.funcoes_cod, f.descricao, m.horas_planejadas, m.classes_cod ";
			$dados = $dados."from funcoes f, modireta m ";
			$dados = mysql_query($dados."where m.obras_cod=$obra AND m.funcoes_cod=f.cod order by f.descricao ");
			$num=mysql_num_rows($dados);
			echo "<table id='tab_info_obra' width='965px' align=center border='1'>";
				echo "<tr>
						<td colspan='2' align='center'></td>
						<td bgcolor='#F7F7F7' colspan='2' align='center'><b>Histograma</b></td>
						<td bgcolor='#EFEFEF' colspan='2' align='center'><b>Relógio</b></td>
						<td bgcolor='#E4E4E4' colspan='2' align='center'><b>RDO</b></td>
						<td colspan='2' align='center'><img src='../../imagens/sinaleira.png' border='0' /></td>
				</tr>";
				echo "<tr>
						<td width='30px' align='center'></td>
						<td align='center'><b>EFETIVO DIRETO</b></td>
						<td width='80px' align='center'><b>HH Previsto</b></td>
						<td width='80px' align='center'><b>Qtd./Efet</b></td>
						<td width='80px' align='center'><b>HH Realizado</b></td>
						<td width='80px' align='center'><b>Qtd./Efet</b></td>
						<td width='80px' align='center'><b>HH Realizado</b></td>
						<td width='80px' align='center'><b>Qtd./Efet</b></td>
						<td width='30px' align='center'><b>HH</b></td>
						<td width='30px' align='center'><b>Efet.</b></td>
				</tr>";
			if ($num==0)
			{
				echo "<tr><td colspan='4'> Nenhuma função em MO DIRETA encontrada. </td></tr>";
			}
			else
			{
				$total_hrs_direta = 0;
				$total_prev_efetivo_direto = 0;
				$total_qtd_mod_rdo = 0;
				$total_hh_mod_rdo = 0;
				$aux = new Planejamento;
				while($linha = mysql_fetch_array($dados))
				{
					$funcao = $linha["funcoes_cod"];
					$nome_funcao = $linha["descricao"];
					$hprevista = $linha["horas_planejadas"];
					$classe = $linha["classes_cod"];

					$efetivo_rdo = 0;
					$hh_rdo = 0;

					switch($classe)
					{
						case 1; $img_classe = "classe_contrato.jpg"; $alt_classe = "Execução Contratual"; break;
						case 2; $img_classe = "classe_civil.jpg"; $alt_classe = "Execução Civil"; break;
						case 3; $img_classe = "classe_mecanica.jpg"; $alt_classe = "Execução Mecânica"; break;
						case 4; $img_classe = "classe_eletrica.jpg"; $alt_classe = "Execução Elétr./Instrum"; break;
						case 5; $img_classe = "classe_pintura.jpg"; $alt_classe = "Execução Jato e Pintura"; break;
						case 6; $img_classe = "classe_projeto.jpg"; $alt_classe = "Execução Projeto"; break;
						case 7; $img_classe = "classe_andaime.jpg"; $alt_classe = "Execução Andaimes"; break;
						case 8; $img_classe = "classe_total_canteiro.jpg"; $alt_classe = "Execução Total Canteiro"; break;
					}

					//ver se é até o dia, até hoje (acumulado) ou no dia
					if ($tipo=="nodia")
					{
						//verificar se data nao eh menor que a data de inicio da classe
						$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' AND p.data_ate>='$data_sql' ");
						if (mysql_num_rows($dados2)==1)
						{
							# homens previstos por dia
							$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"direta",$classe);

							# hh previsto
							$hh_real_previsto = $h_dia_funcao*8.8;
						}
						else
						{
							$hh_real_previsto = 0;
							$h_dia_funcao = 0;
						}
						# efetivo rdo
						$efetivo_rdo = $aux->Efetivo_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
						# hh rdo
						$hh_rdo = $aux->HH_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);





					}
					elseif ($tipo=="atedata")
					{
						//verificar se data nao eh menor que a data de inicio da classe

						$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' ");
						if (mysql_num_rows($dados2)==1)
						{
							# homens previstos por dia
							$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"direta",$classe);

							# hh previsto
							$decorrido_util = $aux->decorrido_util($coduser,$obra,$classe,$data);
							//$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
							$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
							$h_dia_funcao = ($hh_real_previsto/($decorrido_util/30))/184;
						}
						else
						{
							$hh_real_previsto = 0;
							$h_dia_funcao = 0;
						}
						# efetivo rdo
						$efetivo_rdo = $aux->Efetivo_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
						# hh rdo
						$hh_rdo = $aux->HH_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);

						///EFETIVO REAL
						conectabd();
						$cont = 0;
						$select = mysql_query("SELECT * from avancoprevisto where obras_cod = $obra");
						while($linha = mysql_fetch_array($select))
						{ if ($cont==0) { $data1 = $linha['DIA']; $cont++; } }

						$data_sql1 = explode("/",$data_sql);
						$data2 = $data_sql1[0]."-".$data_sql1[1]."-".$data_sql1[2];


						$data1 = eua_to_br($data1);
						$data2 = eua_to_br($data2);
						$diferenca = DiasUteis($data1,$data2);
						$hmes = Hmes($data1,$data2);
						$diferenca = $diferenca / 30;
						$efetivo_rdo = $hh_rdo/$diferenca/184;
						$efetivo_rdo = masc_2($efetivo_rdo);
						//$efetivo_rdo = $hmes;
						//$efetivo_rdo = $diferenca;
						//FIM DO EFETIVO REAL



					}
					elseif ($tipo=="acumulado")
					{
						//verificar se data nao eh menor que a data de inicio da classe
						$dados2 = mysql_query("select * from prazos_obra p where p.obras_cod=$obra AND p.classes_cod=$classe AND p.data_de<='$data_sql' ");
						if (mysql_num_rows($dados2)==1)
						{
							# homens previstos por dia
							$h_dia_funcao = $aux->H_previstos($coduser,$obra,$funcao,"direta",$classe);
							# hh previsto
							$decorrido_util = $aux->decorrido_util($coduser,$obra,$classe,$data);
							//$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
							$hh_real_previsto = ($h_dia_funcao*8.8)*$decorrido_util;
							$h_dia_funcao = ($hh_real_previsto/($decorrido_util/30))/184;

						}
						else
						{
							$hh_real_previsto = 0;
							$h_dia_funcao = 0;
						}
						# efetivo rdo
						$efetivo_rdo = $aux->Efetivo_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);
						# hh rdo
						$hh_rdo = $aux->HH_Aud_RDO($coduser,$obra,"direta",$tipo,$data_sql,$funcao,$classe);


						////função

						///EFETIVO REAL
						conectabd();
						$cont = 0;
						$select = mysql_query("SELECT * from avancoprevisto where obras_cod = $obra");
						while($linha = mysql_fetch_array($select))
						{ if ($cont==0) { $data1 = $linha['DIA']; $cont++; } }

						$data_sql1 = explode("/",$data_sql);
						$data2 = $data_sql1[0]."-".$data_sql1[1]."-".$data_sql1[2];


						$data1 = eua_to_br($data1);
						$data2 = eua_to_br($data2);
						$diferenca = DiasUteis($data1,$data2);
						$diferenca = $diferenca / 30;
						$efetivo_rdo = $hh_rdo/$diferenca/184;
						$efetivo_rdo = masc_2($efetivo_rdo);
						//$efetivo_rdo = $diferenca;
						//FIM DO EFETIVO REAL

					}

					//se hh real previsto(vai aumentando conforme data) passou previsto(cadastro da obra) mostra somente o previsto com fundo vermelho
					if ($hh_real_previsto>$hprevista)
					{
						$aux_cor = "bgcolor='#FFCCCC'";
						$hh_real_previsto = $hprevista;
						//$h_dia_funcao = 0;
					}
					else
						$aux_cor = "";

					# sinaleira
					if ($hh_real_previsto>0) //se tem previsto
					{
						$sinal_hh = ($hh_rdo/$hh_real_previsto)*100;
						if ($sinal_hh<=100)
							$sinal_hh = "<img src='../../imagens/marcador_verde.gif' border='0' alt='".masc_1($sinal_hh)."%' />";
						else
							$sinal_hh = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_hh)."%' />";
					}
					else // se nao tem previsto
					{
						if ($hh_rdo>0) //mas tem hh no rdo
							$sinal_hh = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_hh)."%' />";
						else
							$sinal_hh = "";
					}
					if ($h_dia_funcao>0) //se tem previsto
					{
						$sinal_efet = ($efetivo_rdo/$h_dia_funcao)*100;
						if ($sinal_efet<=100)
							$sinal_efet = "<img src='../../imagens/marcador_verde.gif' border='0' alt='".masc_1($sinal_efet)."%' />";
						else
							$sinal_efet = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_efet)."%' />";
					}
					else // se nao tem previsto
					{
						if ($efetivo_rdo>0) //mas tem efetivo no rdo
							$sinal_efet = "<img src='../../imagens/marcador3.gif' border='0' alt='".masc_1($sinal_efet)."%' />";
						else
							$sinal_efet = "";
					}

					# somatórios
					$total_prev_efetivo_direto = $total_prev_efetivo_direto+$h_dia_funcao;
					$total_hrs_direta = $total_hrs_direta+$hh_real_previsto;
					$total_qtd_mod_rdo = $total_qtd_mod_rdo + $efetivo_rdo; //total efetivo das funcoes
					$total_hh_mod_rdo = $total_hh_mod_rdo + $hh_rdo; //total hh das funcoes */

					//$total_prev_efetivo_direto = 0;
					//$total_hrs_direta = 0;
					//$total_qtd_mod_rdo = 0; //total efetivo das funcoes
					//$total_hh_mod_rdo = $hh_rdo; //total hh das funcoes

					echo "<tr>";
						echo "<td align='center'><img src='../../imagens/$img_classe' border='0' alt='$alt_classe'></td>";
						echo "<td align='left'>".(strtoupper($nome_funcao))."</td>";
						echo "<td $aux_cor bgcolor='#F7F7F7' align='center'>".masc_1($hh_real_previsto)."</td>";
						echo "<td bgcolor='#F7F7F7' align='center'>".masc_1($h_dia_funcao)."</td>";
						//relogio
							echo "<td bgcolor='#EFEFEF' align='center'>"; ?>
								<!--<img src="../../imagens/relogio.gif" border="0" alt="Atualizar dados do relógio" onclick="" />-->
								<div id="<?php echo "hh_indireta_".$funcao."_".$classe; ?>"></div> <?php
							echo "</td>";
							echo "<td bgcolor='#EFEFEF' align='center'>"; ?>
								<div id="<?php echo "efet_indireta_".$funcao."_".$classe; ?>"></div> <?php
							echo "</td>";
						//rdo
						echo "<td bgcolor='#E4E4E4' align='center'>".masc_1($hh_rdo)."</td>";
						echo "<td bgcolor='#E4E4E4' align='center'>".$efetivo_rdo."</td>";
						//sinaleira
						echo "<td colspan='2' width='' align='center'>$sinal_hh     $sinal_efet</td>";
					echo "</tr>";
				}
				unset($aux); /// AQUI erro do parser


 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok então, vo colocar os dois arquivos

 

index.php

<?php
 echo "aqui1";
 require_once ("../../includes/planejamento.inc.php");

Esse "aqui1" é exibido ?

 

Se você remover o require do planejamento o restante do código é exibido ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse "aqui1" é exibido ?

 

Se você remover o require do planejamento o restante do código é exibido ?

 

Sim o aqui 1 é exibido, foi assim que descobri onde tava o problema.

se eu apagar a linha do require do planejamento exibe o resto, porém tranca no require do custos, que também ta com problemas.

Apagando os dois requires o navegador renderiza tudo certinho, porém quando vou precisar de resposta dos métodos não encontro nada pq nao tem como criar o objeto... as classes não foram incluidas...

 

 

Isso pode ter a ver com alguma configuração do apache ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom amigo,

 

Olhando seu código por cima, fragmentado da forma que está, fica complicado saber onde está o problema.

 

Não consegui ver qualquer coisa que pudesse causar o erro de sintaxe, também não vi nada específico para o PHP 5.3+, dessa forma, deveria rodar no 5.2+

 

Você consegue testar esse código em mais algum servidor para ver se o problema é isolado nesse debian ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você consegue testar esse código em mais algum servidor para ver se o problema é isolado nesse debian ?

 

O debian na verdade é o ambiente de produção... se tu tas conseguindo analisar o código eu posso postar o resto, só não fiz pq o post ficou muito grande e o forum me impediu...

Eu posso testar em outro servidor com xampp, mas como a instalação é padrão, provavelmente vai chegar no mesmo ponto...

Compartilhar este post


Link para o post
Compartilhar em outros sites

O debian na verdade é o ambiente de produção...

 

Sim, onde o erro está acontecendo, não é ?

 

se tu tas conseguindo analisar o código eu posso postar o resto, só não fiz pq o post ficou muito grande e o forum me impediu...

 

Utilize o Pastebin.com, depois poste o link aqui.

 

Eu posso testar em outro servidor com xampp, mas como a instalação é padrão, provavelmente vai chegar no mesmo ponto...

 

Sim, é provável, mas faça o teste também.

 

De qualquer forma, utilize o pastebin e poste os links dos códigos.

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok amigo, problema localizado...

 

Chama-se short_open_tags

 

Você tem dois caminhos a seguir:

 

1. O correto http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Corrija seu código, troque todas as ocorrências de <? ?> para <?php ?> e todas as ocorrências de <?=$algumacoisa?> para <?php echo $algumacoisa; ?>

 

A primeira ocorrência é na linha 1009:

onClick="window.open('../pierre/cad_planej.php?cod_obra=<?=$cod_obra?>

Existem várias ocorrências em todo o seu código, você deve corrigir todas.

 

2. O errado http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Vá até seu arquivo php.ini e procure por:

 

short_open_tag = Off

Modifique para:

short_open_tag = On

 

Qualquer uma das duas soluções resolverá seu problema.

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok amigo, problema localizado...

 

Chama-se short_open_tags

 

Você tem dois caminhos a seguir:

 

1. O correto http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Corrija seu código, troque todas as ocorrências de <? ?> para <?php ?> e todas as ocorrências de <?=$algumacoisa?> para <?php echo $algumacoisa; ?>

Qualquer uma das duas soluções resolverá seu problema.

 

;)

 

Bá! realmente era isso... Me botei a olhar chaves e ; e nem lembrei disso.

achei que não era pq corrigi uma(short open tag) por uma (no planejamento) e ainda deu erro... fui la e coloquei short_open_tag = On e nada...

ae apaguei o custos.php e funciono certinho

agora é só catar as short que restam no outro arquivo e imagino que tudo fique pronto...

 

Vários arquivos no sistema estão com algumas shorts...

 

Estranho que não adiantou editar o php.ini

nao é minha intenção mas era pra testar...

 

Sem palavras pra agradecer a ajuda e a aula...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem palavras pra agradecer a ajuda e a aula...

 

Vou marcar esse tópico como resolvido, mas antes vou lhe dar mais uma dica:

 

Expressão regular para substituir <?=$algumacoisa?> por <?php echo $algumacoisa; ?>

 

Busca http://forum.imasters.com.br/public/style_emoticons/default/seta.gif \<\?\=([^\?]*)\?\>

Substituição http://forum.imasters.com.br/public/style_emoticons/default/seta.gif <?php echo $1; ?>

 

Não substitua tudo de uma vez, mande o IDE localizar ocorrência por ocorrência, analise e substitua se estiver correto.

 

Depois de ter substituído essa primeira parte, segue a próxima:

 

Expressão regular para substituir <? ?> por <?php ?>

 

Busca http://forum.imasters.com.br/public/style_emoticons/default/seta.gif \<\?\B

Substituição http://forum.imasters.com.br/public/style_emoticons/default/seta.gif <?php

 

Qualquer IDE que suporte busca e substituição com expressão regular fará seu trabalho ser muito menor.

 

Caso não tenha, ou não conheça nenhum, vai a sugestão de um free e open source http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Eclipse PDT

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora eu vou acender uma vela pra ti.

Como também não domino regex tava no google tentando "expressão regular" "short open tag"

E ja tinha desistido.

 

Valeu cara, eu uso netbeans e ele tem suporte a isso... (se não me engano)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.