<?php
SET_TIME_LIMIT(300);
$sNomeIdJan1 = 'iJan_RelAbc_Princ';
$sNomeIdJan2 = 'iJan_RelAbc_TxtVs';
$sCorBarraInf = '#E8E3CE';
$sEmpresaFan = SQLVarConfig('EMPRESA_NOME_FANTASIA');
$sTipoLocal = SQLVarConfig('NOME_LOCAIS_SVC');
$sTipoConsignado = SQLVarConfig('NOME_CONSIGNADOS');
//$nQtdLocsT  = SQLVarConfig('QTD_LOCAIS_SVC')+0;
//$nCodSeq_Comanda = SQLVarConfig('COMANDA_L_SEQCOD')+0;
//$nTipoTrabCtl = SQLVarConfig('CONTROLE_DO_FAT_GERAL')+0;   // Tipo do controle de trabalho. 0=Por local , 1=Por comanda
$bFatControle = SQLVarConfig('CONTROLE_DO_FAT_GERAL');
$sData_Trabalho = SQLVarConfig('DATA_DE_TRABALHO');
//
$sPulaLinha = CHR(13).CHR(10);
//
$sLocalCom  = $sTipoLocal;
If ($bFatControle) {
 $sLocalCom = 'Comanda';
}
//
//  ** TELA QUE MONTA O RELATÓRIO **
If ( $sSubModulo=="RELATORIO" ) {
    // Criar objeto Janela
    $oJanelaPrinc = New R_Janela();
    $oJanelaPrinc->sIdObj  = $sNomeIdJan2; 
    $oJanelaPrinc->nTop    = 40;
    $oJanelaPrinc->nLeft   = @$aV_Sessao['Jan_nLeft' ];
    $oJanelaPrinc->nWidth  = @$aV_Sessao['Jan_nWidth'];   // Largura
    $oJanelaPrinc->nHeight = 0;     // Altura
	$oJanelaPrinc->nLeft   += ($nTela_W/2)-($oJanelaPrinc->nWidth/2);
    $oJanelaPrinc->sTitulo = 'Relatório';
	$oJanelaPrinc->sJavOnClick  = "document.getElementById('in_RelAbcV_Tecla').focus();";
	//
	$sJavaTravarJ = "document.getElementById('".$oJanelaPrinc->sIdObj."_Travar').style.visibility='visible'; ";
	$oJanelaPrinc->sJavOnClickF =
        $sJavaTravarJ.
	    "document.forms.fmPRelAbc_R.acao.value='FECHAR'; ".
        "document.forms.fmPRelAbc_R.submit();";
	//
	$aV_Sessao = @$aSessao[$sNomeAcesso.'_S'];
    //
    //
    // Montar o relatório
    If ( $sAcao=="MONTAR" ) {
	   $d_Fil_DataIni = ConvertDataSTR( ConvertDataBRUS($aV_Sessao['Fil_DataIni']) );
	   $d_Fil_DataFim = ConvertDataSTR( ConvertDataBRUS($aV_Sessao['Fil_DataFim']) );
	   $aListaGruposP = $aV_Sessao['Fil_Mat_Gru'];
	   $sSQLParm = '';
	   If ($d_Fil_DataIni>0) {
	      If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	      $sSQLParm .= '(ftg.FAT_DATAINI>="'.DATE('Y-m-d',$d_Fil_DataIni).'")';          // Comparando (Inicial)
	   }
	   If ($d_Fil_DataFim>0) {
	      If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	      $sSQLParm .= '(ftg.FAT_DATAINI<="'.DATE('Y-m-d',$d_Fil_DataFim).'")';          // Comparando (Final)
       }
	   //
	   $aDadosCaixa = ARRAY();
	   If ( $aV_Sessao['Fil_Seq_Cxa']>0 ) {
	      If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	      $sSQLParm .= '(FAT_SQCAIXA="'.$aV_Sessao['Fil_Seq_Cxa'].'")';                 // Comparando com a sequencia de caixa
		  $aDadosCaixa = PuxarDadosCaixa($aV_Sessao['Fil_Seq_Cxa']);
	   }
	   //
	   /*
	   If ( $aV_Sessao['Fil_Tip_Ven']<4 ) {
	      If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	      $sSQLParm .= '(ftg.FAT_TIP_LOC="'.$aV_Sessao['Fil_Tip_Ven'].'" AND ftg.FAT_TIPOORI<>5)';   // Tipo do local 
	   }
	   If ( $aV_Sessao['Fil_Tip_Ven']==5 ) {
	      If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	      $sSQLParm .= '(ftg.FAT_TIPOORI=5)';                                           // Consignados
	   }
	   */
	   $nTiposdevenda = 0;
	   	   	if($aV_Sessao['Fil_Tip_Ven_Local'] != '' OR $aV_Sessao['Fil_Tip_Ven_Consignado'] != '' OR $aV_Sessao['Fil_Tip_Ven_Disk'] != '' OR $aV_Sessao['Fil_Tip_Ven_balcao'] != '' ){
			If (STRLEN($sSQLParm)>0 AND $nTiposdevenda == 0) { $sSQLParm .= ' AND ';}		 
		 $sSQLParm .= ' ( ';
		 }
	   If ( $aV_Sessao['Fil_Tip_Ven_Local']==1 ) {
	      //If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
		  If ( $nTiposdevenda > 0) { $sSQLParm .= ' OR ';}
		  $sValorLocal = 0;
	      $sSQLParm .= ' (ftg.FAT_TIP_LOC="'.$sValorLocal.'" ) ';   // Tipo de venda local 
		  $nTiposdevenda ++;
	   }
	   If ( $aV_Sessao['Fil_Tip_Ven_Consignado']==1 ) {
	     // If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
		  	If ( $nTiposdevenda > 0) { $sSQLParm .= ' OR ';}
		  $sValorLocal = 5;
	      $sSQLParm .= ' (ftg.FAT_TIP_LOC="'.$sValorLocal.'" )';   // Tipo de venda Consignado
		  $nTiposdevenda ++;
	   }
	   If ( $aV_Sessao['Fil_Tip_Ven_Disk']==1 ) {
	      //If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
		  	If ( $nTiposdevenda > 0) { $sSQLParm .= ' OR ';}
		  $sValorLocal = 2;
	      $sSQLParm .= ' (ftg.FAT_TIP_LOC="'.$sValorLocal.'" )';   // Tipo de venda DISK
		  $nTiposdevenda ++;
	   }
	   If ( $aV_Sessao['Fil_Tip_Ven_balcao']==1 ) {
	      //If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
		  If ( $nTiposdevenda > 0) { $sSQLParm .= ' OR ';}
		  $sValorLocal = 1;
	      $sSQLParm .= ' (ftg.FAT_TIP_LOC="'.$sValorLocal.'" )';   // Tipo de venda BALCAO
		  $nTiposdevenda ++;
	   }
	   
	   if($aV_Sessao['Fil_Tip_Ven_Local'] != '' OR $aV_Sessao['Fil_Tip_Ven_Consignado'] != '' OR $aV_Sessao['Fil_Tip_Ven_Disk'] != '' OR $aV_Sessao['Fil_Tip_Ven_balcao'] != '' ){	 
		 $sSQLParm .= ' ) ';
		 }
	   
	   
	   //
	   If ( $aV_Sessao['Fil_Cod_Ent']>0 ) {
	      If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	      $sSQLParm .= ' (ftg.FAT_COD_ENT='.$aV_Sessao['Fil_Cod_Ent'].') ';               // Código do entregador
	   }
	   //
	   $sPeriodo = '';
	   If ($d_Fil_DataIni==0 && $d_Fil_DataFim==0) {
	      $sPeriodo = '** TODOS **';
	   } ElseIf ($d_Fil_DataIni>0 && $d_Fil_DataFim==0) {
	      $sPeriodo = 'Apartir de '.$aV_Sessao['Fil_DataIni'];
	   } ElseIf ($d_Fil_DataIni==0 && $d_Fil_DataFim>0) {
	      $sPeriodo = 'Ate '.$aV_Sessao['Fil_DataFim'];
	   } Else {
	      $sPeriodo = $aV_Sessao['Fil_DataIni'].' ate '.$aV_Sessao['Fil_DataFim'];
	   }
	   //
	   // **
	   $sSQLRequest = 'SELECT * FROM cad_produto ORDER BY ITE_DESCRIC ASC;';
	   $Rows_Temp = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	   $aProdutos = ARRAY();
	   While ( $Row_Temp = MYSQL_FETCH_OBJECT($Rows_Temp) ) {
	      $aProdutos[$Row_Temp->ITE_CODIGOI] =
		      ARRAY( 0=>$Row_Temp->ITE_DESCRIC,
			         1=>$Row_Temp->ITE_COD_GRU,
			         2=>$Row_Temp->ITE_CODIGOL,
			         3=>$Row_Temp->ITE_SIG_UNIDADE
				   );
       }
	   //
	   $sSQLRequest = 'SELECT * FROM cad_grupo_produtos ORDER BY GRU_DESCRI ASC;';
	   $Rows_Temp = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	   $aGrupos = ARRAY();
	   $aGrupos_ActSab = ARRAY();
	   $aGrupos_ActMei = ARRAY();
	   While ( $Row_Temp = MYSQL_FETCH_OBJECT($Rows_Temp) ) {
	      $aGrupos[$Row_Temp->GRU_CODIGO] = $Row_Temp->GRU_DESCRI;
          $aGrupos_ActSab[$Row_Temp->GRU_CODIGO] = $Row_Temp->GRU_ACTSAB;
		  $aGrupos_ActMei[$Row_Temp->GRU_CODIGO] = $Row_Temp->GRU_ACTMEI;
	   }
	   //
	   $sFil_Ope_Ent = "";
	   If ( $aV_Sessao['Fil_Cod_Ent']>0 ) {
	      $sSQLRequest = 'SELECT FUN_CODIGO,FUN_NOMECP FROM cad_funcionario WHERE FUN_CODIGO = '.$aV_Sessao['Fil_Cod_Ent'].';';
	      $Row_Temp = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	      If ( $Row_Temp = MYSQL_FETCH_OBJECT($Row_Temp) ) {
			 $sFil_Ope_Ent = Str_Zero($Row_Temp->FUN_CODIGO,4)." - ".$Row_Temp->FUN_NOMECP;
	      }
	   }
	   //
	   // Cabeçalho do relatorio
       $sTxt_Rel =
           $sPulaLinha.
		   ( $aV_Sessao['Fil_Opcao_C']==1 ?
		       AlinhaStr('Empresa.....: '.$sEmpresaFan,0,80).$sPulaLinha.
			   AlinhaStr('Relatorio...: CURVA ABC DE PRODUTOS',0,80).$sPulaLinha.
			   AlinhaStr('Emissao.....: '.DATE('d/m/Y H:i:s'),0,40).
		       AlinhaStr('Operador....: '.$R_CadFuncionario->FUN_NOMECP,2,40).$sPulaLinha
		    :
               AlinhaStr('Empresa...: '.$sEmpresaFan,0,40).$sPulaLinha.
			   AlinhaStr('Relatorio.: CURVA ABC DE PRODUTOS',0,40).$sPulaLinha.
			   AlinhaStr('Emissão...: '.DATE('d/m/Y H:i:s'),0,40).$sPulaLinha.
			   AlinhaStr('Operador..: '.SUBSTR($R_CadFuncionario->FUN_NOMECP,0,20),0,40).$sPulaLinha
           ).
		   ( (COUNT($aDadosCaixa)>0) ? "" :
               ( $aV_Sessao['Fil_Opcao_C']==1 ?
			      AlinhaStr('Periodo.....: '.$sPeriodo,0,80).$sPulaLinha
			   :
                  AlinhaStr('Periodo...: '.$sPeriodo,0,40).$sPulaLinha
               )
		   ).
		   ( $aV_Sessao['Fil_Cod_Pro']>0 ?
		    ' * '.(@$aProdutos[$aV_Sessao['Fil_Cod_Pro']][2]).' - '.SUBSTR(@$aProdutos[$aV_Sessao['Fil_Cod_Pro']][0],0,30).$sPulaLinha
		   : '').
		   ( $aV_Sessao['Fil_Cod_Gru']>0 ?
		     ' * '.Str_Zero($aV_Sessao['Fil_Cod_Gru'],3).' - '.(@$aGrupos[$aV_Sessao['Fil_Cod_Gru']]).$sPulaLinha
		   : '').
		   ( (COUNT($aDadosCaixa)>0) ?
		     ' * Caixa '.Str_Zero($aV_Sessao['Fil_Seq_Cxa'],6)." ".DATE("d/m/Y",$aDadosCaixa[7])." ".DATE("H:i:s",$aDadosCaixa[2]).$sPulaLinha.
			 '      Operador: '.$aDadosCaixa[6][2].$sPulaLinha
		   : '').
		   ( $aV_Sessao['Fil_Vendido']==1 ?
		     ' * Produtos vendidos'
		   : ' * Produtos nao Vendidos').
		   $sPulaLinha.
		   ( $aV_Sessao['Fil_ResmPor']==0 ?
		     ' * Resumo por Produto'
		   : '').
		   ( $aV_Sessao['Fil_ResmPor']==1 ?
		     ' * Resumo por Grupo'
		   : '').
		   ( $aV_Sessao['Fil_ResmPor']==2 ?
		     ' * Resumo por Grupo + Produto'
		   : '').
		   $sPulaLinha.
		   ( $aV_Sessao['Fil_Ordem_R']==0 ?
		     ' * Ordem por quantidade' : '').
		   ( $aV_Sessao['Fil_Ordem_R']==1 ?
		     ' * Ordem por valor' : '').
		   ( $aV_Sessao['Fil_Ordem_R']==2 ?
		     ' * Ordem por descrição' : '').
		   ( $aV_Sessao['Fil_Ordem_R']==3 ?
		     ' * Ordem por código do produto' : '').
		   $sPulaLinha.
           ( $aV_Sessao['Fil_Opcao_R']==0 ?
		     ' * Vendas'
		   : '' ).
           ( $aV_Sessao['Fil_Opcao_R']==1 ?
		     ' * Vendas/Custo/Lucro' 
		   : '' ).
           ( $aV_Sessao['Fil_Opcao_R']==2 ?
		     ' * Vendas com cupom fiscal' 
		   : '' ).
		   $sPulaLinha.
/*		
		( $aV_Sessao['Fil_Tip_Ven']==4 ?
		     ' * Tipo: Todos' 
		   : '' ). */
		   ( $aV_Sessao['Fil_Tip_Ven_Consignado']==1 ?
		     ' * Tipo: '.$sTipoConsignado
		   : '' ).
           ( $aV_Sessao['Fil_Tip_Ven_Local']==1  ?
		    ' * '.$sLocalCom
		   : '' ).
           ( $aV_Sessao['Fil_Tip_Ven_balcao']==1 ?
		     ' * Balcão' 
		   : '' ).
           ( $aV_Sessao['Fil_Tip_Ven_Disk']==1 ?
		     ' * Disk entrega'
		   : '' ).
		   $sPulaLinha.
		   ( EMPTY($sFil_Ope_Ent) ? "" :
		    SUBSTR( " * Entregador: ".$sFil_Ope_Ent ,0, ($aV_Sessao['Fil_Opcao_C']+1)*40 )
		   ).
		    $sPulaLinha.
			//  
		   ( $aV_Sessao['Fil_Opcao_C']==1 ?
		      STR_REPEAT("=",80).$sPulaLinha.
			  ( $aV_Sessao['Fil_Opcao_R']==0 ?
			     ( $aV_Sessao['Fil_ResmPor']==2 ?
				 ' Produto                                         Quantidade       Valor  %Repres'.$sPulaLinha.
				 STR_REPEAT("-",80).$sPulaLinha
				 : "").
		         '                                        Qtde     Pr.Médio     Tot.Venda  %Repres'.$sPulaLinha
              : 
			     ''
			  ).
		      ( $aV_Sessao['Fil_Opcao_R']==1 ?
		         '                                        Qtde     Pr.Médio    Tot.Venda   %Repres'.$sPulaLinha
              : 
			     ''
			  ).
		      ( $aV_Sessao['Fil_Opcao_R']==2 ?
		         '                                        Qtde     Pr.Médio    Tot.Venda   %Repres'.$sPulaLinha
              : 
			     ''
			  ).
		      STR_REPEAT("=",80).$sPulaLinha
		   :
               STR_REPEAT("=",40).$sPulaLinha.
		      ( $aV_Sessao['Fil_Opcao_R']==0 ?
			     ( $aV_Sessao['Fil_ResmPor']==2 ?
				 ' Produto           Quantidade    Valor  '.$sPulaLinha.
				 STR_REPEAT("-",40).$sPulaLinha
				 : "").
		         'Qtde     Pr.Médio    Tot.Venda   %Repres'.$sPulaLinha
              : 
			     ''
			  ).
		      ( $aV_Sessao['Fil_Opcao_R']==1 ?
		         'Qtde     Pr.Médio    Tot.Venda   %Repres'.$sPulaLinha
              : 
			     ''
			  ).
		      ( $aV_Sessao['Fil_Opcao_R']==2 ?
		         'Qtde     Pr.Médio    Tot.Venda   %Repres'.$sPulaLinha
              : 
			     ''
			  ).
		      STR_REPEAT("=",40).$sPulaLinha
              
		   ).
		   "";
	   //
	   $aItens = ARRAY();
	   If ( $aV_Sessao['Fil_Opcao_R']==0 OR $aV_Sessao['Fil_Opcao_R']==1 ) {
	      $sSQLRequest =
	         "SELECT ".
			   "ftd.FAT_CODITE1, ".
               "ftd.FAT_CODITE2, ".
               "ftd.FAT_CODITE3, ".
               "ftd.FAT_CODITE4, ".
               "ftd.FAT_QTD_ITE, ".
               "ftd.FAT_PRE_TOT, ".
               "ftd.FAT_TOTCUST, ".
			   "ftd.FAT_PRE_TIP, ".
			   "ftg.FAT_TIP_LOC  ".
             "FROM fat_item AS ftd ".
             "LEFT JOIN fat_geral as ftg ON ftg.FAT_CODIGOI=ftd.FAT_CFATGER ".
             "WHERE ".
               (STRLEN($sSQLParm)>0 ? $sSQLParm.' AND' : '')." ".
               "Length(ftd.FAT_CANITEM)<2 AND ftg.FAT_CAN_DAT=0 AND ftg.FAT_RCFORMA>0 ".
             "ORDER BY ftg.FAT_DATAINI DESC ".
             ";";
	      //
		  $Rows_FatIte = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	      While ( $Row_FatIte = MYSQL_FETCH_ARRAY($Rows_FatIte) ) {
		     $aItens[] = $Row_FatIte;
		  }
		  //
	   } ElseIf ( $aV_Sessao['Fil_Opcao_R']==2 ) {
	      $sSQLParm = STR_REPLACE("FAT_DATAINI","FSC_DT_REAL",$sSQLParm);
	      $sSQLRequest =
	         "SELECT ".
			   " fsi.FSI_CODITEM, ". 
			   " fsi.FSI_QTD_ITE, ".
			   " fsi.FSI_PRE_TOT, ".
			   " fsi.FSI_PRE_TIP, ".
			   " ftg.FAT_TIP_LOC  ".
			 " FROM      fiscal_item  AS fsi ".
             " LEFT JOIN fiscal_geral AS fsc ON fsc.FSC_CODIGOI=fsi.FSI_CODFISC ".
             " LEFT JOIN fat_geral    AS ftg ON ftg.FAT_CODIGOI=fsc.FSC_CFATGER ".
			 " WHERE ".
             (STRLEN($sSQLParm)>0 ? $sSQLParm.' AND' : '')." ".
             " Length(fsc.FSC_CANCELA)<2 ".
             " ORDER BY fsc.FSC_DT_REAL DESC; ".
             "";
	      //
		  $Rows_FatIte = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	      While ( $Row_FatIte = MYSQL_FETCH_ARRAY($Rows_FatIte,MYSQL_ASSOC) ) {
		     $aCodigos = EXPLODE(' ',$Row_FatIte['FSI_CODITEM']);
		     $aItem =
			   ARRAY(
			     'FAT_CODITE1' => @$aCodigos[0]+0,
			     'FAT_CODITE2' => @$aCodigos[1]+0,
			     'FAT_CODITE3' => @$aCodigos[2]+0,
			     'FAT_CODITE4' => @$aCodigos[3]+0,
				 'FAT_QTD_ITE' => $Row_FatIte['FSI_QTD_ITE'],
				 'FAT_PRE_TOT' => $Row_FatIte['FSI_PRE_TOT'],
				 'FAT_TOTCUST' => 0,
				 'FAT_PRE_TIP' => $Row_FatIte['FSI_PRE_TIP'],
				 'FAT_TIP_LOC' => $Row_FatIte['FAT_TIP_LOC']
			     );
		     $aItens[] = $aItem;
		  }
		  //
	   }
	   //
	   $aTotalProd = ARRAY();
	   $aT_QtdProd = ARRAY();
	   $aPCodLivre = ARRAY();
	   $aTotal_Custo = ARRAY();
	   $aTotal_Lucro = ARRAY();
	   //
	   $aTip_Loc = ARRAY();  // tipo do local 0-mesa 1- disk 2-balcão 3-comandas 
	   //
	   $aDes_Nor = ARRAY();
	   $aQtd_Nor = ARRAY();
	   //
	   $aDes_Mei = ARRAY();
	   $aQtd_Mei = ARRAY();
	   //
	   $aDes_001 = ARRAY();
	   $aQtd_001 = ARRAY();
	   //
	   $aDes_002 = ARRAY();
	   $aQtd_002 = ARRAY();
	   //
	   $aDes_003 = ARRAY();
	   $aQtd_003 = ARRAY();
	   //
	   $aDes_004 = ARRAY();
	   $aQtd_004 = ARRAY();
	   //mesa
	   $aQtd_G_IM = ARRAY();
       $aVProd_IM = [];
	   $aQtd_G_NM = ARRAY();
	   $aVProd_NM = ARRAY();
	   $aQtd_G_1M = ARRAY();
	   $aVProd_1M = ARRAY();
	   $aQtd_G_2M = ARRAY();
	   $aVProd_2M = ARRAY();
	   $aQtd_G_3M = ARRAY();
	   $aVProd_3M = ARRAY();
	   $aQtd_G_4M = ARRAY();
	   $aVProd_4M = ARRAY();
	   //
	   //disk
	   $aQtd_G_ID = ARRAY();
       $aVProd_ID = [];
	   $aQtd_G_ND = ARRAY();
	   $aVProd_ND = ARRAY();
	   $aQtd_G_1D = ARRAY();
	   $aVProd_1D = ARRAY();
	   $aQtd_G_2D = ARRAY();
	   $aVProd_2D = ARRAY();
	   $aQtd_G_3D = ARRAY();
	   $aVProd_3D = ARRAY();
	   $aQtd_G_4D = ARRAY();
	   $aVProd_4D = ARRAY();
	   //balcao
	   $aQtd_G_IB = ARRAY();
       $aVProd_IB = [];
	   $aQtd_G_NB = ARRAY();
	   $aVProd_NB = ARRAY();
	   $aQtd_G_1B = ARRAY();
	   $aVProd_1B = ARRAY();
	   $aQtd_G_2B = ARRAY();
	   $aVProd_2B = ARRAY();
	   $aQtd_G_3B = ARRAY();
	   $aVProd_3B = ARRAY();
	   $aQtd_G_4B = ARRAY();
	   $aVProd_4B = ARRAY();
	   //comanda
	   $aQtd_G_IC = ARRAY();
       $aVProd_IC = [];
	   $aQtd_G_NC = ARRAY();
	   $aVProd_NC = ARRAY();
	   $aQtd_G_1C = ARRAY();
	   $aVProd_1C = ARRAY();
	   $aQtd_G_2C = ARRAY();
	   $aVProd_2C = ARRAY();
	   $aQtd_G_3C = ARRAY();
	   $aVProd_3C = ARRAY();
	   $aQtd_G_4C = ARRAY();
	   $aVProd_4C = ARRAY();
	   //	   
	   $sDes_PreNor = SUBSTR(SQLVarConfig('DESCRI_PROPRECON'),0,3);
	   $sDes_PreMei = SUBSTR(SQLVarConfig('DESCRI_PROPRECOM'),0,3);
	   $sDes_Pre001 = SUBSTR(SQLVarConfig('DESCRI_PROPRECO1'),0,3);
	   $sDes_Pre002 = SUBSTR(SQLVarConfig('DESCRI_PROPRECO2'),0,3);
	   $sDes_Pre003 = SUBSTR(SQLVarConfig('DESCRI_PROPRECO3'),0,3);
	   $sDes_Pre004 = SUBSTR(SQLVarConfig('DESCRI_PROPRECO4'),0,3);
	   //
	   $sDes_PreNorT = SQLVarConfig('DESCRI_PROPRECON');
	   $sDes_PreMeiT = SQLVarConfig('DESCRI_PROPRECOM');
	   $sDes_Pre001T = SQLVarConfig('DESCRI_PROPRECO1');
	   $sDes_Pre002T = SQLVarConfig('DESCRI_PROPRECO2');
	   $sDes_Pre003T = SQLVarConfig('DESCRI_PROPRECO3');
	   $sDes_Pre004T = SQLVarConfig('DESCRI_PROPRECO4');
       //
	   ForEach ( $aItens As $Row_FatIte ) {
	      $nIte_QtdPart = 0;
		  $sTamanho = "";
		  For ($nContador = 1; $nContador<=4; $nContador++) {
		      $nIte_Codigo = $Row_FatIte['FAT_CODITE'.$nContador];
			  If ($nIte_Codigo>0) { $nIte_QtdPart++; }
		  }
	      For ($nContador = 1; $nContador<=4; $nContador++) {
		      $nIte_Codigo = $Row_FatIte['FAT_CODITE'.$nContador];
			  $bAdicionarProd = ($nIte_Codigo>0);
			  //If ($bAdicionarProd && (! EMPTY($aListaGruposP) ) ) {
			  If ($bAdicionarProd ) {
			     $bAdicionarProd = ISSET($aListaGruposP[(@$aProdutos[$nIte_Codigo][1]+0)]);
			  }
			  If ($bAdicionarProd && ($aV_Sessao['Fil_Cod_Gru']+0)>0) {
			     $bAdicionarProd = ($aV_Sessao['Fil_Cod_Gru']+0) == (@$aProdutos[$nIte_Codigo][1]+0);
			  }
			  If ($bAdicionarProd && ($aV_Sessao['Fil_Cod_Pro']+0)>0) {
			     $bAdicionarProd = ($aV_Sessao['Fil_Cod_Pro']+0) == $nIte_Codigo;
			  }
			  If ($bAdicionarProd) {
		         // Vendas
                 $nQtd_Prod = ( $Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
			     $nValorIte = ( $Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
				 $aTotalProd[$nIte_Codigo] = (@$aTotalProd[$nIte_Codigo]) + $nValorIte;
				 $aT_QtdProd[$nIte_Codigo] = (@$aT_QtdProd[$nIte_Codigo]) + $nQtd_Prod;
				 $aPCodLivre[$nIte_Codigo] = @$aProdutos[$nIte_Codigo][2];
				 // Custo -- Cicero
//				 $nValorCusto = ( $Row_FatIte['FAT_TOTCUST']/$nIte_QtdPart )+0;
				 $nValorCusto                = ( $Row_FatIte['FAT_TOTCUST']*$nQtd_Prod )+0;				 
				 $aTotal_Custo[$nIte_Codigo] = (@$aTotal_Custo[$nIte_Codigo]) + $nValorCusto;
				 // Lucro
//				 $nValorLucro = (($Row_FatIte['FAT_PRE_TOT']-$Row_FatIte['FAT_TOTCUST'])/$nIte_QtdPart )+0;
				 $nValorLucro                = ( ($Row_FatIte['FAT_PRE_TOT']/$nQtd_Prod )-($Row_FatIte['FAT_TOTCUST']*$nQtd_Prod ))+0;				 
				 $aTotal_Lucro[$nIte_Codigo] = (@$aTotal_Lucro[$nIte_Codigo]) + $nValorLucro;
				 //
			     $nGru_Codigo = @$aProdutos[$nIte_Codigo][1];
				 // QUANDO FOR PIZZA MOSTRAR TAMANHOS DE ACORDO COM CONFIGURAÇÃO 
			     If ((@$aGrupos_ActSab[$nGru_Codigo]) || (@$aGrupos_ActMei[$nGru_Codigo]) ) {
				    If ($Row_FatIte['FAT_PRE_TIP'] == 'N') {
				       $aDes_Nor[$nIte_Codigo] = $sDes_PreNor;
				       @$aQtd_Nor[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
                       @$aTip_Loc[$nIte_Codigo] = $Row_FatIte['FAT_TIP_LOC']; 					   
		               If (@$aGrupos_ActSab[$nGru_Codigo])  { // Somente grupos Varios sabores totalizar no final   Mesas Grande 12 x 17,00 = 204,00 R$ Média 13 x 13,00 = 169,00 R$ Pequena 10 x 10 = 100,00 R$
						  If( $Row_FatIte['FAT_TIP_LOC'] == 0 ) { //mesa
                            @$aQtd_G_NM[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					        @$aVProd_NM[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						  }	ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 1) { //BALCAO
                            @$aQtd_G_NB[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					        @$aVProd_NB[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						  }	ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 2) { //DISK
                            @$aQtd_G_ND[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					        @$aVProd_ND[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						  }	ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 3) { //comanda
                            @$aQtd_G_NC[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					        @$aVProd_NC[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						  }						  
					   }
                       //
					} Else If ($Row_FatIte['FAT_PRE_TIP'] == 'M') {
					   $aDes_Mei[$nIte_Codigo] = $sDes_PreMei;
				       @$aQtd_Mei[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;	
				    } 
                 } Else {
				    If ($Row_FatIte['FAT_PRE_TIP'] == 'N') {
                       //
				       $aDes_Nor[$nIte_Codigo] = 'Normal';
				       @$aQtd_Nor[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
                       @$aTip_Loc[$nIte_Codigo] = $Row_FatIte['FAT_TIP_LOC'];
                       //
					   If( $Row_FatIte['FAT_TIP_LOC'] == 0 ) { //mesa
                         @$aQtd_G_IM[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_IM[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   }	ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 1) { //BALCAO
                         @$aQtd_G_IB[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_IB[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   }	ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 2) { //DISK
                         @$aQtd_G_ID[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_ID[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   }	ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 3) { //comanda
                         @$aQtd_G_IC[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_IC[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   }
                       //
                    }
                 }
				 //
				 If ($Row_FatIte['FAT_PRE_TIP'] == '1') {
					$aDes_001[$nIte_Codigo] = $sDes_Pre001;
				    @$aQtd_001[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
                    @$aTip_Loc[$nIte_Codigo] = $Row_FatIte['FAT_TIP_LOC']; 					
				    If (@$aGrupos_ActSab[$nGru_Codigo])  {
					   If( $Row_FatIte['FAT_TIP_LOC'] == 0 ) { //mesa
                         @$aQtd_G_1M[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_1M[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 1) { //BALCAO
                         @$aQtd_G_1B[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_1B[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 2) { //DISK
                         @$aQtd_G_1D[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_1D[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 3) { //comanda
                         @$aQtd_G_1C[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_1C[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					   }
					}
				 }
				 //
				 If ( $Row_FatIte['FAT_PRE_TIP'] == '2' ) {
					$aDes_002[$nIte_Codigo] = $sDes_Pre002;
					@$aQtd_002[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					@$aTip_Loc[$nIte_Codigo] = $Row_FatIte['FAT_TIP_LOC']; 
                    If (@$aGrupos_ActSab[$nGru_Codigo])  {
					
					   If( $Row_FatIte['FAT_TIP_LOC'] == 0 ) { //mesa
                         @$aQtd_G_2M[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_2M[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
				         
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 1) { //BALCAO
                         @$aQtd_G_2B[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_2B[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 2) { //DISK
                         @$aQtd_G_2D[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_2D[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					     
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 3) { //comanda
                         @$aQtd_G_2C[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_2C[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
					   }
					
					}
				 
				 } 
				 //
				 If ( $Row_FatIte['FAT_PRE_TIP'] == '3' ) {
					$aDes_003[$nIte_Codigo] = $sDes_Pre003;
					@$aQtd_003[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;	
				    @$aTip_Loc[$nIte_Codigo] = $Row_FatIte['FAT_TIP_LOC'];
					If (@$aGrupos_ActSab[$nGru_Codigo])  {
					   
					   If( $Row_FatIte['FAT_TIP_LOC'] == 0 ) { //mesa
                         @$aQtd_G_3M[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_3M[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
				         
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 1) { //BALCAO
                         @$aQtd_G_3B[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_3B[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 2) { //DISK
                         @$aQtd_G_3D[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_3D[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 3) { //comanda
                         @$aQtd_G_3C[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_3C[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
					   }
					
					}
				 }
				 //
				 If ( $Row_FatIte['FAT_PRE_TIP'] == '4' ) {
					$aDes_004[$nIte_Codigo] = $sDes_Pre004;
					@$aQtd_004[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;	
				    @$aTip_Loc[$nIte_Codigo] = $Row_FatIte['FAT_TIP_LOC']; 
					If (@$aGrupos_ActSab[$nGru_Codigo])  {
					   
					   If( $Row_FatIte['FAT_TIP_LOC'] == 0 ) { //mesa
                         @$aQtd_G_4M[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_4M[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
				       } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 1) { //BALCAO
                         @$aQtd_G_4B[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_4B[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
					     
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 2) { //DISK
                         @$aQtd_G_4D[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_4D[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
					   } ElseIf ($Row_FatIte['FAT_TIP_LOC'] == 3) { //comanda
                         @$aQtd_G_4C[$nIte_Codigo] += ($Row_FatIte['FAT_QTD_ITE']/$nIte_QtdPart )+0;
					     @$aVProd_4C[$nIte_Codigo] += ($Row_FatIte['FAT_PRE_TOT']/$nIte_QtdPart )+0;
						 
					   }
					
					
					}
				 
				 }
			  }
		  }
		  
	   }
	   //
	   If ($aV_Sessao['Fil_Vendido']==0) {
	      $aProdTemp    = $aTotalProd;
	      $aTotalProd   = ARRAY();
		  $aTotal_Custo = ARRAY();
		  $aTotal_Lucro = ARRAY();
	      $aT_QtdProd   = ARRAY();
		  
	      ForEach ( $aProdutos as $nIte_Codigo => $aProduto ) {
		    $nPro_Qtd = @$aProdTemp[$nIte_Codigo]+0;
		    If ( $nPro_Qtd==0 ) {
			   $aTotalProd[$nIte_Codigo]   = 0;
			   $aTotal_Custo[$nIte_Codigo] = 0;
			   $aTotal_Lucro[$nIte_Codigo] = 0;
			   $aT_QtdProd[$nIte_Codigo]   = 0;
			   //
			   
			}
		  }
	 
	   }
	   // Vendas
	   $aListaProd = ARRAY();
	   $nTotalVal = 0;
	   $nTotalQtd = 0;
	   $nTotalMed = 0;
	   $nPorcent_Q = 0;
	   $nPorcent_T = 0;
	   $nPrecoMed = 0;
	   //Custo
	   $nTotalCus  = 0;
	   $nTot_Q_Cus = 0;
	   //$nPor_Q_Cus = 0;
	   //$nPor_T_Cus = 0;
	   $nPre_M_Cus = 0;
	   //Lucro
	   $nTotalLuc  = 0;
	   $nTot_Q_Luc = 0;
	   $nTot_M_Luc = 0;
	   $nPor_Q_Luc = 0;
	   $nPor_T_Luc = 0;
	   $nPre_M_Luc = 0;
	   
//	   $nPor_Q_Ger = 0;
	   $nPor_T_Ger = 0;
	   //
       $nTQtd_G_IM = 0;
	   $nTVProd_IM = 0;
	   $nTQtd_G_NM = 0;
	   $nTVProd_NM = 0;
	   $nTQtd_G_1M = 0;
	   $nTVProd_1M = 0;
	   $nTQtd_G_2M = 0;
	   $nTVProd_2M = 0;
	   $nTQtd_G_3M = 0;
	   $nTVProd_3M = 0;
	   $nTQtd_G_4M = 0;
	   $nTVProd_4M = 0;
	   //
       $nTQtd_G_ID = 0;
	   $nTVProd_ID = 0;
	   $nTQtd_G_ND = 0;
	   $nTVProd_ND = 0;
	   $nTQtd_G_1D = 0;
	   $nTVProd_1D = 0;
	   $nTQtd_G_2D = 0;
	   $nTVProd_2D = 0;
	   $nTQtd_G_3D = 0;
	   $nTVProd_3D = 0;
	   $nTQtd_G_4D = 0;
	   $nTVProd_4D = 0;
	   //
       $nTQtd_G_IB = 0;
	   $nTVProd_IB = 0;
	   $nTQtd_G_NB = 0;
	   $nTVProd_NB = 0;
	   $nTQtd_G_1B = 0;
	   $nTVProd_1B = 0;
	   $nTQtd_G_2B = 0;
	   $nTVProd_2B = 0;
	   $nTQtd_G_3B = 0;
	   $nTVProd_3B = 0;
	   $nTQtd_G_4B = 0;
	   $nTVProd_4B = 0;
	   //
       $nTQtd_G_IC = 0;
	   $nTVProd_IC = 0;
	   $nTQtd_G_NC = 0;
	   $nTVProd_NC = 0;
	   $nTQtd_G_1C = 0;
	   $nTVProd_1C = 0;
	   $nTQtd_G_2C = 0;
	   $nTVProd_2C = 0;
	   $nTQtd_G_3C = 0;
	   $nTVProd_3C = 0;
	   $nTQtd_G_4C = 0;
	   $nTVProd_4C = 0;
	   //
	   $aOrg_Prodt = ARRAY();
	   // Ordem por quantidade
	   If ($aV_Sessao['Fil_Ordem_R']==0) {
	      // VENDAS
		  $aOrg_Prodt = $aT_QtdProd;
		  ARSORT($aOrg_Prodt);    // Ordem decrescente pelo conteudo
	   //
	   // Ordem por valor
	   } ElseIf ($aV_Sessao['Fil_Ordem_R']==1) {
		  $aOrg_Prodt = $aTotalProd;
	      //ASORT($aTotalProd);     // Ordem crescente pelo conteudo
	      ARSORT($aOrg_Prodt);    // Ordem decrescente pelo conteudo
	   //
	   // Ordem por descrição
	   } ElseIf ($aV_Sessao['Fil_Ordem_R']==2) {
		 $aOrg_Prodt = $aProdutos;
		 //
	   //
	   // Ordem por código livre do produto
	   } ElseIf ($aV_Sessao['Fil_Ordem_R']==3) {
		 $aOrg_Prodt = $aPCodLivre;
	     ASORT($aOrg_Prodt);     // Ordem crescente pelo conteudo
		 //
       }
	   // **
	   ForEach ( $aOrg_Prodt as $nIte_Codigo => $vTemporario ) {
	      $aProdutoExb = ARRAY(
		     0=>$nIte_Codigo,
		 	 1=>@$aT_QtdProd[$nIte_Codigo],
		 	 2=>@$aTotalProd[$nIte_Codigo],
             3=>@$aTotal_Custo[$nIte_Codigo],
             4=>@$aTotalProd[$nIte_Codigo] - @$aTotal_Custo[$nIte_Codigo],			 
             5=>@$aDes_Nor[$nIte_Codigo],
             6=>@$aQtd_Nor[$nIte_Codigo],
             7=>@$aDes_Mei[$nIte_Codigo],
             8=>@$aQtd_Mei[$nIte_Codigo],
             9=>@$aDes_001[$nIte_Codigo],
             10=>@$aQtd_001[$nIte_Codigo],
             11=>@$aDes_002[$nIte_Codigo],
             12=>@$aQtd_002[$nIte_Codigo],
             13=>@$aDes_003[$nIte_Codigo],
             14=>@$aQtd_003[$nIte_Codigo],
             15=>@$aDes_004[$nIte_Codigo],
             16=>@$aQtd_004[$nIte_Codigo],
             //Mesa
             17=>@$aQtd_G_NM[$nIte_Codigo],
             18=>@$aVProd_NM[$nIte_Codigo],
             19=>@$aQtd_G_1M[$nIte_Codigo],
             20=>@$aVProd_1M[$nIte_Codigo],
             21=>@$aQtd_G_2M[$nIte_Codigo],
             22=>@$aVProd_2M[$nIte_Codigo],
             23=>@$aQtd_G_3M[$nIte_Codigo],
             24=>@$aVProd_3M[$nIte_Codigo],
             25=>@$aQtd_G_4M[$nIte_Codigo],
             26=>@$aVProd_4M[$nIte_Codigo],
             //disk  FAT_TIP_LOC = 2 
             27=>@$aQtd_G_ND[$nIte_Codigo],
             28=>@$aVProd_ND[$nIte_Codigo],
             29=>@$aQtd_G_1D[$nIte_Codigo],
             30=>@$aVProd_1D[$nIte_Codigo],
             31=>@$aQtd_G_2D[$nIte_Codigo],
             32=>@$aVProd_2D[$nIte_Codigo],
             33=>@$aQtd_G_3D[$nIte_Codigo],
             34=>@$aVProd_3D[$nIte_Codigo],
             35=>@$aQtd_G_4D[$nIte_Codigo],
             36=>@$aVProd_4D[$nIte_Codigo],
             //balcao FAT_TIP_LOC = 1
             37=>@$aQtd_G_NB[$nIte_Codigo],
             38=>@$aVProd_NB[$nIte_Codigo],
             39=>@$aQtd_G_1B[$nIte_Codigo],
             40=>@$aVProd_1B[$nIte_Codigo],
             41=>@$aQtd_G_2B[$nIte_Codigo],
             42=>@$aVProd_2B[$nIte_Codigo],
             43=>@$aQtd_G_3B[$nIte_Codigo],
             44=>@$aVProd_3B[$nIte_Codigo],
             45=>@$aQtd_G_4B[$nIte_Codigo],
             46=>@$aVProd_4B[$nIte_Codigo],
             //comanda
             47=>@$aQtd_G_NC[$nIte_Codigo],
             48=>@$aVProd_NC[$nIte_Codigo],
             49=>@$aQtd_G_1C[$nIte_Codigo],
             50=>@$aVProd_1C[$nIte_Codigo],
             51=>@$aQtd_G_2C[$nIte_Codigo],
             52=>@$aVProd_2C[$nIte_Codigo],
             53=>@$aQtd_G_3C[$nIte_Codigo],
             54=>@$aVProd_3C[$nIte_Codigo],
             55=>@$aQtd_G_4C[$nIte_Codigo],
             56=>@$aVProd_4C[$nIte_Codigo],
             57=>@$aTip_Loc[$nIte_Codigo]   //GRAVADO O TIPO do local (0=Mesa, 1=Balcao, 2=Entrega, 3=Comanda)
		  );
	      $aListaProd[] = $aProdutoExb;
		  $nTotalQtd += $aProdutoExb[1];
		  $nTotalVal += $aProdutoExb[2];
		  // Custo
		  $nTot_Q_Cus += $aProdutoExb[1];
		  $nTotalCus  += $aProdutoExb[3];
		  // Lucro
		  $nTot_Q_Luc += $aProdutoExb[1];
		  $nTotalLuc  += $aProdutoExb[4];
		    //
          $nTQtd_G_IM  += @$aQtd_G_IM[$nIte_Codigo];
     	  $nTVProd_IM  += @$aVProd_IM[$nIte_Codigo];
          $nTQtd_G_NM  += $aProdutoExb[17];
		  $nTVProd_NM  += $aProdutoExb[18];
		  $nTQtd_G_1M  += $aProdutoExb[19];
		  $nTVProd_1M  += $aProdutoExb[20];
		  $nTQtd_G_2M  += $aProdutoExb[21];
		  $nTVProd_2M  += $aProdutoExb[22];
		  $nTQtd_G_3M  += $aProdutoExb[23];
		  $nTVProd_3M  += $aProdutoExb[24];
		  $nTQtd_G_4M  += $aProdutoExb[25];
		  $nTVProd_4M  += $aProdutoExb[26];			 
	      // FAT_TIP_LOC = 2
          $nTQtd_G_ID  += @$aQtd_G_ID[$nIte_Codigo];
          $nTVProd_ID  += @$aVProd_ID[$nIte_Codigo];
		  $nTQtd_G_ND  += $aProdutoExb[27];
		  $nTVProd_ND  += $aProdutoExb[28];
		  $nTQtd_G_1D  += $aProdutoExb[29];
		  $nTVProd_1D  += $aProdutoExb[30];
		  $nTQtd_G_2D  += $aProdutoExb[31];
		  $nTVProd_2D  += $aProdutoExb[32];
		  $nTQtd_G_3D  += $aProdutoExb[33];
		  $nTVProd_3D  += $aProdutoExb[34];
		  $nTQtd_G_4D  += $aProdutoExb[35];
		  $nTVProd_4D  += $aProdutoExb[36];			 
	      // FAT_TIP_LOC = 1
          $nTQtd_G_IB  += @$aQtd_G_IB[$nIte_Codigo];
          $nTVProd_IB  += @$aVProd_IB[$nIte_Codigo];
		  $nTQtd_G_NB  += $aProdutoExb[37];
		  $nTVProd_NB  += $aProdutoExb[38];
		  $nTQtd_G_1B  += $aProdutoExb[39];
		  $nTVProd_1B  += $aProdutoExb[40];
		  $nTQtd_G_2B  += $aProdutoExb[41];
		  $nTVProd_2B  += $aProdutoExb[42];
		  $nTQtd_G_3B  += $aProdutoExb[43];
		  $nTVProd_3B  += $aProdutoExb[44];
		  $nTQtd_G_4B  += $aProdutoExb[45];
		  $nTVProd_4B  += $aProdutoExb[46];			 
	       //
          $nTQtd_G_IC  += @$aQtd_G_IC[$nIte_Codigo];
          $nTVProd_IC  += @$aVProd_IC[$nIte_Codigo];
		  $nTQtd_G_NC  += $aProdutoExb[47];
		  $nTVProd_NC  += $aProdutoExb[48];
		  $nTQtd_G_1C  += $aProdutoExb[49];
		  $nTVProd_1C  += $aProdutoExb[50];
		  $nTQtd_G_2C  += $aProdutoExb[51];
		  $nTVProd_2C  += $aProdutoExb[52];
		  $nTQtd_G_3C  += $aProdutoExb[53];
		  $nTVProd_3C  += $aProdutoExb[54];
		  $nTQtd_G_4C  += $aProdutoExb[55];
		  $nTVProd_4C  += $aProdutoExb[56];	
           //
          
	   }
	   UNSET( $aOrg_Prodt );
	   // **
	   //
	   // Resumo por produto
	   If ($aV_Sessao['Fil_ResmPor']==0) {
	       //
           $sTxt_Rel .=
		       AlinhaStr('** RESUMO POR PRODUTO **',1).
               $sPulaLinha.
			   '';
		   //
		   $n_Reg_Qtd = 0;
	       If ( COUNT(@$aProdutoExb)>0 ) {
		      ARSORT($aProdutoExb);
		   }
		   $aRel_RP_01 = ARRAY();
		   ForEach ( $aListaProd as $aProdutoExb ) {
		      //
			  // Cícero - 10/10/17 Coloquei esse IF abaixo pegando TUDO da impressão, porque estava imprimindo produtos MESMO sem Vendas
			  //
		      If ($aProdutoExb[1]>0  or $aV_Sessao['Fil_Vendido']==0) {
                 If ($aProdutoExb[1]>0) {			  
					 // Vendas
					 $nPorcent_Q = ($aProdutoExb[1] / $nTotalQtd)*100;
					 $nPorcent_T = ($aProdutoExb[2] / $nTotalVal)*100;
					 $nPrecoMed = $aProdutoExb[2]/$aProdutoExb[1];
					 $nTotalMed += $nPrecoMed;
					 // Custo
					 $nPre_M_Cus = $aProdutoExb[3]/$aProdutoExb[1];
					 // Lucro
					 $nPor_Q_Luc = ($aProdutoExb[1] / ($nTot_Q_Luc==0 ? 1: $nTot_Q_Luc ) )*100;
					 $nPor_T_Luc = (($aProdutoExb[2] - $aProdutoExb[3])*100);
					 If ($nPor_T_Luc> 0) {
						$nPor_T_Luc = ($nPor_T_Luc / $aProdutoExb[2] );
					 }		  
				   }
			  
				  //
				  // Nome dos Tamnhos ( EX: Peq Grande Média Gigante )
				  //
				  $sImp_Linha_1 =  AlinhaStr(        ( STRLEN(RTRIM(@$aProdutoExb[ 5])) > 0 ? AlinhaStr( @$aProdutoExb[ 5],2,9 ).' ' : '' ).
													 ( STRLEN(RTRIM(@$aProdutoExb[ 7])) > 0 ? AlinhaStr( @$aProdutoExb[ 7],2,9 ).' ' : '' ).
													 ( STRLEN(RTRIM(@$aProdutoExb[ 9])) > 0 ? AlinhaStr( @$aProdutoExb[ 9],2,9 ).' ' : '' ).
													 ( STRLEN(RTRIM(@$aProdutoExb[11])) > 0 ? AlinhaStr( @$aProdutoExb[11],2,9 ).' ' : '' ).
													 ( STRLEN(RTRIM(@$aProdutoExb[13])) > 0 ? AlinhaStr( @$aProdutoExb[13],2,9 ).' ' : '' ).
													 ( STRLEN(RTRIM(@$aProdutoExb[15])) > 0 ? AlinhaStr( @$aProdutoExb[15],2,9 ).' ' : '' ), 0 ).
								   $sPulaLinha;
								   
				  //
				  // 80 Colunas
				  //
				  // Quantidade Vendida dos SABORES
				  //
				  $sImp_Linha_2 =  ( $aV_Sessao['Fil_Opcao_C']==1 ?
									  AlinhaStr(       (@$aProdutoExb[6]> 0  ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[ 6],3),3,',','') ,2,9 ).' ' :  '').
													   (@$aProdutoExb[8]> 0  ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[ 8],3),3,',','') ,2,9 ).' ' :  '').
													   (@$aProdutoExb[10]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[10],3),3,',','') ,2,9 ).' ' :  '').
													   (@$aProdutoExb[12]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[12],3),3,',','') ,2,9 ).' ' :  '').
													   (@$aProdutoExb[14]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[14],3),3,',','') ,2,9 ).' ' :  '').
													   (@$aProdutoExb[16]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[16],3),3,',','') ,2,9 ).' ' :  ''),0,80 )
				  //
				  // 80 Colunas
				  //
				  // Quantidade Vendida dos SABORES
				  //			  
								   :
									  (@$aProdutoExb[6]> 0  ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[ 6],3),3,',','') ,2,9 ).' ' :  '').
									  (@$aProdutoExb[8]> 0  ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[ 8],3),3,',','') ,2,9 ).' ' :  '').
									  (@$aProdutoExb[10]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[10],3),3,',','') ,2,9 ).' ' :  '').
									  (@$aProdutoExb[12]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[12],3),3,',','') ,2,9 ).' ' :  '').
									  (@$aProdutoExb[14]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[14],3),3,',','') ,2,9 ).' ' :  '').
									  (@$aProdutoExb[16]> 0 ? AlinhaStr( NUMBER_FORMAT( ROUND(@$aProdutoExb[16],3),3,',','') ,2,9 ).' ' :  '')
								   ).
								   $sPulaLinha.
								   '';
				  
				  
				  
					
				  
				  //
				  // Imprime a Linha com o Nome do Produto
				  //
				  $sTxt_Rel .= $sPulaLinha.
							   AlinhaStr( @$aProdutos[$aProdutoExb[0]][2].' - '.@$aProdutos[$aProdutoExb[0]][0] ,0 ).
					 ( $aV_Sessao['Fil_Opcao_C']==1 ?  
						( $aV_Sessao['Fil_Vendido']==0 ?
						   $sPulaLinha
						:
						   ''
						)
					 :
					  ''
					 ).
					 //
					 // Imprime o nome dos Tamanhos de Pizzas
					 //
					 $sPulaLinha.
					 ( STRLEN(RTRIM($sImp_Linha_1)) > 0 ? $sImp_Linha_1 : "" ).
					 //
					 // Imprime a QTDE dos Tamanhos de Pizzas
					 //
					 ( STRLEN(RTRIM($sImp_Linha_2)) > 0 ? 
						$sImp_Linha_2
					  : 
						'' //$sPulaLinha
					 ).
					  //
					  // Imprime a Linha ( Qtde - Unitario - Total ) do produto
					  //
					 ( $aProdutoExb[1]>0 ?
					   //
					   // 80 Colunas
					   //
					   ( $aV_Sessao['Fil_Opcao_C']==1 ?  
						  //$sPulaLinha.
						  AlinhaStr( 
							 AlinhaStr( NUMBER_FORMAT( ROUND($aProdutoExb[1],3),3,',','') ,2,9 ).
							 ' x'.AlinhaStr( FormatoMoeda($nPrecoMed),2,8 ).
							 '   ='.AlinhaStr( FormatoMoeda( ROUND($aProdutoExb[2],2) ) ,2,8 ).
							 ( $aV_Sessao['Fil_Ordem_R']==0 ?
								AlinhaStr( NUMBER_FORMAT($nPorcent_Q,2,',','').'%', 2, 9 )
							 : '').
							 ( $aV_Sessao['Fil_Ordem_R']==1 ?
								AlinhaStr( NUMBER_FORMAT($nPorcent_T,2,',','').'%', 2, 9 )
							 : '').
							 ( $aV_Sessao['Fil_Ordem_R']==2 ?
								AlinhaStr( NUMBER_FORMAT($nPorcent_Q,2,',','').'%', 2, 9 )
							 : ''), 2,80)
					 
					   //
					   // 40 Colunas
					   //
					   :
						  AlinhaStr( NUMBER_FORMAT( ROUND($aProdutoExb[1],3),3,',','') ,2,9 ).
						  ' x'.AlinhaStr( FormatoMoeda($nPrecoMed),2,8 ).
						  '   ='.AlinhaStr( FormatoMoeda( ROUND($aProdutoExb[2],2) ) ,2,8 ).
						 ( $aV_Sessao['Fil_Ordem_R']==0 ?
							AlinhaStr( NUMBER_FORMAT($nPorcent_Q,2,',','').'%', 2, 9 )
						 : '').
						 ( $aV_Sessao['Fil_Ordem_R']==1 ?
							AlinhaStr( NUMBER_FORMAT($nPorcent_T,2,',','').'%', 2, 9 )
						 : '').
						 ( $aV_Sessao['Fil_Ordem_R']==2 ?
							AlinhaStr( NUMBER_FORMAT($nPorcent_Q,2,',','').'%', 2, 9 )
						 : '')
					 
					   ).
					   $sPulaLinha
					 
					 : 
					   '' 
					 ).
					 '';
				  
				   
				  
				  
				  //
				  // Custo
				  //
				  If ( $aV_Sessao['Fil_Opcao_R']==1) { 
					 //Custo
					 $sTxt_Rel .=
					   ( $aProdutoExb[1]>0 ?
						  //
						  // 80 Colunas
						  //
						  ( $aV_Sessao['Fil_Opcao_C']==1 ?
							 AlinhaStr( 
								AlinhaStr( 'Cust.Med: ',2,11).
								AlinhaStr(FormatoMoeda($nPre_M_Cus),2,8 ).'   ='.
								AlinhaStr( FormatoMoeda( ROUND($aProdutoExb[3],2) ) ,2,8 ).
								AlinhaStr( ' T.Custo',2,9), 2,80)
						  //
						  // 40 Colunas
						  //					  
						  :
							 AlinhaStr( 'Cust.Med: ',2,11).
							 AlinhaStr(FormatoMoeda($nPre_M_Cus),2,8 ).'   ='.
							 AlinhaStr( FormatoMoeda( ROUND($aProdutoExb[3],2) ) ,2,8 ).
							 AlinhaStr( ' T.Custo',2,9)
						  ).
						  $sPulaLinha
					   : 
						  '' 
					   ).
					   '';

					
					 //
					 // Imprime - Lucro
					 //
					 $sTxt_Rel .=
					   //AlinhaStr( @$aProdutos[$aProdutoExb[0]][2].' - '.@$aProdutos[$aProdutoExb[0]][0] ,0 ).
					   //$sPulaLinha.
					   ( $aProdutoExb[1]>0 ?
						  //
						  // 80 Colunas
						  //
						  ( $aV_Sessao['Fil_Opcao_C']==1 ?
						  AlinhaStr( 
							 AlinhaStr('  % Lucro: ',0,10).
							 AlinhaStr( ( $nPor_T_Luc > 0 ? NUMBER_FORMAT( $nPor_T_Luc ,2,',','').'%': ""), 2, 10 ).
							 '  ='.						 
							 AlinhaStr( FormatoMoeda( ROUND($aProdutoExb[4],2) ) ,2,8 ).'  T.Lucro',2,80)
						  //
						  // 40 Colunas
						  //
						  :
							 AlinhaStr('  % Lucro: ',0,10).
							 AlinhaStr( ( $nPor_T_Luc > 0 ? NUMBER_FORMAT( $nPor_T_Luc ,2,',','').'%': ""), 2, 10 ).
							 '  = '.
							 AlinhaStr( FormatoMoeda( ROUND($aProdutoExb[4],2) ) ,2,7 ).'  T.Lucro'
						  ).
						  $sPulaLinha
					   : 
						  '' 
					   ).
					   '';
				  }
				  
			  
				  ARRAY_PUSH( $aRel_RP_01,
						@$aProdutos[$aProdutoExb[0]][2].' - '.@$aProdutos[$aProdutoExb[0]][0], 
						( $aV_Sessao['Fil_Vendido']==0 ? "PULAR_LINHA" : "" ),
						( STRLEN(RTRIM($sImp_Linha_1)) > 0 ? $sImp_Linha_1 : "" ),
						( STRLEN(RTRIM($sImp_Linha_2)) > 0 ?  $sImp_Linha_2 :  "" ),
						( $aProdutoExb[1]>0 ? "PULAR_COLUNA" : "" ),
						( $aProdutoExb[1]>0 ? NUMBER_FORMAT( ROUND($aProdutoExb[1],3),3,',','') : "" ),
						( $aProdutoExb[1]>0 ? FormatoMoeda($nPrecoMed) : "" ),
						( $aProdutoExb[1]>0 ? FormatoMoeda( ROUND($aProdutoExb[2],2) ) : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Ordem_R']==0 ? NUMBER_FORMAT($nPorcent_Q,2,',','').'%' : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Ordem_R']==1 ? NUMBER_FORMAT($nPorcent_T,2,',','').'%' : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Ordem_R']==2 ? NUMBER_FORMAT($nPorcent_Q,2,',','').'%' : "" ),
						( $aProdutoExb[1]>0 ? "PULAR_LINHA" : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda($nPre_M_Cus) : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda( ROUND($aProdutoExb[3],2) ) : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda( ROUND($aProdutoExb[4],2) ) : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 && $aV_Sessao['Fil_Ordem_R']==1 ? ( $nPor_T_Luc > 0 ? NUMBER_FORMAT( $nPor_T_Luc ,2,',','').'%': "") : '' ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 && $aV_Sessao['Fil_Ordem_R']==0 ? NUMBER_FORMAT($nPor_Q_Luc,2,',','').'%' : "" ),
						( $aProdutoExb[1]>0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )
				 );
				  
				 $n_Reg_Qtd++;
			  
			  } // Fim do IF se tem QTDE > 0
	       }
	   	   
	   //
	   // Resumo por Grupo ou Grupo + Produto
	   } ElseIf ($aV_Sessao['Fil_ResmPor']==1 Or $aV_Sessao['Fil_ResmPor']==2) {
	       $aGrupoOrg = ARRAY();
	       $aGrupoPrd = ARRAY();
		   $aGrupoTot = ARRAY();
		   $aGrupoCus = ARRAY();
		   $aGrupoLuc = ARRAY();
		   //
		   $aGrupoNor = ARRAY();
		   $aGrupoMei = ARRAY();
		   $aGrupo001 = ARRAY();
		   $aGrupo002 = ARRAY();
		   $aGrupo003 = ARRAY();
		   $aGrupo004 = ARRAY();
		   //mesa
	       $aQtd_G_NM = ARRAY();
	       $aVProd_NM = ARRAY();
	       $aQtd_G_1M = ARRAY();
	       $aVProd_1M = ARRAY();
	       $aQtd_G_2M = ARRAY();
	       $aVProd_2M = ARRAY();
	       $aQtd_G_3M = ARRAY();
	       $aVProd_3M = ARRAY();
	       $aQtd_G_4M = ARRAY();
	       $aVProd_4M = ARRAY();
	       //disk
	       $aQtd_G_ND = ARRAY();
	       $aVProd_ND = ARRAY();
	       $aQtd_G_1D = ARRAY();
	       $aVProd_1D = ARRAY();
	       $aQtd_G_2D = ARRAY();
	       $aVProd_2D = ARRAY();
	       $aQtd_G_3D = ARRAY();
	       $aVProd_3D = ARRAY();
	       $aQtd_G_4D = ARRAY();
	       $aVProd_4D = ARRAY();
	       //balcao
	       $aQtd_G_NB = ARRAY();
	       $aVProd_NB = ARRAY();
	       $aQtd_G_1B = ARRAY();
	       $aVProd_1B = ARRAY();
	       $aQtd_G_2B = ARRAY();
	       $aVProd_2B = ARRAY();
	       $aQtd_G_3B = ARRAY();
	       $aVProd_3B = ARRAY();
	       $aQtd_G_4B = ARRAY();
	       $aVProd_4B = ARRAY();
	       //comanda
	       $aQtd_G_NC = ARRAY();
	       $aVProd_NC = ARRAY();
	       $aQtd_G_1C = ARRAY();
	       $aVProd_1C = ARRAY();
	       $aQtd_G_2C = ARRAY();
	       $aVProd_2C = ARRAY();
	       $aQtd_G_3C = ARRAY();
	       $aVProd_3C = ARRAY();
	       $aQtd_G_4C = ARRAY();
	       $aVProd_4C = ARRAY();
		   //
		   //
	       // Ordem por quantidade
	       If ($aV_Sessao['Fil_Ordem_R']==0) {
		      //
	          ForEach ( $aGrupos as $nGru_Codigo => $sGru_Descri ) {
	              $sTam_Nor = '';
			      $sTam_Mei = '';
			      $sTam_001 = '';
				  $sTam_002 = '';
			      $sTam_003 = '';
			      $sTam_004 = '';
			      //
				  ForEach ( $aListaProd As $aProdutoExb ) {
				      If ($nGru_Codigo==@$aProdutos[$aProdutoExb[0]][1]) {
			             $aGrupoOrg[$nGru_Codigo] = @$aGrupoOrg[$nGru_Codigo]+$aProdutoExb[1];
						 $aGrupoPrd[$nGru_Codigo][$aProdutoExb[0]] = $aProdutoExb;
					     $aGrupoTot[$nGru_Codigo][0] = @$aGrupoTot[$nGru_Codigo][0]+$aProdutoExb[2];  // Valor
					     $aGrupoTot[$nGru_Codigo][1] = @$aGrupoTot[$nGru_Codigo][1]+$aProdutoExb[1];  // Quantidade
					     //Custo
						 $aGrupoCus[$nGru_Codigo][0] = @$aGrupoCus[$nGru_Codigo][0]+$aProdutoExb[3];  // Valor do Custo
	                     //Lucro
						 $aGrupoLuc[$nGru_Codigo][0] = @$aGrupoLuc[$nGru_Codigo][0]+$aProdutoExb[4];  // Valor do Lucro 				  
					     //
						 If ( @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[6]>0 ) { // Se existir qtde imprime a Descrição
						    If ( @$aProdutoExb[5]<>$sTam_Nor ){ 
						 	   $sTam_Nor = @$aProdutoExb[5];
						 	   $aGrupoNor[$nGru_Codigo][0] = $sDes_PreNor;  //Desc
						 	}
						 }
						 If ( @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[6]>0 ) {
						    @$aGrupoNor[$nGru_Codigo][1] = @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[6];  //qtde
						    //
							If (@$aGrupos_ActSab[$nGru_Codigo]) { 
							   If (@$aProdutoExb[57]==0) { //mesa
							      @$aQtd_G_NM[$nGru_Codigo][1] += @$aQtd_G_NM[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_NM[$nGru_Codigo][1] += @$aVProd_NM[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
							      
							   } ElseIf (@$aProdutoExb[57]==1) { //@$aVProd_NM[$nGru_Codigo][1]BALCAO
                                  @$aQtd_G_NB[$nGru_Codigo][1] += @$aQtd_G_NB[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_NB[$nGru_Codigo][1] += @$aVProd_NB[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_ND[$nGru_Codigo][1] += @$aQtd_G_ND[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_ND[$nGru_Codigo][1] += @$aVProd_ND[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_NC[$nGru_Codigo][1] += @$aQtd_G_NC[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_NC[$nGru_Codigo][1] += @$aVProd_NC[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Gera
						       }						  
							}
						 }
						 //
                         If ( @$aGrupoMei[$nGru_Codigo][1]+$aProdutoExb[8]>0 ) {
						    If ( @$aProdutoExb[7]<>$sTam_Mei ){ 
						       $sTam_Mei = @$aProdutoExb[7];
						       $aGrupoMei[$nGru_Codigo][0] = $sDes_PreMei; //desc
						    }
						 }
						 If ( @$aGrupoMei[$nGru_Codigo][1]+$aProdutoExb[8]>0 ) {
						    @$aGrupoMei[$nGru_Codigo][1] = @$aGrupoMei[$nGru_Codigo][1]+$aProdutoExb[8]; //qtde
						 }
						 //
						 If ( @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[10]>0 ) {
						    If ( @$aProdutoExb[9]<>$sTam_001){ 
						   	   $sTam_001 = @$aProdutoExb[9];
						       $aGrupo001[$nGru_Codigo][0] = $sDes_Pre001; //desc
					        }
						 }
						 If ( @$aGrupo001[$nGru_Codigo][1]+$aProdutoExb[10]>0 ) {
						    @$aGrupo001[$nGru_Codigo][1] = @$aGrupo001[$nGru_Codigo][1]+$aProdutoExb[10]; //qtde
						    //
							If (@$aGrupos_ActSab[$nGru_Codigo]) { 
							   If (@$aProdutoExb[57]==0) { //mesa
							      @$aQtd_G_1M[$nGru_Codigo][1] += @$aQtd_G_1M[$nGru_Codigo][1]+$aProdutoExb[10];  //qtde Geral
						          @$aVProd_1M[$nGru_Codigo][1] += @$aVProd_1M[$nGru_Codigo][1]+$aProdutoExb[2];   //Valor Geral
							      
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_1B[$nGru_Codigo][1] += @$aQtd_G_1B[$nGru_Codigo][1]+$aProdutoExb[10];  //Qtde Geral
						          @$aVProd_1B[$nGru_Codigo][1] += @$aVProd_1B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_1D[$nGru_Codigo][1] += @$aQtd_G_1D[$nGru_Codigo][1]+$aProdutoExb[10];  // Qtde Geral
						          @$aVProd_1D[$nGru_Codigo][1] += @$aVProd_1D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_1C[$nGru_Codigo][1] += @$aQtd_G_1C[$nGru_Codigo][1]+$aProdutoExb[10];  // Qtde Geral
						          @$aVProd_1C[$nGru_Codigo][1] += @$aVProd_1C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       }
							}
						 }
						 //
						 If ( @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[12]>0 ) {
						    If ( @$aProdutoExb[11]<>$sTam_002 ){
                               $sTam_002 = @$aProdutoExb[11];							 
						       $aGrupo002[$nGru_Codigo][0] = $sDes_Pre002; //desc
						    }
						 }
						 //
						 If ( @$aGrupo002[$nGru_Codigo][1]+$aProdutoExb[12]>0 ) {
						    @$aGrupo002[$nGru_Codigo][1] = @$aGrupo002[$nGru_Codigo][1]+$aProdutoExb[12]; //qtde
						    //
							If (@$aGrupos_ActSab[$nGru_Codigo]) {
                               If (@$aProdutoExb[57]==0) { //mesa								
							      @$aQtd_G_2M[$nGru_Codigo][1] += @$aQtd_G_2M[$nGru_Codigo][1]+$aProdutoExb[12];  // Qtde Geral
						          @$aVProd_2M[$nGru_Codigo][1] += @$aVProd_2M[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
							      //
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_2B[$nGru_Codigo][1] += @$aQtd_G_2B[$nGru_Codigo][1]+$aProdutoExb[12];  // Qtde Geral
						          @$aVProd_2B[$nGru_Codigo][1] += @$aVProd_2B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  //
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_2D[$nGru_Codigo][1] += @$aQtd_G_2D[$nGru_Codigo][1]+$aProdutoExb[12];  // Qtde Geral
						          @$aVProd_2D[$nGru_Codigo][1] += @$aVProd_2D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  //
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_2C[$nGru_Codigo][1] += @$aQtd_G_2C[$nGru_Codigo][1]+$aProdutoExb[12];  // Qtde Geral
						          @$aVProd_2C[$nGru_Codigo][1] += @$aVProd_2C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  //
						       }
							}
						 }
						 //
						 If ( @$aGrupo003[$nGru_Codigo][1]+$aProdutoExb[14]>0 ) { 
						    If ( @$aProdutoExb[13]<>$sTam_003 ){
                               $sTam_003 = @$aProdutoExb[13];							 
						       $aGrupo003[$nGru_Codigo][0] = $sDes_Pre003; //desc
						    }
						 }
						 If ( @$aGrupo003[$nGru_Codigo][1]+$aProdutoExb[14]>0 ) { 
						    @$aGrupo003[$nGru_Codigo][1] = @$aGrupo003[$nGru_Codigo][1]+$aProdutoExb[14]; //qtde
					        //
							If (@$aGrupos_ActSab[$nGru_Codigo]) { 
							   If (@$aProdutoExb[57]==0) { //mesa								
								  @$aQtd_G_3M[$nGru_Codigo][1] += @$aQtd_G_3M[$nGru_Codigo][1]+$aProdutoExb[14];  //qtde Geral
						          @$aVProd_3M[$nGru_Codigo][1] += @$aVProd_3M[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  //
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_3B[$nGru_Codigo][1] += @$aQtd_G_3B[$nGru_Codigo][1]+$aProdutoExb[14];  //Qtde Geral
						          @$aVProd_3B[$nGru_Codigo][1] += @$aVProd_3B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  //
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_3D[$nGru_Codigo][1] += @$aQtd_G_3D[$nGru_Codigo][1]+$aProdutoExb[14];  // Qtde Geral
						          @$aVProd_3D[$nGru_Codigo][1] += @$aVProd_3D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  //
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_3C[$nGru_Codigo][1] += @$aQtd_G_3C[$nGru_Codigo][1]+$aProdutoExb[14];  // Qtde Geral
						          @$aVProd_3C[$nGru_Codigo][1] += @$aVProd_3C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  //
						       }				 
						    }
						 }
						 //
						 If ( @$aGrupo004[$nGru_Codigo][1]+$aProdutoExb[16]>0 ) {
						    If ( @$aProdutoExb[15]<>$sTam_004 ){
                               $sTam_004 = @$aProdutoExb[15];							 
						       $aGrupo004[$nGru_Codigo][0] = $sDes_Pre004; //desc
						    }
						 }
						 If ( @$aGrupo004[$nGru_Codigo][1]+$aProdutoExb[16]>0 ) {
							@$aGrupo004[$nGru_Codigo][1] = @$aGrupo004[$nGru_Codigo][1]+$aProdutoExb[16]; //qtde
							//
							If (@$aGrupos_ActSab[$nGru_Codigo]) { 
						       If (@$aProdutoExb[57]==0) { //mesa								
								  @$aQtd_G_4M[$nGru_Codigo][1] += @$aQtd_G_4M[$nGru_Codigo][1]+$aProdutoExb[16];  //qtde Geral
						          @$aVProd_4M[$nGru_Codigo][1] += @$aVProd_4M[$nGru_Codigo][1]+$aProdutoExb[2];   //Valor Geral
								  
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_4B[$nGru_Codigo][1] += @$aQtd_G_4B[$nGru_Codigo][1]+$aProdutoExb[16];  //Qtde Geral
						          @$aVProd_4B[$nGru_Codigo][1] += @$aVProd_4B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_4D[$nGru_Codigo][1] += @$aQtd_G_4D[$nGru_Codigo][1]+$aProdutoExb[16];  // Qtde Geral
						          @$aVProd_4D[$nGru_Codigo][1] += @$aVProd_4D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_4C[$nGru_Codigo][1] += @$aQtd_G_4C[$nGru_Codigo][1]+$aProdutoExb[16];  // Qtde Geral
						          @$aVProd_4C[$nGru_Codigo][1] += @$aVProd_4C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       }
						    }
						 }
					  }
		          }
              }
		   //
	       //
	       // Ordem por valor
	       } ElseIf ($aV_Sessao['Fil_Ordem_R']==1 OR $aV_Sessao['Fil_Ordem_R']==2) {
	          ForEach ( $aGrupos as $nGru_Codigo => $sGru_Descri ) {
	              $sTam_Nor = '';
			      $sTam_Mei = '';
			      $sTam_001 = '';
				  $sTam_002 = '';
			      $sTam_003 = '';
			      $sTam_004 = '';
				  //
				  ForEach ( $aListaProd as $aProdutoExb ) {
				      If ($nGru_Codigo==@$aProdutos[$aProdutoExb[0]][1]) {
						 If ( $aV_Sessao['Fil_Vendido'] ) {
						    If ( $aProdutoExb[1] <= 0 ) { CONTINUE; }
					     }
			             $aGrupoOrg[$nGru_Codigo]    = @$aGrupoOrg[$nGru_Codigo]+$aProdutoExb[2];
						 $aGrupoPrd[$nGru_Codigo][$aProdutoExb[0]] = $aProdutoExb;
					     $aGrupoTot[$nGru_Codigo][0] = @$aGrupoTot[$nGru_Codigo][0]+$aProdutoExb[2];  // Valor
					     $aGrupoTot[$nGru_Codigo][1] = @$aGrupoTot[$nGru_Codigo][1]+$aProdutoExb[1];  // Quantidade
						 //Custo
						 $aGrupoCus[$nGru_Codigo][0] = @$aGrupoCus[$nGru_Codigo][0]+$aProdutoExb[3];  // Valor Custo

						 //Lucro
						 $aGrupoLuc[$nGru_Codigo][0] = @$aGrupoLuc[$nGru_Codigo][0]+$aProdutoExb[4];  // Valor Lucro

						 If ( @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[6]>0 ) {
						    If ( @$aProdutoExb[5]<>$sTam_Nor ){ 
						       $sTam_Nor = @$aProdutoExb[5];
						       $aGrupoNor[$nGru_Codigo][0] = $sDes_PreNor;  //Desc
						    }
						 }
						 If ( @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[6]>0 ) {
						    @$aGrupoNor[$nGru_Codigo][1] = @$aGrupoNor[$nGru_Codigo][1]+$aProdutoExb[6];  //qtde
						    //
							If (@$aGrupos_ActSab[$nGru_Codigo]) { 
							   If (@$aProdutoExb[57]==0) { //mesa
							      @$aQtd_G_NM[$nGru_Codigo][1] += @$aQtd_G_NM[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_NM[$nGru_Codigo][1] += @$aVProd_NM[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_NB[$nGru_Codigo][1] += @$aQtd_G_NB[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_NB[$nGru_Codigo][1] += @$aVProd_NB[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_ND[$nGru_Codigo][1] += @$aQtd_G_ND[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_ND[$nGru_Codigo][1] += @$aVProd_ND[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_NC[$nGru_Codigo][1] += @$aQtd_G_NC[$nGru_Codigo][1]+$aProdutoExb[6];  //Qtde Geral
						          @$aVProd_NC[$nGru_Codigo][1] += @$aVProd_NC[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Gera
								  
						       }						  
							}
						 
						 }
						 If ( @$aGrupoMei[$nGru_Codigo][1]+$aProdutoExb[8]>0 ) {
						    If ( @$aProdutoExb[7]<>$sTam_Mei ){ 
						       $sTam_Mei = @$aProdutoExb[7];
						       $aGrupoMei[$nGru_Codigo][0] = $sDes_PreMei; //desc
						    }
						 }
						 If ( @$aGrupoMei[$nGru_Codigo][1]+$aProdutoExb[8]>0 ) {
						    @$aGrupoMei[$nGru_Codigo][1] = @$aGrupoMei[$nGru_Codigo][1]+$aProdutoExb[8]; //qtde
						 }
						 //
						 If ( @$aGrupo001[$nGru_Codigo][1]+$aProdutoExb[10]>0 ) {
						    If ( @$aProdutoExb[9]<>$sTam_001 ){ 
						       $sTam_001 = @$aProdutoExb[9];
						       $aGrupo001[$nGru_Codigo][0] = $sDes_Pre001; //desc
					        }
						 }
						 If ( @$aGrupo001[$nGru_Codigo][1]+$aProdutoExb[10]>0 ) {
						    @$aGrupo001[$nGru_Codigo][1] = @$aGrupo001[$nGru_Codigo][1]+$aProdutoExb[10]; //qtde
						    //
							If (@$aGrupos_ActSab[$nGru_Codigo]) { 
							   If (@$aProdutoExb[57]==0) { //mesa
							      @$aQtd_G_1M[$nGru_Codigo][1] += @$aQtd_G_1M[$nGru_Codigo][1]+$aProdutoExb[10];  //qtde Geral
						          @$aVProd_1M[$nGru_Codigo][1] += @$aVProd_1M[$nGru_Codigo][1]+$aProdutoExb[2];   //Valor Geral
								  
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_1B[$nGru_Codigo][1] += @$aQtd_G_1B[$nGru_Codigo][1]+$aProdutoExb[10];  //Qtde Geral
						          @$aVProd_1B[$nGru_Codigo][1] += @$aVProd_1B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_1D[$nGru_Codigo][1] += @$aQtd_G_1D[$nGru_Codigo][1]+$aProdutoExb[10];  // Qtde Geral
						          @$aVProd_1D[$nGru_Codigo][1] += @$aVProd_1D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_1C[$nGru_Codigo][1] += @$aQtd_G_1C[$nGru_Codigo][1]+$aProdutoExb[10];  // Qtde Geral
						          @$aVProd_1C[$nGru_Codigo][1] += @$aVProd_1C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       }
							   
							}
						 
						 }
						 //
						 If ( @$aGrupo002[$nGru_Codigo][1]+$aProdutoExb[12]>0 ) {
						    If ( @$aProdutoExb[11]<>$sTam_002 ){
                               $sTam_002 = @$aProdutoExb[11];							 
						       $aGrupo002[$nGru_Codigo][0] = $sDes_Pre002; //desc
						    }
						 }
						 If ( @$aGrupo002[$nGru_Codigo][1]+$aProdutoExb[12]>0 ) {
						    @$aGrupo002[$nGru_Codigo][1] = @$aGrupo002[$nGru_Codigo][1]+$aProdutoExb[12]; //qtde
						    //
							If (@$aGrupos_ActSab[$nGru_Codigo]) {
                               If (@$aProdutoExb[57]==0) { //mesa								
							      @$aQtd_G_2M[$nGru_Codigo][1] += @$aQtd_G_2M[$nGru_Codigo][1]+$aProdutoExb[12];  //qtde Geral
						          @$aVProd_2M[$nGru_Codigo][1] += @$aVProd_2M[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_2B[$nGru_Codigo][1] += @$aQtd_G_2B[$nGru_Codigo][1]+$aProdutoExb[12];  //Qtde Geral
						          @$aVProd_2B[$nGru_Codigo][1] += @$aVProd_2B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_2D[$nGru_Codigo][1] += @$aQtd_G_2D[$nGru_Codigo][1]+$aProdutoExb[12];  // Qtde Geral
						          @$aVProd_2D[$nGru_Codigo][1] += @$aVProd_2D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_2C[$nGru_Codigo][1] += @$aQtd_G_2C[$nGru_Codigo][1]+$aProdutoExb[12];  // Qtde Geral
						          @$aVProd_2C[$nGru_Codigo][1] += @$aVProd_2C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       }
							}
						 
						 }
						 //
						 If ( @$aGrupo003[$nGru_Codigo][1]+$aProdutoExb[14]>0 ) { 
						    If ( @$aProdutoExb[13]<>$sTam_003 ){
                               $sTam_003 = @$aProdutoExb[13];							 
						       $aGrupo003[$nGru_Codigo][0] = $sDes_Pre003; //desc
						    }
						 }
						 If ( @$aGrupo003[$nGru_Codigo][1]+$aProdutoExb[14]>0 ) { 
						    @$aGrupo003[$nGru_Codigo][1] = @$aGrupo003[$nGru_Codigo][1]+$aProdutoExb[14]; //qtde
					        //
							If (@$aGrupos_ActSab[$nGru_Codigo]) { 
							   
	                           If (@$aProdutoExb[57]==0) { //mesa								
								  @$aQtd_G_3M[$nGru_Codigo][1] += @$aQtd_G_3M[$nGru_Codigo][1]+$aProdutoExb[14];  //qtde Geral
						          @$aVProd_3M[$nGru_Codigo][1] += @$aVProd_3M[$nGru_Codigo][1]+$aProdutoExb[2];  //Valor Geral
								  
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_3B[$nGru_Codigo][1] += @$aQtd_G_3B[$nGru_Codigo][1]+$aProdutoExb[14];  //Qtde Geral
						          @$aVProd_3B[$nGru_Codigo][1] += @$aVProd_3B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_3D[$nGru_Codigo][1] += @$aQtd_G_3D[$nGru_Codigo][1]+$aProdutoExb[14];  // Qtde Geral
						          @$aVProd_3D[$nGru_Codigo][1] += @$aVProd_3D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_3C[$nGru_Codigo][1] += @$aQtd_G_3C[$nGru_Codigo][1]+$aProdutoExb[14];  // Qtde Geral
						          @$aVProd_3C[$nGru_Codigo][1] += @$aVProd_3C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       } 					 
						 
						    }
						 
						 }
						 //
						 If ( @$aGrupo004[$nGru_Codigo][1]+$aProdutoExb[16]>0 ) {
						    If ( @$aProdutoExb[15]<>$sTam_004 ){
                               $sTam_004 = @$aProdutoExb[15];							 
						       $aGrupo004[$nGru_Codigo][0] = $sDes_Pre004; //desc
						    }
						 }	
						 If ( @$aGrupo004[$nGru_Codigo][1]+$aProdutoExb[16]>0 ) {
						    @$aGrupo004[$nGru_Codigo][1] = @$aGrupo004[$nGru_Codigo][1]+$aProdutoExb[16]; //qtde
	                        //
                            If (@$aGrupos_ActSab[$nGru_Codigo]) { 
						       If (@$aProdutoExb[57]==0) { //mesa								
								  @$aQtd_G_4M[$nGru_Codigo][1] += @$aQtd_G_4M[$nGru_Codigo][1]+$aProdutoExb[16];  //qtde Geral
						          @$aVProd_4M[$nGru_Codigo][1] += @$aVProd_4M[$nGru_Codigo][1]+$aProdutoExb[2];   //Valor Geral
								  
							   } ElseIf (@$aProdutoExb[57]==1) { //BALCAO
                                  @$aQtd_G_4B[$nGru_Codigo][1] += @$aQtd_G_4B[$nGru_Codigo][1]+$aProdutoExb[16];  //Qtde Geral
						          @$aVProd_4B[$nGru_Codigo][1] += @$aVProd_4B[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
					           } ElseIf (@$aProdutoExb[57]==2) { //DISK
                                  @$aQtd_G_4D[$nGru_Codigo][1] += @$aQtd_G_4D[$nGru_Codigo][1]+$aProdutoExb[16];  // Qtde Geral
						          @$aVProd_4D[$nGru_Codigo][1] += @$aVProd_4D[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       } ElseIf (@$aProdutoExb[57]==3) { //comanda
                                  @$aQtd_G_4C[$nGru_Codigo][1] += @$aQtd_G_4C[$nGru_Codigo][1]+$aProdutoExb[16];  // Qtde Geral
						          @$aVProd_4C[$nGru_Codigo][1] += @$aVProd_4C[$nGru_Codigo][1]+$aProdutoExb[2];   // Valor Geral
								  
						       }
						    }							
						 
						 }
                         
                        //						 
					  }
		          }
              }
           }
		   If ( $aV_Sessao['Fil_Ordem_R']==2 ) {
		      $aGrupoOrdem = $aGrupos;
		   } Else {
		      $aGrupoOrdem = $aGrupoOrg;
	          ARSORT($aGrupoOrdem);    // Ordem decrescente pelo valor
		   }
		   //
           $sTxt_Rel .=
		       ($aV_Sessao['Fil_ResmPor']==1 ? AlinhaStr('** RESUMO POR GRUPO **',1) : "").
		       ($aV_Sessao['Fil_ResmPor']==2 ? AlinhaStr('** RESUMO POR GRUPO + PRODUTO **',1) : "").
               $sPulaLinha.$sPulaLinha.
			   '';
		   
		   
		   //
		   $n_Reg_Qtd = 0;
		   $aRel_RPG_01 = ARRAY();
		   
		   $aRel_RPG_03 = ARRAY();
	       ForEach ( $aGrupoOrdem as $nGru_Codigo => $nGru_NumTemp ) {
		      If ( ! ISSET($aGrupoTot[$nGru_Codigo]) ) { CONTINUE; }
		      $nPorcent_Q = ($aGrupoTot[$nGru_Codigo][1] / ( $nTotalQtd == 0 ? 1 : $nTotalQtd))*100;
		      $nPorcent_T = ($aGrupoTot[$nGru_Codigo][0] / ( $nTotalVal == 0 ? 1 : $nTotalVal))*100;
			  $nPrecoMed  = $aGrupoTot[$nGru_Codigo][0] / ( $aGrupoTot[$nGru_Codigo][1] == 0 ? 1 : $aGrupoTot[$nGru_Codigo][1]);
			  $nTotalMed += $nPrecoMed;
              //Custo
			  $nPre_M_Cus = $aGrupoCus[$nGru_Codigo][0] / ( $aGrupoTot[$nGru_Codigo][1] == 0 ? 1 : $aGrupoTot[$nGru_Codigo][1]);
			  //Lucro
			  $nPor_Q_Luc = ($aGrupoTot[$nGru_Codigo][1] / ( $nTotalQtd == 0 ? 1 : $nTotalQtd ) )*100;
			  //$nPor_T_Luc = ((($aGrupoTot[$nGru_Codigo][0] * 100)/ ( $aGrupoCus[$nGru_Codigo][0]== 0 ? 1: $aGrupoCus[$nGru_Codigo][0]) )-100);
              $nPor_T_Luc = (($aGrupoTot[$nGru_Codigo][0] - $aGrupoCus[$nGru_Codigo][0])*100);
			  If ($nPor_T_Luc>0) {
			     $nPor_T_Luc = ($nPor_T_Luc/ $aGrupoTot[$nGru_Codigo][0] );
			  }
			  $nPre_M_Luc = $aGrupoLuc[$nGru_Codigo][0] / ( $aGrupoTot[$nGru_Codigo][1] == 0 ? 1 : $aGrupoTot[$nGru_Codigo][1]);
			  $nTot_M_Luc += $nPre_M_Luc;
              //
			  $sImp_Linha_1 =  AlinhaStr( '  '.@$aGrupoNor[$nGru_Codigo][0].'  '.
 			  	                             @$aGrupoMei[$nGru_Codigo][0].'  '.
			  	                             @$aGrupo001[$nGru_Codigo][0].'  '.
			  	                             @$aGrupo002[$nGru_Codigo][0].'  '.
			  	                             @$aGrupo003[$nGru_Codigo][0].'  '.
			  	                             @$aGrupo004[$nGru_Codigo][0],0 ).
			                   $sPulaLinha.
			                   "";
			  //
			  $sImp_Linha_2 =  
			                ( $aV_Sessao['Fil_Opcao_C']==1 ?
			  			        AlinhaStr( '                   '.(@$aGrupoNor[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupoNor[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupoMei[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupoMei[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo001[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo001[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo002[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo002[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo003[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo003[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo004[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo004[$nGru_Codigo][1],2) : '' ),1,80 )
			                   
			  				    :
			  				    AlinhaStr( '  '.(@$aGrupoNor[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupoNor[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupoMei[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupoMei[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo001[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo001[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo002[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo002[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo003[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo003[$nGru_Codigo][1],2) : '').'  '.
			  	                                (@$aGrupo004[$nGru_Codigo][1] > 0 ? ROUND(@$aGrupo004[$nGru_Codigo][1],2) : '' ),0 )
			                   
			  				).
			  				$sPulaLinha.
			                "";
			  //
			  // Imprimir produtos
			  $sImp_Produtos = "";
			  
			  
			  If ( $aV_Sessao['Fil_ResmPor']==2 ) {
			     $aListaProdTmp = @$aGrupoPrd[$nGru_Codigo];
		         $aRel_RPG_02 = ARRAY();      
				 ForEach ( $aListaProdTmp As $nIte_CodigoI => $aProdutoTmp ) {
					// -- Calcular percentual representativo
					//   Ordem por quantidade            Ordem por descrição             Ordem por codigo do produto
					If ( $aV_Sessao['Fil_Ordem_R']==0 Or $aV_Sessao['Fil_Ordem_R']==2 Or $aV_Sessao['Fil_Ordem_R']==3 ) {
					   $nP_Porcent_E = ($aProdutoTmp[1] / ( $nTotalQtd > 0 ? $nTotalQtd : 1))*100;  // Calcular por quantidade
					//         Ordem por valor
					} ElseIf ( $aV_Sessao['Fil_Ordem_R']==1 ) {
					   $nP_Porcent_E = ($aProdutoTmp[2] / $nTotalVal)*100;  // Calcular por valor
					}
			        
					ARRAY_PUSH( $aRel_RPG_02,
					   "PULAR_LINHA",
					   ( $aV_Sessao['Fil_Opcao_C']==1 ? @$aProdutos[$nIte_CodigoI][2].' - '.@$aProdutos[$nIte_CodigoI][0] : '' ),
					   ( $aV_Sessao['Fil_Opcao_C']==1 ? NUMBER_FORMAT(ROUND($aProdutoTmp[1],3),3,',','') : "" ),
					   ( $aV_Sessao['Fil_Opcao_C']==1 ? FormatoMoeda(ROUND($aProdutoTmp[2],2)) : "" ),
					   ( $aV_Sessao['Fil_Opcao_C']==1 ? FormatoMoeda(ROUND($nP_Porcent_E,2))."%" : '' ),
					   ( $aV_Sessao['Fil_Opcao_C']==1 ? "PULAR_LINHA" : "" ),
					   ( $aV_Sessao['Fil_Opcao_C']==0 ? @$aProdutos[$nIte_CodigoI][2].' - '.@$aProdutos[$nIte_CodigoI][0] : '' ),
					   ( $aV_Sessao['Fil_Opcao_C']==0 ? NUMBER_FORMAT(ROUND($aProdutoTmp[1],3),3,',','') : "" ),
					   ( $aV_Sessao['Fil_Opcao_C']==0 ? FormatoMoeda(ROUND($aProdutoTmp[2],2)) : "" ),
					   ( $aV_Sessao['Fil_Opcao_C']==0 ? "PULAR_LINHA" : "" )
					);
					
					$sImp_Produtos .=
					   ( $aV_Sessao['Fil_Opcao_C']==1 ?  // 80 colunas
					     " ".
		                 AlinhaStr(@$aProdutos[$nIte_CodigoI][2].' - '.@$aProdutos[$nIte_CodigoI][0],0 ,46 ).
					     ' x'.
					     AlinhaStr( NUMBER_FORMAT(ROUND($aProdutoTmp[1],3),3,',',''), 2, 10 ).
					     ' ='.
					     AlinhaStr(FormatoMoeda(ROUND($aProdutoTmp[2],2)), 2 ,10).
						 '  '.
					     AlinhaStr(FormatoMoeda(ROUND($nP_Porcent_E,2)), 2 ,6)."%"
					   :                                // 40 colunas
					     " ".
		                 AlinhaStr(@$aProdutos[$nIte_CodigoI][2].'-'.@$aProdutos[$nIte_CodigoI][0],0 ,18 ).
					     ' x'.
					     AlinhaStr( NUMBER_FORMAT(ROUND($aProdutoTmp[1],3),3,',',''), 2, 8 ).
					     ' ='.
					     AlinhaStr(FormatoMoeda(ROUND($aProdutoTmp[2],2)), 2 ,9)
					   ).
		     		   $sPulaLinha.
			           "";
                 }
              }
			  
			  
			  ARRAY_PUSH( $aRel_RPG_03,
			      'Grupo: '.Str_Zero($nGru_Codigo,3).' - '.$aGrupos[$nGru_Codigo]
				  
			  );	  
			  If ( $aV_Sessao['Fil_ResmPor']==2) { 
			      
				  ForEach ($aRel_RPG_02 as $key => $sREL_RPG_02){
					ARRAY_PUSH( $aRel_RPG_03,
			           $sREL_RPG_02
					);  
				  
				  }	  
			  
			  }
			  //
			  $sTxt_Rel .=
                 AlinhaStr( 'Grupo: '.Str_Zero($nGru_Codigo,3).' - '.$aGrupos[$nGru_Codigo], 0).$sPulaLinha.
			     ( $aV_Sessao['Fil_Opcao_C']==1 ?  
			        ( $aV_Sessao['Fil_Vendido']==0 ?
			  	     $sPulaLinha
			  	    :
			  		 $sPulaLinha
			  	    )
			     :
			  	    $sPulaLinha
			     ).
				 $sImp_Produtos.
				 ( $aV_Sessao['Fil_ResmPor']==2 ?
			       ( $aV_Sessao['Fil_Opcao_C']==1 ? STR_REPEAT("-",80) : STR_REPEAT("-",40) ).
				   $sPulaLinha
				 : "").
		         //
			    ( STRLEN(TRIM($sImp_Linha_1))>0 ? $sImp_Linha_1 : "" ).
			    ( STRLEN(TRIM($sImp_Linha_2))>0 ? $sImp_Linha_2 : "" ).
				//
				// 80 Colunas
				//
			    ( $aV_Sessao['Fil_Opcao_C']==1 ?  
			  		 AlinhaStr( 'Total do Grupo'.
			              AlinhaStr( NUMBER_FORMAT( ROUND($aGrupoTot[$nGru_Codigo][1],3),3,',','') ,2,9 ).
                          ' x'.AlinhaStr( FormatoMoeda($nPrecoMed),2,10 ).
		                  ' = '.
		                  AlinhaStr( FormatoMoeda( ROUND($aGrupoTot[$nGru_Codigo][0],2) ),2,9 ).
						  '  '.
			              ( ($aV_Sessao['Fil_Ordem_R']==1 OR $aV_Sessao['Fil_Ordem_R']==2) ?
			              AlinhaStr( NUMBER_FORMAT($nPorcent_T,2,',','').'%', 2, 7 )
			              : '').
			              ( $aV_Sessao['Fil_Ordem_R']==0 ?
			              AlinhaStr( NUMBER_FORMAT($nPorcent_Q,2,',','').'%', 2, 7 )
		 	              : ''), 2,80)
                
				//
				// 40 Colunas
				//
			    :
			           AlinhaStr( NUMBER_FORMAT( ROUND($aGrupoTot[$nGru_Codigo][1],3),3,',','') ,2,9 ).
                       ' x'.AlinhaStr( FormatoMoeda($nPrecoMed),2,8 ).
		               '  = '.
		               AlinhaStr( FormatoMoeda( ROUND($aGrupoTot[$nGru_Codigo][0],2) ),2,9 ).' '.
			           ( ($aV_Sessao['Fil_Ordem_R']==1 OR $aV_Sessao['Fil_Ordem_R']==2) ?
			           AlinhaStr( NUMBER_FORMAT($nPorcent_T,2,',','').'%', 2, 7 )
			           : '').
			           ( $aV_Sessao['Fil_Ordem_R']==0 ?
			           AlinhaStr( NUMBER_FORMAT($nPorcent_Q,2,',','').'%', 2, 7 )
		 	           : '')
			    ).
			    $sPulaLinha.
//				( $aV_Sessao['Fil_ResmPor']==2 ?
//				  ( $aV_Sessao['Fil_Opcao_C']==1 ? STR_REPEAT("-",80) : STR_REPEAT("-",40) ).
//				  $sPulaLinha
//				: "").
                '';

			  //
              // Custo/Lucro ( Resumo por Grupo + Produtos )
			  //			  
              If ( $aV_Sessao['Fil_Opcao_R']==1) { 
			     //  
			  	 //Custo - 80 Colunas
				 //
			  	( $aV_Sessao['Fil_Opcao_C']==1 ?
			  	   $sTxt_Rel .= AlinhaStr( 
			  	                AlinhaStr('Cust.Med:' ,2,9 ).
                                AlinhaStr( FormatoMoeda($nPre_M_Cus),2,9 ).
		      	        '   = '.AlinhaStr( FormatoMoeda( ROUND($aGrupoCus[$nGru_Codigo][0],2) ),2,9 ).
						'  T.Custo', 2,80 )
				 //	  
			  	 // Custo - 40 Colunas
				 //
				:
			  	   $sTxt_Rel .= AlinhaStr('Cust.Med:' ,2,9 ).
                                AlinhaStr( FormatoMoeda($nPre_M_Cus),2,10 ).
		      	        '  = '.AlinhaStr( FormatoMoeda( ROUND($aGrupoCus[$nGru_Codigo][0],2) ),2,9 ).
						' T.Custo'
			  	).
			  	$sPulaLinha.
			  	'';
			  
			    // ( Resumo por Grupo + Produtos ) 
			    //
			  	//Lucro - 80 Colunas
				//
			  	$sTxt_Rel .=
		           ( $aV_Sessao['Fil_Opcao_C']==1 ?
			  		  $sPulaLinha.AlinhaStr( AlinhaStr('% Lucro: ' ,2,9 ).
 		  	          AlinhaStr( NUMBER_FORMAT($nPor_T_Luc,2,',','').'%', 2, 9 ).
		      	      '  ='.
					  AlinhaStr( FormatoMoeda( ROUND($aGrupoLuc[$nGru_Codigo][0],2) ) ,2,10 ).
					  '  T.Lucro',2,80)
                   //
			  	   //Lucro - 40 Colunas
				   //			  	   
				   :
			  		  $sPulaLinha.AlinhaStr('% Lucro:' ,2,9 ).
  	  	              AlinhaStr( NUMBER_FORMAT($nPor_T_Luc,2,',','').'%', 2, 11 ).
					  ' = '.
		      	      AlinhaStr( FormatoMoeda( ROUND($aGrupoLuc[$nGru_Codigo][0],2) ),2,9 ).
					  ' T.Lucro'
			  	   ).
			  	   $sPulaLinha.
			  	   '';
			  }
                
			  ARRAY_PUSH( $aRel_RPG_03,	  
			       ( STRLEN(TRIM($sImp_Linha_1))>0 ? $sImp_Linha_1 : "" ),
			       ( STRLEN(TRIM($sImp_Linha_2))>0 ? $sImp_Linha_2 : "" ),
				   "PULAR_COLUNA",
				   ( $aV_Sessao['Fil_ResmPor']==2 ? "PULAR_COLUNA" : "" ),
				   NUMBER_FORMAT( ROUND($aGrupoTot[$nGru_Codigo][1],3),3,',',''),
				   FormatoMoeda($nPrecoMed),
				   FormatoMoeda( ROUND($aGrupoTot[$nGru_Codigo][0],2) ),
				   ( ($aV_Sessao['Fil_Ordem_R']==1) OR ($aV_Sessao['Fil_Ordem_R']==2) ? NUMBER_FORMAT($nPorcent_T,2,',','').'%' : ''),
				   ( $aV_Sessao['Fil_Ordem_R']==0 ? NUMBER_FORMAT($nPorcent_Q,2,',','').'%' : "" ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
                   ( $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
		 	       ( $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda($nPre_M_Cus) : "" ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda( ROUND($aGrupoCus[$nGru_Codigo][0],2) ) : "" ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			       ( $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
                   ( $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
		 	       ( $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda( ROUND($aGrupoLuc[$nGru_Codigo][0],2) ) : '' ),
				   ( $aV_Sessao['Fil_Opcao_R']==1 && $aV_Sessao['Fil_Ordem_R']==1 ? NUMBER_FORMAT($nPor_T_Luc,2,',','').'%' : '' ),
			  	   ( $aV_Sessao['Fil_Opcao_R']==1 && $aV_Sessao['Fil_Ordem_R']==0 ? NUMBER_FORMAT($nPor_Q_Luc,2,',','').'%' : '' ),
				   (  "PULAR_LINHA" )
				   
			  );




				 
			  	/*
                       AlinhaStr( Str_Zero($nGru_Codigo,3).' - '.$aGrupos[$nGru_Codigo], 0).
                       $sPulaLinha.
                       'Qtd Vendida:    '.AlinhaStr( NUMBER_FORMAT($aGrupoTot[$nGru_Codigo][1],3,',','') , 2, 11 ).
			  		 ( $aV_Sessao['Fil_Ordem_R']==0 ?
			  		   AlinhaStr( NUMBER_FORMAT($nPorcent_Q,2,',','').'%', 2, 13 )
			  		 : '').
                       $sPulaLinha.
                       'Preco Medio: R$ '.AlinhaStr( FormatoMoeda($aGrupoTot[$nGru_Codigo][0]/$aGrupoTot[$nGru_Codigo][1]),2,11 ).
                       $sPulaLinha.
                       'Total......: R$ '.AlinhaStr( FormatoMoeda($aGrupoTot[$nGru_Codigo][0]), 2, 11 ).
			  		 ( $aV_Sessao['Fil_Ordem_R']==1 ?
			  		   AlinhaStr( NUMBER_FORMAT($nPorcent_T,2,',','').'%', 2, 13 )
			  		 : '').
                       $sPulaLinha.
                       '';
			  	 */
		   }
		   
		   
		   $n_Reg_Qtd++;
		   //
	   }
	   // **
	   $aRel_RPG_04 = ARRAY();
	   //
	   If ($nTotalQtd>0) {
//          $nPor_Q_Ger = ($nTotalQtd / ( $nTotalQtd == 0 ? 1 : $nTotalQtd ) )*100;
          $nPor_T_Ger = ((($nTotalVal - $nTotalCus )*100) / $nTotalVal );
		  
		  
		  //////MESA
		  $sImp_Cab_TM   =	AlinhaStr( '  '.
		                               $sLocalCom,0 ).
									   $sPulaLinha.
			                           "";
	      
		
		  $sImp_Linha_IM  = ( @$nTQtd_G_IM > 0 ? 
		                       AlinhaStr('Normal: ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_IM,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_IM),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";
                             
		  $sImp_Linha_TM  = ( @$nTQtd_G_NM > 0 ? 
		                       AlinhaStr($sDes_PreNorT.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_NM,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_NM),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
          
		  $sImp_Linha_T1  = ( @$nTQtd_G_1M > 0 ? 
		                       AlinhaStr($sDes_Pre001T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_1M,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_1M),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_T2  = ( @$nTQtd_G_2M > 0 ? 
		                       AlinhaStr($sDes_Pre002T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_2M,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_2M),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_T3  = ( @$nTQtd_G_3M > 0 ? 
		                       AlinhaStr($sDes_Pre003T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_3M,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_3M),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
	   	  
		  $sImp_Linha_T4  = ( @$nTQtd_G_4M > 0 ? 
		                       AlinhaStr($sDes_Pre004T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_4M,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_4M),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
						

		  //////delivery
		  $sImp_Cab_TD   =	AlinhaStr( '  '.
		                               "Delivery",0 ).
									   $sPulaLinha.
			                           "";
	      
		  $sImp_Linha_ID  = ( @$nTQtd_G_ID > 0 ? 
		                       AlinhaStr('Normal: ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_ID,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_ID),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";
		
		  $sImp_Linha_TD  = ( @$nTQtd_G_ND > 0 ? 
		                       AlinhaStr($sDes_PreNorT.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_ND,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_ND),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";
          
		  $sImp_Linha_D1  = ( @$nTQtd_G_1D > 0 ? 
		                       AlinhaStr($sDes_Pre001T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_1D,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_1D),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_D2  = ( @$nTQtd_G_2D > 0 ? 
		                       AlinhaStr($sDes_Pre002T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_2D,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_2D),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_D3  = ( @$nTQtd_G_3D > 0 ? 
		                       AlinhaStr($sDes_Pre003T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_3D,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_3D),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
	   	  
		  $sImp_Linha_D4  = ( @$nTQtd_G_4D > 0 ? 
		                       AlinhaStr($sDes_Pre004T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_4D,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_4D),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		 
		  //////////////////////////////////
		  //BALCÃO
		  $sImp_Cab_TB   =	AlinhaStr( '  '.
		                               "Balcão",0 ).
									   $sPulaLinha.
			                           "";
	      
		  $sImp_Linha_IB  = ( @$nTQtd_G_IB > 0 ? 
		                       AlinhaStr('Normal: ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_IB,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_IB),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";
		
		  $sImp_Linha_TB  = ( @$nTQtd_G_NB > 0 ? 
		                       AlinhaStr($sDes_PreNorT.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_NB,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_NB),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
          
		  $sImp_Linha_B1  = ( @$nTQtd_G_1B > 0 ? 
		                       AlinhaStr($sDes_Pre001T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_1B,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_1B),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_B2  = ( @$nTQtd_G_2B > 0 ? 
		                       AlinhaStr($sDes_Pre002T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_2B,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_2B),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_B3  = ( @$nTQtd_G_3B > 0 ? 
		                       AlinhaStr($sDes_Pre003T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_3B,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_3B),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
	   	  
		  $sImp_Linha_B4  = ( @$nTQtd_G_4B > 0 ? 
		                       AlinhaStr($sDes_Pre004T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_4B,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_4B),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		
		//////////////////////////////////
		  //COMANDA
		  $sImp_Cab_TC   =	AlinhaStr( '  '.
		                               $sLocalCom,0 ).
									   $sPulaLinha.
			                           "";
	      
		  $sImp_Linha_IC  = ( @$nTQtd_G_IC > 0 ? 
		                       AlinhaStr('Normal: ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_IC,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_IC),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";
		
		  $sImp_Linha_TC  = ( @$nTQtd_G_NC > 0 ? 
		                       AlinhaStr($sDes_PreNorT.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_NC,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_NC),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
          
		  $sImp_Linha_C1  = ( @$nTQtd_G_1C > 0 ? 
		                       AlinhaStr($sDes_Pre001T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_1C,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_1C),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_C2  = ( @$nTQtd_G_2C > 0 ? 
		                       AlinhaStr($sDes_Pre002T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_2C,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_2C),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
		  
		  $sImp_Linha_C3  = ( @$nTQtd_G_3C > 0 ? 
		                       AlinhaStr($sDes_Pre003T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_3C,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_3C),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 
	   	  
		  $sImp_Linha_C4  = ( @$nTQtd_G_4C > 0 ? 
		                       AlinhaStr($sDes_Pre004T.': ',0,8).
		                       AlinhaStr( NUMBER_FORMAT( ROUND(@$nTQtd_G_4C,3),3,',','') ,2,9 ).
			                   ' = R$ '.AlinhaStr( FormatoMoeda(@$nTVProd_4C),2,8 ).
                               $sPulaLinha
							 :
                             "" ).
                             "";							 					 
							 
		  
		  //////////////////
		  ARRAY_PUSH( $aRel_RPG_04,
		     "PULAR_LINHA", 
		     ( STRLEN(RTRIM($sImp_Linha_TD)) > 0 || STRLEN(RTRIM($sImp_Linha_D1)) > 0 || STRLEN(RTRIM($sImp_Linha_D2)) > 0 || STRLEN(RTRIM($sImp_Linha_D3)) > 0 || STRLEN(RTRIM($sImp_Linha_D4)) > 0 || STRLEN($sImp_Linha_ID)>0 ? STRTOUPPER($sImp_Cab_TD ): "" ),
			 ( STRLEN(RTRIM($sImp_Linha_ID)) > 0 ? $sImp_Linha_ID : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_TD)) > 0 ? $sImp_Linha_TD : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_D1)) > 0 ? $sImp_Linha_D1 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_D2)) > 0 ? $sImp_Linha_D2 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_D3)) > 0 ? $sImp_Linha_D3 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_D4)) > 0 ? $sImp_Linha_D4 : "" ),
			 "PULAR_LINHA",
			 ( STRLEN(RTRIM($sImp_Linha_TM)) > 0 || STRLEN(RTRIM($sImp_Linha_T1)) > 0 || STRLEN(RTRIM($sImp_Linha_T2)) > 0 || STRLEN(RTRIM($sImp_Linha_T3)) > 0 || STRLEN(RTRIM($sImp_Linha_T4)) > 0 || STRLEN($sImp_Linha_IM)>0 ? STRTOUPPER($sImp_Cab_TM ): "" ),
			 ( STRLEN(RTRIM($sImp_Linha_IM)) > 0 ? $sImp_Linha_IM : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_TM)) > 0 ? $sImp_Linha_TM : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_T1)) > 0 ? $sImp_Linha_T1 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_T2)) > 0 ? $sImp_Linha_T2 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_T3)) > 0 ? $sImp_Linha_T3 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_T4)) > 0 ? $sImp_Linha_T4 : "" ),
			 "PULAR_LINHA",
			 ( STRLEN(RTRIM($sImp_Linha_TB)) > 0 || STRLEN(RTRIM($sImp_Linha_B1)) > 0 || STRLEN(RTRIM($sImp_Linha_B2)) > 0 || STRLEN(RTRIM($sImp_Linha_B3)) > 0 || STRLEN(RTRIM($sImp_Linha_B4)) > 0 || STRLEN($sImp_Linha_IB)>0 ? STRTOUPPER($sImp_Cab_TB ): "" ),
			 ( STRLEN(RTRIM($sImp_Linha_IB)) > 0 ? $sImp_Linha_IB : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_TB)) > 0 ? $sImp_Linha_TB : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_B1)) > 0 ? $sImp_Linha_B1 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_B2)) > 0 ? $sImp_Linha_B2 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_B3)) > 0 ? $sImp_Linha_B3 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_B4)) > 0 ? $sImp_Linha_B4 : "" ),
			 "PULAR_LINHA",
			 ( STRLEN(RTRIM($sImp_Linha_TC)) > 0 || STRLEN(RTRIM($sImp_Linha_C1)) > 0 || STRLEN(RTRIM($sImp_Linha_C2)) > 0 || STRLEN(RTRIM($sImp_Linha_C3)) > 0 || STRLEN(RTRIM($sImp_Linha_C4)) > 0 || STRLEN($sImp_Linha_IC)>0 ? STRTOUPPER($sImp_Cab_TC ): "" ),
			 ( STRLEN(RTRIM($sImp_Linha_IC)) > 0 ? $sImp_Linha_IC : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_TC)) > 0 ? $sImp_Linha_TC : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_C1)) > 0 ? $sImp_Linha_C1 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_C2)) > 0 ? $sImp_Linha_C2 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_C3)) > 0 ? $sImp_Linha_C3 : "" ),
			 ( STRLEN(RTRIM($sImp_Linha_C4)) > 0 ? $sImp_Linha_C4 : "" ),
	         "PULAR_LINHA",
			 "PULAR_COLUNA",
			 "PULAR_COLUNA",
			 'Total geral',
			 "PULAR_LINHA",
			 "PULAR_COLUNA",
			 "PULAR_COLUNA",
			 NUMBER_FORMAT( ROUND($nTotalQtd,3),3,',',''),
			 FormatoMoeda($nTotalMed),
			 FormatoMoeda( ROUND($nTotalVal,2) ),
			 "PULAR_LINHA",
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda( ROUND($nTotalCus /ROUND($nTotalQtd,3),2 )) : "" ),		 
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda( ROUND($nTotalCus,2) ) : "" ),
			 "PULAR_LINHA",
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_COLUNA" : "" ),
			 ( $aV_Sessao['Fil_Opcao_R']==1 ? FormatoMoeda( ROUND($nTotalLuc,2) ) : "" ),
			 ( $aV_Sessao['Fil_Ordem_R']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? NUMBER_FORMAT($nPor_T_Ger,2,',','').'%'  : "" ),
			 ( $aV_Sessao['Fil_Ordem_R']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? NUMBER_FORMAT($nPor_T_Ger,2,',','').'%'  : "" ),
			 ( $aV_Sessao['Fil_Ordem_R']==2 && $aV_Sessao['Fil_Opcao_R']==1 ? NUMBER_FORMAT($nPor_T_Ger,2,',','').'%'  : "" )			 
			 
          );
		  
		  
		  $sTxt_Rel .=
             ( $aV_Sessao['Fil_Opcao_C']==1 ?
			    STR_REPEAT("=",80).
				$sPulaLinha.
			    AlinhaStr( 'Resumo por Tipo de Venda',1, 80 )				
			 :
			    STR_REPEAT("=",40).
				$sPulaLinha.				
			    AlinhaStr( 'Resumo por Tipo de Venda',1, 40 )								
			 ).
			 $sPulaLinha.
			 //DISK
			 ( STRLEN(RTRIM($sImp_Linha_TD)) > 0 || STRLEN(RTRIM($sImp_Linha_D1)) > 0 || STRLEN(RTRIM($sImp_Linha_D2)) > 0 || STRLEN(RTRIM($sImp_Linha_D3)) > 0 || STRLEN(RTRIM($sImp_Linha_D4)) || STRLEN(RTRIM($sImp_Linha_ID)) > 0 ? STRTOUPPER($sImp_Cab_TD ): "" ).
			 ( STRLEN(RTRIM($sImp_Linha_ID)) > 0 ? $sImp_Linha_ID : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_TD)) > 0 ? $sImp_Linha_TD : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_D1)) > 0 ? $sImp_Linha_D1 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_D2)) > 0 ? $sImp_Linha_D2 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_D3)) > 0 ? $sImp_Linha_D3 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_D4)) > 0 ? $sImp_Linha_D4 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_TD)) > 0 || STRLEN(RTRIM($sImp_Linha_D1)) > 0 || STRLEN(RTRIM($sImp_Linha_D2)) > 0 || STRLEN(RTRIM($sImp_Linha_D3)) > 0 || STRLEN(RTRIM($sImp_Linha_D4)) > 0 || STRLEN(RTRIM($sImp_Linha_ID)) > 0 ? $sPulaLinha              : "" ).			 

             
			 // MESA
			 ( STRLEN(RTRIM($sImp_Linha_TM)) > 0 || STRLEN(RTRIM($sImp_Linha_T1)) > 0 || STRLEN(RTRIM($sImp_Linha_T2)) > 0 || STRLEN(RTRIM($sImp_Linha_T3)) > 0 || STRLEN(RTRIM($sImp_Linha_T4)) > 0 || STRLEN(RTRIM($sImp_Linha_IM)) > 0 ? STRTOUPPER($sImp_Cab_TM ): "" ).
			 ( STRLEN(RTRIM($sImp_Linha_IM)) > 0 ? $sImp_Linha_IM : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_TM)) > 0 ? $sImp_Linha_TM : '' ).
			 ( STRLEN(RTRIM($sImp_Linha_T1)) > 0 ? $sImp_Linha_T1 : '' ).
			 ( STRLEN(RTRIM($sImp_Linha_T2)) > 0 ? $sImp_Linha_T2 : '' ).
			 ( STRLEN(RTRIM($sImp_Linha_T3)) > 0 ? $sImp_Linha_T3 : '' ).
			 ( STRLEN(RTRIM($sImp_Linha_T4)) > 0 ? $sImp_Linha_T4 : '' ).
			 ( STRLEN(RTRIM($sImp_Linha_TM)) > 0 || STRLEN(RTRIM($sImp_Linha_T1)) > 0 || STRLEN(RTRIM($sImp_Linha_T2)) > 0 || STRLEN(RTRIM($sImp_Linha_T3)) > 0 || STRLEN(RTRIM($sImp_Linha_T4)) > 0 || STRLEN(RTRIM($sImp_Linha_IM)) > 0 ? $sPulaLinha              : "" ).			 

             
			 //BALCAO
			 ( STRLEN(RTRIM($sImp_Linha_TB)) > 0 || STRLEN(RTRIM($sImp_Linha_B1)) > 0 || STRLEN(RTRIM($sImp_Linha_B2)) > 0 || STRLEN(RTRIM($sImp_Linha_B3)) > 0 || STRLEN(RTRIM($sImp_Linha_B4)) > 0 || STRLEN(RTRIM($sImp_Linha_IB)) > 0 ? STRTOUPPER($sImp_Cab_TB ): "" ).
			 ( STRLEN(RTRIM($sImp_Linha_IB)) > 0 ? $sImp_Linha_IB : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_TB)) > 0 ? $sImp_Linha_TB : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_B1)) > 0 ? $sImp_Linha_B1 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_B2)) > 0 ? $sImp_Linha_B2 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_B3)) > 0 ? $sImp_Linha_B3 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_B4)) > 0 ? $sImp_Linha_B4 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_TB)) > 0 || STRLEN(RTRIM($sImp_Linha_B1)) > 0 || STRLEN(RTRIM($sImp_Linha_B2)) > 0 || STRLEN(RTRIM($sImp_Linha_B3)) > 0 || STRLEN(RTRIM($sImp_Linha_B4)) > 0 || STRLEN(RTRIM($sImp_Linha_IB))  ? $sPulaLinha              : "" ).			 
		 

			 //
			 //COMANDA
			 ( STRLEN(RTRIM($sImp_Linha_TC)) > 0 || STRLEN(RTRIM($sImp_Linha_C1)) > 0 || STRLEN(RTRIM($sImp_Linha_C2)) > 0 || STRLEN(RTRIM($sImp_Linha_C3)) > 0 || STRLEN(RTRIM($sImp_Linha_C4)) > 0 || STRLEN(RTRIM($sImp_Linha_IC)) > 0 ? STRTOUPPER($sImp_Cab_TC ): "" ).
			 ( STRLEN(RTRIM($sImp_Linha_IC)) > 0 ? $sImp_Linha_IC : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_TC)) > 0 ? $sImp_Linha_TC : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_C1)) > 0 ? $sImp_Linha_C1 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_C2)) > 0 ? $sImp_Linha_C2 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_C3)) > 0 ? $sImp_Linha_C3 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_C4)) > 0 ? $sImp_Linha_C4 : "" ).
			 ( STRLEN(RTRIM($sImp_Linha_TC)) > 0 || STRLEN(RTRIM($sImp_Linha_C1)) > 0 || STRLEN(RTRIM($sImp_Linha_C2)) > 0 || STRLEN(RTRIM($sImp_Linha_C3)) > 0 || STRLEN(RTRIM($sImp_Linha_C4)) > 0 || STRLEN(RTRIM($sImp_Linha_IC)) > 0 ? $sPulaLinha              : "" ).
			 

			 //
			 // 80 Colunas
			 //			 
			 ( $aV_Sessao['Fil_Opcao_C']==1 ?
			    STR_REPEAT("-",80).
			    $sPulaLinha.
			    AlinhaStr( 'Total geral', 1,80).
                $sPulaLinha
			 //
			 // 40 Colunas
			 //
			 :
			    STR_REPEAT("-", 40).
			    $sPulaLinha.
			    AlinhaStr( 'Total geral', 1,40).
                $sPulaLinha				
			 ).
			 //
			 // 80 Colunas
			 //
             ( $aV_Sessao['Fil_Opcao_C']==1 ?
			    STR_REPEAT("-",80).
			    $sPulaLinha.
			    'Qtde     '.
			    '   Pr.Médio '. 
			    '   Tot.Venda '.
				$sPulaLinha.
			     STR_REPEAT("-",80).
				 $sPulaLinha
			 //
			 // 40 Colunas
			 //			 			 
			  : 
			    STR_REPEAT("-",40).
				$sPulaLinha.
			    'Qtde     '.
			    '   Pr.Médio '. 
			    '   Tot.Venda '.
				$sPulaLinha.
			    STR_REPEAT("-",40).
				$sPulaLinha
			 
			 ).
			 
			 
			 AlinhaStr( NUMBER_FORMAT( ROUND($nTotalQtd,3),3,',','') ,2,9 ).
//             ' x'.AlinhaStr( FormatoMoeda($nTotalMed),2,8 ).'  ='.
             ' x'.AlinhaStr( FormatoMoeda($nTotalVal/$nTotalQtd),2,8 ).'  ='.			 
             AlinhaStr( FormatoMoeda( ROUND($nTotalVal,2) ),2,10 ).
             $sPulaLinha.


			 ( $aV_Sessao['Fil_Opcao_R']==1 ?
			   
			   // Imprime - Custo
			   AlinhaStr( 'Cust.Med:' ,2,9 ).
               '  '.AlinhaStr( FormatoMoeda(ROUND($nTotalCus /ROUND($nTotalQtd,3),2 ) ),2,8 ).'  ='.			   
               AlinhaStr( FormatoMoeda( ROUND($nTotalCus,2) ),2,10 ).' T.Custo'.
			   $sPulaLinha.
			   //
			   // Imprime - Lucro
			   //
			   AlinhaStr( '% Lucro:',2,9 ).
               
               ( $aV_Sessao['Fil_Ordem_R']==1 ?
			      //
				  // Ordem Por: VALOR
				  //
			      AlinhaStr( NUMBER_FORMAT($nPor_T_Ger,2,',','').'%', 2, 11 )
		       :  
			      //
				  // Ordem Por: Quantidade
				  //			   
			      AlinhaStr( NUMBER_FORMAT($nPor_T_Ger,2,',','').'%', 2, 11 )
			   ).
			   ' ='.
			   AlinhaStr( FormatoMoeda( ROUND($nTotalLuc,2) ),2,10).' T.Lucro'
			 :  
			 '' 
			 ).	 
			 			 
			 $sPulaLinha.
             '';
	   }
       
	   If ( $n_Reg_Qtd>0 ) {
          $sTxt_Rel .=
			 //
			 // 80 Colunas
			 //			 		  
		     ( $aV_Sessao['Fil_Opcao_C']==1 ?
			    STR_REPEAT("-",80)
			 //
			 // 40 Colunas
			 //			 			 
			 :
			 
			    STR_REPEAT("-", 40)
             ).			
			$sPulaLinha.
		     
			 AlinhaStr('Registros impressos: '.Str_Zero($n_Reg_Qtd,6),0).
			 $sPulaLinha.
             $sPulaLinha.
             $sPulaLinha;
	   } Else {
	      $aV_Sessao['TXT_REL'] = '';
		  $aV_Sessao['TXT_EXCEL'] = '';
          $sRet_Javs .= 
		     "parent.sIdHasFocus='in_RelAbc_DatIni';".
             Info_Evento('Não há movimento para gerar este relatório.',0).
             "setTimeout( function () { ".
	            "parent.document.forms.fmPRelAbc_R.acao.value='FECHAR'; ".
                "parent.document.forms.fmPRelAbc_R.submit();".
			 "}, 500);".
			 ""; 
	   
       }	
	   
	   $aRel_Excel =
	     ARRAY(
	       ARRAY(
		      "Empresa.....: ", $sEmpresaFan
		   ),
		   ARRAY("PULAR_LINHA"),
	       ARRAY(
		      "Relatorio....: ", "CURVA ABC DE PRODUTOS"
		   ),
		   ARRAY("PULAR_LINHA"),
		   ARRAY(
		      "Emissao.....: ", DATE('d/m/Y H:i:s')
		   ),
		   ARRAY("PULAR_LINHA"),
		   ARRAY(
		      "Operador...: ", $R_CadFuncionario->FUN_NOMECP
		   ),
		   ARRAY("PULAR_LINHA"),
		   ARRAY(
		      ( (COUNT($aDadosCaixa)>0) ? "" : "Periodo.....: " ),
			  ( (COUNT($aDadosCaixa)>0) ? "" : $sPeriodo ) 
		   ),
		   ARRAY(((COUNT($aDadosCaixa)>0) ? "" : "PULAR_LINHA" )),
		   ARRAY(
		      ( $aV_Sessao['Fil_Cod_Pro']>0 ? ' * '.(@$aProdutos[$aV_Sessao['Fil_Cod_Pro']][2]).' - '.SUBSTR(@$aProdutos[$aV_Sessao['Fil_Cod_Pro']][0],0,30) : ''),
		   ),
		   ARRAY(($aV_Sessao['Fil_Cod_Pro']>0 ?"PULAR_LINHA" : "" )),
		   ARRAY(
		      ( $aV_Sessao['Fil_Cod_Gru']>0 ? ' * '.Str_Zero($aV_Sessao['Fil_Cod_Gru'],3).' - '.(@$aGrupos[$aV_Sessao['Fil_Cod_Gru']]) : ''),                                      //
           ),		   
           ARRAY(( $aV_Sessao['Fil_Cod_Gru']>0 ? "PULAR_LINHA" : "" )),
		   ARRAY(
		      ( (COUNT($aDadosCaixa)>0) ? ' * Caixa '.Str_Zero($aV_Sessao['Fil_Seq_Cxa'],6)." ".DATE("d/m/Y",$aDadosCaixa[7])." ".DATE("H:i:s",$aDadosCaixa[2]) : '' ),           
		   ),		   
           ARRAY(((COUNT($aDadosCaixa)>0) ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
			  ( (COUNT($aDadosCaixa)>0) ? '      Operador: ' : "" ),
			  ( (COUNT($aDadosCaixa)>0) ? $aDadosCaixa[6][2] : '' )                                                                                            //
           ),		   		   	           
           ARRAY(((COUNT($aDadosCaixa)>0) ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
		      ( $aV_Sessao['Fil_Vendido']==1 ? ' * Produtos vendidos' : '' ),
			  ( $aV_Sessao['Fil_Vendido']==1 ? "" : ' * Produtos nao Vendidos' )
           ),
		   ARRAY("PULAR_LINHA"),
		   ARRAY(	  
			  ( $aV_Sessao['Fil_ResmPor']==0 ? ' * Resumo por Produto' : '')
		   ),   
		   ARRAY(( $aV_Sessao['Fil_ResmPor']==0 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_ResmPor']==1 ? ' * Resumo por Grupo' : '')                                                                                                      //		  
		   ),
		   ARRAY(( $aV_Sessao['Fil_ResmPor']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_ResmPor']==2 ? ' * Resumo por Grupo + Produto' : '')
           ),		   
		   ARRAY(( $aV_Sessao['Fil_ResmPor']==2 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Ordem_R']==0 ? ' * Ordem por quantidade' : '')                                                                                                    //
           ),		   
	       ARRAY(( $aV_Sessao['Fil_Ordem_R']==0 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	       	  ( $aV_Sessao['Fil_Ordem_R']==1 ? ' * Ordem por valor' : '')                                                                                                         //
           ),		   
		   ARRAY(( $aV_Sessao['Fil_Ordem_R']==1 ? "PULAR_LINHA": "" )),
		   ARRAY(	  
	       	  ( $aV_Sessao['Fil_Ordem_R']==2 ? ' * Ordem por descrição' : '')                                                                                                     //  
		   ),		   
		   ARRAY(( $aV_Sessao['Fil_Ordem_R']==2 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Ordem_R']==3 ? ' * Ordem por código do produto' : '')                                                                                             //
		   ),		   
		   ARRAY(( $aV_Sessao['Fil_Ordem_R']==3 ? "PULAR_LINHA": "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Opcao_R']==0 ? ' * Vendas' : '' )
		   ),		   
           ARRAY(( $aV_Sessao['Fil_Opcao_R']==0 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Opcao_R']==1 ? ' * Vendas/Custo/Lucro' : '' )
		   ),		   
	       ARRAY(( $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Opcao_R']==2 ? ' * Vendas com cupom fiscal' : '' )
           ),		   
	       ARRAY(( $aV_Sessao['Fil_Opcao_R']==2 ? "PULAR_LINHA" : "" )),
		 /*  ARRAY(
	          ( $aV_Sessao['Fil_Tip_Ven']==4 ? ' * Tipo: Todos' : '' )
           ),		   
	       ARRAY(( $aV_Sessao['Fil_Tip_Ven']==4 ? "PULAR_LINHA" : "" )), */
		   ARRAY(
	          ( $aV_Sessao['Fil_Tip_Ven_Consignado']==1 ? ' * Tipo: '.$sTipoConsignado : '' )
           ),		   
	       ARRAY(( $aV_Sessao['Fil_Tip_Ven_Consignado']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Tip_Ven_Local']==1 ? ' * '.$sLocalCom : '' )                                                                           // 
           ),		   
           ARRAY(( $aV_Sessao['Fil_Tip_Ven_Local']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Tip_Ven_balcao']==1 ? ' * Balcão' : '' )
           ),		   
	       ARRAY(( $aV_Sessao['Fil_Tip_Ven_balcao']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Tip_Ven_Disk']==2 ? ' * Disk' : '' )
		   ),		   	  
		  //( $aV_Sessao['Fil_Opcao_C']==1 ? STR_REPEAT("=",80) : "" ),                                                                                                          //
   	       ARRAY(( $aV_Sessao['Fil_Tip_Ven_Disk']==2 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
		      ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? 'Produto                                         ' : "" ),
		      ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? 'Quantidade       ' :  "" ),
		      ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? 'Val  ': "" ),
		      ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? '%Repres' : "" )
		   ),		   	  
		   //( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ?  STR_REPEAT("-",80) : "" ),                                         //
           ARRAY(( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
		      ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 ? "PULAR_COLUNA" : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 ? "PULAR_COLUNA" : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 ? 'Qtde     ' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 ? 'Pr.Médio    ' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 ? 'Tot.Venda  ' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 ? '%Repres' : '' )          
		   ),		   	  
           ARRAY(( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==0 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
              ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Qtde     ' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Pr.Médio    ' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Tot.Venda   ' : "" ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? '%Repres' : '' )          //
		   ),		   	  
           ARRAY(( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
              ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA': '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA': '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA': '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA': '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'M.Un.Custo  ': '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Tot.Custo          ' : '' )
           ),		   	  
           ARRAY(( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
              ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Tot.Lucro   ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? '%Lucro ' : '' )
		   ),		   	  
		   ARRAY(( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
              ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==2 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==2 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==2 ? 'Qtde     ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==2 ? 'Pr.Médio    ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==2 ? 'Tot.Venda   ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==2 ? '%Repres' : '' )
           ),		   	  
		   //( $aV_Sessao['Fil_Opcao_C']==1 ? STR_REPEAT("=",80) : '' ),                                                                                                          //
		                           // 40 colunas                                                                                                                                                        //          
           //( $aV_Sessao['Fil_Opcao_C']==0 ? STR_REPEAT("=",40) : ''),                                                                                                         //
		   ARRAY(( $aV_Sessao['Fil_Opcao_C']==1 && $aV_Sessao['Fil_Opcao_R']==2 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
              ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? ' Produto           ' : ''),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? 'Quantidade    ' : ''),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? 'Valor  ' : '')                   //
		   ),		   	  	             
		   //( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ?   STR_REPEAT("-",40) : ''),                                         // 
		   ARRAY( ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 && $aV_Sessao['Fil_ResmPor']==2 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
		      ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 ? 'Qtde     '    : '' ),                                                                              //
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 ? 'Pr.Médio    ' : '' ),                                                                              //
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 ?	'Tot.Venda   ' : '' ),                                                                              // 
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 ?	'%Repres'      : '' )
		   ),
		   ARRAY( ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==0 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
		      ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Qtde     ' : '' ),
		      ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Pr.Médio    ' : '' ),
		      ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Tot.Venda   ' : '' ),
		      ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? '%Repres' : '' )  
           ),
		   //
	 	   ARRAY( ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'M.Un.Custo  ': '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Tot.Custo          ' : '' )                                                  //
		   ),
		   ARRAY( ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? 'Tot.Lucro   ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? '%Lucro ' : '' )                                                  //
           ),   
		   ARRAY( ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==1 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==2 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==2 ? 'PULAR_COLUNA' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==2 ? 'Qtde     ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==2 ? 'Pr.Médio    ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==2 ? 'Tot.Venda   ' : '' ),
			  ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==2 ? '%Repres' : '' )                                                  // 
   	       //( $aV_Sessao['Fil_Opcao_C']==0 ? STR_REPEAT("=",40) : '' )                                                                                                         //
           ),   					   
		   ARRAY( ( $aV_Sessao['Fil_Opcao_C']==0 && $aV_Sessao['Fil_Opcao_R']==2 ? "PULAR_LINHA" : "" )),
		   ARRAY(	  
	          ($aV_Sessao['Fil_ResmPor']==0 ? '** RESUMO POR PRODUTO **' : "") 
		   ),
		   ARRAY( ($aV_Sessao['Fil_ResmPor']==0 ? "PULAR_LINHA" : "" )),
		  ( $aV_Sessao['Fil_ResmPor']==0 ? $aRel_RP_01 : "" ),
		   ARRAY(	
		       ($aV_Sessao['Fil_ResmPor']==1 ? AlinhaStr('** RESUMO POR GRUPO **',1) : ""),
			   ($aV_Sessao['Fil_ResmPor']==2 ? AlinhaStr('** RESUMO POR GRUPO + PRODUTO **',1) : "")
		   ),
		   ARRAY(($aV_Sessao['Fil_ResmPor']==1) || ($aV_Sessao['Fil_ResmPor']==2) ? "PULAR_LINHA" : ""),
		   ( ($aV_Sessao['Fil_ResmPor']==1 ) || ($aV_Sessao['Fil_ResmPor']==2)  ? @$aRel_RPG_01 : "" ),
		   //( $aV_Sessao['Fil_ResmPor']==2  ? @$aRel_RPG_02 : "" ),
		   ( ($aV_Sessao['Fil_ResmPor']==1 ) || ($aV_Sessao['Fil_ResmPor']==2)  ? @$aRel_RPG_03 : "" ),
		   ($nTotalQtd>0 ? @$aRel_RPG_04 : "" )
		 );
	   
	   
	   
       $sTxt_Rel .=
          $sPulaLinha.
          $sPulaLinha;
	   //
	   $sTxt_Rel = RemoveAcentos($sTxt_Rel);
	   
	   $aV_Sessao['TXT_REL'] = $sTxt_Rel;
       
	   $aV_Sessao['TXT_EXCEL'] = $aRel_Excel;
	   
	   $sHTML_Rel = $sTxt_Rel;
       $sHTML_Rel = STR_REPLACE(CHR(10),"",$sHTML_Rel);
       $sHTML_Rel = STR_REPLACE(CHR(13),"<br>",$sHTML_Rel);
       $sHTML_Rel = STR_REPLACE(CHR(32),"&nbsp;",$sHTML_Rel);
       $sHTML_Rel =
          '<div align="center" style="-moz-user-select:text; -khtml-user-select:text; -webkit-user-select:text; -ms-user-select:text; user-select: text; cursor:auto;">'.
           '<table border="0" cellspacing="0" cellpadding="0"><tr><td align="left" style="font-size:13px; font-family:Courier New,Courier,mono;">'.
            $sHTML_Rel.
           '</td></tr></table>'.
          '</div>';
	   //
       $sRet_Javs .= 
          "parent.bModIni_Ping_Ativo = true;".
          "parent.JanEspera(false);".
          "parent.document.getElementById('dv_RelAbcR_Txt').innerHTML = ".JAVA_CharCode($sHTML_Rel).";".
          "parent.document.getElementById('objRelAbcR_BT_Abr').style.display='inline-block';".
          "parent.document.getElementById('objRelAbcR_BT_Dwn').style.display='inline-block';".
          "";
	   //
	   $aSessao[$sNomeAcesso.'_S'] = $aV_Sessao;
    //
    // IMPRIMIR Relatório pronto
    } ElseIf ( $sAcao=="IMP" ) {
       $sRet_Javs .= "parent.JanEspera(false); ";
	   $aV_Sessao = @$aSessao[$sNomeAcesso.'_S'];
       $sCfg_ClpExp2 = SQLVarConfig('GARCOM_CLIPPER_ARQ_EXPORTA2');
       If ( STRLEN($sCfg_ClpExp2)>3 ) {
	      $sTxt_Cupom = @$aV_Sessao['TXT_REL'];
          If (STRLEN($sTxt_Cupom)>0) {
		     // Gravar o relatório Texto
             $sNomArqExpT = $sCfg_ClpExp2.$R_CadFuncionario->FUN_CODIGO.'_'.DATE("d-m-Y_h-i-s").'_ABC.TMP';
             $sIP_NomeArq = STR_REPLACE(".","_",ObterIPdoCliente());
             $sNomArqExpR = $sCfg_ClpExp2.$R_CadFuncionario->FUN_CODIGO.'_'.DATE("d-m-Y_h-i-s").'_ABC_'.$sIP_NomeArq.'.REL';
			 //
			 ERROR_REPORTING(0);      // Bloqueio o relatório de erro
             If ( $hArqExp = FOPEN( $sNomArqExpT, "a" ) ) {
                FWRITE($hArqExp, $sTxt_Cupom );
                FCLOSE( $hArqExp );
        	    If ( FILE_EXISTS($sNomArqExpR) ) { UNLINK($sNomArqExpR); }
        	    RENAME( $sNomArqExpT, $sNomArqExpR );
			    //
			 } Else {
		        $sRet_Javs .= Info_Evento('Erro ao gerar arquivo do relatório para impressão.',1,"Impressão de relatório");
			 }
			 ERROR_REPORTING(E_ALL); // Desbloqueio o relatório de erro
             //
          } Else {    // Sem conteudo para imprimir
             $sRet_Javs .=
                 Info_Evento('Não há conteúdo para imprimir.').
                 '';
          }
       } Else {       // Sem caminho para impressão
          $sRet_Javs .=
             Info_Evento('Parametros do caminho inválido.').
             $sJavaFechaEr;
       }
    //
	// >> Gerar texto para download
    } ElseIf ( $sAcao=="GERAR_TEXTO" ) {
	   $sArquivo = "Relatorio_Curva_ABC_Produtos_".DATE("d-m-Y_H-i-s").".txt";
       $sTxt_Cupom = @$aV_Sessao['TXT_REL'];
	   HEADER("Content-Type: text/plain");
	   HEADER("Content-Length: ".STRLEN($sTxt_Cupom));
	   HEADER("Content-Disposition: attachment; filename=".$sArquivo);
	   ECHO $sTxt_Cupom;
	   EXIT;
    //
    // >> Gerar excel para download
    } ElseIf ( $sAcao=="GERAR_EXCEL" ) {
       $sArquivo = "Relatorio_Curva_ABC_Produtos_".DATE("d-m-Y_H-i-s").".csv";
       //$sTxt_Cupom = @$aV_Sessao['TXT_REL'];
	   $aRel_Excel = @$aV_Sessao['TXT_EXCEL'];
	   $sTxt_Cupom = Exporta_Excel( $aRel_Excel,$sNomeAcesso,$aV_Sessao['Fil_Opcao_C'] );
	   
	   //HEADER ("Cache-Control: no-cache, must-revalidate");
       //HEADER ("Pragma: no-cache");
       HEADER ("Content-type: text/plain");
	   HEADER("Content-Length: ".STRLEN($sTxt_Cupom));
	   HEADER("Content-Disposition: attachment; filename=".$sArquivo);
       //HEADER ("Content-Disposition: attachment; filename=\"{$arquivo}\"" );
       //header ("Content-Description: PHP Generated Data" );
	   ECHO $sTxt_Cupom;
	   EXIT;
    //
    // FECHAR Janela
    } ElseIf ( $sAcao=="FECHAR" ) {
	   UNSET( $aSessao[$sNomeAcesso.'_S'] );
	   UNSET( $aV_Sessao['Jan_nLeft' ]);
	   UNSET( $aV_Sessao['Jan_nWidth']);
	   UNSET( $aV_Sessao['TXT_EXCEL']);
       $sRet_Javs .=
	       "if (parent.document.getElementById('".$oJanelaPrinc->sIdObj."') != null) { parent.RmElem('".$oJanelaPrinc->sIdObj."'); }".
		   "parent.document.getElementById('".$sNomeIdJan1."_Travar').style.visibility='hidden';".
		   "parent.Disabled_In_Elems('".$sNomeIdJan1."',false);".
	       "parent.document.getElementById('in_RelAbc_DatIni').focus();".
		   "";
    //
    // Janela
	} Else {
	   $aV_Sessao = ARRAY();
	   $aV_Sessao['Fil_DataIni']       		= @$_REQUEST['Fil_DataIni'];         // Data inicial
	   $aV_Sessao['Fil_DataFim']       		= @$_REQUEST['Fil_DataFim'];         // Data Final
	   $aV_Sessao['Fil_Cod_Pro']       		= (@$_REQUEST['FilPro']+0);          // Filtrar o produto
	   $aV_Sessao['Fil_Cod_Gru']       		= (@$_REQUEST['FilGru']+0);          // Filtrar o grupo
	   $aV_Sessao['Fil_Seq_Cxa'] 	   		= (@$_REQUEST['FilCxa']+0);          // Filtrar por sequencia de caixa
	   $aV_Sessao['Fil_Vendido'] 	   		= (@$_REQUEST['Vendid']+0);          // Somente produtos vendido ou não vendido
	   $aV_Sessao['Fil_ResmPor'] 	  	    = (@$_REQUEST['ResPor']+0);          // Resumo por 0=Produto,    1=Grupo, 2=Grupo + Produto
	   $aV_Sessao['Fil_Ordem_R'] 	   	    = (@$_REQUEST['OrdemR']+0);          // Ordem por: 0=Quantidade, 1=Valor, 2=Descrição, 3=Código do produto
	   $aV_Sessao['Fil_Opcao_R'] 	   		= (@$_REQUEST['OpcaoR']+0);          // Opcao por: 0=Vendas, 1=Custo/Lucro
	   $aV_Sessao['Fil_Tip_Ven_Local'] 		= isset($_POST['FilTip_'.$sLocalCom.'']);         // Tipo do local 
	   $aV_Sessao['Fil_Tip_Ven_Consignado'] = isset($_POST['FilTip_'.$sTipoConsignado.'']);          // Tipo do local 
	   $aV_Sessao['Fil_Tip_Ven_balcao'] 	= isset($_POST['FilTip_BALCAO']); 
	   $aV_Sessao['Fil_Tip_Ven_Disk'] 		= isset($_POST['FilTip_DISK']);          // Tipo do local 
	 //  $aV_Sessao['Fil_Tip_Ven'] 			= (@$_REQUEST['FilTip']+0);          // Tipo do local 
	   $aV_Sessao['Fil_Cod_Ent']       		= (@$_REQUEST['FilEnt']+0);          // Código do entregador (0=Todos)
	   $aV_Sessao['Fil_Opcao_C']       		= (@$_REQUEST['OpcaoC']+0);          // Tamanho do Relatório 40 ou 80 colunas
	  //
	   $oJanelaPrinc->nWidth = 750;
	   $oJanelaPrinc->nLeft  = 5+(($nTela_W/2)-($oJanelaPrinc->nWidth/2));
		
	   $aV_Sessao['Jan_nLeft' ] = $oJanelaPrinc->nLeft;
	   $aV_Sessao['Jan_nWidth'] = $oJanelaPrinc->nWidth;
	   
	   
	  //
	   $sSQLRequest = 'SELECT GRU_CODIGO, GRU_DESCRI FROM cad_grupo_produtos ORDER BY GRU_DESCRI ASC;';
	   $Rows_Temp = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	   $aListaGruposP = ARRAY();
	   While ( $Row_Temp = MYSQL_FETCH_OBJECT($Rows_Temp) ) {
		  If ( (0+@$_POST['GRU_CODIGO_'.$Row_Temp->GRU_CODIGO]) ) {
			 $aListaGruposP[$Row_Temp->GRU_CODIGO] = $Row_Temp->GRU_CODIGO;
		  }
	   }
	   $aV_Sessao['Fil_Mat_Gru'] = $aListaGruposP;                    // Filtrar por lista de grupo
	   //
	   $aSessao[$sNomeAcesso.'_S'] = $aV_Sessao;
	   //
	   $oJanelaPrinc->sJavKeyDown = "return Car_".$sNomeAcesso."2.Teclas_F(this,event);";
	   //
       // Tela HTML
       $sRet_TelaJ_HTML =
    	  $oJanelaPrinc->MontaJanHTML(True).
		  // Teclas
		  '<input id="in_RelAbcV_Tecla" style="position:absolute; top:-600px; left:-600px; width:1px; height:1px;">'.
		  //
          '<form name="fmPRelAbc_R" accept-charset="utf-8" method="post" action="./car_js.php" target="car_'.$sNomeAcesso.'3">'.
           '<input name="mod" type="hidden" value="'.$sModulo.'">'.
           '<input name="submod" type="hidden" value="'.$sSubModulo.'">'.
           '<input name="acao" type="hidden" value="">'.
    	   '<input name="nomeacs" type="hidden" value="'.$sNomeAcesso.'">'.
          '</form>'.
		  '<div id="dv_RelAbcR_Txt" style="width:100%; height:400px; background:#FFFFFF; overflow:auto;">'.
           '<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">'.
            '<tr><td align="center" valign="middle" style="color:#555555;">'.
            'Aguarde um momento...<br>'.
            '<img src="images/img_load1.gif" border="0">'.
            '</td></tr>'.
           '</table>'.
		  '</div>'.
		  //
          '<table width="100%" style="background-color:'.$sCorBarraInf.';"></tr>'.
           '<td width="4px" height="40px">&nbsp;</td>'.
           '<td width="150px" align="left">'.
            HTML_Botao( 3, 'objRelAbcR_BT_Abr',
			                                 "parent.JanEspera(true, 'Imprimindo relatório... aguarde...');".
											 "setTimeout( function () { ".
		                                        "document.forms.fmPRelAbc_R.acao.value='IMP';".
                                                "document.forms.fmPRelAbc_R.submit();".
											 "}, 500);"
                         , 'Imprimir (F2)'   ,'images/btimg_imp.png',120).
		   '</td>'.
		   '<td align="left">'.
            HTML_Botao( 3, 'objRelAbcR_BT_Dwn',  'Car_'.$sNomeAcesso.'2.SalvarTexto();'
                         , 'Salvar (F9)'   ,'images/btimg_baixar_texto.png',100).		    
		   '</td>'.
           '<td align="left">'.
            HTML_Botao( 3, 'objRelAbcR_BT_Exc',  'Car_'.$sNomeAcesso.'2.SalvarExcel();'
                         , 'Excel (F7)'   ,'images/btimg_exportar_excel.png',100).		    
		   '</td>'.
           '<td align="right">'.
            HTML_Botao( 3, 'objRelAbcR_BT_Fch', $oJanelaPrinc->sJavOnClickF
                         , 'Sair (ESC)' ,'images/btimg_fechar.png').		    
		   '</td>'.
           '<td width="4px">&nbsp;</td>'.
		   '</tr></table>'.
		   //
    	   $oJanelaPrinc->MontaJanHTML(False);
       //
	   // Java anterior
       $sRet_Javs .=
		  "function Teclas_F( Objeto, Evento ) {".
             "vNumTecla = parent.Tecla_Apertada(Evento);".
             "if ( vNumTecla==113) { ".        //  ** [F2] **          // (Imprimir)
                 "setTimeout( parent.document.getElementById('objRelAbcR_BT_Abr').onclick , 50);".
			     //
		     "} else if ( vNumTecla==116) { ". //  ** [F5] **     Não atualizar
			     //
		     "} else if ( vNumTecla==120) { ". //  ** [F9] **          // (Salvar em texto)
                 "setTimeout( parent.document.getElementById('objRelAbcR_BT_Dwn').onclick , 50);".
			     //
		    "} else if ( vNumTecla==118) { ". //  ** [F7] **      // (Exportar Excel)
                 "setTimeout( parent.document.getElementById('objRelAbcR_BT_Exc').onclick , 50);".   
				 //
			 "} else if ( vNumTecla==27) { ".  //  ** [ESC] **         // (SAIR)
                 "setTimeout( parent.document.getElementById('objRelAbcR_BT_Fch').onclick , 50);".
			 "} else {".
			     "return true;".
			 "}".
			 "return false;".
          '}'.
		  //
		  "function SalvarTexto() {".
	        "parent.document.forms.fmPRelAbc_R.acao.value='GERAR_TEXTO';".
            "parent.document.forms.fmPRelAbc_R.submit();".
		  "}".
		  "function SalvarExcel() {".
	        "parent.document.forms.fmPRelAbc_R.acao.value='GERAR_EXCEL';".
            "parent.document.forms.fmPRelAbc_R.submit();".
		  "}".
		  //
	      "";
       // Java posterior
       $sRet_JavsPos .=
         "parent.document.getElementById('objRelAbcR_BT_Abr').style.display='none';".
         "parent.document.getElementById('objRelAbcR_BT_Dwn').style.display='none';".
	     "parent.document.getElementById('in_RelAbcV_Tecla').focus(); ".
	     "setTimeout( function () { ".
	        "parent.document.forms.fmPRelAbc_R.acao.value='MONTAR';".
            "parent.document.forms.fmPRelAbc_R.submit();".
		 "} , 300); ".
         "";
	   //
	   //
	}
//
//  ** TELA PRINCIPAL DE RELATORIO CURVA ABC **
} Else {
    // Criar objeto Janela
    $oJanelaPrinc = New R_Janela();
    $oJanelaPrinc->sIdObj  = $sNomeIdJan1; 
    $oJanelaPrinc->nTop    = 40;
    $oJanelaPrinc->nLeft   = 5;
    $oJanelaPrinc->nWidth  = 550;   // Largura
    $oJanelaPrinc->nHeight = 0;     // Altura
	$oJanelaPrinc->nLeft  += ($nTela_W/2)-($oJanelaPrinc->nWidth/2);
    $oJanelaPrinc->sTitulo = 'Relatório de curva abc de produtos';
	$oJanelaPrinc->aIdsObjList =
	      ARRAY(
		    'in_RelAbc_DatIni',
		    'in_RelAbc_DatFim',
			'sl_RelAbc_FilPro',
			//'sl_RelAbc_FilGru',
			'sl_RelAbc_FilCxa',
			'sl_RelAbc_Vendid',
			'sl_RelAbc_ResPor',
			'sl_RelAbc_OrdemR',
			'sl_RelAbc_OpcaoR',
			'sl_RelAbc_FilTip_'.$sLocalCom.'',
			'sl_RelAbc_FilTip_'.$sTipoConsignado.'',
			'sl_RelAbc_FilTip_DISK',
			'sl_RelAbc_FilTip_BALCAO',
			'sl_RelAbc_FilEnt',
			'sl_RelAbc_OpcaoC'
		  );
    //    
	$sJavaTravarJ = "document.getElementById('".$oJanelaPrinc->sIdObj."_Travar').style.visibility='visible'; parent.Disabled_In_Elems('".$oJanelaPrinc->sIdObj."',true);";
 	$oJanelaPrinc->sJavOnClickF =
         $sJavaTravarJ.
		 "document.forms.fmPRelAbc.acao.value='FECHAR'; ".
         "document.forms.fmPRelAbc.submod.value=''; ".
         "document.forms.fmPRelAbc.submit();";
    
	
	
	//
    // ATUALIZA TELA: Sequencia de Caixa
    If ( $sAcao=="ATUALIZA" ) {
		$aFil_TipVen=[];
		$i = 0;
	   //
	   $sFil_DataIni  = @$_REQUEST['Fil_DataIni'];          // Data inicial
	   $sFil_DataFim  = @$_REQUEST['Fil_DataFim'];          // Data Final
	   $nNumSeqCaiSl  = @$_REQUEST['NumSeqCai']+0;          // Sequencia de caixa selecionada
	   $d_Fil_DataIni = ConvertDataSTR( ConvertDataBRUS($sFil_DataIni) );
	   $d_Fil_DataFim = ConvertDataSTR( ConvertDataBRUS($sFil_DataFim) );
//	   $sFil_TipVen   = (@$_REQUEST['FilTip']+0);           // Tipo do local (0=Mesa, 1=Balcao, 2=Entrega, 3=Comanda)
      
	  $sDISK = isset($_POST['FilTip_DISK']);
	  $sBALCAO = isset($_POST['FilTip_BALCAO']);
	  $sLocal = isset($_POST['FilTip_'.$sLocalCom.'']);
	  $sConsignado = isset($_POST['FilTip_'.$sTipoConsignado.'']);
        
		$sFil_TipVen_DISK        = '';
		$sFil_TipVen_Balcao      = '';
		$sFil_TipVen_Consignado  = '';
		$sFil_TipVen_Local       = '';
		
	if($sLocal != ''){
		$sFil_TipVen_Local   = 3;  
	}
	if($sConsignado != ''){
		$sFil_TipVen_Consignado   = 5;  
	}
	if( $sDISK != ''){
		$sFil_TipVen_DISK   = 2;  
	}
	if($sBALCAO!= ''){
		$sFil_TipVen_Balcao   = 1;  
	}
	   $nFil_CodEnt   = (@$_REQUEST['FilEnt']+0);           // Código do entregador (0=Todos)
	   $nMarca_ChkBox = (@$_POST['Marca_Chkbox']+0);        // Marcar grupos (1=Marca todos, 2=Desmarca todos)
	   //
	   $sSQLParm = '';
	   If ($d_Fil_DataIni>0) {
	       If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	       $sSQLParm .= '(FAT_DATAINI>="'.DATE('Y-m-d',$d_Fil_DataIni).'") ';             // Comparando (Inicial)
	   }
	   If ($d_Fil_DataFim>0) {
	       If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	       $sSQLParm .= ' (FAT_DATAINI<="'.DATE('Y-m-d',$d_Fil_DataFim).'") ';             // Comparando (Final)
       }
	   $aFil_TipVen=[$sFil_TipVen_Local,$sFil_TipVen_Consignado,$sFil_TipVen_DISK,$sFil_TipVen_Balcao];


	  //
	  // If ( $nFil_CodEnt>0 ) {
		  //$sFil_TipVen = 2;
	   //   If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	   //   $sSQLParm .= '(ftg.FAT_COD_ENT='.$nFil_CodEnt.')';
	//   }
	   //
	   /*
	   If( ($aFil_TipVen[0] != '' OR $aFil_TipVen[1] != '' OR $aFil_TipVen[2] != '' OR $aFil_TipVen[3] != '')) {
		   If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND ';}
		   
		   $sFil_TipVen = implode($aFil_TipVen);
		$sSQLParm .= '(ftg.FAT_TIP_LOC IN ("'.$sFil_TipVen.'")) ';                  // Tipo do local (0=Mesa, 1=Balcao, 2=Entrega, 3=Comanda)
	   }*/
	   
	   		 
		 $i=0; //contadores
		 $x=0; //contadores
		 
	   		 if($aFil_TipVen[0] != '' OR $aFil_TipVen[1] != '' OR $aFil_TipVen[2] != '' OR $aFil_TipVen[3] != '' ){
			If (STRLEN($sSQLParm)>0 AND $x == 0) { $sSQLParm .= ' AND ';}		 
		 $sSQLParm .= ' ( ';
		 }

	     If( $aFil_TipVen[0] == 3 ) {
		   If ( $x > 0) { $sSQLParm .= ' OR ';}
		$sSQLParm .= '(ftg.FAT_TIP_LOC = 0) ';
		
			$x++;
		 }
		 If( $aFil_TipVen[1] != '') {
			If ( $x > 0) { $sSQLParm .= ' OR ';}
		$sSQLParm .= '(ftg.FAT_TIP_LOC = '.$aFil_TipVen[1].') ';
			
			$x++;		
		 }
		If( $aFil_TipVen[2] != '') {
		If ( $x > 0) { $sSQLParm .= ' OR ';}
				 
		$sSQLParm .= '(ftg.FAT_TIP_LOC = '.$aFil_TipVen[2].') ';    

			$x++;		
		 
		}
		 
		  If( $aFil_TipVen[3] != '') {
		If ( $x > 0) { $sSQLParm .= ' OR ';}
			  
		$sSQLParm .= '(ftg.FAT_TIP_LOC = '.$aFil_TipVen[3].') ';    
		
			$x++;		
		 
		}
		 
/*
		 
		 if($aFil_TipVen[0] != '' OR $aFil_TipVen[1] != '' OR $aFil_TipVen[2] != '' OR $aFil_TipVen[3] != '' ){
			If (STRLEN($sSQLParm)>0 AND $x == 0) { $sSQLParm .= ' AND ';}		 
		 $sSQLParm .= ' ( ';
		 }
		foreach($aFil_TipVen as $tipovenda){	
			if($aFil_TipVen[$i] != ''){
				
	//		If (STRLEN($sSQLParm)>0 AND $x == 0) { $sSQLParm .= ' AND ';}
			If ($x > 0) { $sSQLParm .= ' OR ';}
		   
		$sSQLParm .= '(ftg.FAT_TIP_LOC = '.$aFil_TipVen[$i].') ';  
				$x++;
			}
		
			 $i++;
			 
			
			
		 }   */
		if($aFil_TipVen[0] != '' OR $aFil_TipVen[1] != '' OR $aFil_TipVen[2] != '' OR $aFil_TipVen[3] != '' ){
		  $sSQLParm .= ' ) ';
		 }

		
	
		 
	   /*
	   If( ($aFil_TipVen[$i])==5) {
	      If (STRLEN($sSQLParm)>0) { $sSQLParm .= ' AND '; }
	      $sSQLParm .= '(ftg.FAT_TIPOORI=5)';                                   // Consignados
		*/  
	   

	   //
	   $sSQLRequest = ' SELECT * FROM cad_produto; ';
	   $Rows_Temp = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	   $aProdutos = ARRAY();
	   While ( $Row_Temp = MYSQL_FETCH_OBJECT($Rows_Temp) ) {
	      $aProdutos[$Row_Temp->ITE_CODIGOI] =
		      ARRAY( 0=>$Row_Temp->ITE_DESCRIC,
			         1=>$Row_Temp->ITE_COD_GRU,
			         2=>$Row_Temp->ITE_CODIGOL
				   );
       }
	   //
	   $sSQLRequest = 'SELECT * FROM cad_grupo_produtos;';
	   $Rows_Temp = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	   $aGrupos = ARRAY();
	   While ( $Row_Temp = MYSQL_FETCH_OBJECT($Rows_Temp) ) {
	      $aGrupos[$Row_Temp->GRU_CODIGO] = $Row_Temp->GRU_DESCRI;
       }
	   //
	   $sSQLRequest =
	      "SELECT ".
		    "ftg.FAT_TIP_LOC,".
			"ftg.FAT_COD_ENT,".
			"ftd.FAT_CODITE1,".
			"ftd.FAT_CODITE2,".
			"ftd.FAT_CODITE3,".
			"ftd.FAT_CODITE4,".
			"ftd.FAT_QTD_ITE,".
			"ftd.FAT_PRE_TOT,".
			"cxa.MVC_SQCAIXA,".
			"cxa.MVC_DATAFIC,".
			"cxa.MVC_DATAMOV,".
			"fun.FUN_NOMECP  ".
		  "FROM fat_item              AS ftd ".
		  "LEFT JOIN fat_geral        AS ftg  ON  ftg.FAT_CODIGOI=ftd.FAT_CFATGER ".
		  "LEFT JOIN mov_caixa        AS cxa  ON  cxa.MVC_SQCAIXA=ftg.FAT_SQCAIXA ".
		  "LEFT JOIN cad_funcionario  AS fun  ON  fun.FUN_CODIGO =cxa.MVC_COD_FUN ".
		  "WHERE ".
			(STRLEN($sSQLParm)>0 ? $sSQLParm.' AND' : '')." ".
			"Length(ftd.FAT_CANITEM)<2 AND ftg.FAT_CAN_DAT=0 AND ftg.FAT_RCFORMA>0 ".
		  "ORDER BY ftg.FAT_DATAINI DESC ".
		  ";";	  
	   $Rows_FatIte = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	   $sLstProHtml = '<option value="0">** Todos os produtos **</option>';
	   //$sLstGruHtml = '<option value="0">** Todos os Grupos **</option>';
	   $sChkGruHtml = '';
	   $sLstCxaHtml = '<option value="0">** Todos os Caixas **</option>';
	   $sLst_Prod = "";
	   $sLst_Grup = "";
	   $sLst_SCxa = "";
	   $sLst_CEnt = "";
	   While ( $Row_FatIte = MYSQL_FETCH_ARRAY($Rows_FatIte) ) {
	      For ($nContador = 1; $nContador<=4; $nContador++) {
		      $nIte_Codigo = $Row_FatIte['FAT_CODITE'.$nContador];
			  If ( $nIte_Codigo>0 && STRPOS(" ".$sLst_Prod, '('.$nIte_Codigo.')' )==0 ) {
	             $sLst_Prod .= '('.$nIte_Codigo.')';
	             $sLstProHtml .=
				     '<option value="'.$nIte_Codigo.'">'.
					   @$aProdutos[$nIte_Codigo][2].' '.@$aProdutos[$nIte_Codigo][0].
					 '</option>';
				 //
				 $nGru_Codigo = @$aProdutos[$nIte_Codigo][1];
			     If ( $nGru_Codigo>0 && STRPOS(" ".$sLst_Grup, '('.$nGru_Codigo.')' )==0 ) {
	                $sLst_Grup .= '('.$nGru_Codigo.')';
                    //$sLstGruHtml .=
                    //    '<option value="'.$nGru_Codigo.'">'.
                    //	  Str_Zero($nGru_Codigo,3).' '.$aGrupos[$nGru_Codigo].
                    //    '</option>';
					$sChkGruHtml .=
					  '<table width="100%">'.
					   '<tr>'.
	                    '<td width="26px" height="22px" align="left" valign="middle">'.
	                       '<input name="GRU_CODIGO_'.$nGru_Codigo.'" '.
						         ($nMarca_ChkBox==1 ? 'checked ' : '').
	                              'type="checkbox" '.
	                      	     'value="1" '.
	                       '>'.
	                    '</td>'.
	                    '<td align="left" valign="middle">'.
	                     Str_Zero($nGru_Codigo,3).' - '.$aGrupos[$nGru_Codigo].
		                 //'&nbsp;&nbsp;'.
	                    '</td>'.
					   '</tr>'.
					  '</table>';
				    //
				 }
			  }
		  }
		  //
		  $nMvc_SqCaixa = $Row_FatIte['MVC_SQCAIXA'];
		  If ( $nMvc_SqCaixa>0 && STRPOS(" ".$sLst_SCxa, '('.$nMvc_SqCaixa.')' )==0 ) {
	         $sLst_SCxa .= '('.$nMvc_SqCaixa.')';
             $sLstCxaHtml .=
                 '<option value="'.$nMvc_SqCaixa.'">'.
             	  Str_Zero($nMvc_SqCaixa,6).' - '.ConvertDataUSBR($Row_FatIte['MVC_DATAFIC']).
				  " ".DATE("H:i:s", ConvertDtHrSTR($Row_FatIte['MVC_DATAMOV'])).
				  " - ".$Row_FatIte['FUN_NOMECP'].
                 '</option>';
		  }
		  //
		  If ( $Row_FatIte['FAT_COD_ENT']>0 && STRPOS(" ,".$sLst_CEnt.",", ','.$Row_FatIte['FAT_COD_ENT'].',' )==0 ) {
			 $sLst_CEnt .= ( EMPTY($sLst_CEnt) ? "" : "," ).$Row_FatIte['FAT_COD_ENT'];
		  }
	   }
	   //
	   $sHTML_LstEnt = '<option value="0">Sem este filtro</option>';
	   If ( ! EMPTY($sLst_CEnt) ) {
	      $sSQLRequest = 'SELECT FUN_CODIGO,FUN_NOMECP FROM cad_funcionario WHERE FUN_CODIGO IN ('.$sLst_CEnt.');';
	      $Rows_Temp = MYSQL_QUERY($sSQLRequest) or die(MYSQL_ERROR().'<br>'.$sSQLRequest);
	      While ( $Row_Temp = MYSQL_FETCH_OBJECT($Rows_Temp) ) {
	         $sHTML_LstEnt .=
			   '<option value="'.$Row_Temp->FUN_CODIGO.'" '.($Row_Temp->FUN_CODIGO==$nFil_CodEnt ? "selected" : "").'>'.
			     Str_Zero($Row_Temp->FUN_CODIGO,4)." - ".$Row_Temp->FUN_NOMECP.
			   '</option>';
		  }
	   }
	   
	   //
       $sRet_Javs .=
          "parent.bModIni_Ping_Ativo = true;".
          "parent.JanEspera(false);".
	      'parent.document.getElementById("sl_RelAbc_FilPro").innerHTML = '.JAVA_CharCode_Mini($sLstProHtml).'; '.
	      //'parent.document.getElementById("sl_RelAbc_FilGru").innerHTML = '.JAVA_CharCode_Mini($sLstGruHtml).'; '.
	      'parent.document.getElementById("dv_RelAbc_FilGru").innerHTML = '.JAVA_CharCode_Mini($sChkGruHtml).'; '.
	      'parent.document.getElementById("sl_RelAbc_FilCxa").innerHTML = '.JAVA_CharCode_Mini($sLstCxaHtml).'; '.
	      'parent.document.getElementById("sl_RelAbc_FilEnt").innerHTML = '.JAVA_CharCode_Mini($sHTML_LstEnt).'; '.
		  'parent.document.getElementById("sl_RelAbc_FilTip_'.$sLocalCom.'").value = "'.$aFil_TipVen[0].'"; '.
		  'parent.document.getElementById("sl_RelAbc_FilTip_'.$sTipoConsignado.'").value = "'.$aFil_TipVen[1].'"; '.
		  'parent.document.getElementById("sl_RelAbc_FilTip_DISK").value = "'.$aFil_TipVen[2].'"; '.
		  'parent.document.getElementById("sl_RelAbc_FilTip_BALCAO").value = "'.$aFil_TipVen[3].'"; '.
		  'parent.document.getElementById("in_RelAbc_DatIni").value="'.$sFil_DataIni.'"; '.
		  'parent.document.getElementById("in_RelAbc_DatFim").value="'.$sFil_DataFim.'"; '.
          "parent.document.getElementById('objRelAbc_BT_Abr').style.display='inline-block';".
		  '';
    //
    // FECHAR
    } ElseIf ( $sAcao=="FECHAR" ) {
       $sRet_Javs .=
	      'parent.document.getElementById("dv_MenuL_Barra").style.visibility="visible";'.
	      "parent.RmElem('".$oJanelaPrinc->sIdObj."');".
	      "parent.Car_".$sNomeAcesso."2.location.href='about:blank';".
	      "parent.Car_".$sNomeAcesso."1.location.href='about:blank';";
    //
    // JANELA TELA PRINCIPAL
	} Else {
	   //
	   $oJanelaPrinc->sJavKeyDown = "return Car_".$sNomeAcesso."1.Teclas_F(this,event);";
	   //
       // Tela HTML
       $sRet_TelaJ_HTML =
    	  $oJanelaPrinc->MontaJanHTML(True).
          '<form name="fmPRelAbc" accept-charset="utf-8" method="post" action="./car_js.php" target="car_'.$sNomeAcesso.'2">'.
           '<input name="mod" type="hidden" value="'.$sModulo.'">'.
           '<input name="submod" type="hidden" value="">'.
           '<input name="acao" type="hidden" value="">'.
    	   '<input name="nomeacs" type="hidden" value="'.$sNomeAcesso.'">'.
		   '<input name="Marca_Chkbox" type="hidden" value="">'.
		   '&nbsp;'.
		  '<table width="100%" border="0">'.
           '<tr>'.
            '<td width="4px" height="20px">&nbsp;</td>'.
            '<td width="120px" align="right">'.
             'Período de trabalho:'.
            '</td>'.
            '<td align="left">'.
       	     '<table border="0" cellspacing="0" cellpadding="0"><tr>'.
			  '<td width="28px" align="center"><img onclick="'."sIdHasFocus='in_RelAbc_DatIni';".'" src="images/bimg_calendario.png" border="0" id="bt_RelAbc_DatIni" style="cursor:pointer;"></td>'.
			  '<td width="77px">'.
			   '<input id="in_RelAbc_DatIni" name="Fil_DataIni" type="text" maxlength="10" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" value="'.ConvertDataUSBR($sData_Trabalho).'" style="font-size:12px; width:99%;">'.
			  '</td>'.
			  '<td align="center" width="10px">'.
			   '-'.
			  '</td>'.
			  '<td width="28px" align="center"><img onclick="'."sIdHasFocus='in_RelAbc_DatFim';".'" src="images/bimg_calendario.png" border="0" id="bt_RelAbc_DatFim" style="cursor:pointer;"></td>'.
			  '<td width="77px">'.
			   '<input id="in_RelAbc_DatFim" name="Fil_DataFim" type="text" maxlength="10" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" value="'.ConvertDataUSBR($sData_Trabalho).'" style="font-size:12px; width:99%;">'.
			  '</td>'.
			 '</tr></table>'.
            '</td>'.
            '<td width="4px" height="20px">&nbsp;</td>'.
		   '</tr>'.
		  '</table>'.
		  '<table width="100%" border="0">'.
		   '<tr>'.
			'<td valign="middle" align="right" width="130px">'.
			 'Filtrar produto:'.
			'</td>'.
		    '<td align="left">'.
			 '<select id="sl_RelAbc_FilPro" name="FilPro" style="width:340px; font-size:11px; font-family:Courier New,Courier,mono;">'.
			 '</select>'.
			'</td>'.
		   '</tr>'.
		   '<tr>'.
			'<td align="right">'.
			 'Filtrar caixa:'.
			'</td>'.
		    '<td align="left">'.
			 '<select id="sl_RelAbc_FilCxa" name="FilCxa" style="width:340px; font-size:11px; font-family:Courier New,Courier,mono;">'.
			 '</select>'.
			'</td>'.
		   '</tr>'.
		   '<tr>'.
			'<td align="right">'.
			 'Filtrar:'.
			'</td>'.
		    '<td align="left">'.
			 '<select id="sl_RelAbc_Vendid" name="Vendid" style="width:160px; font-size:11px; font-family:Courier New,Courier,mono;">'.
			  '<option value="1">Vendidos</option>'.
			  '<option value="0">Não Vendidos</option>'.
			 '</select>'.
			'</td>'.
		   '</tr>'.
		   '<tr>'.
			'<td align="right">'.
			 'Resumo por:'.
			'</td>'.
		    '<td align="left">'.
			 '<select id="sl_RelAbc_ResPor" name="ResPor" style="width:160px; font-size:11px; font-family:Courier New,Courier,mono;">'.
			  '<option value="0">Produtos</option>'.
			  '<option value="1">Grupos</option>'.
			  '<option value="2">Grupos + Produtos</option>'.
			 '</select>'.
			'</td>'.
		   '</tr>'.
		   '<tr>'.
			'<td align="right">'.
			 'Ordem por:'.
			'</td>'.
		    '<td align="left">'.
			 '<select id="sl_RelAbc_OrdemR" name="OrdemR" style="width:160px; font-size:11px; font-family:Courier New,Courier,mono;">'.
			  '<option value="0">Quantidade</option>'.
			  '<option value="1">Valor</option>'.
			  '<option value="2">Descrição</option>'.
			  '<option value="3">Código do produto</option>'.
			 '</select>'.
			'</td>'.
		   '</tr>'.
		   '<tr>'.
			'<td align="right">'.
			 'Tipo valor a ser usado:'.
			'</td>'.
		    '<td align="left">'.
			 '<select id="sl_RelAbc_OpcaoR" name="OpcaoR" style="width:160px; font-size:11px; font-family:Courier New,Courier,mono;">'.
			  '<option value="0">Vendas</option>'.
			  '<option value="1">Vendas/Custo/Lucro</option>'.
			  '<option value="2">Vendas com cupom fiscal</option>'.
			 '</select>'.
			'</td>'.
		   '</tr>'.
		   '<tr>'.
		      '<td align="right">'.
			     'Tipo de venda:'.
		      '</td>'.
			  '<td align="left">'.
			  '<input type="checkbox" id="sl_RelAbc_FilTip_'.$sLocalCom.'" name="FilTip_'.$sLocalCom.'" value="0" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" style="font-size:11px; font-family:Courier New,Courier,mono;">'.$sLocalCom.''.
			  '<input type="checkbox" id="sl_RelAbc_FilTip_'.$sTipoConsignado.'" name="FilTip_'.$sTipoConsignado.'" value="5" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" style="font-size:11px; font-family:Courier New,Courier,mono;">'.$sTipoConsignado.''.
			  '<input type="checkbox" id="sl_RelAbc_FilTip_DISK" name="FilTip_DISK" value="2" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" style="font-size:11px; font-family:Courier New,Courier,mono;">Disk'.
			  '<input type="checkbox" id="sl_RelAbc_FilTip_BALCAO" name="FilTip_BALCAO" value="1" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" style="font-size:11px; font-family:Courier New,Courier,mono;">Balcão'.
			 /*    '<select id="sl_RelAbc_FilTip" name="FilTip" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" style="width:160px; font-size:11px; font-family:Courier New,Courier,mono;">'.
				    '<option value="4">Todos</option>'.
					'<option value="0">'.$sLocalCom.'</option>'.
				    '<option value="2">Disk</option>'.
                    '<option value="1">Balcão</option>'.
                    '<option value="5">'.$sTipoConsignado.'</option>'.
				 '</select>'.
			*/	 
		      '</td>'.
		   '</tr>'.
		   '<tr>'.
		      '<td align="right">'.
			     'Entregador:'.
		      '</td>'.
			  '<td align="left">'.
			     '<select id="sl_RelAbc_FilEnt" name="FilEnt" onchange="return Car_'.$sNomeAcesso.'1.Atualiza();" style="width:260px; font-size:11px; font-family:Courier New,Courier,mono;">'.
				 '</select>'.
		      '</td>'.
		   '</tr>'.
		   '<tr>'.
		      '<td width="108px" align="right" valign="middle">'.
                'Largura do relatório:'.
              '</td>'.
              '<td align="left" valign="middle">'.
		   	     '<select id="sl_RelAbc_OpcaoC" name="OpcaoC" style="width:160px;">'.
		   	        '<option value="0">40 colunas</option>'.
					'<option value="1">80 colunas</option>'.
		   	     '</select>'.
              '</td>'.
		   '</tr>'.
		   '<tr>'.
			'<td align="right">'.
			 'Filtrar grupo:'.
			'</td>'.
		    '<td align="left">'.
		     '<table width="340px" border="0" style="border: 1px solid #AAAAAA;">'.
		      '<tr>'.
			   '<td align="center">'.
			    '<div id="dv_RelAbc_FilGru" style="width:100%; height:150px; overflow-x:hidden; overflow-y:auto;">'.
			    '</div>'.
			   '</td>'.
			  '<tr>'.
			  '</tr>'.
			   '<td align="center">'.
                 HTML_Botao( 3, 'objRelAbc_BT_ChkTds', "document.forms.fmPRelAbc.Marca_Chkbox.value='1';".
                                                       'return Car_'.$sNomeAcesso.'1.Atualiza();'
                              , 'Marcar todos'    ,'images/btimg_ativar.png',120).
				 '&nbsp;&nbsp;'.
                 HTML_Botao( 3, 'objRelAbc_BT_ChkNhm', "document.forms.fmPRelAbc.Marca_Chkbox.value='2';".
                                                       'return Car_'.$sNomeAcesso.'1.Atualiza();'
                              , 'Desmarcar' ,'images/btimg_remover.png',120).
			   '</td>'.
			  '</tr>'.
			 '</table>'.
			 //'<select id="sl_RelAbc_FilGru" name="FilGru" style="width:340px; font-size:11px; font-family:Courier New,Courier,mono;">'.
			 //'</select>'.
			'</td>'.
		   '</tr>'.
		  '</table>'.
		  '</form>'.
		  //
          '<table width="100%" style="background-color:'.$sCorBarraInf.';"></tr>'.
           '<td width="4px" height="40px">&nbsp;</td>'.
           '<td align="left">'.
            HTML_Botao( 3, 'objRelAbc_BT_Abr',
                                             "parent.JanEspera(true, 'Aguarde...');".
			                                 "var vff = document.forms.fmPRelAbc;".
		                                     "vff.acao.value=''; ".
                                             "vff.submod.value='RELATORIO'; ".
                                             "vff.submit();".
											 $sJavaTravarJ
                         , 'Visualizar (F8)' ,'images/btimg_docs.png',120).		    
		   '</td>'.
           '<td align="right">'.
            HTML_Botao( 3, 'objRelAbc_BT_Fch', $oJanelaPrinc->sJavOnClickF
                         , 'Sair (ESC)' ,'images/btimg_fechar.png').		    
		   '</td>'.
           '<td width="4px">&nbsp;</td>'.
		   '</tr></table>'.		   
		  //
    	  $oJanelaPrinc->MontaJanHTML(False);
       //
	   // Java anterior
       $sRet_Javs .=
	     'parent.document.getElementById("dv_MenuL_Barra").style.visibility="hidden";'.
         "function Teclas_F( Objeto, Evento ) { ".
           "vNumTecla = parent.Tecla_Apertada(Evento); ".
           "if ( vNumTecla==119) { ".         // ** [F8] **
               "if (parent.document.getElementById('objRelAbc_BT_Abr').style.display!='none') {".           // (Visualizar)
                  "parent.".$sJava_Desfoca_Input.
                  "setTimeout( parent.document.getElementById('objRelAbc_BT_Abr').onclick , 10);".
         	  "}".
		   "} else if ( vNumTecla==116) { ".  // ** [F5] **     Não atualizar
               //
           "} else if ( vNumTecla==27 ) { ".  // [ESC]
               "parent.".$sJava_Desfoca_Input.
               "setTimeout( parent.document.getElementById('objRelAbc_BT_Fch').onclick , 10);".
		   "} else {".
		     "return true;".
		   "} ".
	       "return false;".
		 '}'.
	     "";
       // Java posterior
       $sRet_JavsPos .=
	     "parent.document.getElementById('in_RelAbc_DatIni').focus();".
	     "function Atualiza() {".
            "parent.bModIni_Ping_Ativo = false;".
            "parent.JanEspera(true, 'Aguarde...');".
	        "parent.document.getElementById('objRelAbc_BT_Abr').style.display='none';".
		    "var vff = parent.document.forms.fmPRelAbc;".
			"stmp = vff.target;".
			"if (vff.Marca_Chkbox.value.length==0) {".
			    "vff.Marca_Chkbox.value='1';".
			"}".
			"vff.target='car_".$sNomeAcesso."5';".
	        "vff.acao.value='ATUALIZA'; ".
	        "vff.submod.value=''; ".
            "vff.submit(); ".
			"vff.target = stmp;".
	        "vff.Marca_Chkbox.value=''; ".
		 "}".
		 "Atualiza(); ".
 		 //
         'parent.Calendar.setup({ '.
           'inputField : "in_RelAbc_DatIni", '.
           'trigger    : "bt_RelAbc_DatIni", '.
           'onSelect   : function() { this.hide(); parent.sIdHasFocus=""; Atualiza(); }, '.
           'showTime   : 0, '.
           'dateFormat : "%d/%m/%Y" '.
         '});'.
         'parent.Calendar.setup({ '.
           'inputField : "in_RelAbc_DatFim", '.
           'trigger    : "bt_RelAbc_DatFim", '.
           'onSelect   : function() { this.hide(); parent.sIdHasFocus=""; Atualiza(); }, '.
           'showTime   : 0, '.
           'dateFormat : "%d/%m/%Y" '.
         '});'.
		 //
         "";

	}
}


?>