ERROR 381
Tenho um sistema que estava funcionando muito bem, ele em sua execução carrega um msflexgrid, só que agora em sua execução está dando o seguinte erro run time error 381 subscript out of range. Está dando este poque estorou o numero de registro do controle? Ele está carregando dados com 17 colunas e 50 linhas.
colega posta o código mas o problema pode ser mais simples.
Este software funciona há quase um ano e nunca deu erro algum, começou dar erro após a inclusão de um novo imóvel, acho eu que algum campo pode está ultrapassando a largura do msflexgrid, vou aumentar alguns valores da propriedade MSFlexGrid2.ColWidth(), pois o último registro teve campos da inclusão que tive que abreviar, pois atingia o valor da propriedade maxlength.
Public Sub carregaimo()
Dim i
Dim pre As Currency
With MSFlexGrid2
.Col = 0
.Row = 0
.Text = [Ô] CÓDIGO [Ô]
.Col = 1
.Row = 0
.Text = [Ô] DATA ENTRADA[Ô]
.Col = 2
.Row = 0
.Text = [Ô] DESCRIÇÃO DO IMÓVEL[Ô]
.Col = 3
.Row = 0
.Text = [Ô] TIPO IMÓVEL[Ô]
.Col = 4
.Row = 0
.Text = [Ô] Nº QUARTOS[Ô]
.Col = 5
.Row = 0
.Text = [Ô] Nº SUITES[Ô]
.Col = 6
.Row = 0
.Text = [Ô] CATEGORIA[Ô]
.Col = 7
.Row = 0
.Text = [Ô] ENDEREÇO IMÓVEL[Ô]
.Col = 8
.Row = 0
.Text = [Ô]CONDOMÃNIO[Ô]
.Col = 9
.Row = 0
.Text = [Ô]PISCINA[Ô]
.Col = 10
.Row = 0
.Text = [Ô] SAUNA[Ô]
.Col = 11
.Row = 0
.Text = [Ô] QUADRA[Ô]
.Col = 12
.Row = 0
.Text = [Ô] JARDIM[Ô]
.Col = 13
.Row = 0
.Text = [Ô] CHURRASQ.[Ô]
.Col = 14
.Row = 0
.Text = [Ô] GARAGEM[Ô]
.Col = 15
.Row = 0
.Text = [Ô] PREÇO[Ô]
.Col = 16
.Row = 0
.Text = [Ô] STATUS[Ô]
.Col = 17
.Row = 0
.Text = [Ô] CHAVES[Ô]
.Col = 18
.Row = 0
.Text = [Ô] HORA VISITA[Ô]
.Col = 19
.Row = 0
.Text = [Ô] TERRENO[Ô]
.Col = 20
.Row = 0
.Text = [Ô] ÃREA CONSTRUÃDA[Ô]
.Col = 21
.Row = 0
.Text = [Ô] PROPRIETÃRIO[Ô]
.Col = 22
.Row = 0
.Text = [Ô] TELEFONES[Ô]
.Col = 23
.Row = 0
.Text = [Ô] CELULAR[Ô]
.Col = 24
.Row = 0
.Text = [Ô] E-MAIL[Ô]
.Col = 25
.Row = 0
.Text = [Ô] RG[Ô]
.Col = 26
.Row = 0
.Text = [Ô] CPF/CNPJ[Ô]
.Col = 27
.Row = 0
.Text = [Ô] ENDEREÇO PROPRIETÃRIO[Ô]
End With
MSFlexGrid2.ColWidth(0) = 1000
MSFlexGrid2.ColWidth(1) = 1500
MSFlexGrid2.ColWidth(2) = 7000
MSFlexGrid2.ColWidth(3) = 1800
MSFlexGrid2.ColWidth(4) = 1300
MSFlexGrid2.ColWidth(5) = 1300
MSFlexGrid2.ColWidth(6) = 1800
MSFlexGrid2.ColWidth(7) = 7000
MSFlexGrid2.ColWidth(8) = 1800
MSFlexGrid2.ColWidth(9) = 1300
MSFlexGrid2.ColWidth(10) = 1300
MSFlexGrid2.ColWidth(11) = 1200
MSFlexGrid2.ColWidth(12) = 1200
MSFlexGrid2.ColWidth(13) = 1200
MSFlexGrid2.ColWidth(14) = 1200
MSFlexGrid2.ColWidth(15) = 1300
MSFlexGrid2.ColWidth(16) = 1500
MSFlexGrid2.ColWidth(17) = 1700
MSFlexGrid2.ColWidth(18) = 1800
MSFlexGrid2.ColWidth(19) = 1800
MSFlexGrid2.ColWidth(20) = 1800
MSFlexGrid2.ColWidth(21) = 5000
MSFlexGrid2.ColWidth(22) = 2500
MSFlexGrid2.ColWidth(23) = 1300
MSFlexGrid2.ColWidth(24) = 4500
MSFlexGrid2.ColWidth(25) = 1500
MSFlexGrid2.ColWidth(26) = 2000
MSFlexGrid2.ColWidth(27) = 7000
MSFlexGrid2.FixedCols = 0
[ô]-----------------------------------------------------------------------
For i = 0 To tb_im.Fields.Count - 1
Next
MSFlexGrid2.Rows = tb_im.RecordCount + 1
i = 1
MSFlexGrid1.Redraw = False
Do While Not tb_im.EOF
pre = tb_im([Ô]precoimo[Ô])
MSFlexGrid2.TextMatrix(i, 0) = tb_im([Ô]codimo[Ô])
MSFlexGrid2.TextMatrix(i, 1) = tb_im([Ô]dtent[Ô])
MSFlexGrid2.TextMatrix(i, 2) = tb_im([Ô]obsimo[Ô])
MSFlexGrid2.TextMatrix(i, 3) = tb_im([Ô]tipoimo[Ô])
MSFlexGrid2.TextMatrix(i, 4) = tb_im([Ô]quartoimo[Ô])
MSFlexGrid2.TextMatrix(i, 5) = tb_im([Ô]suiteimo[Ô])
MSFlexGrid2.TextMatrix(i, 6) = tb_im([Ô]categoriaimo[Ô])
MSFlexGrid2.TextMatrix(i, 7) = tb_im([Ô]endimo[Ô])
MSFlexGrid2.TextMatrix(i, 8) = tb_im([Ô]condominioimo[Ô])
MSFlexGrid2.TextMatrix(i, 9) = tb_im([Ô]piscina[Ô])
MSFlexGrid2.TextMatrix(i, 10) = tb_im([Ô]sauna[Ô])
MSFlexGrid2.TextMatrix(i, 11) = tb_im([Ô]quadra[Ô])
MSFlexGrid2.TextMatrix(i, 12) = tb_im([Ô]jardim[Ô])
MSFlexGrid2.TextMatrix(i, 13) = tb_im([Ô]churrasqueira[Ô])
MSFlexGrid2.TextMatrix(i, 14) = tb_im([Ô]garagem[Ô])
MSFlexGrid2.TextMatrix(i, 15) = Format(pre, [Ô]###,##0.00[Ô])
MSFlexGrid2.TextMatrix(i, 16) = tb_im([Ô]statusimo[Ô])
MSFlexGrid2.TextMatrix(i, 17) = tb_im([Ô]chaves[Ô])
MSFlexGrid2.TextMatrix(i, 18) = tb_im([Ô]horavisita[Ô])
MSFlexGrid2.TextMatrix(i, 19) = tb_im([Ô]terreno[Ô])
MSFlexGrid2.TextMatrix(i, 20) = tb_im([Ô]area[Ô])
MSFlexGrid2.TextMatrix(i, 21) = tb_im([Ô]prop[Ô])
MSFlexGrid2.TextMatrix(i, 22) = tb_im([Ô]telefoneimo[Ô])
MSFlexGrid2.TextMatrix(i, 23) = tb_im([Ô]celularimo[Ô])
MSFlexGrid2.TextMatrix(i, 24) = tb_im([Ô]emailimo[Ô])
MSFlexGrid2.TextMatrix(i, 25) = tb_im([Ô]rgimo[Ô])
MSFlexGrid2.TextMatrix(i, 26) = tb_im([Ô]cpfimo[Ô])
MSFlexGrid2.TextMatrix(i, 27) = tb_im([Ô]endprop[Ô])
i = i + 1
tb_im.MoveNext
Loop
MSFlexGrid1.Redraw = True
ZebraFlex MSFlexGrid2, &HE0E0E0
Public Sub carregaimo()
Dim i
Dim pre As Currency
With MSFlexGrid2
.Col = 0
.Row = 0
.Text = [Ô] CÓDIGO [Ô]
.Col = 1
.Row = 0
.Text = [Ô] DATA ENTRADA[Ô]
.Col = 2
.Row = 0
.Text = [Ô] DESCRIÇÃO DO IMÓVEL[Ô]
.Col = 3
.Row = 0
.Text = [Ô] TIPO IMÓVEL[Ô]
.Col = 4
.Row = 0
.Text = [Ô] Nº QUARTOS[Ô]
.Col = 5
.Row = 0
.Text = [Ô] Nº SUITES[Ô]
.Col = 6
.Row = 0
.Text = [Ô] CATEGORIA[Ô]
.Col = 7
.Row = 0
.Text = [Ô] ENDEREÇO IMÓVEL[Ô]
.Col = 8
.Row = 0
.Text = [Ô]CONDOMÃNIO[Ô]
.Col = 9
.Row = 0
.Text = [Ô]PISCINA[Ô]
.Col = 10
.Row = 0
.Text = [Ô] SAUNA[Ô]
.Col = 11
.Row = 0
.Text = [Ô] QUADRA[Ô]
.Col = 12
.Row = 0
.Text = [Ô] JARDIM[Ô]
.Col = 13
.Row = 0
.Text = [Ô] CHURRASQ.[Ô]
.Col = 14
.Row = 0
.Text = [Ô] GARAGEM[Ô]
.Col = 15
.Row = 0
.Text = [Ô] PREÇO[Ô]
.Col = 16
.Row = 0
.Text = [Ô] STATUS[Ô]
.Col = 17
.Row = 0
.Text = [Ô] CHAVES[Ô]
.Col = 18
.Row = 0
.Text = [Ô] HORA VISITA[Ô]
.Col = 19
.Row = 0
.Text = [Ô] TERRENO[Ô]
.Col = 20
.Row = 0
.Text = [Ô] ÃREA CONSTRUÃDA[Ô]
.Col = 21
.Row = 0
.Text = [Ô] PROPRIETÃRIO[Ô]
.Col = 22
.Row = 0
.Text = [Ô] TELEFONES[Ô]
.Col = 23
.Row = 0
.Text = [Ô] CELULAR[Ô]
.Col = 24
.Row = 0
.Text = [Ô] E-MAIL[Ô]
.Col = 25
.Row = 0
.Text = [Ô] RG[Ô]
.Col = 26
.Row = 0
.Text = [Ô] CPF/CNPJ[Ô]
.Col = 27
.Row = 0
.Text = [Ô] ENDEREÇO PROPRIETÃRIO[Ô]
End With
MSFlexGrid2.ColWidth(0) = 1000
MSFlexGrid2.ColWidth(1) = 1500
MSFlexGrid2.ColWidth(2) = 7000
MSFlexGrid2.ColWidth(3) = 1800
MSFlexGrid2.ColWidth(4) = 1300
MSFlexGrid2.ColWidth(5) = 1300
MSFlexGrid2.ColWidth(6) = 1800
MSFlexGrid2.ColWidth(7) = 7000
MSFlexGrid2.ColWidth(8) = 1800
MSFlexGrid2.ColWidth(9) = 1300
MSFlexGrid2.ColWidth(10) = 1300
MSFlexGrid2.ColWidth(11) = 1200
MSFlexGrid2.ColWidth(12) = 1200
MSFlexGrid2.ColWidth(13) = 1200
MSFlexGrid2.ColWidth(14) = 1200
MSFlexGrid2.ColWidth(15) = 1300
MSFlexGrid2.ColWidth(16) = 1500
MSFlexGrid2.ColWidth(17) = 1700
MSFlexGrid2.ColWidth(18) = 1800
MSFlexGrid2.ColWidth(19) = 1800
MSFlexGrid2.ColWidth(20) = 1800
MSFlexGrid2.ColWidth(21) = 5000
MSFlexGrid2.ColWidth(22) = 2500
MSFlexGrid2.ColWidth(23) = 1300
MSFlexGrid2.ColWidth(24) = 4500
MSFlexGrid2.ColWidth(25) = 1500
MSFlexGrid2.ColWidth(26) = 2000
MSFlexGrid2.ColWidth(27) = 7000
MSFlexGrid2.FixedCols = 0
[ô]-----------------------------------------------------------------------
For i = 0 To tb_im.Fields.Count - 1
Next
MSFlexGrid2.Rows = tb_im.RecordCount + 1
i = 1
MSFlexGrid1.Redraw = False
Do While Not tb_im.EOF
pre = tb_im([Ô]precoimo[Ô])
MSFlexGrid2.TextMatrix(i, 0) = tb_im([Ô]codimo[Ô])
MSFlexGrid2.TextMatrix(i, 1) = tb_im([Ô]dtent[Ô])
MSFlexGrid2.TextMatrix(i, 2) = tb_im([Ô]obsimo[Ô])
MSFlexGrid2.TextMatrix(i, 3) = tb_im([Ô]tipoimo[Ô])
MSFlexGrid2.TextMatrix(i, 4) = tb_im([Ô]quartoimo[Ô])
MSFlexGrid2.TextMatrix(i, 5) = tb_im([Ô]suiteimo[Ô])
MSFlexGrid2.TextMatrix(i, 6) = tb_im([Ô]categoriaimo[Ô])
MSFlexGrid2.TextMatrix(i, 7) = tb_im([Ô]endimo[Ô])
MSFlexGrid2.TextMatrix(i, 8) = tb_im([Ô]condominioimo[Ô])
MSFlexGrid2.TextMatrix(i, 9) = tb_im([Ô]piscina[Ô])
MSFlexGrid2.TextMatrix(i, 10) = tb_im([Ô]sauna[Ô])
MSFlexGrid2.TextMatrix(i, 11) = tb_im([Ô]quadra[Ô])
MSFlexGrid2.TextMatrix(i, 12) = tb_im([Ô]jardim[Ô])
MSFlexGrid2.TextMatrix(i, 13) = tb_im([Ô]churrasqueira[Ô])
MSFlexGrid2.TextMatrix(i, 14) = tb_im([Ô]garagem[Ô])
MSFlexGrid2.TextMatrix(i, 15) = Format(pre, [Ô]###,##0.00[Ô])
MSFlexGrid2.TextMatrix(i, 16) = tb_im([Ô]statusimo[Ô])
MSFlexGrid2.TextMatrix(i, 17) = tb_im([Ô]chaves[Ô])
MSFlexGrid2.TextMatrix(i, 18) = tb_im([Ô]horavisita[Ô])
MSFlexGrid2.TextMatrix(i, 19) = tb_im([Ô]terreno[Ô])
MSFlexGrid2.TextMatrix(i, 20) = tb_im([Ô]area[Ô])
MSFlexGrid2.TextMatrix(i, 21) = tb_im([Ô]prop[Ô])
MSFlexGrid2.TextMatrix(i, 22) = tb_im([Ô]telefoneimo[Ô])
MSFlexGrid2.TextMatrix(i, 23) = tb_im([Ô]celularimo[Ô])
MSFlexGrid2.TextMatrix(i, 24) = tb_im([Ô]emailimo[Ô])
MSFlexGrid2.TextMatrix(i, 25) = tb_im([Ô]rgimo[Ô])
MSFlexGrid2.TextMatrix(i, 26) = tb_im([Ô]cpfimo[Ô])
MSFlexGrid2.TextMatrix(i, 27) = tb_im([Ô]endprop[Ô])
i = i + 1
tb_im.MoveNext
Loop
MSFlexGrid1.Redraw = True
ZebraFlex MSFlexGrid2, &HE0E0E0
Sabe o que acho estranho, será que existe uma quantidade maxima de caracteres que a cellula do flexgrdi aceita, nuca vi isto
vc testou inserindo um campo mais curto
que propriedade maxlenght é esta , que não vi no flexgrid.
mas vamos lá se a informação é muito grande então deveria arrumar uma outra maneira de exibi-la
outra coisa quantos registros existem no banco de dados
mas tente esta pequena modificação em seu código
tente este código acima apenas para que eu tire uma duvida
vc testou inserindo um campo mais curto
que propriedade maxlenght é esta , que não vi no flexgrid.
mas vamos lá se a informação é muito grande então deveria arrumar uma outra maneira de exibi-la
outra coisa quantos registros existem no banco de dados
mas tente esta pequena modificação em seu código
Dim pre As Currency
Dim Cabecalho As String
With MSFlexGrid2
.Cols = 28
.Rows = 1
.FixedRows = 1
Cabecalho = Cabecalho & [Ô] CÓDIGO| DATA ENTRADA| DESCRIÇÃO DO IMÓVEL| TIPO IMÓVEL| Nº QUARTOS| Nº SUITES|[Ô]
Cabecalho = Cabecalho & [Ô] CATEGORIA| ENDEREÇO IMÓVEL|CONDOMÃNIO|PISCINA| SAUNA| QUADRA| JARDIM|[Ô]
Cabecalho = Cabecalho & [Ô] CHURRASQ.| GARAGEM| PREÇO| STATUS| CHAVES| HORA VISITA| TERRENO|[Ô]
Cabecalho = Cabecalho & [Ô] ÃREA CONSTRUÃDA| PROPRIETÃRIO| TELEFONES| CELULAR| E-MAIL| RG| CPF/CNPJ| ENDEREÇO PROPRIETÃRIO[Ô]
.FormatString = Cabecalho
.ColWidth(0) = 1000
.ColWidth(1) = 1500
.ColWidth(2) = 7000
.ColWidth(3) = 1800
.ColWidth(4) = 1300
.ColWidth(5) = 1300
.ColWidth(6) = 1800
.ColWidth(7) = 7000
.ColWidth(8) = 1800
.ColWidth(9) = 1300
.ColWidth(10) = 1300
.ColWidth(11) = 1200
.ColWidth(12) = 1200
.ColWidth(13) = 1200
.ColWidth(14) = 1200
.ColWidth(15) = 1300
.ColWidth(16) = 1500
.ColWidth(17) = 1700
.ColWidth(18) = 1800
.ColWidth(19) = 1800
.ColWidth(20) = 1800
.ColWidth(21) = 5000
.ColWidth(22) = 2500
.ColWidth(23) = 1300
.ColWidth(24) = 4500
.ColWidth(25) = 1500
.ColWidth(26) = 2000
.ColWidth(27) = 7000
.FixedCols = 0
MSFlexGrid1.Redraw = False
Do While Not tb_im.EOF
.Rows = .Rows + 1
pre = tb_im([Ô]precoimo[Ô])
.TextMatrix(.Rows - 1, 0) = tb_im([Ô]codimo[Ô])
.TextMatrix(.Rows - 1, 1) = tb_im([Ô]dtent[Ô])
.TextMatrix(.Rows - 1, 2) = tb_im([Ô]obsimo[Ô])
.TextMatrix(.Rows - 1, 3) = tb_im([Ô]tipoimo[Ô])
.TextMatrix(.Rows - 1, 4) = tb_im([Ô]quartoimo[Ô])
.TextMatrix(.Rows - 1, 5) = tb_im([Ô]suiteimo[Ô])
.TextMatrix(.Rows - 1, 6) = tb_im([Ô]categoriaimo[Ô])
.TextMatrix(.Rows - 1, 7) = tb_im([Ô]endimo[Ô])
.TextMatrix(.Rows - 1, 8) = tb_im([Ô]condominioimo[Ô])
.TextMatrix(.Rows - 1, 9) = tb_im([Ô]piscina[Ô])
.TextMatrix(.Rows - 1, 10) = tb_im([Ô]sauna[Ô])
.TextMatrix(.Rows - 1, 11) = tb_im([Ô]quadra[Ô])
.TextMatrix(.Rows - 1, 12) = tb_im([Ô]jardim[Ô])
.TextMatrix(.Rows - 1, 13) = tb_im([Ô]churrasqueira[Ô])
.TextMatrix(.Rows - 1, 14) = tb_im([Ô]garagem[Ô])
.TextMatrix(.Rows - 1, 15) = Format(pre, [Ô]###,##0.00[Ô])
.TextMatrix(.Rows - 1, 16) = tb_im([Ô]statusimo[Ô])
.TextMatrix(.Rows - 1, 17) = tb_im([Ô]chaves[Ô])
.TextMatrix(.Rows - 1, 18) = tb_im([Ô]horavisita[Ô])
.TextMatrix(.Rows - 1, 19) = tb_im([Ô]terreno[Ô])
.TextMatrix(.Rows - 1, 20) = tb_im([Ô]area[Ô])
.TextMatrix(.Rows - 1, 21) = tb_im([Ô]prop[Ô])
.TextMatrix(.Rows - 1, 22) = tb_im([Ô]telefoneimo[Ô])
.TextMatrix(.Rows - 1, 23) = tb_im([Ô]celularimo[Ô])
.TextMatrix(.Rows - 1, 24) = tb_im([Ô]emailimo[Ô])
.TextMatrix(.Rows - 1, 25) = tb_im([Ô]rgimo[Ô])
.TextMatrix(.Rows - 1, 26) = tb_im([Ô]cpfimo[Ô])
.TextMatrix(.Rows - 1, 27) = tb_im([Ô]endprop[Ô])
tb_im.MoveNext
Loop
End With
MSFlexGrid1.Redraw = True
ZebraFlex MSFlexGrid2, &HE0E0E0
tente este código acima apenas para que eu tire uma duvida
O QUE ACHO ESTRANDO é QUE ESSE SISTEMA RODAVA REDONDO, ATé EM MÃQUINAS QUE NÃO TEM O VB INSTALADO.DELETEI NO BD O ÚLTIMO REGISTRO INSERIDO, E CONTINUA DANDO O MESMO ERRO. O ERRO ESTà DANDO NESTA LINHA DE PREENCHIMENTO:
[txt-color=#e80000].TextMatrix(.Rows - 1, 0) = tb_im([Ô]codimo[Ô])[/txt-color]
.TextMatrix(.Rows - 1, 1) = tb_im([Ô]dtent[Ô])
.TextMatrix(.Rows - 1, 2) = tb_im([Ô]obsimo[Ô])
.TextMatrix(.Rows - 1, 3) = tb_im([Ô]tipoimo[Ô])
.TextMatrix(.Rows - 1, 4) = tb_im([Ô]quartoimo[Ô])
.TextMatrix(.Rows - 1, 5) = tb_im([Ô]suiteimo[Ô])
.TextMatrix(.Rows - 1, 6) = tb_im([Ô]categoriaimo[Ô])
.TextMatrix(.Rows - 1, 7) = tb_im([Ô]endimo[Ô])
.TextMatrix(.Rows - 1, 8) = tb_im([Ô]condominioimo[Ô])
.TextMatrix(.Rows - 1, 9) = tb_im([Ô]piscina[Ô])
.TextMatrix(.Rows - 1, 10) = tb_im([Ô]sauna[Ô])
.TextMatrix(.Rows - 1, 11) = tb_im([Ô]quadra[Ô])
.TextMatrix(.Rows - 1, 12) = tb_im([Ô]jardim[Ô])
.TextMatrix(.Rows - 1, 13) = tb_im([Ô]churrasqueira[Ô])
.TextMatrix(.Rows - 1, 14) = tb_im([Ô]garagem[Ô])
.TextMatrix(.Rows - 1, 15) = Format(pre, [Ô]###,##0.00[Ô])
.TextMatrix(.Rows - 1, 16) = tb_im([Ô]statusimo[Ô])
.TextMatrix(.Rows - 1, 17) = tb_im([Ô]chaves[Ô])
.TextMatrix(.Rows - 1, 18) = tb_im([Ô]horavisita[Ô])
.TextMatrix(.Rows - 1, 19) = tb_im([Ô]terreno[Ô])
.TextMatrix(.Rows - 1, 20) = tb_im([Ô]area[Ô])
.TextMatrix(.Rows - 1, 21) = tb_im([Ô]prop[Ô])
.TextMatrix(.Rows - 1, 22) = tb_im([Ô]telefoneimo[Ô])
.TextMatrix(.Rows - 1, 23) = tb_im([Ô]celularimo[Ô])
.TextMatrix(.Rows - 1, 24) = tb_im([Ô]emailimo[Ô])
.TextMatrix(.Rows - 1, 25) = tb_im([Ô]rgimo[Ô])
.TextMatrix(.Rows - 1, 26) = tb_im([Ô]cpfimo[Ô])
.TextMatrix(.Rows - 1, 27) = tb_im([Ô]endprop[Ô])
tb_im.MoveNext
[txt-color=#e80000].TextMatrix(.Rows - 1, 0) = tb_im([Ô]codimo[Ô])[/txt-color]
.TextMatrix(.Rows - 1, 1) = tb_im([Ô]dtent[Ô])
.TextMatrix(.Rows - 1, 2) = tb_im([Ô]obsimo[Ô])
.TextMatrix(.Rows - 1, 3) = tb_im([Ô]tipoimo[Ô])
.TextMatrix(.Rows - 1, 4) = tb_im([Ô]quartoimo[Ô])
.TextMatrix(.Rows - 1, 5) = tb_im([Ô]suiteimo[Ô])
.TextMatrix(.Rows - 1, 6) = tb_im([Ô]categoriaimo[Ô])
.TextMatrix(.Rows - 1, 7) = tb_im([Ô]endimo[Ô])
.TextMatrix(.Rows - 1, 8) = tb_im([Ô]condominioimo[Ô])
.TextMatrix(.Rows - 1, 9) = tb_im([Ô]piscina[Ô])
.TextMatrix(.Rows - 1, 10) = tb_im([Ô]sauna[Ô])
.TextMatrix(.Rows - 1, 11) = tb_im([Ô]quadra[Ô])
.TextMatrix(.Rows - 1, 12) = tb_im([Ô]jardim[Ô])
.TextMatrix(.Rows - 1, 13) = tb_im([Ô]churrasqueira[Ô])
.TextMatrix(.Rows - 1, 14) = tb_im([Ô]garagem[Ô])
.TextMatrix(.Rows - 1, 15) = Format(pre, [Ô]###,##0.00[Ô])
.TextMatrix(.Rows - 1, 16) = tb_im([Ô]statusimo[Ô])
.TextMatrix(.Rows - 1, 17) = tb_im([Ô]chaves[Ô])
.TextMatrix(.Rows - 1, 18) = tb_im([Ô]horavisita[Ô])
.TextMatrix(.Rows - 1, 19) = tb_im([Ô]terreno[Ô])
.TextMatrix(.Rows - 1, 20) = tb_im([Ô]area[Ô])
.TextMatrix(.Rows - 1, 21) = tb_im([Ô]prop[Ô])
.TextMatrix(.Rows - 1, 22) = tb_im([Ô]telefoneimo[Ô])
.TextMatrix(.Rows - 1, 23) = tb_im([Ô]celularimo[Ô])
.TextMatrix(.Rows - 1, 24) = tb_im([Ô]emailimo[Ô])
.TextMatrix(.Rows - 1, 25) = tb_im([Ô]rgimo[Ô])
.TextMatrix(.Rows - 1, 26) = tb_im([Ô]cpfimo[Ô])
.TextMatrix(.Rows - 1, 27) = tb_im([Ô]endprop[Ô])
tb_im.MoveNext
Se você possui muitos registros, seria bom filtrar os registros por determinados criterios. Os grids são para visualizar dados e não para carregar todos registros da tabela no form. Se ainda assim, você achar necessário carregar todos registros, você pode usar o Mshflexgrid, que tem as mesmas funções da flex grid e é um controle ADO, enquanto o flexgrid é para DAO. (Click aqui). Com o Mshflexgrid, você vai manter todo seu código como está visto que possui todas funcionalidades da flex. é só Trocar a Flexgrid pela Hflexgrid, colocar a propriedade name da mesma forma no hgrid e ajustar alguma outra propriedade.
Mas se você quiser continuar com a flex tenta carregar assim:
Para contornar este problema, caso você queira exibir mais de 2048 linhas, você deverá abrir o seu conjunto de registros e preencher a grade usando o método GetString de ADO e a propriedade clip do MSHFlexGrid. (Conforme exibido no exemplo deste artigo)
Mas se você quiser continuar com a flex tenta carregar assim:
Para contornar este problema, caso você queira exibir mais de 2048 linhas, você deverá abrir o seu conjunto de registros e preencher a grade usando o método GetString de ADO e a propriedade clip do MSHFlexGrid. (Conforme exibido no exemplo deste artigo)
é robiu olhei no site do macoratti que vc colocou abaixo, diz que posso usar 350.000 celulas, não cheguei nem a 2.000 células. Esse msflexgrid só carrega imóveis que tenho em estoque, num cálculo que fiz aqui, para estourar o limite do controle eu teria que ter 15.000 imóveis em estoque.
Por isso que o erro pode estar na inclusão de algum registro no bd, que na hora de carregá-lo ocasionou um erro, por exemplo: um campo text = 100 eu posso ter usado o limite total desse campo pela primeira vez e na hora de carregá-lo ocasionou o erro, pois como disse acima na priemeira postagem, utilizo esse sistema a mais de 1 ano e sempre funcionou muito bem, estou verificando nas horas que tenho tempo se tiver alguma resposta postarei aqui, e se alguem souber a solução por favor poste aqui.
Obrigado
Por isso que o erro pode estar na inclusão de algum registro no bd, que na hora de carregá-lo ocasionou um erro, por exemplo: um campo text = 100 eu posso ter usado o limite total desse campo pela primeira vez e na hora de carregá-lo ocasionou o erro, pois como disse acima na priemeira postagem, utilizo esse sistema a mais de 1 ano e sempre funcionou muito bem, estou verificando nas horas que tenho tempo se tiver alguma resposta postarei aqui, e se alguem souber a solução por favor poste aqui.
Obrigado
Se estiver com problema no tamanho do campo, isso é com o banco de dados e não com a tabela. A propriedade Width da grid é para exibir os dados e não para determinar o tamanho de dados a receber. Se você colocar essa propriedade como 0, os dados estarão lá, só não serão exibidos, portanto, a grid não tem essa de tamanho de campo.
Se você estiver usando alguma variável integer no processo de carregamento, mude para Long - só para garantir.
De qualquer forma, faça o teste com a mshflexgrid. é só trocar os controles. Não vai mudar nada no código.
Se você estiver usando alguma variável integer no processo de carregamento, mude para Long - só para garantir.
De qualquer forma, faça o teste com a mshflexgrid. é só trocar os controles. Não vai mudar nada no código.
Cara, eu tenho uma FlexGrid que carrega 120 mil registro, e nao tenho problemas.
deve ser Algum Dado Nulo ou em Branco na Base de Dados que não esta aceitando
deve ser Algum Dado Nulo ou em Branco na Base de Dados que não esta aceitando
Deletei os três últimos registros incluÃdos, e os inclui de novo, o sistema voltou a funcionar, vou verificar o que aconteceu, depois posto para esclarecer.
Tópico encerrado , respostas não são mais permitidas