USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Como formatar neste caso?
ChicoVieira
CRUZEIRO
SP - BRASIL
Postada em 19/02/2006 22:08 hs            
Distintos colegas,
Num sistema criado em VB5, quando o usuário vai pesquisar um número de CNPJ que é pedido numa inputbox (ex.: 01.222.124/0001-55), ele entra apenas com os números, sem pontuação e sem o travessão “/” (01222124000155), pois apenas números são armazenados no banco de dados. A pesquisa no banco de dados é feita pelo método SEEK “=”, sendo que esse número fica armazenado numa variável. Assim, quando não existe um registro para esse CNPJ, uma msgbox informa que o CNPJ 01222124000155 não está cadastrado no sistema. Gostaria que esse número aparecesse devidamente formatado na msgbox “O CNPJ n° 01.222.124/0001-55 não está cadastrado no sistema”. Como devo proceder?
E, supondo que esse CNPJ tenha três registros no sistema (três declarações de bens de anos diferentes), como posso apresentar uma msgbox informando que “Para esse CNPJ, foram encontrados 03 registros.”? A base de dados é do tipo mdb (contribuinte.mdb) e a tabela tem por nome (Juridica).
(Eis o código da consulta por CNPJ):
--------------------------------------
Private Sub cmdConsultarCNPJ_Click()
   Set BancoDeDados = OpenDatabase(App.Path & "Contribuinte.mdb")
   Set Tabela = BancoDeDados.OpenRecordset("Juridica", dbOpenTable)
   Dim ProcuraCNPJ As String
   Tabela.Index = "CNPJ"
   ProcuraCNPJ = InputBox("Digite o número do CNPF:" & Chr(13) & _
   "Obs.: não utilize pontos nem hífen.", "Procura pelo CNPJ")
   If ProcuraCNPJ = "" Then
       cmdOrganizar.Visible = True
       cmdOrganizar_Click
       cmdOrganizar.Visible = False
       Exit Sub
   Else
   Tabela.Seek "=", ProcuraCNPJ
   If Tabela.NoMatch = False Then
        MsgBox "Clique no botão <Próximo> para pesquisar" & Chr(13) & _
        "outras declarações para o mesmo CNPJ...", vbOKOnly, "CNPJ localizado no sistema ..."
        AtualizaFormulario      'Preenche os campos do form.
        cmdPrimeiro.Enabled = False
        cmdUltimo.Enabled = False
        cmdOrganizar.Visible = True
   Else
        MsgBox "Não há declaração cadastrada " & Chr(13) & _
        "para o CNPJ nº " & ProcuraCNPJ & " ...", vbOKOnly + vbInformation, "CNPJ não cadastrado"
       
        AtualizaFormulario
        End If
   End If
End Sub
--------------------------------------------------
Agradeço a inestimável colaboração.
     
kerplunk
Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 20/02/2006 07:28 hs         
Private Sub Form_Load()
CGC = "01222124000155"
CGC = FormataCGC(CStr(CGC))
MsgBox CGC
End Sub
Public Function FormataCGC(CGC As String) As String
FormataCGC = Mid(CGC, 1, 3) & "." & Mid(CGC, 4, 3) & "." & Mid(CGC, 7, 3) & "/" & Mid(CGC, 9, 4) & "-" & Right(CGC, 2)
End Function
     
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
Postada em 20/02/2006 10:13 hs            
CGC = "01234567000012"
CGC = Format(CGC, "##,###,###/####-##")
 
Isso formata...
Qto a verificar qtos tem, vc deve mudar o modo de fazer a busca... ao inves de usar o SEEK ou o FIND e navegar em um recordset, eu aconselho q vc execute uma instrução SQL com a funcao COUNT na tabela, para saber qtos tem... se retornar ZERO é pq nao tem nenhuma...
 
Flw!


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

     
Ramos
não registrado
Postada em 27/02/2006 19:45 hs   
rsTABELA.Index="CNPJ"
rsTABELA.Seek"=",CNPJ.Text
If rsTABELA.NoMatch Then
 MsgBox "Não foi encontrado"
Else
 iQUANT=0
 Do While Not rsTABELA.Eof
  IF rsTABELA!CNPJ = CNPJ.Text Then
   iQUANT = iQUANT + 1
  Else
   Exit Do
  End If
  rsTABELA.MoveNext
 Loop
 msgbox = Str(iQUANT) & " Registros encontrados"
End If 
 
Depois faz a formatação
 
Simples e prático.
 
 
     
ChicoVieira
CRUZEIRO
SP - BRASIL
Postada em 01/03/2006 10:24 hs            

Agradeço imensamente a colaboração. Valeu mesmo.
Chico.
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página