Ir para conteúdo
Fórum Script Brasil

Gabriel Koerich

Membros
  • Total de itens

    33
  • Registro em

  • Última visita

Posts postados por Gabriel Koerich

  1. Olá,

    Estou com uma dúvida para otimizar minha consulta.

    Possuo duas tabelas, uma com as empresas e a outra com suas cotações, na tabela de cotações os valores que são inseridos diariamente. Preciso fazer este relacionamento para exibir todas as empresas com suas últimas cotações.

    Fiz assim:

    SELECT 
            empresas.CODIGO,        
            (SELECT cotacoes.ULTIMO FROM bovespa.cotacoes cotacoes WHERE cotacoes.COD = empresas.CODIGO ORDER BY ID DESC LIMIT 0,1)
    
            FROM 
            bovespa.empresas empresas,
            bovespa.cotacoes cotacoes
            
            WHERE 
                    cotacoes.COD = empresas.CODIGO
            
            GROUP BY empresas.CODIGO
            ORDER BY cotacoes.VOLUME DESC

    Deste modo até consegui, o problema é que quando coloco um Select dentro do outro, a consulta acaba ficando MUITO lenta, visto que eu preciso colocar ainda mais informações, tendo que fazer ainda mais selects dentro deste.

    Existe alguma outra maneira para pegar este último valor da outra tabela?

    Obrigado.

  2. Estou fazendo uma planilha com lançamentos financeiros, até que me veio um grande problema, de como excluir esses lançamentos

    Coloquei um hiperlink "x" que executa a seguinte macro ao lado de cada lançamento. o problema é que ele reconhece apenas o primeiro link.

    Quando clico no link da célular A5 ele me retorna a mensagem"Macro excluir linha $A$5", Certo. Quando clico em qualquer outro, A6, A7, etc. Ele dá erro de tipos incompatíveis

    Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)    
    
      '  Nome = Target.Name
      '  Link = Target.SubAddress
        
        If Range(Target.Range.Address).Value = "x" Then
            
            MsgBox "Macro excluir linha " & Target.Range.Address
            
        End If
        
    End Sub

    O problema é no Target.Range.Address, quando ele é referente a célula A5, reconhece A5 normal. quando é referente a qualquer outra, ele reconhece o range inteiro dos links, de $A$6 até $A$5207.

    Alguém teria outra idéia?

    Obrigado

  3. Estou fazendo uma planilha com lançamentos financeiros, até que me veio um grande problema, de como excluir esses lançamentos

    Coloquei um hiperlink "x" que executa a seguinte macro ao lado de cada lançamento. o problema é que ele reconhece apenas o primeiro link.

    Quando clico no link da célular A5 ele me retorna a mensagem"Macro excluir linha $A$5", Certo. Quando clico em qualquer outro, A6, A7, etc. Ele dá erro de tipos incompatíveis

    Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)    
    
      '  Nome = Target.Name
      '  Link = Target.SubAddress
        
        If Range(Target.Range.Address).Value = "x" Then
            
            MsgBox "Macro excluir linha " & Target.Range.Address
            
        End If
        
    End Sub

    O problema é no Target.Range.Address, quando ele é referente a célula A5, reconhece A5 normal. quando é referente a qualquer outra, ele reconhece o range inteiro dos links, de $A$6 até $A$5207.

    Alguém teria outra idéia?

    Obrigado

  4. cara, já tentei de tudo, mas parece que o banco tem algo errado nos campos numéricos. quando ordeno por algum deles ele não ordena decrescente. o que posso fazer?

    SELECT TOP 200 
                    CESproduto.CDproduto AS COD, 
                    CESproduto.NMproduto AS PRODUTO, 
                    CESfabricante.NMfabricante AS FABRICANTE, 
                    SUM(VENNota_Produtos.Produtos_NRQtd) AS QTD, 
                    ProdutoTabela.Valor AS TAB05, 
                    SUM(VENNota_Produtos.Produtos_NRQtd)*ProdutoTabela.Valor AS VALOR,
                    Count(SUM(VENNota_Produtos.Produtos_NRQtd)*ProdutoTabela.Valor) as CONT
                    
                    FROM 
                    
                    SQLUser.CESfabricante CESfabricante, 
                    SQLUser.CESproduto CESproduto, 
                    UserKoerich.ProdutoTabela ProdutoTabela, 
                    SQLUser.VENNota VENNota, 
                    SQLUser.VENNota_Produtos VENNota_Produtos
                    
                    WHERE 
                    
                    VENNota_Produtos.VENNota = VENNota.ID 
                    AND CESproduto.CDproduto = VENNota_Produtos.Produtos_CDProduto 
                    AND CESfabricante.CDfabricante = CESproduto.CDfabricante 
                    AND CESproduto.CDproduto = ProdutoTabela.CDProduto 
                    AND ProdutoTabela.Tabela = 5
                    
                    GROUP BY CESproduto.CDproduto
                    ORDER BY VALOR DESC

    aparecem os resultados ordenados do menor para o maior. o DESC não funciona de jeito nenhum!

  5. Tenho essa consulta

    mas precisava que ele ficasse na ordem da soma da quantidade, para conseguir os 15 produtos mais vendidos

    como posso fazer?

    queria colocar também a numeração do lado, podem ajudar?

    obrigado

    SELECT TOP 15 
    
                    CESproduto.CDproduto, CESproduto.NMproduto, CESfabricante.NMfabricante, 
                    
                    Sum(VENNota_Produtos.Produtos_NRQtd)
                    
                    FROM 
                    
                    SQLUser.CESfabricante CESfabricante, 
                    SQLUser.CESproduto CESproduto, 
                    SQLUser.VENNota VENNota, 
                    SQLUser.VENNota_Produtos VENNota_Produtos
                    
                    WHERE 
                    
                    VENNota_Produtos.VENNota = VENNota.ID 
                    AND CESproduto.CDproduto = VENNota_Produtos.Produtos_CDProduto 
                    AND CESfabricante.CDfabricante = CESproduto.CDfabricante
                    
                    
                    GROUP BY CESproduto.CDproduto
                    
                    ORDER BY VENNota_Produtos.Produtos_NRQtd DESC

  6. consegui =)

    function Array($array) {
        
            foreach($array as $key => $value){
                $this->template = str_replace("#$key#", $array[$key], $this->template);
    
            }
                            
        }

  7. olá, tenho uma classe para template em php

    estou fazendo uma função para substituir os blocos com array

    substituindo números eu consegui, queria saber fazer com nomes

    function Array($array) {
            
            for($i=0; $i<count($array);$i++) {
                $this->template = str_replace("#$i#", $array[$i], $this->template);
                
            }
                            
        }
    uso assim:
    $a = array("Link 1","Link 2","Link 3");
    
    $layout->Array($a);
    como posso fazer para usar definindo um nome na array? tenho que usar foreach? como faço?
    $a = array (
        "Link1" => "link 1",
        "Link2" => "2",
        "Link3" => "3",
        "Link4" => "4"
    );

    obrigado

  8. cara acho que isso ficou estranho no começo do switch

    ele tem que fazer o switch apenas da variável, não já setando o valor dela

    o correto não seria assim?

    switch ($_REQUEST['acao']){
    //se acao = add então adicionar
    case 'add' :
        $valor    = urldecode($_REQUEST['nome']);
        $valor2 = urldecode($_REQUEST['sobrenome']);
        echo autoindex("tutorial");
        mysql_query("INSERT INTO tutorial VALUES('','$valor','$valor2')");
        break;
    //se acao = del então deletar
    case 'del' :
        $id = $_REQUEST['id'];
        mysql_query("DELETE FROM tutorial WHERE id = '$id'");
        break;
    //se acao = edit então editar
    case 'edit' :
        $id        = $_REQUEST["id"];
        $valor    = urldecode($_REQUEST["nome"]);
        $valor2 = urldecode($_REQUEST["sobrenome"]);
        mysql_query("UPDATE tutorial SET nome = '$valor', sobrenome = '$valor2' WHERE id = '$id'");
        break;
    }

    talvez por isso o del e edit não funcionou com o amigo aima

  9. Bom dia

    tem algum outro modo de eu listar todas as faturas, com e sem venda, sem ser pelo JOIN?

    a venda se releciona com a fatura, usando um 'V' na frente.

    teria que concatenar o V com o campo da venda, mas ele não permite isso no join. como poderia fazer?

    SELECT   
    VV.DTEmissao,   
    DP.Parcela_DTVencimento,   
    DEB.CDFatura,   
    DEB.NRParcela,   
    FP.NMForma,   
    COND.NMDescricao,   
    DEB.VLFatura,   
    DP.Parcela_VLParcela,   
    VEND.NMVendedor,   
    DEB.CNPJ,   
    VV.CNPJ,   
    VV.NMCliente ,  
    VT.NMTransportadora, 
    VN.NrNota 
    
    FROM    
    
    SQLUser.CREDebito DEB,   
    SQLUser.CREDebito_Parcela DP
    LEFT OUTER JOIN SQLUser.VENVenda VV ON DEB.CDFatura = {fn concat('V',VV.NRVenda)})
    LEFT OUTER JOIN SQLUser.CREVendedor VEND ON (VEND.CDVendedor = VV.CDVendedor )
    
    LEFT OUTER JOIN SQLUser.VENNota VN ON ( VN.NRDocOrigem = VV.NRVenda )      
    LEFT OUTER JOIN SQLUSER.VENTransportadora VT ON ( VT.CDTransportadora = VN.CDTransportadora)  
    LEFT OUTER JOIN SQLUser.CREFormaPagto FP ON ( FP.CDForma = VV.CDFormaPagto )
    LEFT OUTER JOIN SQLUser.CRECondicao COND ON VV.CDCondicaoPagto = COND.CDCondicao   
    
    WHERE  
    DP.CREDebito = DEB.ID   
    and FP.NMForma not like '%BLO%' 
    order by DP.Parcela_DTVencimento

  10. Script interessante que permite a navegação nas pastas e arquivos do site. inclui o arquivo quando clicado, talvez tenha alguns erros. quis tentar fazer algo de editar os arquivos, mas ãtive tempo

    Se instalado no computador, é possível entrar nas pastas do sistema e arquivos de programas, colocando a variavel ?dir=.., ?dir=../.., etc

    dir.php

    <?php
    print '<title>Arquivos/Diretórios</title>';
    $dir = $_GET['dir'];
    $arquivo = $_GET['arquivo'];
    
    if(!$dir && !$arquivo){     
    
        $dir = "."; 
    
    }
    print '<b>Pasta:</b> '; 
    $raiz = end(explode("/", $_SERVER['DOCUMENT_ROOT']));
    $pasta = explode("/", $dir);
    if($dir && $dir !== "." && !$arquivo){    
        print '<a href="../">'.$raiz.'</a>/';        
        
        for($i = 0; $i < count($pasta); $i++){  
            if($open = opendir($dir)){      
                $d = $dir."/".$file;       
                
                if(is_dir($d)){    
                    if($pasta[$i] == $pasta[0]){            
                        print '<a href=?dir='.$pasta[$i].'>'.$pasta[$i];        
                        print '</a>';        $link = "";    
                    }elseif($pasta[$i] == $pasta[1]){        
                        print '/<a href=?dir='.$pasta[$i-1].'/'.$pasta[$i].'>'.$pasta[$i];        
                        print '</a>';        $link = $pasta[$i-1];    
                    }elseif($pasta[$i] == $pasta[2]){        
                        print '/<a href=?dir='.$pasta[$i-2].'/'.$pasta[$i-1].'/'.$pasta[$i].'>'.$pasta[$i];        
                        print '</a>';        $link = $pasta[$i-2]."/".$pasta[$i-1];    
                    }elseif($pasta[$i] == $pasta[3]){        
                        print '/<a href=?dir='.$pasta[$i-3].'/'.$pasta[$i-2].'/'.$pasta[$i-1].'/'.$pasta[$i].'>'.$pasta[$i];        
                        print '</a>';        
                        
                        $link = $pasta[$i-3]."/".$pasta[$i-2]."/".$pasta[$i-1];    
                        
                    }elseif($pasta[$i] == $pasta[4]){        
                        print '/<a href=?dir='.$pasta[$i-4].'/'.$pasta[$i-3].'/'.$pasta[$i-2].'/'.$pasta[$i-1].'/'.$pasta[$i].'>'.$pasta[$i];        
                        print '</a>';        
                        
                        $link = $pasta[$i-4]."/".$pasta[$i-3]."/".$pasta[$i-2]."/".$pasta[$i-1];    
                    }elseif($pasta[$i] == $pasta[5]){        
                        print '/<a href=?dir='.$pasta[$i-5].'/'.$pasta[$i-4].'/'.$pasta[$i-3].'/'.$pasta[$i-2].'/'.$pasta[$i-1].'/'.$pasta[$i].'>'.$pasta[$i];        
                        print '</a>';        
                        
                        $link = $pasta[$i-5]."/".$pasta[$i-4]."/".$pasta[$i-3]."/".$pasta[$i-2]."/".$pasta[$i-1];    
                    }      
                }else{    
                    print $dir;      
                }    
                
            }
            closedir($open);    
        }      
        
        $numero = count($pasta);  
        $anterior = $pasta[$numero-2];  
        $ant = $pasta[$numero-3];  
        print '<br><br';  
        print '<img src=icons/back.gif> <a href=?dir=';  
        print $link;  
        print '>Diretório Acima</a>';
    }else{    
        print $raiz;
    }
    if($dir && !$arquivo){          
        print '<br><br><table width="400" border="0" cellspacing="0" cellpadding="0">      <tr>    <td width="229">        <strong>Arquivo/Diret&oacute;rio</strong>    </td>          <td width="171">        <strong>Tamanho</strong>    </td>        </tr>'; 
        }
        if(!$arquivo && $abre = opendir($dir)){    
            $x = 0;        
            while(($file = readdir($abre)) !== false){  
                $d = $dir."/".$file;   
                if(($file !== "." && $file !== ".." && is_dir($file)) OR ($file !== "." && $file !== ".." && is_dir($d))){      
                    $x++;      
                    $quebra = explode('.', $file);      
                    $ext = strtolower(end($quebra));      
                    $tam = @filesize($file);      
                    $tamanho = @filesize($d);      
                    print '<tr><td>';      
                    print '<img src="icons/folder.gif" alt="[Diretório]"></img> ';            
                        if($dir !== "."){                
                            echo " <a href=?dir=".$dir."/".$file.">".$file."</a><br>";       
                        }else{    
                            echo " <a href=?dir=".$file.">".$file."</a><br>";       
                        }      
                        print'</tr></td>';  
                }        
                    
            }   
            closedir($abre);
    }    
    if(!$arquivo && $abre = opendir($dir)){    
        $x = "0";    
        while(($file = readdir($abre)) !== false){  
            $d = $dir."/".$file;  
            if(($file !== "." && $file !== ".." && is_file($file)) OR ($file !== "." && $file !== ".." && is_file($d))){       
                $x++;      
                $quebra = explode('.', $file);            
                $ext = strtolower(end($quebra));      
                $tam = @filesize($file);      
                $tamanho = @filesize($d);            
                $diretorio[$x] = $file;      
                if($dir !== "."){    
                    print '<tr><td>';    
                    if ($quebra[0] == "index") {                    
                        echo "<img src=\"icons/index.gif\" border=\"0\" /> ";                
                    }elseif($ext == "exe" || $ext == "msi"){                    
                        echo "<img src=\"icons/comp.gray.gif\" border=\"0\" /> ";                
                    }elseif($ext == "php" || $ext == "asp" || $ext == "htm" || $ext == "html" || $ext == "shtml" || $ext == "phtml" || $ext == "css" || $ext == "htaccess" || $ext=="htacess"){                   
                        echo "<img src=\"icons/layout.gif\" border=\"0\" /> ";    
                    }elseif($ext == "jpg" || $ext == "jpeg" || $ext == "gif" || $ext == "png" || $ext == "bmp"){                    
                        echo "<img src=\"icons/image2.gif\" border=\"0\" /> ";                
                    }elseif($ext == "js" || $ext == "cgi"){                    
                        echo "<img src=\"icons/script.gif\" border=\"0\" /> ";                
                    }elseif($ext == "mp3" || $ext == "asf" || $ext == "au" || $ext == "wav" || $ext == "mid"){                    
                        echo "<img src=\"icons/sound1.gif\" border=\"0\" /> ";                
                    }elseif($ext == "mpg" || $ext == "mpeg" || $ext == "qt" || $ext == "wmv" || $ext == "mov" || $ext == "avi"){                    echo "<img src=\"icons/movie.gif\" border=\"0\" /> ";                
                    }elseif($ext == "doc" || $ext == "txt" || $ext == "pdf"){                    
                        echo "<img src=\"icons/text.gif\" border=\"0\" /> ";                
                    }elseif($ext == "zip" || $ext == "tar" || $ext == "arj" || $ext == "rar"){                    
                        echo "<img src=\"icons/compressed.gif\" border=\"0\" /> ";                
                    }else{                    
                        echo "<img src=\"icons/unknown.gif\" border=\"0\" /> ";                
                    }          
                    print '<a href=?arquivo='.$file.'&dir='.$dir.'>'.$file.'</a></td>';        
                    print '<td>';    
                    if(!is_file($file)){        
                        if($tamanho < "1024"){      
                            echo number_format($tamanho, 0, ",", ".")." byte(s)<br>";        
                            }elseif($tamanho/1024 < 1024){      
                                echo number_format($tamanho/1024, 2, ",", ".")." KB<br>";        
                            }else{      
                                echo number_format($tamanho/(1024*1024), 2, ",", ".")." MB<br>";        
                            }        
                            print '</td></tr><td>';    
                        }else{        
                            if($tam < "1024"){      
                                echo number_format($tam, 0, ",", ".")." byte(s)<br>";        
                            }elseif($tamanho/1024 < "1024"){      
                                echo number_format($tam/1024, 2, ",", ".")." KB<br>";        
                            }else{      
                                echo number_format($tam/(1024*1024), 2, ",", ".")." MB<br>";        
                            }        
                            print '</td></tr>';    
                        }              
                    }else{   
                        $tam = @filesize($file);    
                        $tamanho = @filesize($d);    
                        print '<tr><td>';        
                        if($quebra[0] == "index"){                    
                            echo "<img src=\"icons/index.gif\" border=\"0\" /> ";                
                        }elseif($ext == "exe" || $ext == "msi"){                    
                            echo "<img src=\"icons/comp.gray.gif\" border=\"0\" /> ";                
                        }elseif($ext == "php" || $ext == "asp" || $ext == "htm" || $ext == "html" || $ext == "shtml" || $ext == "phtml" || $ext == "css" || $ext == "htaccess" || $ext=="htacess"){                    
                            echo "<img src=\"icons/layout.gif\" border=\"0\" /> ";    
                        }elseif($ext == "jpg" || $ext == "jpeg" || $ext == "gif" || $ext == "png" || $ext == "bmp"){                    
                            echo "<img src=\"icons/image2.gif\" border=\"0\" /> ";                
                        }elseif($ext == "js" || $ext == "cgi"){                    
                            echo "<img src=\"icons/script.gif\" border=\"0\" /> ";                
                        }elseif($ext == "mp3" || $ext == "asf" || $ext == "au" || $ext == "wav" || $ext == "mid"){                    
                            echo "<img src=\"icons/sound1.gif\" border=\"0\" /> ";                
                        }elseif($ext == "mpg" || $ext == "mpeg" || $ext == "qt" || $ext == "wmv" || $ext == "mov" || $ext == "avi"){                        echo "<img src=\"icons/movie.gif\" border=\"0\" /> ";                
                        }elseif($ext == "doc" || $ext == "txt" || $ext == "pdf"){                    
                            echo "<img src=\"icons/text.gif\" border=\"0\" /> ";                
                        }elseif($ext == "zip" || $ext == "tar" || $ext == "arj" || $ext == "rar"){                    
                            echo "<img src=\"icons/compressed.gif\" border=\"0\" /> ";                
                        }else{                    
                            echo "<img src=\"icons/unknown.gif\" border=\"0\" /> ";                
                        }    
                        print '<a href=?arquivo='.$file.'>'.$file.'</a></td>';        
                        print '<td>';        if(!is_file($file)){        if($tamanho < "1024"){      
                        echo number_format($tamanho, 0, ",", ".")." byte(s)<br>";        
                    }elseif($tamanho/1024 < "1024"){      
                        echo number_format($tamanho/1024, 2, ",", ".")." KB<br>";        
                    }else{      
                        echo number_format($tamanho/(1024*1024), 2, ",", ".")." MB<br>";      
                        print '</td></tr>';         
                    }    
                }else{        
                    if($tam < "1024"){      
                        echo number_format($tam, 0, ",", ".")." byte(s)<br>";        
                    }elseif($tamanho/1024 < "1024"){      
                        echo number_format($tam/1024, 2, ",", ".")." KB<br>";        
                    }else{      
                        echo number_format($tam/(1024*1024), 2, ",", ".")." MB<br>";        
                    }        
                    print '</td></tr>';    
                }             
            }  
        }    
        print '<tr><td>';    
    }    
    print'</td></tr></table>';    
    closedir($abre);
    }
    if($arquivo){     
        $tam = @ceil(@filesize($arquivo) / 1024);    
        $tamanho = @ceil(@filesize($dir."/".$arquivo) / 1024);    
        print '<br><br><b>Arquivo:</b> '.$arquivo;    
        print '<br><b>Tamanho:</b> ';    
        if(is_file($arquivo)){  
            print $tam;    
        }else{  
            print $tamanho;    
        }    
        print ' KB<br><br>';    
        $quebra = explode('.', $arquivo);    
        $ext = strtolower(end($quebra));    
        if(file_exists($arquivo) || file_exists($dir."/".$arquivo)){  
            if($ext=="jpg" || $ext=="gif" || $ext=="png" || $ext=="bmp"){      
                if($dir){    
                    print '<img src='.$dir.'/'.$arquivo.'>';      
                }else{    
                    print '<img src='.$arquivo.'>';      
                }  
            }else{      
                if($dir){    
                    include $dir."/".$arquivo;       
                }else{    
                    include $arquivo;      
                }  
            }        
        }else{   
            print '<script>alert("Arquivo não encontrado");</script>';    
        }  
        print '<br><br><a href=java script:history.back(1)>Voltar</a>';
    }
    ?>

×
×
  • Criar Novo...