Foros del Web » Programación para mayores de 30 ;) » .NET »

Analisis de Sentencia en Conexion

Estas en el tema de Analisis de Sentencia en Conexion en el foro de .NET en Foros del Web. Buen dia... quisiera que me ayudaran a entender en Forma DETALLADA la siguiente sentencia... Soy un poco novato o mas bien muy novato y el ...
  #1 (permalink)  
Antiguo 24/02/2012, 07:53
Avatar de jhodmar  
Fecha de Ingreso: febrero-2012
Ubicación: Medellin
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 1
Exclamación Analisis de Sentencia en Conexion

Buen dia...

quisiera que me ayudaran a entender en Forma DETALLADA la siguiente sentencia...
Soy un poco novato o mas bien muy novato y el código aun me come...
Código:
 

Try

            Dim sentencia As String
            Dim rsverificar As ADODB.Recordset
            rsverificar = New ADODB.Recordset()

            sentencia = "Select " & NomCampo
            sentencia = sentencia & " FROM " & Tblreturn
            If Not filtro = Nothing Then
                sentencia = sentencia & " Where " & filtro
            End If

            If conexionConsulta = "SQL" Then
                rsverificar.Open(sentencia, cnSQL, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockReadOnly, 1)
                conexionConsulta = "Access"
            Else
                rsverificar.Open(sentencia, cnAccess, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockReadOnly, 1)
            End If

            If rsverificar.EOF <> True Then
                RetornaCampo = rsverificar.Fields(0).Value
                If IsDBNull(rsverificar.Fields(0).Value) = True Then
                    RetornaCampo = 0
                End If
            Else
                RetornaCampo = 0
            End If

            rsverificar.Close()

        Catch ex As Exception
            MsgBox("Ocurrio un error interno en la aplicación " & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Atención")
            Return 0
        End Try
Bueno espero no sea mucha molestia..Feliz dia!!
  #2 (permalink)  
Antiguo 25/02/2012, 14:12
Avatar de lucord  
Fecha de Ingreso: marzo-2010
Ubicación: San Jose, Costa Rica
Mensajes: 87
Antigüedad: 14 años, 9 meses
Puntos: 10
Respuesta: Analisis de Sentencia en Conexion

Código vb:
Ver original
  1. Try
  2.  
  3.             Dim sentencia As String  
  4.             Dim rsverificar As ADODB.Recordset
  5.             rsverificar = New ADODB.Recordset()
  6.            
  7.             sentencia = "Select " & NomCampo ' arma en el string sentencia la palabra Select + nombre del campo que parece venir de afuera
  8.            sentencia = sentencia & " FROM " & Tblreturn 'luego agrega el estatuto from + nombre de la tabla que parece venir de afuera de la funcion
  9.            If Not filtro = Nothing Then 'verifica que la variable filtro no este vacia  
  10.                sentencia = sentencia & " Where " & filtro ' añade el were + la condicion que tambien viene de afuera
  11.            End If
  12.  
  13.             If conexionConsulta = "SQL" Then 'valida el tipo de consulta
  14.                rsverificar.Open(sentencia, cnSQL, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockReadOnly, 1)  'abre record set y ejecuta la consulta
  15.                conexionConsulta = "Access"
  16.             Else
  17.                 rsverificar.Open(sentencia, cnAccess, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockReadOnly, 1)  'abre recordset y ejecuta la consulta
  18.            End If
  19.  
  20.             If rsverificar.EOF <> True Then  'mientras no sea el fin del recordset = true
  21.                RetornaCampo = rsverificar.Fields(0).Value  'retorna el valor del campo
  22.                If IsDBNull(rsverificar.Fields(0).Value) = True Then  'si el capo esta vacio
  23.                    RetornaCampo = 0  'retorna un 0
  24.                End If
  25.             Else
  26.                 RetornaCampo = 0  'si recordset no tiene registros retorna 0
  27.            End If
  28.  
  29.             rsverificar.Close()  'cierra el recordset
  30.  
  31.         Catch ex As Exception
  32.             MsgBox("Ocurrio un error interno en la aplicación " & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Atención")
  33.             Return 0
  34.         End Try


Parece que tu código lo que hace es armar una instrucción SQL en base a varios parámetros y determina si es una consulta SQL o de Access, luego la ejecuta cargándolo en un Recordset y extrae los datos siempre que el RecordSet tenga algo, si algun campo esta vacio o no tiene dato retorna un o.
Sin embargo hay unas variables que parecen venir de afuera, pasados por referencia o declarados en alguna sección de código que hace falta.

espero te ayude de algo.

Salu2.
  #3 (permalink)  
Antiguo 25/02/2012, 15:54
Avatar de jhodmar  
Fecha de Ingreso: febrero-2012
Ubicación: Medellin
Mensajes: 52
Antigüedad: 12 años, 9 meses
Puntos: 1
De acuerdo Respuesta: Analisis de Sentencia en Conexion

Si claro amigo.... es muchisima ayuda... se le agradece...


y la sentencia Sql es Formada teniendo en cuenta algunos parámetros que son recogidos en un Frm externo

buen dia!!
  #4 (permalink)  
Antiguo 26/02/2012, 19:51
Avatar de lucord  
Fecha de Ingreso: marzo-2010
Ubicación: San Jose, Costa Rica
Mensajes: 87
Antigüedad: 14 años, 9 meses
Puntos: 10
Respuesta: Analisis de Sentencia en Conexion

Perfecto con todo gusto!!!

Etiquetas: analisis, conexion, sentencia, sql, vb
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:17.