<?php
//coleta os dados e coloca em vetores para posterior utilizacao
require('fpdf/fpdf.php');
$composto=get('composto');
if($composto==null) exit;
$idDoc=111;
//$composto="33*Janeiro*2012*FISCALIZACAO*S1*01";

//altura util=210  largura util=297(dados do adobe)
class PDF extends FPDF
{
public $vetorRemetente;
public $vetorCabecalho;
public $vetorResultados;
public $vetorInvasoras;
public $vetorBase;
public $vetorTecnico;
public $vetorInva;
public $objConexao;
public $banco;


function setVetorCabecalho($valor)
{
     $this->vetorCabecalho=$valor;
}
function setVetorFicha($valor)
{
     $this->vetorFicha=$valor;
}
function setVetorReanGerminacao($valor)
{
     $this->vetorReanGerminacao=$valor;
}
function setVetorReanPureza($valor)
{
     $this->vetorReanPureza=$valor;
}
function setVetorReanCultivares($valor)
{
     $this->vetorReanCultivares=$valor;
}
function setVetorResultados($valor)
{
     $this->vetorResultados=$valor;
}
function setRegistros($valor)
{
     $this->registros=$valor;
}
function setVetorTemporario($valor)
{
     $this->vetorTemporario=$valor;
}
function setVetorInvasoras($valor)
{
     $pdf->vetorInvasoras=$valor;
}
function setBase($valor)
{
     $this->vetorBase=$valor;
}
function setVetorTecnico($valor)
{
     $this->vetorTecnico=$valor;
}
function setVetorInva($valor)
{
     $pdf->vetorInva=$valor;
}
function setObjConexao($valor)
{
     $pdf->objConexao=$valor;
}
function setBanco($valor)
{
     $pdf->objBanco=$valor;
}


function impressiona()
{
     //PARAMETROS GERAIS
     //altura util=210  largura util=297(dados do adobe)
	 //como é formulario vwertical a largura é meno que a altura
	 $maximoLAdobe=297;
	 $maximoHAdobe=210;
     $margemEsquerda=10;
	 $margemDireita=$maximoLAdobe-7;
	 //largura de uma margem a outra = 281  se eu imprimo algo esta soma nao pode ultrapassar este valor
	 $larguraUtil=$maximoLAdobe-17;
	 $cinza=220;
	 $this->SetFillColor($cinza,$cinza,$cinza);
	 $grosso=0.7;
	 $medio=0.4;
	 $fino=0.3;
	 $extraFino=0.2;
	 //ESTAS COTAS SAO AS COTRAS DAS LINHAS HORINTAIS GROSSAS QUE SERVEM DE ORIGEM PARA O QUE VEM A SEGUIR
	 $cota1=2;
     $cota1a=15;
	 $cota2=23;
	 $cota3=31;//cabecalho inicial amplo
	 $cota4=43;//final do cabecalho e inicio dos dados
	 
	 
	 
	 $cota7=180; //assinatura
     $cota8=200;  //usara 195 se for colocar o rodape na munheca, mas pode usar a funcao footer que da mais 5 milimetros
	 $margem=25;
	 $larguraDaLinha=3.5;
     //moldura externa DO CABECALHO
	 $this->SetLineWidth($grosso);
	 $this->Line($margemEsquerda,$cota1,$margemDireita,$cota1);//linha externa superior	
	 $this->Line($margemEsquerda,$cota1,$margemEsquerda,$cota1a);//linha externa esquerda	
	 $this->Line($margemDireita,$cota1,$margemDireita,$cota1a);//linha externa direita	
	 $this->Line($margemEsquerda,$cota1a,$margemDireita,$cota1a);//fecha o cabecalho embaixo
     //moldura externa do corpo	 
	 $this->Line($margemEsquerda,$cota2,$margemDireita,$cota2);//linha externa superior	
	 $this->Line($margemEsquerda,$cota2,$margemEsquerda,$cota8);//linha externa esquerda	
	 $this->Line($margemDireita,$cota2,$margemDireita,$cota8);//linha externa direita	
	 $this->Line($margemEsquerda,$cota8,$margemDireita,$cota8);//ULTIMA LINHA DO RELATORIO
     //LINHAS FINAL DO CABEÇALHO E AS 2 DIVISORIAS DO CABECALHO
	 $this->SetLineWidth($fino);
	 $larguraColuna1=90;
	 $larguraColuna2=120;
	 $larguraColuna3=70;
	 $posicaoColuna1=$margemEsquerda;
	 $posicaoColuna2=$posicaoColuna1+$larguraColuna1;
	 $posicaoColuna3=$posicaoColuna2+$larguraColuna2;
	 $this->Line($posicaoColuna2,$cota1,$posicaoColuna2,$cota1a);//primeira linha vertical
	 $this->Line($posicaoColuna3,$cota1,$posicaoColuna3,$cota1a);//segunda linha  vetical
     ####################################CABECALHO  esquerda################################################
     $cotaLocal=$cota1+1;
	 $this->SetFont('Times','',9);
	 $this->setXY($margemEsquerda,$cotaLocal);
	 $this->Cell($larguraColuna1,4,'MINISTERIO DA AGRICULTURA E DO ABASTECIMENTO',0,0,'C');//lab nome
	 $this->Cell($larguraColuna2,4,$this->vetorCabecalho[0],0,0,'C');//lab nome
	 $this->Cell($larguraColuna3,4,$this->vetorNatureza[0],0,1,'C');//natureza
	 $this->setXY($margemEsquerda,$cotaLocal+4);//SEGUNDA LINHA
	 $this->Cell($larguraColuna1,4,'SECRETARIA DE DEFESA AGROPECUARIA',0,0,'C');//lab nome
	 $this->Cell($larguraColuna2,4,$this->vetorCabecalho[1],0,0,'C');//lab nome
	 $this->Cell($larguraColuna3,4,'NATUREZA DA ANALISE:',0,1,'C');//natureza
	 $this->setXY($margemEsquerda,$cotaLocal+8);//TERCEIRA LINHA
	 $this->Cell($larguraColuna1,4,'COORDENAÇÃO DE LABORATÓRIO VEGETAL',0,0,'C');//lab nome
	 $this->Cell($larguraColuna2,4,$this->vetorCabecalho[2],0,0,'C');//lab nome
	 $this->Cell($larguraColuna3,4,$this->vetorNatureza[1],0,1,'C');//VALOR DA NATUREZA
	 	 
	 //########################imprime identificacao#####################################
	 $cotaLocal=$cota1a+1;
	 $this->setXY($margemEsquerda,$cotaLocal);
	 $this->Cell($larguraUtil,5,'DEAS-xDEMONSTRATIVO DE EXECUÇÃO DE ANÁLISE DE SEMENTES',1,1,'C',1);
     #############mega colunas#####################################
     //MEGACOLUNA sao as colunas que vam acima das colunas e que devem estar emparelhados com as colunas depois
	 $largura[1]=6;
	 $largura[2]=25;
	 $largura[3]=47;
	 $largura[4]=35;
	 $largura[5]=10;
	 $largura[6]=15;
	 $largura[7]=9;
	 $largura[8]=14;
	 $largura[9]=9;
	 $largura[10]=9;
	 $largura[11]=9;
	 $largura[12]=9;
	 $largura[13]=9;
	 $largura[14]=9;
	 $largura[15]=9;
	 $largura[16]=9;
	 $largura[17]=9;
	 $largura[18]=9;
	 $largura[19]=9;
	 $largura[20]=20;
     //cria as 4 larguras do setor de megacoluna
	 $larguraMega1=$largura[1]+$largura[2]+$largura[3]+$largura[4];
	 $larguraMega2=$largura[5]+$largura[6];
	 $larguraMega3=$largura[7]+$largura[8]+$largura[9]+$largura[10]+$largura[11]+$largura[12]+$largura[13]+$largura[14]+$largura[15]+$largura[16]+$largura[17]+$largura[18];
	 $larguraMega4=$largura[19]+$largura[20];
     //CRIA 3 POSICOES PARA AS LINHAS VERTICAIS DESTA AREA
     $posicao0=$margemEsquerda;
     $posicao1=$posicao0+$largura[1];
     $posicao2=$posicao1+$largura[2];
     $posicao3=$posicao2+$largura[3];
     $posicao4=$posicao3+$largura[4];
     $posicao5=$posicao4+$largura[5];
     $posicao6=$posicao5+$largura[6];
     $posicao7=$posicao6+$largura[7];
     $posicao8=$posicao7+$largura[8];
     $posicao9=$posicao8+$largura[9];
     $posicao10=$posicao9+$largura[10];
     $posicao11=$posicao10+$largura[11];
     $posicao12=$posicao11+$largura[12];
     $posicao13=$posicao12+$largura[13];
     $posicao14=$posicao13+$largura[14];
     $posicao15=$posicao14+$largura[15];
     $posicao16=$posicao15+$largura[16];
     $posicao17=$posicao16+$largura[17];
     $posicao18=$posicao17+$largura[18];
     $posicao19=$posicao18+$largura[19];
	 
     $cotaLocal=$cota2;
	 $this->Line($margemEsquerda,$cota3,$margemDireita,$cota3);//linha abaixo do cabecalho geral	
	 $this->Line($posicao4,$cota2,$posicao4,$cota7);//vertical no final de caracterizacao das amostras	
	 $this->Line($posicao6,$cota2,$posicao6,$cota7);//vertical depois da palavra amosta	
	 $this->Line($posicao18,$cota2,$posicao18,$cota7);//vertical depois da palavra ESPECIFICAÇÃO DOS RESULTADOS ANALÍTICOS
	 $this->setXY($margemEsquerda,$cotaLocal+2);
	 $this->Cell($larguraMega1,4,'CARACTERIZAÇÃO DAS AMOSTRAS',0,1,'C');//esta linha é centrada nao acompanha a cota das demais
	 //primeira linha
	 $this->setXY($posicao4,$cotaLocal);
	 $this->Cell($larguraMega2,4,'AMOSTRAS',0,0,'C');
	 $this->Cell($larguraMega3,4,'ESPECIFICAÇÃO DOS RESULTADOS ANALÍTICOS',0,0,'C');
	 $this->SetFont('Arial','',7);
	 $this->Cell($larguraMega4,4,'AMOSTRAS DENTRO',0,0,'C');
	 $this->SetFont('Times','',9);
	 //NOVA LINHA
	 $this->setXY($posicao4,$cotaLocal+4);
	 $this->Cell($larguraMega2,4,'ANALISADAS',0,0,'C');
	 $this->Cell($larguraMega3,4,'(Nº DE AMOSTRAS)',0,0,'C');
	 $this->SetFont('Arial','',7);
	 $this->Cell($larguraMega4,4,'DOS PADRÕES',0,0,'C');

     ###############cabeçalhop das colunas propriemente ditas##############
	 $cotaLocal=$cota3;
	 $this->Line($margemEsquerda,$cota4,$margemDireita,$cota4);//linha de fechamento das colunas
	 $this->setXY($margemEsquerda,$cotaLocal+4);
	 $this->Cell($largura[1],4,'UF',0,0,'C');
	 $this->Cell($largura[2],4,'SAFRA',0,0,'C');
	 $this->Cell($largura[3],4,'ESPÉCIE',0,0,'C');
	 $this->Cell($largura[4],4,'CULTIVAR',0,0,'C');
	 $this->Cell($largura[5],4,'Nº',0,0,'C');
	 //Primeira lilha
     $posicao5=$posicao4+$largura[5];
	 $this->setXY($posicao5,$cotaLocal);
	 $this->Cell($largura[6],4,'REPRESEN',0,0,'C');
     $larguraAcumulada=$largura[7]+$largura[8]+$largura[9]; 	 
	 $this->Cell($larguraAcumulada,4,'%GERMINAÇÃO',1,0,'C');
     $larguraAcumulada=$largura[10]+$largura[11]+$largura[12]+$largura[13]+$largura[14]+$largura[15]+$largura[16]+$largura[17]+$largura[18]; 	 
	 $this->Cell($larguraAcumulada,4,'FATORES DE REPROVAÇÃO',1,0,'C');
	 $this->Cell($largura[19],4,'Nº',0,0,'C');
	 $this->Cell($largura[20],4,'REPRESEN',0,0,'C');
     //SEGUNDA LINHA - CONTEM MAIS DADOS E NAO TEM ACUMULADOS	 
	 $this->setXY($posicao5,$cotaLocal+4);
	 $this->Cell($largura[6],4,'TATIVI-',0,0,'C');
	 $this->Cell($largura[7],4,'<PE',0,0,'C');
	 $this->Cell($largura[8],4,'>=PE',0,0,'C');
	 $this->Cell($largura[9],4,'>90',0,0,'C');
	 $this->Cell($largura[10],4,'SP',0,0,'C');
	 $this->Cell($largura[11],4,'OC',0,0,'C');
	 $this->Cell($largura[12],4,'OE',0,0,'C');
	 $this->Cell($largura[13],4,'SS',0,0,'C');
	 $this->Cell($largura[14],4,'NT',0,0,'C');
	 $this->Cell($largura[15],4,'NP',0,0,'C');
	 $this->Cell($largura[16],4,'-',0,0,'C');
	 $this->Cell($largura[17],4,'-',0,0,'C');
	 $this->Cell($largura[18],4,'-',0,0,'C');
	 $this->Cell($largura[19],4,'',0,0,'C');
	 $this->Cell($largura[20],4,'TATIVI-',0,0,'C');

     //SEGUNDA LINHA - CONTEM MAIS DADOS E NAO TEM ACUMULADOS	 
	 $this->setXY($posicao5,$cotaLocal+8);
	 $this->Cell($largura[6],4,'DADE(t)',0,0,'C');
	 $this->Cell($largura[7],4,'',0,0,'C');
	 $this->Cell($largura[8],4,'<=90%',0,0,'C');
	 $this->Cell($largura[9],4,'',0,0,'C');
	 $this->Cell($largura[10],4,'',0,0,'C');
	 $this->Cell($largura[11],4,'',0,0,'C');
	 $this->Cell($largura[12],4,'',0,0,'C');
	 $this->Cell($largura[13],4,'',0,0,'C');
	 $this->Cell($largura[14],4,'',0,0,'C');
	 $this->Cell($largura[15],4,'',0,0,'C');
	 $this->Cell($largura[16],4,'-',0,0,'C');
	 $this->Cell($largura[17],4,'-',0,0,'C');
	 $this->Cell($largura[18],4,'-',0,0,'C');
	 $this->Cell($largura[19],4,'',0,0,'C');
	 $this->Cell($largura[20],4,'DADE(t)',0,0,'C');

	 //LINHAS VERTICAIS
	 $this->Line($posicao1,$cota3,$posicao1,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao2,$cota3,$posicao2,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao3,$cota3,$posicao3,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao5,$cota3,$posicao5,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
     $cota3a=$cota3+4;
	 $this->Line($posicao7,$cota3a,$posicao7,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao8,$cota3a,$posicao8,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao9,$cota3a,$posicao9,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao10,$cota3a,$posicao10,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao11,$cota3a,$posicao11,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao12,$cota3a,$posicao12,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao13,$cota3a,$posicao13,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao14,$cota3a,$posicao14,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao15,$cota3a,$posicao15,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao16,$cota3a,$posicao16,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao17,$cota3a,$posicao17,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($posicao19,$cota3,$posicao19,$cota7);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->Line($margemEsquerda,$cota7,$margemDireita,$cota7);//fechamento embaixo
	 ############################//aqui joga os dados no relatorio############################
	 $registros=$this->objetoRegistros;
	 $cotaCalculada=$cota4;
	 for($i=1;$i<=$registros;$i++)
	 {
		 $this->setXY($margemEsquerda,$cotaCalculada);
         for($j=1;$j<=20;$j++)
		 {
    		 $this->Cell($largura[$j],4,$this->vetorCorpo[$i][$j],1,0,'C');
		 }
		 $cotaCalculada=$cota4+$i*4;
	 }
	 
	 
	 ####################imprime rodape#########################
     $cotaLocal=$cota7; 	 
	 $posicaoAssinatura=200;
	 $this->setXY($posicaoAssinatura,$cotaLocal);
	 $dia=date("d")."/".date("m")."/".date("Y");
     $this->Cell(100,4,$this->vetorTecnico[4].", ".$dia,0,0,'C');
     $cota7a=$cota7+10;
	 $this->Line($posicaoAssinatura,$cota7a,280,$cota7a);//LINHA VERTICAL DAS COULUNAS FINAIS	
	 $this->setXY($posicaoAssinatura,$cota7a);
	 $this->Cell(100,4,$this->vetorTecnico[0],0,0,'C');
	 $cota7b=$cota7+14;
	 $this->setXY($posicaoAssinatura,$cota7b);
	 $this->Cell(100,4,$this->vetorTecnico[1].$this->vetorTecnico[2],0,0,'C');
	 ////enxerto///////
	 //$idTecnico=$vetorTecnico[5];//pode por o parametro manualmente da tabela tencico funcao bole
	 //$assinaturaAtivada=$vetorTecnico[4];
	 //if($assinaturaAtivada=='SIM'):
	 $idTecnico=123;
	 $caminhoFinalTecnico="ImagensClientes/a".$idTecnico.".JPG";
	 $pdf->Image($caminhoFinalTecnico,229,$posicaoAssinatura-20,61,14,'JPG');//coordenadas x=229  y=$posicaoAssinatura-20,comprimento assinatura, altura da assinatura
     
	 
	 
	 
}


   
function captura_registros_generico1($sql,$campo)
{
     global $vetorgenerico;
	 $conexao=mysql_connect($this->url,$this->login,$this->senha);
	 mysql_select_db($this->banco,$conexao);
	 $_res = mysql_query($sql,$conexao);//linha de comando sql
	 $vetorgenerico="";//limpa o array
	 if($_res===FALSE)
	 {  
		 //echo("Erro de consulta12. Nao existem dados. Clique novo" . mysql_error(). "<br/>");
		 //echo("Erro de consulta12a. Nao existem dados, clique novo.<br>");
		 $vetorgenerico[0]="-";
		 return $vetorgenerico;
	 }//fecha o if
	 else
	 {
		 While($tbl=mysql_fetch_array($_res))
		 {
			 $vetorgenerico[]=$tbl[$campo];//joga dentro do ARRAY os elementos da tabela
		 }//fecha o while
		 return $vetorgenerico;   
		 //$pdf->Registros=$conta;
	 }
	 mysql_close($conexao);
}//fecha a function


function achaCamposModificada($sql)
{
     global $vetori;
	 $conexao=mysql_connect($this->url,$this->login,$this->senha);
	 mysql_select_db($this->banco,$conexao);
	 $vetori="";	 
	 $_res = mysql_query($sql,$conexao);//linha de comando sql
	 //echo("linha 645 operacao db sql= $sql<br>");
	 if($_res===FALSE)
	 {  
	    // echo("erro de consulta16" . mysql_error(). "<br/>");
     }//fecha o if
	 else
	 {
		 $_nr=mysql_num_rows($_res);
		 if($_nr==0)
		 {
		 	 //echo("<br>Não tem dados, clique NOVO, insira dados e mande gravar.<br>");
             $vetori[0]="-N-";
        	 return $vetori;
		 }
  		 else
		 {
             $result = mysql_query($sql,$conexao);//linha de comando sql
    	     //$vetori['dados']="";//limpa o array
    	     $vetori="";//limpa o array
    	     $_row=mysql_fetch_assoc($_res);
		     foreach($_row as $_vlr)
		     {
			   $vetori[]=$_vlr;
		     }
             return $vetori;
		 }
	 }//fecha o else
     mysql_close($conexao);
}

function registrosXcampos($_sql)
{
     global $vetorInv;
	 $vetorInv="";
	 $conexao=mysql_connect($this->url,$this->login,$this->senha);
	 mysql_select_db($this->banco,$conexao);
	 //finalmente vamos listar os registros existentes no banco
     $_res = mysql_query($_sql,$conexao);//linha de comando sql
     if($_res===FALSE)
	 {
	     // echo"erro de consulta" . mysql_error(). "br/>";
	 }
	 else
	 {
	     $_nr=mysql_num_rows($_res);
	     $_contaLin=0;
	     while($_row=mysql_fetch_assoc($_res))
	     {
	         $_contaLin++;
			 $_contaCol=0;
	         foreach($_row as $_vlr)
	         {
			     $_contaCol++;
	             $vetorInv[$_contaLin][$_contaCol]=$_vlr;
             }
	     } //chave do while 
	     return $vetorInv;
     }//chave da consulta positiva a tabela  
     mysql_close($conexao);
}//fecha a funcao

function confirmaregistro($sql)
{
	 global $nr;
 	 $conexao=mysql_connect($this->url,$this->login,$this->senha);
	 mysql_select_db($this->banco,$conexao);
 	 $_res = mysql_query($sql,$conexao);//linha de comando sql
	 if($_res===FALSE)
	 {  
	     echo("erro de consulta3" . mysql_error(). "<br/>");
     }//fecha o if
	 else
	 {
	     $nr=mysql_num_rows($_res);
         //echo "A consulta retornou " . (int) $_nr . " registros <br/>"; //este comando da erro
     }//fecha o else
     mysql_close($conexao);
     //echo("Ok. listagem. $sql <br>");
	 return $nr;
}//fecha a function

//Page footer

}

//Instanciation of inherited class
$pdf=new PDF('L','mm','A4');
$local="NAO";
$local="SIM";
if($local=="NAO")
{
	$pdf->url="dbmy0045.whservidor.com";
	$pdf->login="gugeler";
	$pdf->senha="buraco45";
	$pdf->banco="gugeler";
}
else
{
	 $pdf->url="localhost";
	 $pdf->login="root";
	 $pdf->senha="";
	 $pdf->banco="loja";
}
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
$pdf->SetDrawColor(0,80,180);
$pdf->SetFillColor($cinza,$cinza,$cinza);
//$pdf->SetTextColor(220,50,50);
//Thickness of frame (1 mm)

//dados do cabecalho
list($idLabo, $mes, $ano, $funcao, $categoria) = explode("*", $composto);
//$sql = "SELECT doc_labo,doc_tipo,doc_numero,lab_nome,lab_endelinha1,lab_endelinha2,lab_endelinha3,lab_endelinha4,lab_endelinha5,doc_obs1,doc_obs2,doc_obs3,doc_obs4,doc_obs5,doc_obs6,doc_obs7,doc_obs8,doc_data FROM documentos,laboratorio WHERE  lab_id_labo=doc_labo && doc_id= ".$idDoc;
$sql = "SELECT lab_nome,lab_endelinha1,lab_endelinha2,lab_endelinha3 FROM laboratorio WHERE  lab_id_labo=".$idLabo;
$pdf->vetorCabecalho=$pdf->achaCamposModificada($sql);
//pega os dados da natureza
$pdf->vetorNatureza[0]=$mes."/".$ano;
$pdf->vetorNatureza[1]=$funcao."/".$categoria;

//captura o rt
$sql = "SELECT ret_nome,ret_renasem,ret_crea,ret_cargo,ret_municipio from resptecnico WHERE ret_funcao='BOLE' && ret_id_labo=".$idLabo;
$pdf->vetorTecnico=$pdf->achaCamposModificada($sql);
//vai pegar as amostras que satisfazem a condição
//$sqlx="SELECT dpo_amostra_vinculada FROM ficha,documentosponte WHERE   dpo_amostra_vinculada=fic_id && dpo_documento_autonumerador=".$idDoc." order by fic_amostra LIMIT 12";

//$sql="SELECT fic_amostra,fic_safra  FROM ficha, dpo_amostra_vinculada=fic_id &&  dpo_documento_autonumerado=doc_id && mid(doc_data,0,7)";
//$sql="SELECT fic_amostra,fic_safra,doc_id FROM ficha, dpo_amostra_vinculada=fic_id &&  dpo_documento_autonumerado=doc_id && mid(doc_data,0,7)";
//$sql="SELECT doc_id,fic_amostra FROM documentos,ficha,documentosponte where dpo_amostra_vinculada=fic_id && dpo_documento_autonumerador=doc_id && doc_data='2012-01-05'";//funfando
//SELECT * FROM table WHERE MONTH(data)='05'
//$sql="SELECT doc_id,fic_amostra FROM documentos,ficha,documentosponte where dpo_amostra_vinculada=fic_id && dpo_documento_autonumerador=doc_id && SUBSTRING(doc_data,0)='".$mesConsiderado."'";
//$sql="SELECT doc_id FROM documentos where year(doc_data)='".$ano."' and  MONTH(doc_data)='".$mesNumero."'";//ta funfando
$sql="SELECT obs1,obs2,obs3,obs4,obs5,obs6,obs7,obs8,obs9,obs10,obs11,obs12,obs13,obs14,obs15,obs16,obs17,obs18,obs19,obs20 from tempsila";
$pdf->objetoRegistros=$pdf->confirmaregistro($sql);
$pdf->vetorCorpo=$pdf->registrosXcampos($sql); //cria vetor resgate de inbasoras este vetor vai servir para listar as invasoras depois





//CAPTURA UMA AMOSTRA PARA PEGAR OS DADOS PRINCIPAIS
$sql = "SELECT fic_id FROM ficha,documentos,documentosponte WHERE  dpo_documento_autonumerador=doc_id && dpo_amostra_vinculada=fic_id && doc_id=".$idDoc;
$resgate=$pdf->achaCamposModificada($sql);
$amostraLong=$resgate[0];

//dados so da especiexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
$sql = "SELECT prd_nome,prd_endereco,prd_municipio,fic_amostra,esp_nome,
esp_nome_cientifico,fic_dt_entrada,esp_id FROM remetente,cultivar,especies,ficha WHERE  fic_cultivar=ctv_id && esp_id=ctv_especie &&  prd_id=fic_produtor &&  fic_id=".$amostraLong;
$pdf->vetorFicha=$pdf->achaCamposModificada($sql);
$codEspecie=$pdf->vetorFicha[7];
//$codEspecie=2;
//acha daddos da determinacaoes xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
//pega a primeira determinacao mapeada para aquela especie
$sql= "SELECT det_tit1  FROM determinacoes, deteboletim WHERE dbo_id_dete1=det_id && dbo_lab=".$idLabo." && dbo_especie=".$codEspecie;
$vetorTempDete1=$pdf->achaCamposModificada($sql);
$determinacao1=$vetorTempDete1[0];
//pega a segunda determinacao mapeada para aquela especie
$sql= "SELECT det_tit1  FROM determinacoes, deteboletim WHERE dbo_id_dete2=det_id && dbo_lab=".$idLabo." && dbo_especie=".$codEspecie;
$vetorTempDete1=$pdf->achaCamposModificada($sql);
$determinacao2=$vetorTempDete1[0];
//pega a segunda determinacao mapeada para aquela especie
$sql= "SELECT det_tit1  FROM determinacoes, deteboletim WHERE dbo_id_dete3=det_id && dbo_lab=".$idLabo." && dbo_especie=".$codEspecie;
$vetorTempDete1=$pdf->achaCamposModificada($sql);
$determinacao3=$vetorTempDete1[0];


//dados da rean GERMINACAOxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
$sql = "SELECT rea_datageralteste,rea_duracao,rea_campo20a,rea_campo60a,rea_campo60b FROM rean1 WHERE rea_teste='GERM' && REA_FICHA=".$amostraLong;
$pdf->vetorReanGerminacao=$pdf->achaCamposModificada($sql);
//dados da rean PUREZAxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
$sql = "SELECT rea_lei1,rea_campo60a FROM rean1 WHERE rea_teste='PURE' && rea_ficha=".$amostraLong;
$pdf->vetorReanPureza=$pdf->achaCamposModificada($sql);
//dados resultados detailsxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
//cria um vetor resgate contendo todas as idamostra que estao no boletim

//$sqlx="SELECT dpo_amostra_vinculada FROM ficha,documentos,documentosponte WHERE  dpo_documento_autonumerador=doc_id && dpo_amostra_vinculada=fic_id && doc_id=".$idDoc." order by fic_amostra LIMIT 12";


//$sqlx="SELECT dpo_amostra_vinculada FROM ficha,documentosponte WHERE dpo_amostra_vinculada=fic_id &&   dpo_documento_autonumerador=".$idDoc." order by fic_amostra LIMIT 12";
//$sqlx="SELECT dpo_amostra_vinculada FROM documentos,documentosponte WHERE  dpo_documento_autonumerador=doc_id  && doc_id=".$idDoc;
//$testeOto=$pdf->confirmaregistro($sql);
//$pdf->vetorResultados[1][1]=$testeOto;//so para testar quqntas amostras tem
//$sqlx="SELECT dpo_amostra_vinculada FROM documentos,documentosponte WHERE  dpo_documento_autonumerador=doc_id  && doc_id=".$idDoc;
//$sqlx="SELECT dpo_amostra_vinculada FROM documentosponte WHERE  dpo_documento_autonumerador=".$idDoc; //puxa 2 amostras funciona
//$sqlx="SELECT dpo_amostra_vinculada FROM documentosponte";//aqui puxa 2 amostras funciona
$sqlx="SELECT dpo_amostra_vinculada FROM ficha,documentosponte WHERE   dpo_amostra_vinculada=fic_id && dpo_documento_autonumerador=".$idDoc." order by fic_amostra LIMIT 12";
$testeOto=$pdf->confirmaregistro($sqlx);
$resgate=$pdf->captura_registros_generico1($sqlx,"dpo_amostra_vinculada"); //cria vetor resgate
$pdf->vetorResultados[0][1]="Nº da Amostra";
$pdf->vetorResultados[0][2]="Pureza(%)";
$pdf->vetorResultados[0][3]="Mat.Inerte(%)";
$pdf->vetorResultados[0][4]="Outras Especies(%)";
$pdf->vetorResultados[0][5]="Determinação de outras espécies por número";
$pdf->vetorResultados[0][6]="Germinação(%)";
$pdf->vetorResultados[0][7]="Outra Det(".$determinacao1.")";
$pdf->vetorResultados[0][8]="Outra Det(".$determinacao2.")";
$pdf->vetorResultados[0][9]="Outra Det(".$determinacao3.")";
//coloca -0- nas colunas 2,3,4 sendo que na primeira nao precisa pois cada informe tem pelo menos uma amostra
for($i=1;$i<=9;$i++)
{
	$pdf->vetorResultados[2][$i]="-O-";
	$pdf->vetorResultados[3][$i]="-O-";
	$pdf->vetorResultados[4][$i]="-O-";
}


$conta=0;
//percorre o vetor resgate capturando os dados contidos nele
foreach($resgate as $vlr)
{
     $conta++; 
     $amostraLong=$vlr;//porque o primeiro elemento do array é zero e eu numero o array de destino a partir do 1
     $sql="SELECT fic_id,fic_amostra,fic_lote,fic_repre_quant,fic_repre_unid,
     fic_vdet1,fic_vdet2,fic_vdet3,fic_vdet4,fic_pesodet_octv,
     fic_pesodet_dosn,fic_pesodet_nocivas,fic_peneira,fic_outrascultivares,fic_ano FROM ficha WHERE  fic_id=".$amostraLong;
     //o arquivo temporario captura todos campos do registro
     $vetorTemporario1=$pdf->achaCamposModificada($sql);//
     //jogo dentro do objeto vetorResultados o conteudo do array temporario direto da tabela ficha
     $pdf->vetorResultados[$conta][1]=$vetorTemporario1[1]."/".$vetorTemporario1[14];//numero da amostra
     //CAPTURA OS VALORES DAS OUTRAS DETERMINACOES
     $pdf->vetorResultados[$conta][7]=$vetorTemporario1[5];//VDET1
     $pdf->vetorResultados[$conta][8]=$vetorTemporario1[6];//VDET2
     $pdf->vetorResultados[$conta][9]=$vetorTemporario1[7];//VDET3
     
     //captura dados de pureza
     $sql2="SELECT rea_v1,rea_v2,rea_v3 FROM rean1 WHERE  rea_ficha=".$amostraLong." && rea_teste='PURE'";
     $vetorPurezaDetail=$pdf->achaCamposModificada($sql2);//
     $pdf->vetorResultados[$conta][2]=$vetorPurezaDetail[0];//PURAS
     $pdf->vetorResultados[$conta][3]=$vetorPurezaDetail[1];//MATERIAL INERTE
     $pdf->vetorResultados[$conta][4]=$vetorPurezaDetail[2];//OUTRAS SEMENTES
     //captura dados de germinacao
     $sql3="SELECT rea_v1,rea_v2,rea_v3,rea_v4,rea_v5 FROM rean1 WHERE  rea_ficha=".$amostraLong." && rea_teste='GERM'";
     $vetorGerminacaoDetail=$pdf->achaCamposModificada($sql3);//NORMAIS
     $pdf->vetorResultados[$conta][6]=$vetorGerminacaoDetail[0];//NORMAIS
     //captura CONTAMINANTES
     //funciona assim :
     //la na funcao tem uma variavel global que é a amatriz $vetorInv  
     //o computador enche esta matriz com todos elementos e serve para somar aqui e serve para listar as invasoras depois
	 $somaOE=0;
	 $somaSI=0;
	 $somaTO=0;
	 $somaPR=0;
	 //$sql="SELECT inv_codigo,inv_qtd,con_nome_cientifico FROM contaminantes,invasoras WHERE con_id=inv_cod_praga && inv_amostra=".$amostraLong;
	 $sql="SELECT inv_codigo,inv_qtd FROM invasoras WHERE inv_amostra=".$amostraLong;
	 $numero=$pdf->confirmaregistro($sql);
         $pdf->vetorInva=$pdf->registrosXcampos($sql); //cria vetor resgate de inbasoras este vetor vai servir para listar as invasoras depois
         //$elementos=count($pdf->vetorInva);
	 //$vetorOto=$pdf->registrosXcampos($sql);
	 //vai somar os grupos de contaminantes
	 $i=1;
         while($i<=$numero)
	 {  
	     if($pdf->vetorInva[$i][1]=="1OES") $somaOE+=$pdf->vetorInva[$i][2];
	     if($pdf->vetorInva[$i][1]=="2SIL") $somaSI+=$pdf->vetorInva[$i][2];
	     if($pdf->vetorInva[$i][1]=="3NOT") $somaTO+=$pdf->vetorInva[$i][2];
	     if($pdf->vetorInva[$i][1]=="4NOP") $somaPR+=$pdf->vetorInva[$i][2];
	     $i++;
	 }
	 //NAO APAGAR ESTAS 4 LNHAS
         //$pdf->vetorResultados[$conta][14]=$somaOE;
         //$pdf->vetorResultados[$conta][15]=$somaSI;
         //$pdf->vetorResultados[$conta][16]=$somaTO;
         //$pdf->vetorResultados[$conta][17]=$somaPR;
         $pdf->vetorResultados[$conta][5]=$somaOE+$somaSI+$somaTO+$somaPR;
     
     
     
     
}//fecha o foreach do vetor de amostras que estao no documento.
//$pdf->vetorResultados[2][1]="segundona";



//aqui prepara o vetorBase
//tem que haver um array com todas as invasoras e nao apenas as da amostra....
//pega todas as invasoras pelo nome, quentidade grupo que estao no documento..............
$sql="SELECT inv_codigo,inv_qtd,con_nome_cientifico,fic_amostra  FROM contaminantes,invasoras,ficha,documentos,documentosponte WHERE  con_id=inv_cod_praga && inv_amostra=fic_id && dpo_documento_autonumerador=doc_id && dpo_amostra_vinculada=fic_id && doc_id=".$idDoc." order by fic_amostra,inv_codigo,con_nome_cientifico LIMIT 12";
//$sql="SELECT inv_codigo,inv_qtd,con_nome_cientifico,fic_amostra FROM ficha,contaminantes,invasoras WHERE con_id=inv_cod_praga && inv_amostra=fic_id && fic_id=".$amostraLong;
$pdf->vetorInva=$pdf->registrosXcampos($sql); //cria vetor resgate de inbasoras este vetor vai servir para listar as invasoras depois
//$elementos=count($pdf->vetorInva);
$elementos=$pdf->confirmaregistro($sql);
$montagem="";
//vai fazer a lista de contaminantes
$linhaCriada=0;
$amostra0="%";
 $i=1;
 //for($i=1;$i<=$elementos;$i++)
 $indiceFinal=0;

 while($i<=$elementos)
 {
	 //funciona if($vetorInva[$i][1]=="OESP") $pdf->vetorBase[2][1]=$vetorInva[$i][3];
     $amostra1=$pdf->vetorInva[$i][4];
     if($amostra0!=$amostra1)
	 {
             $linhaCriada++;
             $amostra0=$amostra1;
	     $montagem[$linhaCriada]="Amostra:" .$amostra1;
             $contaAteTres=0;
             $linhaCriada++;
         }
         $contaAteTres++;
	 if($contaAteTres>4)
	 {
	    $contaAteTres=0;
            $linhaCriada++;
	 }
	 
	 
	 if($pdf->vetorInva[$i][1]=="1OES")
	 {
		 //$linhaCriada++;
		 $montagem[$linhaCriada]=$montagem[$linhaCriada]."10-".$pdf->vetorInva[$i][3]."(".$pdf->vetorInva[$i][2].")";
	 }
	 if($pdf->vetorInva[$i][1]=="2SIL")
	 {
		 //$linhaCriada++;
		 $montagem[$linhaCriada]=$montagem[$linhaCriada]."11-".$pdf->vetorInva[$i][3]."(".$pdf->vetorInva[$i][2].")";
	 }
	 if($pdf->vetorInva[$i][1]=="3NOT")
	 {
		 //$linhaCriada++;
		 $montagem[$linhaCriada]=$montagem[$linhaCriada]."12-".$pdf->vetorInva[$i][3]."(".$pdf->vetorInva[$i][2].")";
	 }
	 if($pdf->vetorInva[$i][1]=="4NOP")
	 {
		 //$linhaCriada++;
		 $montagem[$linhaCriada]=$montagem[$linhaCriada]."13-".$pdf->vetorInva[$i][3]."(".$pdf->vetorInva[$i][2].")";
	 }
     $i++;
 }
 
 
 
 
//funciona $pdf->vetorBase[2][1]=$vetorInva[$i][3];

$pdf->vetorBase[2][1]=$montagem[1];
$pdf->vetorBase[3][1]=$montagem[2];
$pdf->vetorBase[4][1]=$montagem[3];
$pdf->vetorBase[5][1]=$montagem[4];
$pdf->vetorBase[6][1]=$montagem[5];
$pdf->vetorBase[7][1]=$montagem[6];
$pdf->vetorBase[8][1]=$montagem[7];
$pdf->vetorBase[9][1]=$montagem[8];


//$pdf->registros=$regTotal;
//aqui capura o numero de vias
//isso aqui so tem um defeito se por acasso o cliente demorar pode um outrao entarar  coloocar uma outra opçao numeroio de va diferente mais isso sera raro
$meuArquivo = "vias.txt";
$id=fopen($meuArquivo,"r");
$recuperado= fread($id,filesize($meuArquivo));
fclose($id);// Fecha o arquivo
//echo("recuperado=$recuperado<br>");
//$pdf->vetorBase[10][1]=$recuperado;
$pdf->vetorCabecalho[18]=$recuperado;



$pdf->impressiona();
//dia 16/11/10 eu mudei a fpdf.php   la onde tem SetAutoPageBreak(true,1*$margin) o valor original era 2, pois ele dava salto de pagina antes do final. E perdia espaco embaixo, embora  aceitava colocar linhas mas nao texto e assim eu consegui colocar texto até perto da linha
//so que eu tenho que levar esta fpdf.php para o site hihihi  - ver comentarios la dentro da fpdf.php
ob_clean(); // Quando usava essa classe o ob_clean() resolvia meu problema
$pdf->Output("arquivo.pdf","I");
?>
