Autor
|
Tema: Arrays en VB (Leído 5,090 veces)
|
TheGhost(Z)
Desconectado
Mensajes: 230
|
Hola a todos. solo quería saber cuanta informacion se puede almacenar en cada casilla de una array unidimencional: Lo que ocurre es que estoy pasando los datos de tres campos por Winsock al cliente. Pero me arroja error en una fila donde los tres campos estan con datos. de ahí que creo que a lo mejor es porque hay mucha informacion? 'Server Dim Transmitir As String Transmitir = Hoja1 & "|" & Hoja2 & "|" & Hoja3 Winsock1.SendData Transmitir Cliente Dim Transmicion As String Dim Datos() As String
Winsock1.GetData Transmicion, vbString
Datos = Split(Transmicion, "|")
Text1.Text= Datos(0) Text2.Text= Datos(1) Text3.Text= Datos(2) Hay 20 filas con datos en el primer campo. Solo en la fila 16 los tres campos estan con datos. con información de una hoja Word. Y justo ahi salta un error y pasa a la fila 17. Salta porque capuré el error. Será porque en la fila 16 hay mucho texto?, ayuda porfa...
|
|
|
En línea
|
|
|
|
DarkMatrix
Desconectado
Mensajes: 150
Nuestro Limite es la Imaginacion
|
Dudo que sea eso ps en una variable tipo string se puede almacenar mucho, que error te manda el vb y que tipo de datos son hoja1, hoja2 y hoja3?
|
|
|
En línea
|
Todo aquello que no se puede hacer, es lo que no intentamos hacer. Projecto Ani-Dimension Digital Duel Masters (Juego de cartas masivo multijugador online hecho en Visual Basic 6.0) Desing by DarkMatrix
|
|
|
TheGhost(Z)
Desconectado
Mensajes: 230
|
Bueno he revisado todo. En un lan pasa todo los datos, intentaré de nuevo a traves de internet... ya les comentaré
|
|
|
En línea
|
|
|
|
TheGhost(Z)
Desconectado
Mensajes: 230
|
Hola, saben he intentado en una LAN y pasa normal todos los datos, pero cuando lo hago desde internet, trabajo a casa, no llega datos en el campo 3. Lo que estoy pensando es que se pierden datos. Ya, que solo pasa con ese registro donde hay gran cantidad de informacion.
En realidad, lo de arriba es solo un ejemplo. Lo que intento pasar son 100 registros con 10 campos. De esos campos hay 03 con Hoja1, Hoja2, Hoja3, donde guardo comentarios de 20 lineas.
Todos los registros tienen comentarios de 20 lineas en la hoja1. pero en los registros donde tienen comentarios en la hoja2, hoja3 llegan sin datos.
hay, algun limite para pasar datos de un porramos con el Winsock.?
|
|
|
En línea
|
|
|
|
BlackZeroX
Wiki
Desconectado
Mensajes: 3.158
I'Love...!¡.
|
eso seguro es perdida de datos, usa un doevents antes de el sendata doevents: ws.senddata datos yen el servidor o resector ue no tenga nintun doevents en el evento dataarrival (si pones un doevents se volveara el estring: es por esperiencia propia con el winsock ). otra cosa, no uses el select case en el data arrival, solo usalo para obtener los datos, y usa algo asi como Switch para pasar datos GraNDESWinsock emisor[/i] botonSend () { ws.senddata "EnvOn" ' // Peticion para saber si esta listo el resector }
DataArrival() { dim datos as string dim spli() spli = split(datos,"|") select case spli(0) case "Envon" if cbool(spli(1) then doEvents: ws.senddata Tramision ' // Se envian los datos de la variable "Transmison" doEvents: ws.sendata "Envoff" ' // Le indico al resector el termino y la ultilizacion del proceso select case end if case "Envon" if cbool(spli(1) then ' // Me dio weba seguir con el codigo asi ue lo lo demas es cosa tuya end if ' // Otros select case etc... end select }
WinSock Receptor[/i] DataArrival() { dim datos as string static resect as boolean ws.getdata datos, vbstring if right(datos,len("Envon"))="Envon" then resect = true Ws.sendata "Envon|" & true elseif right(datos,len("Envoff"))="Envoff" then resect = false Ws.sendata "Envoff|" & true else call procesodondeestaelselectcase(datos) ' // en este proceso hacer el split con la variable en el parametro. end if }
Dulces Lunas!¡.
|
|
« Última modificación: 10 Noviembre 2009, 20:34 pm por ░▒▓BlackZeroҖ▓▒░ »
|
En línea
|
The Dark Shadow is my passion.
|
|
|
TheGhost(Z)
Desconectado
Mensajes: 230
|
OK. Intentaré arreglar todo eso. Luego les comento. como va..
Saludos,
|
|
|
En línea
|
|
|
|
TheGhost(Z)
Desconectado
Mensajes: 230
|
Hola, ░▒▓BlackZeroҖ▓▒░ Los 100 registros los descargo con un Timer Private Sub Timer1_Timer() If Winsock1.State = sckConnected Then Dim ID As Long ID = FuncionMaximo("Registros", "ID") ID = ID + 1 Winsock1.SendData "DESGARGAR" & Format(ID, "0000000000") Timer1.Enabled = False End If End Sub Luego en el Server DataArribal Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim Transmicion As String Dim Mandato As String
Winsock1.GetData Transmicion, vbString Mandato = Left(Transmicion, 9)
If Mandato = "DESCARGAR" Then RS.Open "", DBConex, adOpenStatic, adLockReadOnly If RS.RecordCount > 0 Then Dim Trasmitir As String Transmitir = Transmitir & RS(0) & "|" Transmitir = Transmitir & RS(1) & "|" Transmitir = Transmitir & RS(2) & "|" Etc, Etc, Etc Winsock1.SendData "AGREGARSI" & Transmitir Else Winsock1.SendData "AGREGARNO" 'Informamos que no hay el registro solicitado. End If Rs.Close Set Rs = Nothing End IF End Sub Nuevamente en el Cliente: Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim Transmicion As String Dim Mandato As String Winsock1.GetData Transmicion, vbString Mandato = Left(Transmicion, 9)
If Mandato = "AGREGARSI" Then 'hago el correspondiente Split. Es decir extraido los campos 'luego los agrego en la base de datos 'como existe más datos en el server. activo el Timer para que saque el 'nuevo máximo valor y lo envié para descargar el siguiente Timer1.Enabled = True End If End Sub Bueno, eso es el código. Crees que sea por el Do Events. XQ cuanto solicité la descargar de Registros con un FOR en el DataArribal se mesclaban todos los registros; ya que, lo hacía muy rápido. Por eso el Timer solicitará un nuevo registro una vez se se haya agregado el registro descargado, sino se mantendrá Inactivo. Más claro, lo que no entiendo si el problema es: 1.) ¿Pido muy rápido el registro a descargar? 2.) ¿Problema con el Split, porque no soporta muchos datos. Por lo que me sugieres que use Switch? Ayuda, porfa...
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
No entiendo los arrays
PHP
|
Riki_89D
|
7
|
3,706
|
1 Diciembre 2010, 22:29 pm
por Shell Root
|
|
|
problemas con Arrays PHP
PHP
|
Dreamcacher
|
7
|
4,351
|
9 Diciembre 2010, 10:16 am
por Dreamcacher
|
|
|
Arrays de estrocturas
Programación C/C++
|
Gotttlieb
|
3
|
3,448
|
26 Abril 2011, 18:38 pm
por El_Java
|
|
|
Arrays de PHP
Desarrollo Web
|
inquilin@19
|
2
|
2,147
|
10 Octubre 2011, 17:23 pm
por inquilin@19
|
|
|
Punteros y arrays
Programación C/C++
|
cazagavilan
|
4
|
2,545
|
14 Abril 2012, 19:32 pm
por cazagavilan
|
|