Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Mostrar en Textbox el Numero de Registros

Estas en el tema de Mostrar en Textbox el Numero de Registros en el foro de Visual Basic clásico en Foros del Web. Que tal, de nuevo aqui con una consulta, vean les explico tengo una consulta la cual la obtengo al momento de seleccionar un paciente, lo ...
  #1 (permalink)  
Antiguo 16/09/2008, 20:24
 
Fecha de Ingreso: abril-2008
Mensajes: 281
Antigüedad: 16 años
Puntos: 1
Mostrar en Textbox el Numero de Registros

Que tal, de nuevo aqui con una consulta, vean les explico tengo una consulta la cual la obtengo al momento de seleccionar un paciente, lo q necesito obtener es q en un texbox me muestre el numero total que tengo de registros (diagnosticos) que tengo para el paciente seleccionado.... y la verdad no tengo idea ni como podria hacerlo y es mas ni en q parte del codigo tendria q escribirlo.......

De antemano gracias por las respuestas

Saludos
  #2 (permalink)  
Antiguo 17/09/2008, 05:08
 
Fecha de Ingreso: junio-2008
Ubicación: Punta Alta, Argentina
Mensajes: 82
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Mostrar en Textbox el Numero de Registros

Supongo ke lo que haces es seleccionar un paciente que existe en una tabla con un id unico para cada paciente, y los diag estan en otra tabla pero poseen el nro de id de paciente respectivamente..
si utilizas ADO lo podrias realizar asi...




Código:
Set rstTotalDiag= New ADODB.Recordset
Set cnn = New ADODB.Connection
If cnn.State <> 1 Then
    With cnn
        .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & sFichero & "';"
        .Open
        .CursorLocation = adUseClient
    End With
End If

rstTotalDiag.open "SELECT * FROM tablaDiag WHERE Id_Paciente= " & int(text1.text) & "" , cnn, adOpenDynamic, adLockOptimistic

text2.text= rstTotalDiag.recordcount
Como no das muchos datos vuelvo a suponer que al id del paciente lo colocás en un textbox llamado text1.text. Yo primero estableci la coneccion para que se vea que es necesario la propiedad CursorLocation = adUseClient para que la funcion recorcount funcione.




PD: yo use nombres hipoteticos de tablas, campos, variables, conexion y recordset, debes adaptarlo a tu aplicacion y/o usarlo como una guia.
  #3 (permalink)  
Antiguo 17/09/2008, 07:41
 
Fecha de Ingreso: abril-2008
Mensajes: 281
Antigüedad: 16 años
Puntos: 1
Respuesta: Mostrar en Textbox el Numero de Registros

Que tal muchas gracias por la respuesta, solo que mira en mi consulta ya acomode el codigo como pienso q esta bien y que da de esta manera

Código:
Private Sub DatosDiagnostico()
    Dim RECBDD As ADODB.Recordset
    Dim sql As String, cadena As String
    Dim X As Integer
        cadena = Text1(0).Text
    Call VisualizarPacienteDiagnosticos
        sql = "SELECT * FROM pacientediagnostico WHERE idpaciente Like '" & cadena & "'"
    Set RECBDD = New ADODB.Recordset
        RECBDD.Open sql, BD, adOpenKeyset, adLockOptimistic
        RECBDD.cursorLocation = adUseClient-------------------------------------------(linea que marca el error)
        Text4.Text = RECBDD.RecordCount
    If RECBDD.BOF = True Or RECBDD.EOF = True Then
        MsgBox "Paciente sin Diagnosticos"
    Exit Sub
    End If
End Sub
Pero me marca este error "La opreacion no esta permitida si el objeto esta abierto"

Ahora no si de esa manera tenga q acomodar las intrucciones para obtener el resultado.

y bueno como me mandaste esa linea en la conexion aqui esta la manera en q hago mi conexion

Código:
Public Sub Conectar()
    On Error GoTo Ver
    Set BD = New ADODB.Connection
        BD.ConnectionString = "driver={MySQL ODBC 3.51 Driver};" & _
        "Server=localhost;" & _
        "Port=3306;" & _
        "Database=CONTROL_PACIENTES;" & _
        "User=root;" & _
        "Password=;" & _
        "Option=3;"
        BD.Open
    Exit Sub
Ver:
    MsgBox "Nº de error: " & Err.Number & " | " & Err.Description, vbCritical, "Control de errores"
    Err.Clear
End Sub
Saludos y gracias por las respuesta
  #4 (permalink)  
Antiguo 17/09/2008, 07:59
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: Mostrar en Textbox el Numero de Registros

Es que debes situar el cursor antes de abrir el Recordset. Como te habían explicado en este tema:
http://www.forosdelweb.com/f69/cuant...-tengo-600395/
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 17/09/2008, 10:50
 
Fecha de Ingreso: abril-2008
Mensajes: 281
Antigüedad: 16 años
Puntos: 1
Respuesta: Mostrar en Textbox el Numero de Registros

Que tal gracias por las respuestas, pero estuve revisando y si usaba las opciones que me mencionaban en los dos temas me ocasionaba errores en otras partes de mi programa q ya tenia funcionando asi q al final la manera q pude hacerlo fue asi:

Código:
Private Sub DatosDiagnostico()
    Dim RECBDD As ADODB.Recordset
    Dim sql As String, cadena As String
    Dim X As Integer
        cadena = Text1(0).Text
    Call VisualizarPacienteDiagnosticos
        sql = "SELECT * FROM pacientediagnostico WHERE idpaciente Like '" & cadena & "'"
    Set RECBDD = New ADODB.Recordset
        RECBDD.Open sql, BD, adOpenKeyset, adLockOptimistic
    If RECBDD.BOF = True Or RECBDD.EOF = True Then
        MsgBox "Paciente sin Diagnosticos"
    Exit Sub
    End If
      X = 0
       RECBDD.MoveFirst
          Do While Not RECBDD.EOF = True
          X = X + 1
       RECBDD.MoveNext
    Loop
        Text4.Text = X
End Sub
Gracias por la ayuda

Saludos
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 05:08.