Lista de objetos
Hola Amigos!
Este es mi primer mensaje, felicitaciones por este excelente web. Voy con mi duda. Tengo un objeto (o record) y quiero convertirlo en una lista donde pueda agregar y borrar elementos, y luego presentarla en una grilla. Nunca lo hice, quisiera saber qué componentes me recomiendan utilizar. Los campos a guardar son: Descripcion, cantidad, importe, iva, impuestos. De los cuales, solo quiero mostrar en mi grilla los 3 primeros. (pero el objeto tiene más atributos) Saludos |
Hola
Bienvenido al club Que base de datos usas?. O Vas a sacar los datos de un archivo text?. De donde vas a sacar los datos?. Saludos |
Hola. Estoy trabajando con Firebird (caño!!) pero no es importante...
Yo lo que quiero hacer es: TLista.Add( sDescrip, nCant, nTotal.... ) E ir representandolo en pantalla... Poder acceder al renglón seleccionado (por si quiero hacer alguna operación sobre el objeto ya creado), etc. Z |
Hola
Cita:
Por cierto no conozco el nuevo Firebird (caño!!), debe ser edición limitada Saludos |
Jajaja.... "caño" es una expresión Argentina.. que significa... MUY BUENO...
Ahora.. pensandolo bien... hay algun componente que maneje una tabla en memoria? el TClientDataSet hace eso? No se como usarlo... Porque estoy pensando que lo que quiero es manejar una tabla.. en memoria.. seleccionar los campos que quiero ver.. y que la tabla tenga más campos... Cómo lo puedo hacer? Dónde aprendo a manejar el TClientDataSet (si es que se ajusta a lo que necesito) Gracias!!! Z |
Hola
Enviemos este hilo al principio para que algun maestro lo vea. Saludos |
Bueno, no soy un maestro pero creo que puedo ayudar en algo:
1. PabloZZZ, ¿al final que és? Una clase o un record? Debes especificar concretamente lo que es, pues dependiendo de ello se hará más o menos fácil lo que buscas... o simplemente traducido: "más o menos código" Esto te pregunto porque dices: Cita:
Cita:
Veamos... ¿Que es sDescrip, nCant, etc? Lo que deseas hacer se puede conseguir con un TObjectList, TList, TStrings, entre otros... cada uno te hará dificil o fácil la tarea. Y aquí hablamos de algo que influye mucho. Y como dije.. hay muchas manera de resolverlo. A mi de entrada se me ocurren dos: A. Un TObjetList (por ejemplo) que guarda la lista de tus objetos.
B. Un clase propia que ofrece los métodos necesarios, ofreciendo un adaptador que mantiene la lista.
De modo que se consigue por ejemplo:
Y su implementación podría ser algo como:
Siendo en este caso TAlgo aquella clase que tienes... pero claro... si en realidad es un record... esto habría que modificar... Sugiero una correcta leída de la ayuda de Dephi, del uso del buscador de los foros y una explicación precisa de tus necesidades/problemas/dudas. Y con respecto al tema del TDataSet, si es una "tabla en memoria". Nuevamente invito a hacer una búsqueda en los foros. Ya se ha hablado bastante sobre el tema. Espero que se me haya entendido. Los maestros podrán explicar mejor y dar otras alternativas. Saludos, |
si logre entender la mejor opcion que puedes tener es la tabla en memoria, yo utilizo TKBMemTable, faciles de utilizar y no debes perder tanto tiempo reinventando la rueda...
|
Hola
:D:DEntonces, entre Argentinos se entienden??:confused: La explicacion parece que esta Caño.:D:D:D:D Saludos |
Cita:
Ambos sabemos que añadir clases puede conducirnos a reinventar la rueda, y añade más ruido al sistema. PabloZZZ debe examinar bien que es lo que debe hacer, si es solo un "ABM" de los datos tenemos muchas alternativas, que con poco código se consigue hacer las cosas. Si el uso de las clases permiten reducir el impacto del ruido y aportan mayor utilidad (funcionalidad) para abordar los requisitos consideraría su uso. En fin, creo que mi ejemplo demuestra parte de la reinvencion de la rueda. PabloZZZ debes hacer un mayor análisis. Cita:
No se si será un Caño, pero como dije antes: demuestra muchas cosas: 1. La falta de análisis del problema. 2. El grave peligro de hacer más de la cuenta, o incluso... hacer menos de la cuenta. PabloZZZ no es que haya sido malo, es que con tan escasos datos que aportas, mucho no podemos ayudar. Saludos, |
Hola
Perdona Delphius, pero esta pregunta no la entiende nadie, solo un Argentino.:D:D Para mi no tiene ni pies ni cabeza, esta falta de informacion y no especifica practicamente nada, por eso me parece que tu respuesta debe de estar Caño, por que si no quien Coño, lo entiende.:D:D Saludos |
Delphius! gracias por responder.
Cita:
Cita:
Cita:
Gracias! |
Cita:
Es mi primer post, voy a tratar de mejorar. Saludos. |
Si sabes usar record entonces no debe ser dificil.
Ejemplo de un record:
Ahora necesitarias un SETer y un GETer como para cargar y obtener datos. Ejemplo de una clase.
Te dejo para vos el DelPersona. Espero te sirba mi clase improvisada y pido perdon por algun errror. Saludos |
No entiendo por qué debe ser un "record". ¿Por qué no una clase? Si tienes Firebird, es mejor clases que registros.
TListaPersonas es precisamente un TObjectList. Siempre se ha usado los arrays dinámicos, pero ya que tenemos la clase mencionada, hagamos uso de ella. Yo al menos usaría la clase TPersona así:
En el foro hay mucho sobre Tobjectlist. Saludos |
Cita:
Bueniiiiiiiiiiisimo! mil gracias! ya está todo funcionando de maravilla. Gracias a todos! Z |
|
La franja horaria es GMT +2. Ahora son las 23:44:21. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi