none
Fazer uma consulta com mask RRS feed

  • Pergunta

  • Boa tarde,

    fiz um codigo para fazer uma consulta atraves de um mask. Porem da erro de sintaxe por causa da virgula. Segue o codigo:

    Function Mostra_codigofiscal()
            Dim User0 As String
            Dim movimento As New DataTable
            abrir_simples()
            Dim Strcon As String
            Strcon = "Data source=.\UBERCONTA;AttachDbFilename=C:\Arquivos de programas\Microsoft SQL Server\MSSQL10.UBERCONTA\MSSQL\DATA\simples.mdf;Integrated Security=True;User Instance=True"
            Dim con As New SqlConnection(Strcon)
            Dim sql = New SqlCommand("Select descricao FROM codigosfiscais WHERE cod=" + mskCodigo.Text)
            Try
                con.Open()
                Dim Strcomando As String = "Select descricao FROM codigosfiscais WHERE cod=" + mskCodigo.Text
                Dim comando As New SqlCommand(Strcomando, con)
                User0 = comando.ExecuteScalar()
                If User0 > "" Then
                    sql.Connection = con
                    Dim Dr As SqlDataReader = sql.ExecuteReader
                    While Dr.Read
                        ' mskCodigo.Text = Dr.GetString(0).ToString()
                        txtNome.Text = Dr.GetString(0).ToString()
                    End While
                    cmdOk.Visible = False
                    cmdAlterar.Visible = True
                    cmdExcluir.Enabled = True
                    'txtRazaosocial.Focus()
                Else
                    MessageBox.Show("Favor Cadastrar Código Fiscal!", "Código Fiscal não Cadastrada!", MessageBoxButtons.OK, MessageBoxIcon.Error)
                    txtNome.Focus()
                End If
            Catch ex As Exception
                MsgBox(ex.Message)
            Finally
                con.Close()
            End Try
            Return 1
        End Function

    terça-feira, 12 de março de 2013 16:46

Respostas

  • Olá ClaudioJunior1931.

    Você guarda o valor na base de dados com a mascara ou sem ela?

    Se você guarda a informação sem os caracteres gerados pela mascara, retire a mascara antes de fazer a consulta.

    mskCodigo.mask = ""

    Dim sql = New SqlCommand("Select descricao FROM codigosfiscais WHERE cod=" + mskCodigo.Text)

    mskCodigo.mask = "0,000"


    • Sugerido como Resposta NeoRickHunter terça-feira, 12 de março de 2013 17:16
    • Marcado como Resposta ClaudioJunior1931 terça-feira, 12 de março de 2013 17:46
    terça-feira, 12 de março de 2013 17:10

Todas as Respostas

  • Olá ClaudioJunior1931.

    Você guarda o valor na base de dados com a mascara ou sem ela?

    Se você guarda a informação sem os caracteres gerados pela mascara, retire a mascara antes de fazer a consulta.

    mskCodigo.mask = ""

    Dim sql = New SqlCommand("Select descricao FROM codigosfiscais WHERE cod=" + mskCodigo.Text)

    mskCodigo.mask = "0,000"


    • Sugerido como Resposta NeoRickHunter terça-feira, 12 de março de 2013 17:16
    • Marcado como Resposta ClaudioJunior1931 terça-feira, 12 de março de 2013 17:46
    terça-feira, 12 de março de 2013 17:10
  • Olá ClaudioJunior1931.

    Você guarda o valor na base de dados com a mascara ou sem ela?

    Se você guarda a informação sem os caracteres gerados pela mascara, retire a mascara antes de fazer a consulta.

    mskCodigo.mask = ""

    Dim sql = New SqlCommand("Select descricao FROM codigosfiscais WHERE cod=" + mskCodigo.Text)

    mskCodigo.mask = "0,000"


    Guardo a informação com a mascara que fica ex: 5,403.

    Ai vem o erro de sintaxe da ',' virgula.

    terça-feira, 12 de março de 2013 17:19
  • Sua base de dados já tem dados? Se for o caso, porque não altera a forma de inclusão retirando a virgula? Pode utilizar a mesma regra que citei no exemplo.

    • Sugerido como Resposta NeoRickHunter terça-feira, 12 de março de 2013 21:25
    terça-feira, 12 de março de 2013 17:30
  • Sua base de dados já tem dados? Se for o caso, porque não altera a forma de inclusão retirando a virgula? Pode utilizar a mesma regra que citei no exemplo.

    Entao, eu ja tinha pensado e feito dessa maneira.

    Mais como se trata de CFOP eu teria que colocar a virgula ou um ponto. Mais por enquanto vou descartar essa possibilidade e fazer como citou acima.

    Obrigado.

    • Sugerido como Resposta NeoRickHunter terça-feira, 12 de março de 2013 17:48
    terça-feira, 12 de março de 2013 17:46