barra de progresso

(lowczy) #1

queria fazer numa aplicacao blank uma barra de progresso de processamento

$maximo = 10000;
$colunas = 90;

$progresso = new BarraProgresso($maximo);
$progresso->setColunas($colunas);

for ($i = 0; $i <= $maximo ; $i++)
{
$progresso->mostrar($i);
}

echo “\n”;

class BarraProgresso
{
private $colunas;
private $limite;

    function __construct($limite)
    {
            $this->limite = $limite;
            $this->setColunas(80);
    }

    public function setColunas($colunas)
    {
            $this->colunas = $colunas - 22;
    }

    public function mostrar($valor)
    {
            $percentual = (int)(($valor/$this->limite)*100);
            $barra = (int)($percentual * ($this->colunas/100));
            $mascara = "\r[%-" . $this->colunas . "s] %d%% (%2d/%2d)";
            printf($mascara, str_repeat("=", $barra). ">", $percentual, $valor, $this->limite);
    }

}

porem ao executar da o seguinte erro

Fatal error: Class declarations may not be nested in C:\Program Files\NetMake\v5\wwwroot\scriptcase\app\testes\blank\blank.php on line 779

(miguell) #2

segue abaixo uma rotina quase pronta precisa ajustar a contagem de registro se consegui me avisa.

Primeiro criar uma aplicação Grid:
=> envento onScriptInit inicializar as variaveis
[var_contador] = 0;
[var_tot_reg] = 0;
[arr_pedido] = array();
[arr_codcli] = array();
[arr_nomcli] = array();

Cria um botaõa do Tipo RUN
colocar no OnRecorde do Botao
$i = [var_contador];
[arr_pedido][$i]= {numero_pedido};
[arr_codcli][$i]= {cod_cliente};
[arr_nomcli][$i]= {nome_cliente};
[var_contador]++;
[var_tot_reg] = [var_contador];
Colocar no On Finish do Botao
sc_redir(blank_processamento_aprovado_gerente);

Criar uma aplicação balnk com este codigo:

Criar um metodo PHP para processar os registros selecionados e chamar no final do codigo abaixo o metodo.

//Desenvolvimento
$arquivo = ‘logo_sinal.png’;
//$logo_tipo = ‘http://192.168.10.223:8586/scriptcase/file/img/barra_imagem/logo_sinal.png’;

//Configuração no servidor
$logo_tipo = ‘http://192.168.10.223:8586/portal/_lib/file/img/barra_imagem/logo_sinal.png’;

$cont = 1;
$tela1 = ‘’;

for($x=0;$x<[var_tot_reg];$x++){
$tela ="";
$tela .="";
$tela .="";
$tela .="";
$tela .=“importacao de dados”;
$tela .="";
$tela .="";
$tela .="

";
$tela .=" “;
$tela .=” “;
$tela .=” ";
$tela .=" ";
$tela .=" “;
$tela .=” “;
$tela .=” ";
$tela .=" ";
$tela .=" “;
$tela .=”
DATA INICIALDATA FINAL
“.sc_date_conv([var_data_inicial],“aaaammdd”,“dd/mm/aaaa”).”“.sc_date_conv([var_data_final],“aaaammdd”,“dd/mm/aaaa”).”
";
$tela .="";
$tela .=" “;
$tela .=” Importação de Dados";
$tela .="";
$tela .=" “;
$tela .=” ";
$tela .=" “;
$tela .=” “;
$tela .=” ";

$perc = (integer)(($cont / [var_tot_reg])*100);

$tela .="    <th bgcolor='#FFFFCC' scope='row'><div align='left' class='style9'><font size='3'>REGISTROS PROCESSADOS</font></div></th>";
$tela .="    <td colspan='5'><font size='2'>".$cont."</font></td>";
$tela .="   </tr>";
$tela .="  <tr bgcolor='#7F1FFF'>";
$tela .="    <th colspan='6' scope='row'><div align='left' class='style9'>";
$tela .="      <div align='center'><em><strong><font color='#FFFBF0' size='3'>Dados do Registro </font></strong></em></div>";
$tela .="    </div>";      
$tela .="    <font size='2'></font></th>";
$tela .="  </tr>";
$tela .="  <tr>";
$tela .="    <th bgcolor='#FFFFCC' scope='row'><div align='left'><font size='3'>NUMERO PEDIDO</font></div></th>";
$tela .="    <td colspan='5'><font size='2'>".[arr_pedido][$x]." </font></td>";
$tela .="  </tr>";
$tela .="  <tr>";
$tela .="    <th bgcolor='#FFFFCC' scope='row'><div align='left' class='style9'><font size='3'>CODIGO CLIENTE</font></div></th>";
$tela .="    <td colspan='5'><font size='2'>".[arr_codcli][$x]." </font></td>";
$tela .="  </tr>";
$tela .="  <tr>";
$tela .="    <th bgcolor='#FFFFCC' scope='row'><div align='left' class='style9'><font size='3'>NOME DO CLIENTE</font></div></th>";
$tela .="    <td colspan='5'><font size='2'>".[arr_nomcli][$x]." </font></td>";
$tela .="  </tr>";
$tela .="</table>";
$tela .="<table width='597' border='1' align='center' bordercolor='#000000'>";
$tela .="<tr bgcolor='#7F3FFF'>";
$tela .="    <th colspan='6' scope='row'><div align='left' class='style9'>";
$tela .="      <div align='center'><em><strong><font color='#FFFBF0' size='3'>Processamento em Andamento</font></strong></em></div>";
$tela .="    </div>";      
$tela .="    <font size='2'></font></th>";
$tela .="  </tr>";
$tela .="<tr bgcolor='#FFFFFF'>";
$tela .="    <th width='597' colspan='6' scope='row'><div align='center' class='style9'>";
$tela .="      <div align='center'><em><strong><font color='#FFFBF0' size='3'>".show_prog_bar(590,$perc, 'blue', 'black')."</font></strong></em></div>";
$tela .="    </div>";      
$tela .="    <font size='2'></font></th>";
$tela .="  </tr>";
$tela .="</table>";

$cont++;
php_importar_pedido([arr_pedido][$x],[arr_codcli][$x]);

//$tela = $tela . $tela1;
$tela .="";
$tela .="";

echo $tela;

$tela = ‘’;
}

TOTAL DE REGISTROS
“.[var_tot_reg].”
(lowczy) #3

obrigado, vou tentar e se conseguir te retorno