Ir para conteúdo
Fórum Script Brasil

Señor Smoke

Membros
  • Total de itens

    80
  • Registro em

  • Última visita

Tudo que Señor Smoke postou

  1. Não, não mostra out of range. O erro eu até já tirei mas o arquivo ainda não tá legal. Continua absuradamente menor. O record set tem muuuitos registros cerca de 146500
  2. É , o arquivo está sendo gerado com um tamanho muito menor do que o normal.
  3. entendi. Bom estou fazendo assim e está dando erro: Private Sub testa_Click() n = FreeFile() Open "c:\PTS.txt" For Output As #n Rs2.MoveFirst Do Until Rs2.EOF s = Rs2.GetString(, 100, ";", vbCrLf, "") pos = InStr(1, s, " ") s = Mid(s, 1, pos) v = Split(s, ";") Print #n, Left(v(0), 2) & ";" & Right(v(0), Len(v(0)) - 2) & ";" & v(1) & ";" & v(2) Rs2.MoveNext Loop Close #n MsgBox "Arquivo - PTS - gerado com sucesso !!" End Sub
  4. Acho que não é isso, coloquei o rs2.movnext em todos os lugares possiveis dentro do loop e ele dá erro e ainda continua gerando o arquivo incompleto. Eu tendo a instrucao Do until rs2.eof preciso ter o rs2.movenext? Essa tá sinistra, me dá uma luz ai Graymalkin srsrrs abs
  5. Fala Carol belezinha? Seguinte, faz +/- assim ó: Private Sub cmdanterior_Click() With RS If .BOF And .EOF Then MsgBox "Não há dados no arquivo ", vbInformation Else .MovePrevious If .BOF Then .MoveFirst MsgBox "Chegamos ao primeiro registro !" Else mostra_dados End If End If End With End Sub Private Sub cmdproximo_Click() With RS If .BOF And .EOF Then MsgBox "Não há dados no arquivo ", vbInformation Else .MoveNext If .EOF Then .MoveLast MsgBox "Chegamos ao ultimo registro !" Else mostra_dados End If End If End With End Sub Esses são os codigos dos botoes Anterior e Proximo Acho que é isso né? Qualquer duvida fale []s
  6. Até que consegui resolver com isto : Private Sub testa_Click() n = FreeFile() Open "c:\PTS.txt" For Output As #n Do Until Rs2.EOF s = Rs2.GetString(, 100, ";", vbCrLf, "") pos = InStr(1, s, " ") s = Mid(s, 1, pos) v = Split(s, ";") Print #n, Left(v(0), 2) & ";" & Right(v(0), Len(v(0)) - 2) & ";" & v(1) & ";" & v(2) Loop Close #n MsgBox "Arquivo - PTS - gerado com sucesso !!" End Sub Com isso ele gera o arquivo certo. Mas tem um porem, ele não pega o arquivo todo e o arquivo, que deveria ter em torno de 6 MB fica só com 40Kb!!! Agora se eu faço da maneira como estava fazendo antes, o formato não sai certo mas ele pega o arquivo todo.
  7. Fala GrayMalkin, to tentando fazer pelo codigo que você me passou: Private Sub testa_Click() n = FreeFile() Open "c:\PTS.txt" For Output As #n Do Until Rs2.EOF s = Rs2.GetString(, 100, ";", vbCrLf, "") v = Split(s, ";") Print #n, Left(v(0), 2) & ";" & Right(v(0), Len(v(0)) - 2) & ";" & v(3) & ";" & v(4) Loop Close #n MsgBox "Arquivo - PTS - gerado com sucesso !!" End Sub Só que tá dando um erro que não to conseguindo entender, o arquivo tá saindo assim: 27;92749111;3/8/2005;VIVO 2799074820 43;91435110;3/8/2005;TIM 4899787269 11;55138404;3/8/2005;TELEFONICA 1155172606 11;58925885;3/8/2005;TELEFONICA 1158941657 51;6371210;3/8/2005;BRASIL TELECOM 516513279 54;3611101;3/8/2005;TELEFONICA 1140131624 11;40754720;3/8/2005;TELEFONICA 1140772568 24;99154852;3/8/2005;VIVO 2499154932 13;34261032;3/8/2005;TELEFONICA 1334265814 16;33244124;3/8/2005;TELEFONICA 1633247436 Ele tá imprimindo um numero de terminal sozinho a cada linha, não sei porque, help! 13;33721606;3/8/2005;TELEFONICA 1333722842 62;33542299;3/8/2005;BRASIL TELECOM 6233574477 21;96372501;3/8/2005;VIVO 2196374104 31;92422588;3/8/2005;TIM 3192426285 31;96143650;3/8/2005;TELEMIG 3196144335 16;6542368;3/8/2005;TELEFONICA 166721139
  8. Ok mas no caso eu quero pegar a coluna ddd&terminal que é:'1166762356' e quero dividi-la assim 11;66762356 na hora da impressao no arquivo.
  9. Fala galera. tenho as seguintes colunas em um datagrid: 11;1166762356;3/8/2005;TELEFONICA onde: DDD ; DDD&TERMINAL ; DATA ; OP Mas eu quero gerar um txt nesse formato: 61;3997695;24/02/2005;BRT onde : DDD ; TERMINAL ; DATA ; OP No caso eu teria que pegar a coluna DDD&TERMINAL e separá-la por ; na hora de gerar o arquivo. Como posso fazer isso? Este é o codigo que estou usando pra gerar o arquivo: Private Sub Gera_Click() Open "c:\PTS.txt" For Output As #1 Do Until Rs2.EOF Print #1, Rs2.GetString(, 100, ";", vbCrLf, ""); Loop Close #1 MsgBox "Arquivo - PTS - gerado com sucesso !!" End Sub A saída por enquanto está assim: 11;1166762356;3/8/2005;TELEFONICA
  10. Fala pessoal, Quando gero um arquivo excel apartir do VB, os formatos das datas estão saindo errados no excel. No VB está assim: 3/8/2005 5/8/2005 8/8/2005 11/8/2005 15/8/2005 Quando mando gravar um arquivo no excel fica assim: 8/3/2005 8/5/2005 8/8/2005 8/11/2005 15/8/2005 Reparem que ele trocou de lugar o dia com o mês! O que está havendo? Esse é o código que estou usando pra gerar o arquivo: Private Sub gerel1_Click() Open "c:\Bloqueios_dia.xls" For Output As #2 Do Until Rs5.EOF Print #2, Rs5.GetString(, 100, vbTab, vbCrLf, ""); Loop Close #2 MsgBox "Arquivo - Bloqueios Dia - gerado com sucesso !!" End Sub Abs
  11. Estou fazendo assim: Pra gerar o arquivo: Private Sub relat_Click() Open "c:\Bloqueios_Mensais.xls" For Output As #1 Do Until Rs.EOF Print #1, Rs.GetString(, 100, vbTab, vbCrLf, ""); Loop MsgBox "Arquivo - Bloqueios Mensais - gerado com sucesso !!" End Sub Pra carregar o datagrid: If mes2.Text = "" Then SQL = "Select Op_Final as Operadora, count(*) as Bloqueios, mes as Mês_de_Bloqueio,Data_bloqueio,Sistema,avg(minutagem) as Taxa_Média_de_minutos From t91013.COBILLING_BLOQUEIOS Group by mes,op_final,data_bloqueio,sistema order by data_bloqueio,op_final,mes" Else SQL = "Select Op_Final as Operadora, count(*) as Bloqueios, mes as Mês_de_Bloqueio,Data_bloqueio,Sistema,avg(minutagem) as Taxa_Média_de_minutos From t91013.COBILLING_BLOQUEIOS Where mes = '" & mes2.Text & "' Group by mes,op_final,data_bloqueio,sistema order by data_bloqueio,op_final,mes" End If Rs.CursorLocation = adUseClient Rs.Open SQL, Con, adOpenForwardOnly Set DataGrid1.DataSource = Rs relat.Enabled = True End Sub O erro que está dando é que uma vez feito isso não consigo mais gerar nenhum arquivo, mostra o seguinte aviso : file is already open O arquivo é gerado mas só uma vez ,se quiser gerar outro eu tenho que sair e voltar. []s
  12. Fala pessoal, Na minha aplicacao em VB, listo os resultados de uma consulta no datagrid e depois gero um arquivo com esses resultados. Mas quando eu clico em outro botao e listo outros resultados no datagrid, não consigo gerar outro arquivo apartir do mesmo botao "gerar arquivo" . Eu não quero ter que criar um botao diferente e um record set diferente toda vez que quero gerar um arquivo. O que posso fazer?
  13. Apartir de uma planilha excel quero que o VB percorra todas as linhas dessa planilha, gerando uma instrução insert into em uma tabela do sql. Como posso fazer isso, alguém pode me dar um help? []s
  14. Fala pessoal, estou com uma duvida em SQL. É o seguinte, criei um trigger pra ser disparado quando há uma inclusão na tabela. Ele funciona quando faço apenas uma inclusão. Se eu incluo em massa o trigger não funciona. CREATE TRIGGER Atualiza_faixa4 on cobilling_bloqueios AFTER INSERT as UPDATE cobilling_bloqueios set Faixa = '150-200' where minutagem between 150.01 and 200 A inclusão em massa é feita com base em uma planilha do excel. alguém pode me ajudar? []s
  15. Señor Smoke

    Sql Com Vb6

    Quando você loga no SQL server você usa login e senha ou é pelo windows authentication? Se for só pelo windows, acrescenta essa linha na string de conexão: Con.Properties("Integrated Security").Value = "SSPI"
  16. Señor Smoke

    Sql Com Vb6

    Pra conectar o VB6 com SQL server é tranquilo. Faz assim: Declara isso a nivel de modulo: Public cn As New ADODB.Connection Private Sub Cmd1_Click() Depois coloca isso no form load, ou então em algum botao: cn.Provider = "SQLOLEDB" cn.Properties("Data Source").Value = "nome do servidor" cn.Properties("Initial Catalog").Value = "nome do banco" cn.Properties("User ID").Value = "sa" cn.Open MsgBox " Conexao efetuada com sucesso ! " O provedor que o sql server usa é o SQLOLEDB. Se o seu SQL permite que vc logue no servidor do banco pelo windows tb isso deve funcionar. Caso contrário você vai ter que mudar o nivel de permissao do seu sql pra Mixed Mode. Mas ve se isso funciona primeiro. []s
  17. Vou tentar aqui e te digo. Pra que serve a instrução ddd.setfocus?
  18. Fala pessoal, Tenho dois campos: DDD e DDD_terminal O campo DDD é composto por 2 digitos, por exmplo: 21,37 etc.. Já o campo DDD_terminal é composto por: DDD+numero do telefone Entaó por exemplo se o DDD é 21, então o DDD terminal tem que ser: 21+xxxxxxx. O que eu gostaria de fazer é o seguinte: quando o usuário digitar um numero de DDD no campo DDD.text, quero fazer uma comparação desses digitos com os dois primeiros digitos do campo DDD_terminal pra ver se bate. Seria então, só pegar os dois primeiros digitos de DDD_terminal e comparar com o que foi digitado no campo DDD. Quero com isso evitar erros e numeros de DDD terminais invalidos no meu banco de dados, caso o usuario erre na digitacao. []s
  19. Señor Smoke

    Dúvida

    Usei a função datepart(mm,date) Um abraço
  20. É verdade, percebi agora vendo aqui srsrs Agora o processo de geração tá um pouco lento, tipo eu tenho muitos registros vai ver é por isso
  21. Ok, mas cyberalexxx aonde esse arquvo tá sendo gerado? Como controlamos isso? []s
  22. Señor Smoke

    Dúvida

    Fala pessoal, como sei que a galera aqui tb saca de SQL resolvi postar aqui uma dúvida minha, espero que não se importem. Seguinte, quero listar a quantidade de bloqueios por operadora mas só que por mês. Eu tenho uma coluna no formato datetime que é a data de bloqueio. Eu não to conseguindo agrupar por mês os registros. Aqui está minha tabela: CREATE TABLE COBILLING_BLOQUEIOS ( Criterio varchar(20) null, Sistema varchar(10) not null, Op_Final char(30) not null, DDD int not null, DDD_Terminal bigint not null, Data_bloqueio datetime not null, ) Como eu faço pra obter só a parte MM (referente a mês) da data e agrupar dessa forma? No caso eu estou agrupando por Op_final e data_bloqueio.
  23. Estou fazendo assim para salvar o arquivo : Private Sub Gera_Click() Open "c:\nome.txt" For Output As #1 Do Until Rs2.EOF Print #1, Rs2.GetString(, 100, vbTab, vbCrLf, ""); Loop MsgBox "Arquivo - - gerado com sucesso !!" End Sub Onde Rs2 é um recordset associado ao conteudo de um datagrid.
×
×
  • Criar Novo...