ASP CLASSICO ASP.NET C# SQL / DATABASE VB / VBA VB.NET Todos os fóruns 

ERRO END FUNCTION

 Tópico anterior Próximo tópico Novo tópico

ERRO END FUNCTION

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#470509 - 09/01/2017 14:26:57

JOERBETH

Cadast. em:Junho/2005


boa tarde pessoal

Tive que fomatar meu note, depois de instalar tudo o mesmo projeto que estava rodando, está dando erro no End Function:

Imports FirebirdSql
Imports FirebirdSql.Data
Imports FirebirdSql.Data.FirebirdClient

Module Module1
    Public vConexao As New FbConnection
    Public v_Sql As New FbConnectionStringBuilder
    Public v_Comandos As FbCommand      'Para insert, update, etc
    Public v_Consultas As FbDataReader  'Para leitura de dados provenientes de selects
    Public Conectado As Boolean = False
    Public Function PreparaConexao()
        Try
            vConexao = New FbConnection("User=SYSDBA;Password=masterkey;Database=C:\Midia\Sistema de Campanhas\Sistema de Campanhas\Banco\CAMPANHAS.fdb;DataSource=localhost;Dialect=3;")
            vConexao.Open()
            Conectado = True
        Catch
            Conectado = False
        End Try
        vConexao.Close()
    End Function

End Module

??

Grato

Joerbeth

Joerbeth

#470513 - 09/01/2017 17:23:49

NICKOSOFT
SANTO ANDRE
Cadast. em:Maio/2009


function deve retornar algo, vc nem especifica o q retorna, e nem usa o return, se não vai ter retorno use sub em vez de function



#470515 - 09/01/2017 17:41:52

JOERBETH

Cadast. em:Junho/2005


opa, sim, coloquei e aparentemente resolveu essa situação, agora outra:
]Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim v_Sql2 As String
        PreparaConexao()
        v_Sql2 = "select max(CODIGO) AS ULTIMOCODIGO from EMPRESAS"
        v_Comandos = New FbCommand(v_Sql2, vConexao)
        If v_Comandos.Read Then
            TXT_Codigo.Text = v_Comandos("ULTMOCODIGO") + 1
        Else
            TXT_Codigo.Text = "00001"
        End If
        'AbreConexao()
        conexao.Open()
        dr = comando.ExecuteReader()
        While dr.Read()
            Console.WriteLine("Nome: " &
                     dr.GetString(1) & ", ")
        End While
        Catch
        Console.WriteLine("Ocorreu um Erro.")
        Finally
        dr.Close()
        conexao.Close()
        End Try
    End Sub

****************************************
e  v_Comandos está no module


e dando erro?

grato

Joerbeth



Joerbeth

#470518 - 09/01/2017 17:57:48

JOERBETH

Cadast. em:Junho/2005


PreparaConexao()
        Dim v_Sql2 As FbCommand = New FbCommand("select max(CODIGO) AS ULTIMOCODIGO from EMPRESAS", vConexao)
        'v_Comandos = New FbCommand(v_Sql2, vConexao)

        'gera o datareader
        Dim V_Reader As FbDataReader = v_Sql2.ExecuteReader()

        If V_Reader.Read Then
            TXT_Codigo.Text = V_Reader("ULTMOCODIGO") + 1
        Else
            TXT_Codigo.Text = "00001"
        End If
        PreparaConexao()


é isso ne? kkkk

e dale taca

Joerbeth

#470519 - 09/01/2017 18:02:56

JOERBETH

Cadast. em:Junho/2005


ainda nao é isso, carrega o sql e nao testa do txt_Codigo

Joerbeth

#470523 - 09/01/2017 18:33:58

JOERBETH

Cadast. em:Junho/2005


e aqui:

        Dim sql As String
        If Conectado = False Then
            Call PreparaConexao()
        End If
        If Conectado = True Then
            sql = "Insert Into EMPRESAS(CODIGO,EMPRESA,N_CARRO)Values('" & TXT_Codigo.Text & "','" & TXT_Empresa.Text & "','" & TXT_Carro.Text & "')"
            v_Comandos = New FbCommand(sql, vConexao)
            If TXT_Empresa.Text = "" Then
                MsgBox("Empresa não pode ser em branco", vbCritical, "Aviso ao Usuário")
                TXT_Empresa.Focus()
                Exit Sub
            End If
            If TXT_Carro.Text = "" Then
                MsgBox("Nº do Carro não pode ser em branco", vbCritical, "Aviso ao Usuário")
                TXT_Carro.Focus()
                Exit Sub
            End If
            v_Comandos.ExecuteNonQuery()
            MsgBox("Dados Gravados com Sucesso", vbInformation, "Aviso ao Usuário")
        End If

dando erro no v_comandos.executeNonquery()  ??




Joerbeth

#470528 - 09/01/2017 19:55:18

OMAR2011
MONTES CLAROS
Cadast. em:Setembro/2011


Bem simples sem necessidade de Banco.Close.
Public Function GetconnectionFirebirdfb() As FbConnection
        Dim sqlf As String = "Server=localhost;User=SYSDBA;Password=masterkey;Database=" & My.Application.Info.DirectoryPath & "\DELICIAS.FDB"
        Return New FbConnection(sqlf)
    End Function

Private Sub Button12_Click(sender As System.Object, e As System.EventArgs) Handles Button12.Click
        Dim dr As FbDataReader = Nothing
        Using con As FbConnection = GetconnectionFirebirdfb()
            Try
                con.Open()
                Dim sql As String = "select max(CODIGO) AS ULTIMOCODIGO from EMPRESAS"
                Dim cmd As FbCommand = New FbCommand(sql, con)
                dr = cmd.ExecuteReader(CommandBehavior.SingleRow)
                If dr.HasRows Then
                    dr.Read()
                    txt1.Text = "" & dr.Item("ULTIMOCODIGO") + 1
                End If
            Catch ex As Exception
                MsgBox(ex.Message)
            Finally
                dr.Close()
            End Try
        End Using
    End Sub



#470530 - 09/01/2017 20:21:54

NICKOSOFT
SANTO ANDRE
Cadast. em:Maio/2009


v_Comandos é pra aceitar string e connection mesmo?
tira o new da linha
v_Comandos = FbCommand(sql, vConexao)



#470624 - 11/01/2017 21:50:33

JOERBETH

Cadast. em:Junho/2005


Boa noite, já dei uma evoluida.kkkkkkkk
tô tentando fazer um update, consegui carregar o datagrid, e preencher no text, beleza, agora tá dando erro na linha:  v_Comandos.ExecuteNonQuery()

        Dim sql As String
        Dim dr As FbDataReader = Nothing
        Dim sql2 As String = "select max(CODIGO) AS ULTIMOCODIGO from EMPRESAS"
        If Conectado = False Then
            Call PreparaConexao()
        End If
        If Conectado = True Then
            sql = "UPDATE EMPRESAS SET EMPRESA='" & TXT_Empresa.Text & "',N_CARRO='" & TXT_Carro.Text & "')"
            v_Comandos = New FbCommand(sql, vConexao)
            If TXT_Empresa.Text = "" Then
                MsgBox("Empresa não pode ser em branco", vbCritical, "Aviso ao Usuário")
                TXT_Empresa.Focus()
                Exit Sub
            End If
            If TXT_Carro.Text = "" Then
                MsgBox("Nº do Carro não pode ser em branco", vbCritical, "Aviso ao Usuário")
                TXT_Carro.Focus()
                Exit Sub
            End If

            v_Comandos.ExecuteNonQuery()
            MsgBox("Dados alterados com Sucesso", vbInformation, "Aviso ao Usuário")
            TXT_Empresa.Text = ""
            TXT_Carro.Text = ""
            If Conectado = False Then
                Call PreparaConexao()
            End If
            Try
                Dim cmd As FbCommand = New FbCommand(sql2, vConexao)
                dr = cmd.ExecuteReader(CommandBehavior.SingleRow)
                If dr.HasRows Then
                    dr.Read()
                    TXT_Codigo.Text = "" & dr.Item("ULTIMOCODIGO") + 1
                End If
            Catch ex As Exception
                MsgBox(ex.Message)
            Finally
                dr.Close()
            End Try
            TXT_Empresa.Focus()
        End If
    End Sub


Engraçado, é que tenho o código similar na inclusão e tá fncionado?!

grato



Joerbeth

#470628 - 12/01/2017 05:59:07

NICKOSOFT
SANTO ANDRE
Cadast. em:Maio/2009


Última edição em 12/01/2017 06:01:36 por NICKOSOFT

sql = "UPDATE EMPRESAS SET EMPRESA='" & TXT_Empresa.Text & "',N_CARRO='" & TXT_Carro.Text & "')"

Isso ta certo? Nao vi abrir ( pra fechar ali
Vc precisa ir depurando o codigo pra nao so ver q da erro ali, ver q erro e entender como resolver, a propria mensagem de erro no depurador ja diz tudo sobre o erro



#470629 - 12/01/2017 07:29:15

JOERBETH

Cadast. em:Junho/2005


bom dia

Realmente, da proxima mais calma..rs

valeu

Joerbeth

 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário