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

Compartiendo código: Pequeña base de datos en un array

Estas en el tema de Compartiendo código: Pequeña base de datos en un array en el foro de Programación General en Foros del Web. Básicamente, nace como producto de una tarea, se supone que es como una manera de complicarnos la vida para entrar en el mundo de las ...
  #1 (permalink)  
Antiguo 03/09/2010, 19:56
Avatar de VTacius  
Fecha de Ingreso: junio-2010
Mensajes: 90
Antigüedad: 13 años, 9 meses
Puntos: 2
Compartiendo código: Pequeña base de datos en un array

Básicamente, nace como producto de una tarea, se supone que es como una manera de complicarnos la vida para entrar en el mundo de las bases de datos.

Es casi una tontería, pero bueno, a mi me sirvio y no se a quien más pueda servirle. Lo posteo acá por dos cosas: Una, se que indexa bien y rápido en google, y dos, más de alguien sabrá agregarle ideas buenas.

Como el titulo lo dice, consiste en guardar una seria de datos muchas personas en un array. (Conociendo las limitaciones que habrá)
En visual basic .NET, se que alguien podrá portarlo a otros lenguajes.

1) Definimos la matriz sobre la que vamos a trabajar. La diferencia con un vector radica en que este es de una sola dimensión, mientras que la matriz puede ser multidimensional.

Código VB:
Ver original
  1. Dim nomina(15, cols)
  2. Dim cols As Integer = -1

Donde el 15 es el número de datos que vamos a usar, y cols serán los registros que vamos a meter. En base de datos, el orden es inverso en cuanto a la manera en que se entienden campos y registros, pero no se puede de otra forma en visual.

Inicializamos las columnas con -1, ya verán porque.

2) Luego, para agregar datos, o sea, crear un nuevo registro, basta con escribir en el evento de algún objeto (Quizá el click de un button):

Código VB:
Ver original
  1. cols = UBound(nomina, 2) + 1
  2. ReDim Preserve nomina(16, cols)
Lo que hace es hacer que la variable cols, donde se guardan los registros, aumente en uno más que el total de registros actuales. Por eso inicializamos en +1, para que el primer registro de guarde en 0. La siguiente vez que querramos agregar algo, sumara uno.
Luego, ReDim se encarga de redimensionar la matriz al nuevo tamaño que la variable cols le confiere.

3) Guardar datos.. Básicamente, solo debes asignar los valores que quieras (por ejemplo, las propiedades de los objetos de un formulario) a alguno de los campos de la matriz. Así

Primero, las guardamos en variables, lo que pudes ser útil para hacer algunas validaciones antes, o si piensas trabajar con propiedades de una clase (Ideas, ideas)

Código VB:
Ver original
  1. dato1 = txt_nombre.text
  2. dato2 = txt_apellido.text
  3. ..
  4. dato13 = txt_Seguro.text

Luego, volcamos las variables en nuestro array

Código VB:
Ver original
  1. nomina(0, cols) = dato1
  2. nomina(1, cols) = dato2
  3. ...
  4. nomina(13, cols) = dato13

Fijate que como primero debes hacer "Agregar" antes de "Guardar", entonces cols adquiere un nuevo indice en su segunda dimensión, por lo que el dato anteriormente guardado no se dañara. Si solo quieres Modificar, no hay que dar click en nuevo, es decir, no hay que agregar columnas. Claro, la implementación requiere un juego de habilitacion de objetos y esas cosas.

¿Más? Talvez después suba el resto, que no es mucho. Lo demás fue trabajar con una clase que hacía todos los cálculos.

A ver quien quieres ayudar con ideas nuevas, regaños o cosas por el estilo... Sabiendo de antemano que solo es un pequeña idea para un problema casi insignificante

Última edición por VTacius; 03/09/2010 a las 23:22
  #2 (permalink)  
Antiguo 12/09/2010, 18:24
 
Fecha de Ingreso: agosto-2010
Ubicación: Ecuador
Mensajes: 46
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Compartiendo código: Pequeña base de datos en un array

Cita:
Iniciado por VTacius Ver Mensaje
Básicamente, nace como producto de una tarea, se supone que es como una manera de complicarnos la vida para entrar en el mundo de las bases de datos.

Es casi una tontería, pero bueno, a mi me sirvio y no se a quien más pueda servirle. Lo posteo acá por dos cosas: Una, se que indexa bien y rápido en google, y dos, más de alguien sabrá agregarle ideas buenas.

Como el titulo lo dice, consiste en guardar una seria de datos muchas personas en un array. (Conociendo las limitaciones que habrá)
En visual basic .NET, se que alguien podrá portarlo a otros lenguajes.

1) Definimos la matriz sobre la que vamos a trabajar. La diferencia con un vector radica en que este es de una sola dimensión, mientras que la matriz puede ser multidimensional.

Código VB:
Ver original
  1. Dim nomina(15, cols)
  2. Dim cols As Integer = -1

Donde el 15 es el número de datos que vamos a usar, y cols serán los registros que vamos a meter. En base de datos, el orden es inverso en cuanto a la manera en que se entienden campos y registros, pero no se puede de otra forma en visual.

Inicializamos las columnas con -1, ya verán porque.

2) Luego, para agregar datos, o sea, crear un nuevo registro, basta con escribir en el evento de algún objeto (Quizá el click de un button):

Código VB:
Ver original
  1. cols = UBound(nomina, 2) + 1
  2. ReDim Preserve nomina(16, cols)
Lo que hace es hacer que la variable cols, donde se guardan los registros, aumente en uno más que el total de registros actuales. Por eso inicializamos en +1, para que el primer registro de guarde en 0. La siguiente vez que querramos agregar algo, sumara uno.
Luego, ReDim se encarga de redimensionar la matriz al nuevo tamaño que la variable cols le confiere.

3) Guardar datos.. Básicamente, solo debes asignar los valores que quieras (por ejemplo, las propiedades de los objetos de un formulario) a alguno de los campos de la matriz. Así

Primero, las guardamos en variables, lo que pudes ser útil para hacer algunas validaciones antes, o si piensas trabajar con propiedades de una clase (Ideas, ideas)

Código VB:
Ver original
  1. dato1 = txt_nombre.text
  2. dato2 = txt_apellido.text
  3. ..
  4. dato13 = txt_Seguro.text

Luego, volcamos las variables en nuestro array

Código VB:
Ver original
  1. nomina(0, cols) = dato1
  2. nomina(1, cols) = dato2
  3. ...
  4. nomina(13, cols) = dato13

Fijate que como primero debes hacer "Agregar" antes de "Guardar", entonces cols adquiere un nuevo indice en su segunda dimensión, por lo que el dato anteriormente guardado no se dañara. Si solo quieres Modificar, no hay que dar click en nuevo, es decir, no hay que agregar columnas. Claro, la implementación requiere un juego de habilitacion de objetos y esas cosas.

¿Más? Talvez después suba el resto, que no es mucho. Lo demás fue trabajar con una clase que hacía todos los cálculos.

A ver quien quieres ayudar con ideas nuevas, regaños o cosas por el estilo... Sabiendo de antemano que solo es un pequeña idea para un problema casi insignificante
La verdad no le veo ninguna utilidad, pero es bueno que quieras aportar.

Salu2.
__________________
FENIXSOL.NET<<FENIXSOL Soluciones Informáticas>>FENIXSOL.NET
  #3 (permalink)  
Antiguo 13/09/2010, 20:12
Avatar de VTacius  
Fecha de Ingreso: junio-2010
Mensajes: 90
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Compartiendo código: Pequeña base de datos en un array

Supongo que debo quedarme con la satisfacción de que al menos alguien respondió.

Etiquetas: vtacius
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 20:36.