• Jueves 28 de Marzo de 2024, 10:58

Autor Tema:  Re: DATA ENVIROMENT  (Leído 4873 veces)

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: DATA ENVIROMENT
« en: Viernes 5 de Septiembre de 2003, 01:23 »
0
Alguien me puede decir algo del Data Enviroment en VB? q es? como lo uso?

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #1 en: Martes 9 de Septiembre de 2003, 00:15 »
0


Hola,

Explicar el uso de los DataEnvironment es muy extenso pero voy a tratar de acercarte un poco a la luz.

En primer lugar comenzaria diciendo que los DataEnvironment son el punto medio entre tener un control data (no aconsejable) y escribir todo lo relacionado al manejo de Bases de Datos por codigo.

Es un gran objeto al cual (al igual que un formulario) podras llamar de la manera que quieras, por ejemplo ARCHIVOS.

Muy bien...




Luego veras en esta imagen que te crea un objeto por debajo llamado Connection1 (tambien lo podras renombrar como por ejemplo miConexion)

Este no es mas un objeto connection, el cual puedes modificar sin necesidad de codigo para que establezca la coneccion a tu BD, por ejemplo cuando con boton derecho del mouse vas a propiedades te aparecera la siguiente pantalla.



y luego puedes llenando los valores establecer la conexion facilmente.



una vez creada tu conexion (te aclaro que un DataEnvironment puede tener multiples conexiones a la vez), debes crear los comandos de esas conexiones.

Los comando son los que invocaras mediante codigo y ejecutaran lo que dentro de los mismos hayas programado.

Por ejemplo.

Vamos a crear un comando llamado TodosLosClientes mediante la opcion Add Command



Aparecera la siguiente pantalla...




Tu conexion y tu comando quedaria asi...



Puedes agregar tantos comando quieras y la complejidad de las consultas no tienen limite, ya que los comandos admiten parametros que luego les pasaras desde el mismo codigo para hacerlos totalmente flexibles.

Por ejemplo vamos a agregar un segundo comando llamado ClienteNro donde ejecutaremos una consulta a la BD, y donde queremos que nos devuelva las filas relacionadas a un solo cliente.

Agregamos el comando y en la seccion SQL Statement
colocar donde tendria que ir el codigo de cliente , simplemente el signo ?, esto le indica que el dato vendra parametrizado desde el codigo.



Y en la seccion de parametros tienes que indicarle un nombre (para facilitarte la tarea luego desde el codigo), y el tipo de parametro casi siempre lo interpreta de la misma BD, pero de ser necesario se lo tendrias que indicar.



Una vez hecho todo esto desde el codigo simplemente lo que haces es lo siguiente.



Toma esto como una simple referencia a lo que son los DataEnvironment, ya que a medida que los uses descubriras muchas utilidades mas.

Ademas no todos los comandos devolveran filas, ya que puedes crear un comando para borrar registros, otro para insertar registros, y como viste anteriormente todo es parametrizable, ademas el codigo que terminas escribiendo es extremadamente reducido, lo cual en una aplicacion grande, no es poco decir.

Espero que esto te sirva, y suerte.

:good:
Pablo Tilotta
Analista de Sistemas
Argentina

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #2 en: Martes 9 de Septiembre de 2003, 00:19 »
0
Pues gracias otra vez muchacho...eres una maquina...pondre en practica esto a ver como me va a mi...ya te cuento...

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #3 en: Martes 9 de Septiembre de 2003, 00:40 »
0
Hola, probalo y avisame como te fue o si te queda alguna duda puntual.

Suerte
Pablo Tilotta
Analista de Sistemas
Argentina

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #4 en: Martes 9 de Septiembre de 2003, 13:01 »
0
he visto q se crea un archivo de ext .DSR...cuando trasportas la aplicacion me imagino q habra q llevarla junto con la base de datos?o es qa la hora de compilar se agrega al ejecutable?

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #5 en: Martes 9 de Septiembre de 2003, 14:09 »
0
No necesitas agregar nada a tu aplicacion, hace de cuenta que un .DSR es el equivalente a un .FRM.

Todo queda en el compilado asi que despreocupate.

Probalo

Suerte.
Pablo Tilotta
Analista de Sistemas
Argentina

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #6 en: Jueves 11 de Septiembre de 2003, 13:20 »
0
Hola estoy reescribiendo una aplicacion con los data enviroment y me ha surgido un problema...
antes yo asignaba el valor de un campo de esta forma:
 Codigo=Adodc1.Recordset("Codigo")

como lo hago con el data enviroment?

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #7 en: Jueves 11 de Septiembre de 2003, 13:25 »
0
Tomando los nombres que dimos en el ejemplo de arriba la respuesta es la siguiente.

codigo=archivos.rsClienteNro("codigo")

y listo.

Suerte
Pablo Tilotta
Analista de Sistemas
Argentina

J.M.Movilla

  • Miembro MUY activo
  • ***
  • Mensajes: 427
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #8 en: Jueves 11 de Septiembre de 2003, 18:11 »
0
Perdón por la expresión... pero no tengo palabras para elogiar el valor de esta lección magistral que nos ha ofrecido el Profesor Don Pablo Tilotta... No me extraña que Zambito bese por donde Pablo ha pisado...

Personalmente, Pablo,  me congratulo de haber tenido la suerte de conocerte y de entablar una buena amistad contigo.

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #9 en: Jueves 11 de Septiembre de 2003, 18:20 »
0
Bueno.. muy agradecido por las calidas palabras de mi amigo Jose Maria.

Precisamente para este tipo de trabajo es que estoy pidiendo una seccion de Aportes.

Espero que esto les sirva a muchos, ya que uno tiene la costumbre de desechar muchas funciones, precisamente porque no las conoce, y no se da cuenta que pueden resolverle muchos problemas.

Un Abrazo amigo mio, nos seguiremos cruzando en el Foro y en el Messenger, como todos los dias.

Suerte
Pablo Tilotta
Analista de Sistemas
Argentina

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: DATA ENVIROMENT
« Respuesta #10 en: Jueves 11 de Septiembre de 2003, 18:40 »
0
hhhhaaaahhhh!!!!

Me la he pasado 6 meses haceindo aplicaciones que podrian haber salido en  unas semanas...
Mis trabajos en la universidad solia hacerlos en Visual Basic y como tambien he sido autodidacta, siempre me la pasaba buscando libros y paginas web.. pero en todo lado solo hablaban de los objetos de datos y de hacverlo todo manualmente...
Una vez probe con el enviroment, pero como no tenia tiempo decidi seguir con lo que ya sabia y no ponerme a aprender algo que me llevaria tiempo.
En fin hice el proyecto y no volvi a tocar el tema porque...bueno ustedes lo pueden deducir.. me ocupe en otras cosas.

Y hoy he visto esta fantastica publicacion de chiaravel!!!!

obviamente lo de
 
Citar
te odio chiaravel

no es cierto, por el contrario estoy tambien muy agradecido, porque se que esto me ahorrara mucho trabajo en el futuro.

Gracias

Juank
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #11 en: Jueves 11 de Septiembre de 2003, 18:47 »
0
No solo estoy feliz porque hoy (11/9) cumple 3 años mi hijita del alma (Chiara Belen Tilotta), sino que he recibido...

El apoyo de Solocodigo que le contesto como debia a Pelotita

y el apoyo de Amigos como Uds. que no son cualquier simple usuario de Este foro, sino que son lo Maximo que hay.

Muchas Gracias y hagamos que esto crezca dia a dia.

Un Abrazo
Pablo Tilotta
Analista de Sistemas
Argentina

acalanto

  • Miembro activo
  • **
  • Mensajes: 80
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #12 en: Jueves 11 de Septiembre de 2003, 18:57 »
0
Perplejo me he quedado de la ecelente exposición de nuestro estimado compañero Chiaravel.

Yo nunca he usado el DataEnviroment por razones más o menos parecidas a las de Juank, pero creo que tendré que replantearlo.

Un abrazo amigo Chiaravel y felicitaciones a tu hija..

NOTA: Pelotita hacía ya tiempo que se buscaba unua respuesta de ese calibre, pero tal y como dije en algún post ofende quien puede no quien quiere y la verdad es que quien tiene conocimientos, cultura y educación probablemente no le resulte necesario ofender a nadie.

Un saludo a tod@s
-Acalanto-

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #13 en: Viernes 12 de Septiembre de 2003, 13:04 »
0
Pues...q mas decir chiaravel...se nota q todo el foro te aprecia y te reconoce la labor q haces desinteresadamente...lastima q no coincidimos en horario yo estoy al otro lado del mundo pero igual te agradezco por compartir con todos nosotros tus experiencias...el tema este de dataenviroment casi no esta docuementado y esta clase me ha parecido genial...me parece una idea brutal la de aportes...a ver si solocodigo le da luz verde...y felicidades para tu niña campeon

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #14 en: Martes 16 de Septiembre de 2003, 16:41 »
0
pablo mas cosas de D.E.
yo usando los objetos adodc tenia metodos para agregar y para borrar algo asi
adodc1.recordset.addnew o delete para agregar o borar correspondientemente...pero cuanl es la sintaxis q se usa con los D.E.?

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #15 en: Martes 16 de Septiembre de 2003, 17:25 »
0
Bueno.. El tema es asi...

Suponiendo que tenemos nuestro DataEnvironment llamado Archivos y una sola conexion llamada MiConexion debes agregar un comando nuevo bajo MiConexion llamado, por ejemplo InsertoDatos y colocar la sentencia SQL que ves a continuacion.




Luego como vimos anteriormente le das un nombre logico a cada Parametro en la lengueta de parametros como para que en el momento de ir al codigo sepas muy bien que dato te esta pidiendo.

Perfecto.. ahora vamos al Codigo....

Solo tendrias que usar una linea de codigo tal como te muestro a continuacion.



Pequeña Aclaracion

Es muy comun que cuando uno no tiene mucha experiencia use la siguiente estructura para agregar datos a un BD...

base.addnew
base("campoCodigo")=codigo.text
base("campoNombre")=nombre.text
base("campotelefono")=telefono.text
base.update

Bien....

Esta instruccion es muy facil de usar pero tiene sus desventajas a veces invisible a los ojos del programador.

En primer lugar esta la performance, ya que por cada reemplazo que se hace en un campo el motor realiza y ejecuta una serie de eventos propios de la BD, lo cual multiplicado por la cantidad de campos que modifiquemos nos va a dar un numero de segundos de retardo en la operacion.

A veces es imperceptible, pero cuando las tablas contienen decenas de campos, esto puede llegar a notarse.

En cambio ...

La Instruccion SQL INSERT realiza todas las asignaciones al mismo tiempo y no demora un tiempo x por cada campo lo cual la hace muy rapida y eficiente.

Volvamos a nuestro DataEnvironment

Bien... ahora vamos a crear un nuevo comando para modificar datos de las BD.





Es lo mismo que con el INSERT pero usaremos el comando UPDATE.

y el codigo es el siguiente....



Y listo el POLLO !!!!

Como veras solo has escrito 2 lineas de codigo para manejar tus Inserciones y tus Modificaciones.

Por supuesto las instruccion UPDATE puede ser mas compleja modificando todos los registros que cumplan una condicion, o un simple registro o todos los registros de la BD.

Suerte y no dudes en preguntar nuevamente.

Chau
Pablo Tilotta
Analista de Sistemas
Argentina

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #16 en: Martes 16 de Septiembre de 2003, 17:37 »
0
Gracias pablo por la explicacion..ya entendi el sentido...yo pensaba q existian metodos para agregar y modificar pero ya veo q todo hay q crearlo...hare un par de pruebas a ver si me viene bien y ya te digo...

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
Re: DATA ENVIROMENT
« Respuesta #17 en: Martes 16 de Septiembre de 2003, 17:47 »
0
Lo bueno es que una vez que tienes tus comandos en toda la aplicacion los llamas con una solo linea de codigo.

Otra ventaja espectacular de los DataEnvironment es que como estos generan un archivo aparte de la aplicacion con extension .DSR, si haces otra aplicacion que maneje esa misma Base de Datos, simplemente agregas ese .DSR a tu nueva aplicacion y listo ya tienes todo pre-programado sin tener que volver a definirlo.

Suerte
Pablo Tilotta
Analista de Sistemas
Argentina

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
DATA ENVIROMENT
« Respuesta #18 en: Martes 16 de Septiembre de 2003, 17:53 »
0
Les muestro un ejemplo de una aplicacion real que hice...

Se imaginan cuanto codigo me he ahorrado con este DataEnvironment ?

Ademas este mismo DataEnvironment lo uso en otras 3 aplicaciones y solo lo programe 1 vez.




Suerte
Pablo Tilotta
Analista de Sistemas
Argentina