Jump to content
Fórum Script Brasil

JPedro

Membros
  • Posts

    21
  • Joined

  • Last visited

About JPedro

JPedro's Achievements

0

Reputation

  1. Boas. Usa o BitButton com este componente: http://www.shagrouni.com/english/software/xpmenu.html Faz isso de certeza e é opensource.
  2. Que tal usar uma variável para guardar o sql? ... var sql: String; =========================================================================== modulo.Gravar_idPessoal.Close; //============================================= //Comando Sql de inserir nesta tabela com seu campos //============================================= sql := ''; sql := 'insert into tab_identificacao (cod_moradia,area,quadra,lote,endereco,numero,compl,cep,bairro,ponto_ref,tel,cel'; sql := sql + ',tel_rec,um_resp,um_apelido,um_pai,um_mae,um_pais,um_cidade,um_uf,um_tempo_SV,um'; sql := sql + '_tempo_atual,um_tempo_bairro,um_pis,um_cert_nasc,um_cart_trab,um_cert_casam,um_r'; // ... continua por aí a baixo. Depois de teres a string com aquilo que queres .... é só fazer o resto. Se necessitas de inserir valores do tipo String, usa o QuotedStr do Delphi. modulo.Gravar_idPessoal.SQL.Add(sql); modulo.Gravar_idPessoal.ExecSQL; Abraço. JPedro
  3. Anderson: Segundo creio o teu problema é o seguinte: Tu estás a enviar a seguinte string para o teu SQL: insert into tb_estoque (id, descri, vl_compra, vl_varejo) values ($id, $descr, $vlcmp, $vlvar) Variáveis como $id, $descr, etc, se bem que são conhecidas pelo php, não são conhecidas pelo sql. Experimenta, assim: insert into tb_estoque (id, descri, vl_compra, vl_varejo) values ('".$id."','"'. $descr."','". $vlcmp."', '".$vlvar."') Atenção ás diferenças entre " e ' ... E como o Beraldo disse, se o valor for numérico, não precisa de '. Espere que fosse isso. JPedro
  4. Só vi perguntas e nenhuma resposta ... E tantos casos diferentes .... 1 - Para o ppl que o windows carrega em modo de segurança: - Desactivem o reínicio automático em caso de erro para poderem ver qual o erro que dá. Com esse código de erro, Google'It. - Desactivem também o restauro do sistema porque pode ser virus. - Para quem removeu dll's Google o dll para saber o que ele faz. - Executem o memcheck ... muitas vezes isto é causado por erros de memória. 2 - Para o ppl que não chega a entrar no windows: Tenho tido muitas situações destas, principalmente com Xp e discos S-AtA com + de 120Gb e tenho resolvido sempre (excepto em casos de erros críticos no disco) assim: - Arranquem com o cd do windows, carregando os drivers SCSi do disco se necessário (opção F6 quando está a carregar do Cd); - Assim que tiverem no 1º menu, escolham a consola de recuperação ®; - Depois de passar pela pass de administrador, esquema de teclado e instalação do windows (este último passo pode não existir, dependendo de onde está o erro), escrevam na prompt de comandos o seguinte comando: CHKDSK /P /R e deixem correr até ao fim. Quando acabar, corram outra vez até que deixe de ter erros no disco. - Se isto não der, podem pensar em trocar o disco. JPedro
  5. $soma = 0; while ($linhap = mysql_fetch_array($resultadop)) ... <th>R$ $linhap[preço]</th>"; $soma = $soma + $linhap[preço]; ... } // End while ($linhap = mysql_fetch_array($resultadop)) Penso que seja isto que você quer. JPedro
  6. Não, o query não está aberto. Tive o cuidado de verificar. Pois, essa foi a solução que arranjei .... mas será que não há outra maneira? obviamente que agora será apenas só para saber mas gostava de saber .... Sybase com ligação por odbc... o user e a pass estão configuradas no odbc, tanto que apenas tenho de dar "ENTER" no login prompt do query que ela faz bem a ligação ... só queria que ele não aparecesse. Um abraço e obrigado Micheus pela sua resposta.
  7. JPedro

    Consulta Sql

    Se postasses o código aqui, seria mais fácil ajudar-te...
  8. É possivel ... não me parece prático. Temos duas hipóteses : 1 - Estás a usar TTable para lêr os fornecedores: Podes usar o Event onKeyPress do DbLookupCombo em conjunto com o filter da TTable para reduzir o nº de campos lidos da tabela. Esta operação é também bastante lenta. 2 - Estás a usar TQuery para lêr os fornecedores: De novo com o envent de onKeyPress podes alterar o sql do query, fechar e voltar a abrir. Mais uma vez, tens o problema da velocidade no acesso aos dados. Dúvido que alguma destas soluções te vá dar mais velocidade. Se quiseres, experimenta. Se tiveres dúvidas em relação ao código necessário para fazer isto, diz.
  9. Boas. Tou aqui com um problema com um login prompt que não consigo ver-me livre dele. Falando em código eu tenho isto: q1.DatabaseName := emp_ori; q2.DatabaseName := emp_dest; QAct.DatabaseName := emp_Dest;[/codebox] e, óbviamente, tenho que levar com o login prompt. Para me vêr livre dele, acrescentei: [codebox] Q1.Database.LoginPrompt := false; Q2.Database.LoginPrompt := false; QAct.Database.LoginPrompt := false; O problema é que agora tenho uma EAccessViolation e não sei porquê. Alguém pode dar uma ajuda? Há alguma maneira diferente de fazer isto? Será por não ter o componente Database criado? - Neste caso, o Q1.DatabaseName também não devia de dar erro? Obrigado a todos.
  10. Boas. Provavelmente o problema vem do método de autenticação no servidor smtp. Se reparares, no Outlook por exemplo, tens de colocar um check no "O meu servidor requer autenticação ..." tens de utilizar o mesmo método de autenticação. Agora tou sem as minhas fontes aqui, mas daquia a pouco, posto um bocado do código, a diferença é que eu não usei Indy. Usei os componentes FastNet. Mas deve ser o mesmo já que de inicio também tive o mesmo problema.
  11. Beleza! :) Apenas fiz copy - Paste do teu post e ajeitei as coisas de modo a se ver melhor. Se vires bem, está lá. Agora, respondendo ao teu problema: ... O teu problema é que, como não há relações entre as duas tabelas, por cada linha da 1ª tabela, vais gerar 1 linha com a segunda tabela, ou seja, vou tentar explicar melhor:Se na tabela481 tiveres, por exemplo : Codigo Indicador Valor 1 Id_1 100.00 2 Id_2 200.00 E na tabela495 tiveres Codigo Descricao 1 descricao_1 2 descricao_2 Com o script que disses-te, vais obter o seguinte: SUM(Tabela481.Valor) Tabela481.Codigo, Tabela481.Indicador, Tabela495.Descricao 100 1 Id_1 descricao_1 100 1 Id_1 descricao_2 200 2 Id_2 descricao_1 200 2 Id_2 descricao_2 No post, se calhar não dá para ver bem, mas vais ter des certeza muitas linha na tabela. Daí dizeres que roda, roda. Deves ter muitos campos em cada tabela. Ou pelo menos em uma delas. Se tiveres dúvidas ácerca disto, mete em cada tabela apenas 2 ou 3 linhas. Logo vês o resultado. Tens de ter relações entre elas! Abraço. JPedro.
  12. Boas Micheus. Já resolvi o problema, mas de qualquer maneira, fiquei sem perceber o que se passa com isto. Como disse, estou farto de fazer isto com o Sybase e nunca tive problemas. Gostava mesmo de saber de onde vem o problema. Respondendo ao que me disses-te, Eu estava a fazer os lookups com um DbLookUpComboBox que é um componete visual, logo tem de estar no form. Tinha outras hipóteses, como por exemplo, criar um TQuery no DataModule que me desse os valores para uma DbComboBox , etc ... mas não foi assim que fiz. Neste momento já só queria saber qual foi o problema. Parece-me mais uma cena especifica do MySQL do que outra coisa qualquer. Been there, done that.Também me lembrei disso e vai daí, toca a fechar e a abrir as Tables antes de mostrar o Form. Cheguei mesmo a fechar a própria DB ... e obtive sempre o mesmo erro (Erro está aqui como uma forma de expressão já que a aplicação não dá nenhum erro em particular. O que se passa é que o DbLoockUpComboBox deixa de estar activo). Mais uma vez, muito obrigado a todo os que se deram ao trabalho de responder.
  13. Não sei se é daí que vem o erro mas (acho que em MySql também é assim) tens de pôr todos so campos de select que não contêm agregate functions dentro do group by. Assim: SELECT SUM(Tabela481.Valor), Tabela481.Codigo, Tabela481.Indicador, Tabela495.Descricao, Tabela481.Valor FROM Tabela481, Tabela495 GROUP BY Tabela481.Codigo; Tabela481.Codigo, Tabela481.Indicador, Tabela495.Descricao, Tabela481.Valor Só depois de ter olhado bem para o código é que vi isto mas .... 1 - Qual a correlação entre a tabela481 e a tabela495? Portanto falta-te um WHERE Tabela495.???? = Tabela481.????? 2 - Vê a 1ª e ultima linha do select .... Select sum (TABELA481.VALOR) ..... TABELA481.VALOR ... Não pode ser. Ou queres o somatório dos valores, ou queres o valor. Não podes ter os dois.
  14. Não? estás noutro pc ou o problema resolveu-se?
  15. Boas. A primeira query não deve ser bem o que queres ... Ela vai-te dar apenas uma linha com o numero de rows da table. A segunda vai-te devolver todas as rows, ordenadas pelo field id e funciona bem. Não sei bem o que pretendes com o script mas, se queres ordenar por id, o ultimo funciona bem, se pretendes saber quantas linhas tens na tabela, o 1 funciona bem e não precisas do ORDER BY ... se queres saber o maior id que tens na tabela podes usar o "SELECT total=MAX(id) FROM $dbtable2". Se o erro está no php, então não te posso ajudar muito ...
×
×
  • Create New...