Ir para conteúdo
Fórum Script Brasil

kuroi

Membros
  • Total de itens

    7.184
  • Registro em

  • Última visita

Tudo que kuroi postou

  1. kuroi

    Erro Fatorial

    na ultima passagem, o a vale 0 (a = n - r, sendo q n = r). olha q no fatorialA, você faz: int FatorialA (int a){ if (a==0 || a==1) return a; //<--- olhe aqui[/code] assim ele vai retornar 0 quando a for 0. assim, a1 fica valendo 0, o q causa o erro de divisao por 0, por isso para de funcionar. não sei exatamente o q você quer fazer, mas se não me engano, o fatorial de 0 é 1 e não 0.
  2. kuroi

    TreeView

    um site em vb6?? você esta fazendo em asp.net, é isso?? se for, me avise, q movo o tópico pra sala correta. e tb poste os codigos q você esta usando, senao fica dificil encontrar o problema.
  3. você tem q colocar o componente vscrollbar, colocar o conteudo dentro de um frame e ir mudando o top do frame a cada mudando de posicao do scrollbar. um exemplo de topicos onde discutimos isso: http://scriptbrasil.com.br/forum/index.php?showtopic=127149
  4. kuroi

    VB e Access

    é pra funcionar sem problemas. acho q o access nem precisa estar instalado, só é preciso o provider (se for o microsoft jet oledb 4.0, por exemplo, acho q ele já vem com o windows desdo windows 98). só não sei quanto ao 2007, mesmo. de qualquer modo, possivelmente é algum problema de distribuicao. de mais detalhes sobre os erros q acontecem, pra gente entender o q esta acontecendo.
  5. mas o erro é na linha do execute?? olhando aqui parece tudo certo. o unico problema q encontrei foi esse aqui: If IsNull(R(3)("VInd")) Then R(3)("VInd") = "0.00" '<---- Essa linha aqui End If[/code] o campo VInd não existe no banco, ele é um campo calculado. ou seja, não é uma consulta atualizavel, acho q ele não vai aceitar isso ai não. você deveria tratar isso de outro jeito. teste com o IsNull() na hora de mostrar no programa (na label, textbox, ou em qualquer outro lugar q você quiser). não sei se tem formas simples de tratar direto no sql... tem aqui uns jeitos q eu costumo fazer, mas eu não gosto muito porque eles deixam a consulta bem comprida e complicada pra alterar. mas use-os caso você ache q fique mais simples do q tratar externamente (ou em casos onde o tratamento externo não seja possivel). o mais simples seria com Iif() (no caso do access): [code]SELECT IIf(IsNull(SUM(Metragem)), 0, SUM(Metragem)) As VInd From Tabela WHERE Data=#" & DT & "# AND Setor='" & ST & "' AND Tipo='Índigo' outras ideias: SELECT SUM(Metragem) As VInd From (Select Metragem From Tabela WHERE Data=#" & DT & "# AND Setor='" & ST & "' AND Tipo='Índigo' UNION ALL Select 0 From Tabela) SELECT CDbl('0' & SUM(Metragem)) As VInd From Tabela WHERE Data=#" & DT & "# AND Setor='" & ST & "' AND Tipo='Índigo' eu imagino q aquele do IIf() seja o mais rapido de executar. só não tenho certeza pelo fato de a gente chamar o Sum() duas vezes. eu acredito na possibilidade de o access somar só uma vez e colocar o valor da primeira soma logo no retorno da segunda. agora caso ele faca a soma duas vezes, então esse seria o mais lento. pra descobrir, só pegando um banco gde e testar os exemplos, contando o tempo de demora. quanto aos outros exemplos, não tenho certeza em relacao a como o access le as subconsultas, então não sei dizer ao certo sobre o segundo. mas aquele do CDbl(), apesar de fazer duas conversoes, caso o retorno seja só um registro, como é o caso, a diferenca deve ser minima. só lembre de trocar o CDbl() (conversao pra tipo Double (duplo)) para o verdadeiro tipo q você quiser converter (exemplo, CLng(), caso seja do tipo Long (inteiro longo)).
  6. nunca vi esse erro, em q linha acontece?? e o q é R(3)?? qual o select q você ta usando?? no seu banco tem linhas q o valor esta nulo??
  7. kuroi

    Enquete (IP)

    se duas pessoas dentro de uma mesma rede acessarem o seu site, o ip q sera passado pra você ser o do servidor nos dois casos. com ip de rede você quer dizer tipo 192.168....?? se for isso, não vai dar pra pegar não, esses ips são internos da rede deles. como eu disse é o ip do servidor deles na internet q sera passado pra você. alem do mais, levando esse raciocinio em conta, você tb teria q levar em conta duas pessoas q acessassem internet do mesmo computador. se uma delas votasse, a outra não poderia mais votar. acho q o sistema mais seguro pra isso seria o de login com usuario e senha. mas acho q só daria certo caso o seu site já tenha algum sistema de login pra acessar algum outro tipo de recurso, acho q ninguém vai querer se registrar no seu site só pra votar em uma enquete. confirmacao por email tb é uma ideia (ai você não aceitaria emails repetidos), mas eu mesmo não ia passar o meu email só pra votar em uma enquete. o melhor deve ser então você bloquear por um tempo. pelo q entendi o codigo q você tem ai bloqueia por 24 horas, acho q é o jeito. ai você ve se acha melhor fazer por ip, por cookie ou pelos dois. enquetes abertas pra todos não vai ter jeito mesmo de proteger 100%.
  8. hum, mas joao, porque teria q ser o mac address?? porque você não faz simplesmente um sistema de login com usuario e senha?? se conseguissemos fazer pelo mac address, ele vai limitar o acesso do cara a um unico ponto fisico. exemplo, o cara so pode acessar da casa dele. se ele for no trabalho, ele não consegue, se for na lan house não consegue, se levar o notebook dele pra qualquer lugar, não vai conseguir. e isso atrapalha bastante. e se um dia ele trocar o equipamento q faz conexao com a internet (se não me engano o mac address usado na internet é o do model adsl, cable modem, etc e não da placa de rede dele), vai perder o acesso.
  9. ue, mas não é exatamente isso q você quer?? o codigo q passei faz literalmente o q você pediu no primeiro post. se não é isso q você quer, explica isso direito...
  10. se você puser assim no selection formula não funciona?? {BANRAZ.TIPDOC} = 'ACE' And {BANRAZ.DEBCRE} = 'D'
  11. pelo q entendo, o mac address pode ser passado na comunicacao do usuario com o provedor, mas o provedor (q é quem acessa de fato o seu site pra depois repassar ao usuario) não vai repassa-lo ao seu site por questoes de privacidade, então realmente a possibilidade de fazer server-side não deve existir mesmo. pra pegar do lado do cliente, pelo q pesquisei, ate tem uns jeitos, mas só devem funcionar em casos especificos. exemplo: http://www.qualitycodes.com/tutorial.php?a...ternet-Explorer no caso só vai funcionar no ie, e ainda por cima, somente se o usuario permitir o uso do activex. mas você pode tentar pesquisar pra ver se encontra outras alternativas, mas imagino q não vai dar certo. no caso do servidor da sua faculdade, não entendi direito do q se trata, mas ele deve usar algum software gerenciador pra compartilhar a conexao, isso não é feito no browser nem no web-server. e só pra comentar aqui tb, a onu (de acordo com o q li no jornal) divulgou uma lista de principios sobre a internet, e um dos itens dizia mais ou menos q "todos tem direito a privacidade online (...), direito ao anonimato online e à criptografia (...), direito a protecao de dados, incluindo controle sobre sua coleta (...)". apesar de q acho q essas convencoes q eles tão tentando criar não significam mta coisa, acredito q a internet segue esse pensamento mesmo. não sei quais são suas intencoes, mas essas ideias de controle de acesso não servem pra internet. e tb acredito q você pode criar um sistema totalmente seguro sem ter q chegar a esse ponto. bom, caso você queria um sistema pra intranet ou coisa assim, ai é outra historia, mas deve ter outras formas de gerenciar. alem de q não sei se a ideia do mac address é totalmente a prova de falhas, pois já li por ai sobre a possibilidade de forjar o address. mas veja ai, se a ideia do mac não for pra frente, tente explicar o q você quer fazer pra ver se a gente arranja outra solucao.
  12. se você abrir o seu banco no access, for na parte de consultas, clicar em nova consulta, mudar pra modo sql, você pode digitar esse codigo e executar (clicando na exclamacao) q ele vai mostrar certinho qual o retorno: SELECT Tipo, SUM(Metragem) As SomaTotal From Tabela WHERE Tipo In ('Brim', 'Índigo', 'Lavagem') Group By Tipo mas um exemplo com o .MoveNext(): sql = "SELECT Tipo, SUM(Metragem) As SomaTotal From Tabela WHERE Tipo In ('Brim', 'Índigo', 'Lavagem') Group By Tipo" Set cn = rs.Execute(sql) Text1.Text = "" Do While Not rs.EOF Text1.Text = Text1.Text & rs!Tipo & _ ": " & rs!SomaTotal & vbCrLf rs.MoveNext Loop[/code] no caso, Text1 é um TextBox com MultiLine = True.
  13. mas é isso mesmo, use o terceiro codigo q passei. cada uma das somas vai vir em registro separado. serao tres registros e você vai acessando os proximos com um .MoveNext() qual banco você usa?? tenta executar o codigo direto no gerenciador pra visualizar o retorno q fica mais facil de entender.
  14. os nomes são Tipo e SomaTotal. olha, esse link do w3 explica td certinho: http://www.w3schools.com/sql/sql_groupby.asp
  15. você quer somar os tres tipos todos juntos ou quer somar separadamente mas trazer os tres no select?? se for td junto seria só isso: SELECT SUM(Metragem) As SomaTotal From Tabela WHERE Tipo In ('Brim', 'Índigo', 'Lavagem') o q seria o mesmo q: SELECT SUM(Metragem) As SomaTotal From Tabela WHERE Tipo = 'Brim' OR Tipo = 'Índigo' OR Tipo = 'Lavagem' se for pra agrupar separadamente, use group by (funciona com o exemplo do OR tb): SELECT Tipo, SUM(Metragem) As SomaTotal From Tabela WHERE Tipo In ('Brim', 'Índigo', 'Lavagem') Group By Tipo retorna duas colunas: o tipo e a soma da metragem dele.
  16. não da pra fazer totalizacao a partir de outra totalizacao. você podia tentar fazer essa outra totalizacao com uma nova formula a partir dos registros analiticos mesmo, caso seja possivel. senao, você pode tentar adaptar alguma coisa com subreport, ou ainda se possivel, já trazer os dados já totalizados do banco (a partir de uma view ou stored procedures) e fazer a nova totalizacao a partir deles.
  17. o melhor seria usar o metodo .Split(): http://www.w3schools.com/jsref/jsref_split.asp
  18. exatamente por motivo de seguranca (seguranca do usuario), não deve ser possivel fazer isso. pelo menos espero q não. a parte da autenticacao via mac, não entendi direito o q quis dizer... seria mac address??
  19. kuroi

    Desabilitar campo

    "um campo"?? seria um input text?? se for, use a propriedade readonly.
  20. você não precisa adicionar o designer se não quiser. o crystal 9 não tem o componente Crystal Reports Control?? se tiver você pode usar esse codigo exatamente como esta, é só adicionar o componente em menu Project -> Components, adiciona-lo no formulario e usar. se não tiver o crcontrol, use o CRAXDRT, td o q você precisa saber esta no link q passei.
  21. kuroi

    ajuda em um text

    não entendi nd, é no nome do arquivo?? a data esta na variavel DT. troque ela pelo nome q você quer.
  22. o q esta com problema é o primeiro exemplo, com controles vinculados?? se esta mesmo como texto no banco de dados, não devia acontecer isso... como exatamente você fez esse formato?? se tiver sido pela propriedade DataFormat, é capaz de não funcionar mesmo. o DataFormat serve só pra formatar dentro do textbox, talvez ele esteja entendendo q o campo esteja com valor numerico, por isso grava sem zeros.
  23. qual codigo você usa pra gravar??
  24. olha, tente isso aqui: http://scriptbrasil.com.br/forum/index.php?showtopic=122749
  25. é pra ser a mesma coisa. deve ser a propriedade .SelectionFormula ou .RecordSelectionFormula, qual componente você usa??
×
×
  • Criar Novo...