<?php
require_once(dirname(dirname(__FILE__))."/paineladm/funcoes.php");
$pathlocal = dirname(__FILE__);
//require_once(dirname($pathlocal)."/paineladm/classes/fpdf.class.php");
//require_once(dirname($pathlocal)."/paineladm/classes/sessao.class.php");
$material = $_COOKIE['material'];
$sessao = new sessao();
$cliente=$sessao->getVar('cliente');
$senhaCli=$sessao->getVar('iduser');
$idLabo=$sessao->getVar('idLabo');
$inicio=$sessao->getVar('inicio');
$final=$sessao->getVar('final');
$idDoc=$sessao->getVar('transfere');
$modelo=$sessao->getVar('controle');// basico ,completo,tres em um   , especial1,especial2,especial3
//echo("1xxxxxxxxxxxxxxidDocumento= $idDoc<br>");
//echo("xxxxxxxxxxmodelo= $modelo<br>");

$nomeOperador=$sessao->getVar('nomeuser');
$objetocalculo = new calculos(); //calcula todos valores finais
$pdf=new FPDF('L','mm','A4'); //parametos da pagina 
			 $pdf->open();//abre o fpdf
			 //$pdf->AddPage();//adicionando a primera pafina
			 $pdf->AliasNbPages();
			 $pdf->SetFont('Arial','',12);
			 $pdf->SetDrawColor(10,10,10);
			 //$maximoHAdobe=297;//isso para vertical
			 //$maximoLAdobe=210;//isso para vertical
			 $maximoLAdobe=297;//isso para horizontal
			 $maximoHAdobe=210;//isso para horizontal
		     $margemEsquerdaExterna=10;
		     $margemEsquerda=10;
			 $margem=$margemEsquerda;
			 $margemDireita=$maximoLAdobe-6;
			 $larguraUtil=$maximoLAdobe-16;
 	 		 $futer=$maximoHAdobe-10;
			 $cinza=220;
		     $fonte="Arial";
			 $nomeOperador=5;
			 $pdf->SetFillColor($cinza,$cinza,$cinza); 
			 $linha=0;
			 $posicaox1=10;
             $larg1=20;
             $larg2=20;
             $larg3=30;
             $larg4=50;
             $larg5=15;
             $larg6=10;
             $larg7=10;
             $larg8=10;
             $larg9=10;
             $larg10=10;
	
/////////////importei do livro protocolo//////////////////////
				/*atencao para o detalhe
				    //nao deletar estes comentarios
                    Esta é a coleção STANDART que provavelmente nenhum vai querer mas que referecncia todo relatorio ESTE CHASSISS É SEMPRE O MEMSO PARA TODOS CASOS
                    quando vou criar um novo pego daqui e personalizo, mudando as larguras, os titulos e removendo
					as linhas indesejadas.
					Detalhe: Posso até trocar de posicao colocando amostra depois de lote e vice versa 
					$matrizLargura[1]=15;$matrizTitulo[1]='Amostra';
					$matrizLargura[2]=15;$matrizTitulo[2]='Lote';
					$matrizLargura[3]=30; $matrizTitulo[3]='Cultivar';
					$matrizLargura[4]=30; $matrizTitulo[4]='Espécie';
					$matrizLargura[5]=10; $matrizTitulo[5]='Safra';
					$matrizLargura[6]=10; $matrizTitulo[6]='Categoria';
					$matrizLargura[7]=15; $matrizTitulo[7]='Represent.';
					$matrizLargura[8]=10; $matrizTitulo[8]='Peneira';
					$matrizLargura[9]=7; $matrizTitulo[9]='DT.Receb.';
					$matrizLargura[10]=80; $matrizTitulo[10]='Observações';
					$matrizLargura[11]=20; $matrizTitulo[11]='E.Acel';

                    Exemplo: A posicao 1 SEMPRE será AMOSTRA,  indiferente do modelo
				    entretanto um vai chamar de amostra e outro quer que chame de protocolo 
				    por isso preciso colocar os titulos dentro do if do modelo
					CUIDADO: O primeiro indice deful do vetor é zero. Exemplo: Se eu defino array[4,5,6] o indice 4 é o item zero do arrray
				
                */ 

                //venho aqui e simplesmente escolho as colunas que eu quero no meu livro
				if($modelo=='qualiteste'):

					$matrizLargura[1]=15;$matrizTitulo[1]='Amostra';
					$matrizLargura[2]=15;$matrizTitulo[2]='Lote';
					$matrizLargura[3]=30; $matrizTitulo[3]='Cultivar';
					$matrizLargura[4]=30; $matrizTitulo[4]='Espécie';
					$matrizLargura[5]=10; $matrizTitulo[5]='Safra';
					$matrizLargura[6]=10; $matrizTitulo[6]='Categoria';
					$matrizLargura[7]=15; $matrizTitulo[7]='Represent.';
					$matrizLargura[8]=10; $matrizTitulo[8]='Peneira';
					$matrizLargura[9]=7; $matrizTitulo[9]='DT.Receb.';
					$matrizLargura[10]=10; $matrizTitulo[10]='Normais';
					$matrizLargura[11]=10; $matrizTitulo[11]='Anorm.';
					$matrizLargura[12]=10; $matrizTitulo[12]='Duras';
					$matrizLargura[13]=10; $matrizTitulo[13]='Dorm';
					$matrizLargura[14]=10; $matrizTitulo[14]='Mortas';
					$matrizLargura[15]=10; $matrizTitulo[15]='Infec.';
					$matrizLargura[16]=151; $matrizTitulo[16]='Observações';
                    $vetorIndices=array(1,2,8,3,10,11,15,12,13,14,16);//define as colunas que vou ter e  as posicoes delas
					
					if($cliente!="QUALITESTE"):
					   $metodologia="Metodologia:Imersão em agua a 45ºC  por 6 horas";
					endif;

                endif;


				
				if($modelo=='basico'):
                    //para cada modelo defino as larguras e os titulos. Suprimo as colunas que nao usar
					//com isso ja consigo que ele me mostre so o que eu realmente quero no llaudo
					//no vetor indices eu digo quais as colunas e em que posicao relativa
					$matrizLargura[1]=15;$matrizTitulo[1]='Amostra';
					$matrizLargura[2]=25;$matrizTitulo[2]='Lote';
					$matrizLargura[3]=40; $matrizTitulo[3]='Cultivar';
					$matrizLargura[4]=30; $matrizTitulo[4]='Espécie';
					$matrizLargura[5]=10; $matrizTitulo[5]='Safra';
					$matrizLargura[6]=10; $matrizTitulo[6]='Categoria';
					$matrizLargura[7]=15; $matrizTitulo[7]='Represent.';
					$matrizLargura[8]=10; $matrizTitulo[8]='Peneira';
					$matrizLargura[9]=7; $matrizTitulo[9]='DT.Receb.';
					$matrizLargura[10]=80; $matrizTitulo[10]='Observações';
					$matrizLargura[11]=15; $matrizTitulo[11]='E.Acel';
                    $vetorIndices=array(1,2,8,3,11,10);//define as colunas que vou ter e  as posicoes delas
					$metodologia="Metodologia:Imersão em agua a 45ºC  por 6 horas";
				endif;

				if($modelo=='completo'):
                    //para cada modelo defino as larguras e os titulos. Suprimo as colunas que nao usar
					//com isso ja consigo que ele me mostre so o que eu realmente quero no laudo
					//no vetor indices eu digo quais as colunas e em que posicao relativa
					$matrizLargura[1]=11;$matrizTitulo[1]='Amostra';
					$matrizLargura[2]=25;$matrizTitulo[2]='Lote';
					$matrizLargura[3]=30; $matrizTitulo[3]='Cultivar';
					$matrizLargura[4]=25; $matrizTitulo[4]='Espécie';
					$matrizLargura[5]=14; $matrizTitulo[5]='Safra';
					$matrizLargura[6]=10; $matrizTitulo[6]='Categoria';
					$matrizLargura[7]=18; $matrizTitulo[7]='Represent.';
					$matrizLargura[8]=10; $matrizTitulo[8]='Peneira';
					$matrizLargura[9]=14; $matrizTitulo[9]='DT.Receb.';
					$matrizLargura[10]=20; $matrizTitulo[10]='Observações';
					$matrizLargura[11]=12; $matrizTitulo[11]='E.Acel';
                    $vetorIndices=array(1,2,3,4,5,6,7,8,9,11,10);//define as colunas que vou ter e  as posicoes delas
					$metodologia="Metodologia:Imersão em agua a 45ºC  por 6 horas";

				endif;

				
            //esta linha mede quantos itens eu defini no array e é basica para imperessao
            $limite=sizeof($vetorIndices);
 
     //PARAMETROS GERAIS
     //altura util=210  largura util=297(dados do adobe)
     $pdf->AddPage();//adicionando a primera pafina 
     $margemEsquerda=10;

	 //largura de uma margem a outra = 281  se eu imprimo algo esta soma nao pode ultrapassar este valor
	 $cinza=220;
	 $pdf->SetFillColor($cinza,$cinza,$cinza);
	 $grosso=0.7;
	 $medio=0.4;
	 $fino=0.3;
	 $extraFino=0.2;
	 //ESTAS COTAS SAO AS COTAS DAS LINHAS HORINTAIS GROSSAS QUE SERVEM DE ORIGEM PARA O QUE VEM A SEGUIR
	 $cota1=2;//inicio de tudo
	 $cota1a=27;//final do cabecalho
	 $cota2=30;

	 $cota4=84;
	 //$cota5=145;
	 //$cota6=149;
	 //$cota7=157; //estas duas cotas sao definidas aqui memsmo
     $cota8=200;  //usara 195 se for colocar o rodape na munheca, mas pode usar a funcao footer que da mais 5 milimetros
	 //LINHAS LATERAIS DO  cabecalho
	 $pdf->SetLineWidth($grosso);
	 $pdf->Line($margemEsquerda,$cota1,$margemEsquerda,$cota1a);//linha externa esquerda	
	 $pdf->Line($margemDireita,$cota1,$margemDireita,$cota1a);	//linha direita
     //9 LINHAS HORIZONTAIS GROSSAS 
	 $pdf->Line($margemEsquerda,$cota1,$margemDireita,$cota1);//linha externa superior	
	 $pdf->Line($margemEsquerda,$cota1a,$margemDireita,$cota1a);//linha inferior	DO CABECALHO
     ####################################CABECALHO################################################
     $vetorCabecalho=$objetocalculo->dadoslaboratorio();
	 //$pdf->Cell(30,10,'Angela',1,0,'C'); 30=largura  10=altura   angela=texto   1=com borda    0=quebra de linhya a direita      Centralizado(L,C,R) SINTAXE.....
	 $posicaoCab1=60;$posicaoCab2=245;
	 $caminhoFinal="ImagensClientes/i".$idLabo.".JPG";
	 //echo("caminhofinal=$caminhoFinal<br>");
	 $pdf->Image($caminhoFinal,11,3,48,23,'JPG');
	 //o/a didentificacao do lab
	 $pdf->SetFont('Times','B',9);
	 $pdf->setXY($posicaoCab1,$cota1);
	 $pdf->Cell(185,5,utf8_decode($vetorCabecalho[0]),0.5,1,'C');//lab nome
	 //$pdf->SetFont('Times','',10);
	 $pdf->Ln(0);
	 $pdf->Cell($posicaoCab1-$margemEsquerda);
	 $pdf->Cell(185,5,utf8_decode($vetorCabecalho[1]),0.5,1,'C');
	 $pdf->Ln(0);
	 $pdf->Cell($posicaoCab1-$margemEsquerda);
	 $pdf->Cell(185,5,utf8_decode($vetorCabecalho[2]),0.5,1,'C');
	 $pdf->Ln(0);
	 $pdf->Cell($posicaoCab1-$margemEsquerda);
	 //$pdf->Cell(185,5,utf8_decode($vetorCabecalho[3]),0.5,1,'C');
	 $pdf->Cell(185,5,utf8_decode($vetorCabecalho[3]),0.5,1,'C');
	 $pdf->Ln(0);
	 $pdf->Cell($posicaoCab1-$margemEsquerda);
	 $pdf->Cell(185,5,utf8_decode($vetorCabecalho[4]),0.5,1,'C');
	 //aqui cria o vetor que todos documentos vao ter em comum(nume documento, daos do remetente, da especie/cultivar, data documento etc)
     $vetorDadosDocumento=$objetocalculo->dados_gerais_documento($idDoc);
	 $pdf->SetLineWidth($medio);
	 $pdf->SetFont('Times','B',10);
	 $pdf->setXY(10,$cota2);
 
	 $texto=number_format($vetorDadosDocumento[1]/1000,3,'','');;//NUMERO DO INFORME
	 $texto1=$vetorDadosDocumento[4];//ANO DO INFORME
	 $texto1="/".$texto1;
	 $pdf->Cell($larguraUtil,5,utf8_decode('LAUDO DE ENVELHECIMENTO ACELERADO Nº ') .$texto.$texto1,1,1,'C');

	 $pdf->SetFont('Times','',10);
	 $pdf->setXY($margem,$cota2+10);
        //	 $pdf->Cell(180,$larguraDaLinha,utf8_decode('Resultado de análise de:'.$vetorDadosDocumento[2]) ,0,0,'L');
		 //imprime o nome cientifico mas tem que se colado ao nome comum
         $pdf->SetFont('Times','I',10);
		 //mede o tamanho do nome comum e acrescenta ao espaco usado para imprimir o texto fixo  [ Resultado de análise de:  ]
		 $tama=strlen($vetorDadosDocumento[2])*1.4;//mede tamanho nome comum .Multiplica por 3 pois sao 3 mm por letra e  este 15 ai é o taamanhao do rotulo especie que vem antes
		 /*
		 
		 
		 $derrapador=72+$tama;//era 1.2  e 60
		 $pdf->setXY($derrapador,$cota2+10);
	         $pdf->Cell(100,$larguraDaLinha,'('.$vetorDadosDocumento[13].')' ,0,1,'L');//nome cientifico da especie
          	 $pdf->SetFont('Times','',10);
		 $pdf->setXY($margem,$cota2+16);
	         $pdf->Cell(100,$larguraDaLinha,'Requerente:'.$vetorDadosDocumento[0] ,0,0,'L');
	       	 $pdf->Cell(100,$larguraDaLinha,utf8_decode('Endereço:'.$vetorDadosDocumento[8]) ,0,1,'L');
		 $data=$pdf->vetorFicha[6];
		 $dia=substr($data,8,2);
		 $mes=substr($data,5,2);
		 $ano=substr($data,0,4);//ano   1951-02-28
		 $dataFinal=$dia."/".$mes."/".$ano;
		 $pdf->setXY($margem,$cota2+23);
	     $pdf->Cell(93,$larguraDaLinha,'Data do recebimento da amostra:'.$vetorDadosDocumento[12],0,1,'L');
		 $pdf->setXY($margem,$cota2+28);
	     $pdf->Cell($larguraUtil,$larguraDaLinha,utf8_decode($metodologia),0,1,'L');

				
		*/
					/////enxerto do boletim//////////////
			    #####################DADOS DO REQUERENTE##################################################
			
	 $cota2+=5;			
	 $larguraDaLinha=3.5;
	 $pdf->SetLineWidth($extraFino);
	 $pdf->setXY($margemEsquerda,$cota2);
     global $amostraLong;
     $amostraLong=$vetori[5];
	 $pdf->SetFont('Times','B',8);
	 //$limiteDireito=200;
     $pdf->Cell($larguraUtil,$larguraDaLinha,utf8_decode('IDENTIFICAÇÃO DO REQUERENTE').$limiteDireito ,1,1,'C',1);	
	 $pdf->Ln(0);
     $pdf->SetFont('Times','',8);
     $pdf->Cell(160,$larguraDaLinha,'Requerente:'.utf8_decode($vetorDadosDocumento[0]) ,1,1,'L');
	 $pdf->Ln(-$larguraDaLinha);//-8 é pra ele imprimir na mesma linha
	 $pdf->Cell(160);//sempre DEVE DEFINIR ONDE COMECA A CELULA a menos que comeca na coluna 10
     $pdf->Cell(121,$larguraDaLinha,'RENASEM:'.$vetorDadosDocumento[6] ,1,1,'L');
	 $pdf->Ln(0);//ln(0)da o salto criando uma celuma contigua   ln()=cria um salto afastando a celula tantos milimetros quento a altura da linha anterior
     $pdf->Cell(281,$larguraDaLinha,utf8_decode('Endereço:'.$vetorDadosDocumento[8] ),1,1,'L');
     ################IDENTIFICACAO DA AMOSTRA##################################################
     $pdf->SetFont('Times','B',8);
     $pdf->Cell($larguraUtil,$larguraDaLinha,utf8_decode('IDENTIFICAÇÃO DA AMOSTRA') ,1,0.5,'C',1);	
     $pdf->SetFont('Times','',8);
	 $pdf->Ln(0);//ln(0)da o salto criando uma celuma contigua   ln()=cria um salto afastando a celula tantos milimetros quento a altura da linha anterior
     $nomeComum=$vetorDadosDocumento[2];
	 $tama=strlen($nomeComum)*3;
     $pdf->Cell(12,$larguraDaLinha,utf8_decode('Espécie:'),0,0,'L');
     $pdf->Cell($tama,$larguraDaLinha,utf8_decode($nomeComum ),0,0,'L');
     $pdf->SetFont('Times','I',8);
     $nomeCientifico=$vetorDadosDocumento[13];
     $pdf->Cell(70,$larguraDaLinha,'('.$nomeCientifico.')' ,0,1,'L');
     $pdf->SetFont('Times','',8);
	 $pdf->Ln(-$larguraDaLinha);//-8 é pra ele imprimir na mesma linha
	 $pdf->Cell(100);//sempre DEVE DEFINIR ONDE COMECA A CELULA a menos que comeca na coluna 10
     $pdf->Cell(75,$larguraDaLinha,'Cultivar:'.utf8_decode($vetorDadosDocumento[3]) ,1,1,'L');
	 $pdf->Ln(-$larguraDaLinha);//-8 é pra ele imprimir na mesma linha
	 $pdf->Cell(175);//sempre DEVE DEFINIR ONDE COMECA A CELULA a menos que comeca na coluna 10
     $pdf->Cell(35,$larguraDaLinha,'Safra:'.$vetorDadosDocumento[9] ,1,1,'L');
	 $pdf->Ln(-$larguraDaLinha);//-8 é pra ele imprimir na mesma linha
	 $pdf->Cell(210);//sempre DEVE DEFINIR ONDE COMECA A CELULA a menos que comeca na coluna 10
     $pdf->Cell(71,$larguraDaLinha,'Categoria:'.utf8_decode($vetorDadosDocumento[10]) ,1,1,'L');
	 $pdf->Ln(0);//-8 é pra ele imprimir na mesma linha
     $pdf->Cell(180,$larguraDaLinha,utf8_decode('Procedência:'.$vetorDadosDocumento[14]),1,1,'L');
	 $pdf->Ln(-$larguraDaLinha);//-8 é pra ele imprimir na mesma linha
	 $pdf->Cell(180);//sempre DEVE DEFINIR ONDE COMECA A CELULA a menos que comeca na coluna 10
     $pdf->Cell(101,$larguraDaLinha,'Data da amostragem:'.$vetorDadosDocumento[11] ,1,1,'L');
	 $pdf->Ln(0);//-8 é pra ele imprimir na mesma linha
     $pdf->Cell(140,$larguraDaLinha,'Nome do amostrador/RT:'.$vetorDadosDocumento[5] ,1,1,'L');
	 $pdf->Ln(-$larguraDaLinha);//-8 é pra ele imprimir na mesma linha
	 $pdf->Cell(140);//sempre DEVE DEFINIR ONDE COMECA A CELULA a menos que comeca na coluna 10
     $pdf->Cell(141,$larguraDaLinha,utf8_decode('Nº RENASEM:').$vetorDadosDocumento[7] ,1,1,'L');

			///////final do enxerto do boletim/////////////
		
		
				
				
/////////////final do importei do livro protocolo//////////////////////
            //aqui imprime a linha de cabecalho //posso negrita/ colocar hachurrado etc 
			
	$cota3=70;
	$larguraDaLinha=5;
	$pdf->setXY($margemEsquerda,$cota3);
	$pdf->SetFont('Times','B',10);
    $pdf->Cell($larguraUtil,$larguraDaLinha,utf8_decode('RESULTADO DA ANÁLISE'),0,1,'C',1);
	$pdf->SetFont('Arial','',7);
	
    $cota3=$cota3+10;
	$pdf->setXY($margemEsquerda,$cota3);
    for($j=1;$j<=$limite;$j++):
		$indice=$vetorIndices[$j-1]; //O PRIMEIRO ITEM DO ARRAY É ZERO, CUIDAR COM ISSO
		$largura=$matrizLargura[$indice];
		$larguraTexto=ceil($largura*.7);
		$texto=$matrizTitulo[$indice];
		$texto=substr($texto,0,$larguraTexto);//pois as vezes vai acavalar alguns textos
	    $pdf->Cell($largura,5,utf8_decode($texto),1,0,'C',1);//lab nome
	endfor;
	
	 ############RESULTADO DE ANALISE########################
 	 #################vai imprimir resultados##########################################
	//aqui vou preparar o vetor de resultados/amostras
	//captura o numero de registros e as id das amostras atraves da leitura da tabela documentosponte amarrada com a id do documento
	//ENTRA DE QUAKQUER MANEIRA
	//echo("3xxxxxxxxxxxxxxidDocumento= $idDoc<br>");

	$generica=new tabelagenerica();
	$generica->tabela="documentosponte";
	$generica->campos_valores = array(
			"dpo_amostra_vinculada" => NULL,
		);
	$generica->extras_select =" where  dpo_documento_autonumerador=".$idDoc." order by dpo_amostra_vinculada LIMIT 15";
	//echo("eeeeexxxxxxxxxxxxxxxxxxxxxxxxxxeeeeeeerro $generica->extras_select <br>");
	$generica->selecionaCampos($generica);
	//echo("4xxxxxxxxxxxxxxidDocumento= $idDoc  contaAmostras =$contaAmostras $vetorDPO[1]<br>");
    //vai pegar os dados da amopstra la na classe calculo pois ja tem a id da amostra
	 //resultaso sao impressoas a partr da cota 3 car em cima da  linha divisoria muito grossa
	 $alturaLinhaResultados=8;//define a largura das linhas de resultados
    $contador=1;	
	while ($resgenerica = $generica->retornaDados()):
		$amostraLong=$resgenerica->dpo_amostra_vinculada;
		$vetorAmostraBruto=$objetocalculo->capturaGeralAmostra($amostraLong);//captura a batelada 
		$vetorOutrasDets=$objetocalculo->capturaOutrasDets($amostraLong,'EAC');
		//aqui temos um abacaxi para resolver
		//se a pessoa joga uma amostra de previa FNALIDADE=PREVIA a amostra vai ter numero na previa
		//mas se o laboratorio for convencional e tiver uma so listagem este campo nao sera usado e viaria zero ali
		//entao eu acho que no iforme deveria fazer um teste: se o numero previa for zero ele imprime o numero definitiva
	    $numeroAmostra=$vetorAmostraBruto[25];
		if($numeroAmostra==0)$numeroAmostra=$vetorAmostraBruto[1];
        $matrizConteudo[$contador][1]=$numeroAmostra;
        $matrizConteudo[$contador][2]=$vetorAmostraBruto[2];//
	    $matrizConteudo[$contador][3]=$vetorAmostraBruto[31];//r
	    $matrizConteudo[$contador][4]=$vetorAmostraBruto[32];//
		if($modelo=='qualiteste'):
		    $matrizConteudo[$contador][10]=$vetorOutrasDets[1];//normais
		    $matrizConteudo[$contador][11]=$vetorOutrasDets[2];//anormais
		    $matrizConteudo[$contador][15]=$vetorOutrasDets[11];//infecionadas
		    $matrizConteudo[$contador][12]=$vetorOutrasDets[3];//duras
		    $matrizConteudo[$contador][13]=$vetorOutrasDets[4];//dormentes
		    $matrizConteudo[$contador][14]=$vetorOutrasDets[5];//mortas

        else:
		    $matrizConteudo[$contador][5]=$vetorAmostraBruto[34];//
		    $matrizConteudo[$contador][6]=$vetorAmostraBruto[33];//;//
		    $matrizConteudo[$contador][7]=$vetorAmostraBruto[6];//
		    $matrizConteudo[$contador][8]=$vetorAmostraBruto[35];//
		    $matrizConteudo[$contador][9]=$vetorAmostraBruto[36];//data recebimento
		    $matrizConteudo[$contador][10]=$vetorAmostraBruto[37];//Observações
		endif;
	    //$matrizConteudo[$contador][11]=$objetocalculo->captura_OD_Especifica($amostraLong,'EAC');//E.Acel
        $contador++;  
	endwhile;


//agora imprime	o corpo		
//o indice vai permitir eu imprimir na ordem que eu quiser e inclusive suprimir linhas		 $pdf->SetFont('Times','',8);

	 $cotaLinha=$cota3;//define o começo da impressao de resultados , apenas para naoa fi	
			for($i=1;$i<=$contador;$i++):
                $cota3+=5;
				$pdf->setXY($margemEsquerda,$cota3);
                for($j=1;$j<=$limite;$j++): 
				    $indice=$vetorIndices[$j-1]; 
					$largura=$matrizLargura[$indice];
					$larguraTexto=$largura*.7;
					$texto=$matrizConteudo[$i][$indice];
					$texto=substr($texto,0,$larguraTexto);//pois as vezes vai acavalar alguns textos
					if($texto=="")$texto="-O-";
				    $pdf->Cell($largura,5,utf8_decode($texto),1,0,'C');//lab nome
                endfor;
			endfor;




	 
	 //terminou de imprimir resultado agora vai para observacoes tecico e assinatura
     $cota4=140;
     ########################################observacoes######################################
     $pdf->setXY($margem,$cota4);
     $pdf->Cell(70,$larguraDaLinha,utf8_decode('OBSERVAÇÕES:'),0,1,'L');	
	 $base[2][2]=$vetorCabecalho[9];
	 $base[3][2]=$vetorCabecalho[10];
	 $base[4][2]=$vetorCabecalho[11];
	 $base[5][2]=$vetorCabecalho[12];
	 $base[6][2]=$vetorCabecalho[13];
	 $base[7][2]=$vetorCabecalho[13];
	 $base[8][2]=$vetorCabecalho[14];
	 $base[9][2]=$vetorCabecalho[15];
	 $base[10][2]=$vetorCabecalho[16];

	 //aqui inverte a data
	 $data=$vetorCabecalho[17];
	 $dia=substr($data,8,2);
	 $mes=substr($data,5,2);
	 $ano=substr($data,0,4);//ano   1951-02-28
	 $dataBoletim=$dia."/".$mes."/".$ano;
	 $cotaLinha=$cota4+10;
     for($L=1;$L<=10;$L++)
	 {
	         $conteudo=$base[$L][2];
	    	 if(strlen($conteudo)>2)
		 {
			 $pdf->setXY($margem,$cotaLinha);
			 $pdf->Cell(190,$larguraDaLinha,$base[$L][2],0,1,'L');	
			 $cotaLinha+=$larguraDaLinha;
		 }
	 }

	/*
      ###########OUTRAS ESPECIES CONTAMINANTES########################################33
     $cotaDOSN=$cotaLinha;//ele incrementa a cota linha e deixa espaco para imprimir logo a seguir os contaminantes	      
     $pdf->setXY($margem,$cotaDOSN);
     $base[2][1]=$vetorBase[2][1];
	 $base[3][1]=$vetorBase[3][1];
	 $base[4][1]=$vetorBase[4][1];
	 $base[5][1]=$vetorBase[5][1];
	 $base[6][1]=$vetorBase[6][1];
	 $base[7][1]=$vetorBase[7][1];
	 $base[8][1]=$vetorBase[8][1];
	 $base[9][1]=$vetorBase[9][1];
         //se o primeiro  item estver vazio ele nem siquer imprime a esperessao  OUTRAS ESPECIES CONTAMINANTES
	*/	 
	 if(strlen($base[2][1])>2)
	 {
		 $pdf->setXY($margem,$cotaLinha);
	         $pdf->Cell(100,$larguraDaLinha,'DETERMINAÇÃO DE OUTRAS ESPECIES POR NÚMERO:',0,1,'L');	
		 $pdf->SetFont('Times','I',8);
		 $cotaLinha=$cotaDOSN;
	         for($L=1;$L<=10;$L++)
		 {
		         $conteudo=$base[$L][1];
			  if(strlen($conteudo)>2)
		          { 
			 	 $cotaLinha+=$larguraDaLinha;
		         	 $pdf->SetXY($margem,$cotaLinha);
				 $pdf->Cell(180,$larguraDaLinha,$conteudo,0,1,'L');	
			  }
		 }
		 $pdf->SetFont('Times','',8);
	 }
	 //aqui imprime o -o- independente de ter colocado ou nao la no campo de observacoes 
	 $pdf->SetXY($margem,$cotaLinha+4);
	 $pdf->Cell(180,$larguraDaLinha,'-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-O-',0,1,'L');	

	 
	 
	 ########################################ASSINATURAs######################################

     $vetorTecnico=$objetocalculo->dadostecnico($idLabo,"BOLE");
     $cota7=$cotaLinha+10;
	 $cotaLinha=$cota7;
     $pdf->setXY(10,$cota7);
 	 $base[1][3]=utf8_decode($vetorCabecalho[6]).', '.$vetorDadosDocumento[27];
	 $base[2][3]="";
	 $base[3][3]="";
	 $base[4][3]=$vetorTecnico[1];
	 $base[5][3]="RENASEM:".$vetorTecnico[3]."  CREA:".$vetorTecnico[2];
	 $base[6][3]=$vetorTecnico[4];
     $pdf->Line(100,$cota7+14,180,$cota7+14);//linha separadora horizontal
	 $pdf->SetXY(100,$cota7);$pdf->Cell(90,5,$base[1][3],0,1,'L');	
	 $pdf->SetXY(100,$cota7+15);$pdf->Cell(90,5,$base[4][3],0,1,'C');	
	 $pdf->SetXY(100,$cota7+20);$pdf->Cell(90,5,$base[5][3],0,1,'C');	
	 $pdf->SetXY(100,$cota7+25);$pdf->Cell(90,5,$base[6][3],0,1,'C');		 
		 
	ob_clean(); // Quando usava essa classe o ob_clean() resolvia meu problema
$pdf->Output("arquivo.pdf","I");
		
?>
