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

MSHFlexGrid problema con recordset sin registros

Estas en el tema de MSHFlexGrid problema con recordset sin registros en el foro de Visual Basic clásico en Foros del Web. Hola mi problema es el siguiente: Tengo un MSHFlexGrid enlazado a un adodc el cual cambia el valor de la consulta SQL con un tabstrip ...
  #1 (permalink)  
Antiguo 18/10/2005, 09:48
 
Fecha de Ingreso: octubre-2003
Ubicación: Chaco - Argentina
Mensajes: 49
Antigüedad: 20 años, 6 meses
Puntos: 0
MSHFlexGrid problema con recordset sin registros

Hola mi problema es el siguiente:

Tengo un MSHFlexGrid enlazado a un adodc el cual cambia el valor de la consulta SQL con un tabstrip mostrando clientes que comienzan por "A" "B" "C" o lo que fuere....
Funciona bien pero cuando voy a un elemento del tabstrip por ejemplo la "L" y si no hay clientes con L no me muestra ningun registro y cuando vuelvo a la "A" donde si hay me los muestra pero se me despelota la seleccion y no funciona bien.... alguien sabe que sucede y como puedo solucionarlo???

Saludos gracias de antemano
  #2 (permalink)  
Antiguo 18/10/2005, 10:03
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
Cita:
Iniciado por chefo
Hme los muestra pero se me despelota la seleccion y no funciona bien.... alguien sabe que sucede y como puedo solucionarlo???

Saludos gracias de antemano
no comprendo en si cual es tu problema.. sé que tenes un problema pero no explicas lo que sucede, es como si yo dijera tengo una aplicación pero no inicia alquien sabe porque..?... osea no explico nada de lo que hace sin esto no podré recibir respuestas adecuadas..

reformula tu pregunta con el problema en sí y que desorden proboca..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 18/10/2005, 10:16
Avatar de The_Pretorian  
Fecha de Ingreso: diciembre-2004
Ubicación: Lima - Peru
Mensajes: 267
Antigüedad: 19 años, 4 meses
Puntos: 0
Buenos Dias:Al parecer usas una Variable para almacenar el valor de la Letra Seleccionada, asumo que todo el llenado de datos esta dentro de un procedimiento... de ser asi dicha variable deberias consistenciarla un poco. Bueno solo es una idea a partir de lo que describiste.
Pero Geoavila tiene razon, deberias platear con msa detalle tu problema.
Atte
Jorge Diaz
__________________
Creo que todas las cosas suceden por algo, no es eso que los demas llaman 'Destino'. Definitivamente Dios no juega a los dados...
  #4 (permalink)  
Antiguo 18/10/2005, 10:35
 
Fecha de Ingreso: octubre-2003
Ubicación: Chaco - Argentina
Mensajes: 49
Antigüedad: 20 años, 6 meses
Puntos: 0
Aca esta el codigo no es tan largo.... lo que me sucede es que cuando actualizo el adodc con el recorset con registros puedo seleccionar perfectamente las filas... cuando el recorset del adodc no tiene registros para mostrar luego de que actualizo el adodc a un recordset con registros, estos se muestran en la fila pero no se los puede seleccionar...
Código:
Private Sub MSHFlexGridConfig()

With MSHFlexGrid1
    .Refresh
    .FormatString = "|COD|Nombre|Nº CUIT|Dirección|Localidad|Teléfono"
    .ColWidth(0) = 200
    .ColWidth(1) = 600
    .ColWidth(2) = 2500
    .ColWidth(3) = 1500
    .ColWidth(4) = 2000
    .ColWidth(5) = 1500
    .ColWidth(6) = 1230
    .Row = 0
    .ColSel = .Cols - 1
    .FillStyle = flexFillRepeat
    .CellFontBold = True
    
End With

End Sub

Private Sub Tabstrip1_Click()
    Dim i As Integer
    Dim Caption As String
    Dim CaptionTb As String
        
    i = Tabstrip1.SelectedItem.Index
    Caption = Tabstrip1.Tabs(i).Caption
    CaptionTb = "Select Clientes.COD_Cliente,Clientes.Nombre_Fiscal,Clientes.CUIT,Clientes.Direccion,Clientes.Localidad,Clientes.Tel1 From Clientes WHERE Nombre_Fiscal Like '" & Caption & "%'"

    Select Case Caption
        Case "*"
            Adodc1.RecordSource = "Select Clientes.COD_Cliente,Clientes.Nombre_Fiscal,Clientes.CUIT,Clientes.Direccion,Clientes.Localidad,Clientes.Tel1 From Clientes"
            Adodc1.Refresh
            MSHFlexGridConfig
        Case "#"
            Adodc1.RecordSource = "Select Clientes.COD_Cliente,Clientes.Nombre_Fiscal,Clientes.CUIT,Clientes.Direccion,Clientes.Localidad,Clientes.Tel1 From Clientes WHERE (Nombre_Fiscal Like '[0-9]%')"
            Adodc1.Refresh
            MSHFlexGridConfig
        Case Else
            Adodc1.RecordSource = CaptionTb
            Adodc1.Refresh
            MSHFlexGridConfig
    End Select
    
End Sub
No se a que le llamas llenado de datos???
  #5 (permalink)  
Antiguo 18/10/2005, 11:13
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
el MSHFlexGridConfig es un procedimiento que te hace o bien es una función
porque lo que le tendrías que hacer cada vez que haga esto es darle formato nuevamente..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #6 (permalink)  
Antiguo 18/10/2005, 14:30
 
Fecha de Ingreso: octubre-2003
Ubicación: Chaco - Argentina
Mensajes: 49
Antigüedad: 20 años, 6 meses
Puntos: 0
es un procedimiento pues claro... es el formato
  #7 (permalink)  
Antiguo 18/10/2005, 15:34
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
Cita:
Iniciado por chefo
es un procedimiento pues claro... es el formato
bueno yo utilizo otro método..

yo lo hago de esta manera
Código:
Private Sub CabeceraGridDetalle()

    With ListadoDetalleFactura
        .FixedRows = 1
        .FixedCols = 1
        .ScrollBars = flexScrollBarBoth
        .AllowUserResizing = flexResizeColumns
        .Cols = 6                  ' Número de columnas, contando la cabecera
        .Rows = 2                   ' Número de filas, contando la cabecera
        .ColWidth(0) = 600          ' El ancho de la columna 0
        .TextArray(1) = "Cod."     ' nombre de la columna 1
        .ColWidth(1) = 1500
        .TextArray(2) = "Descripción Sercivio"
        .ColWidth(2) = 4000
        .TextArray(3) = "Ticket"
        .ColWidth(3) = 1000
        .TextArray(4) = "Cantidad"
        .ColWidth(4) = 1500
        .TextArray(5) = "Sub-Total"
        .ColWidth(5) = 1500
    End With
End Sub
en lo personal te aconsejo este método puesto que lo he usado muchas veces y no me ha fallado..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #8 (permalink)  
Antiguo 08/11/2005, 06:22
 
Fecha de Ingreso: octubre-2003
Ubicación: Chaco - Argentina
Mensajes: 49
Antigüedad: 20 años, 6 meses
Puntos: 0
la solucion a este problema lo encontre aquí... creo que deberian ponerlo en las faqs porque no esta casi en ningun lugar.... y deberian explicarlo bien... saludos

http://support.microsoft.com/default...d=kb;ES;267745

ERROR: Flexgrid Row jerárquico o selección de celdas fallan después de enlazarse a un conjunto de registros vacío
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 04:55.