FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Existe alguna tecnica para no repetir codigo?
Hola a todos!, hace rato que no escribia...
Les explico mi problema para que se entienda lo que quiero hacer, si se puede... Tengo dos bases de datos. Las dos son iguales en estructura, solo qeu guardan datos distintos (una guarda datos personales y las otras los datos de las sucursales) Por ende tengo dos datamodulos, donde se repiten las querys. Ahora supongamos que tengo un formulario donde se hacen busquedas. Hoy en dia tengo un codigo de la siguiente forma:
Como veran se repite el mismo codigo, solo que como depende de con que datamodule tenga que trabajar, estoy obligado a repetir el mismo codigo dos veces. yo probe hacer algo del tipo : pero obviamente esto no sirve, directamente no compila. Espero que se entienda cual es mi problema y si alguno sabe como solucionar esto para no tener qeu repetir siempre el mismo codigo para un datamodule y para el otro lo agradeceria mucho. Saludos a todos!!! |
#2
|
||||
|
||||
Hola
creo un procedimiento: Luego lo llamo: No se, digo..... Saludos
__________________
Siempre Novato |
#3
|
|||
|
|||
Cita:
No se, digo.... |
#4
|
||||
|
||||
Hola
Osea te brincas el: Ya que los query se llaman EXACTAMENTE IGUAL en ambos datamodule. Lo único que varia es con que datamodule trabaja y para eso esta el código anterior. Que dices al respecto? Saludos
__________________
Siempre Novato |
#5
|
|||
|
|||
Digo que tu procedimiento no tenia la cláusula with.
No se, digo..... |
#6
|
||||
|
||||
Hola
No veo ni entiendo la razón por la que no funcione. Declaraste el procedimiento en su lista?. De todos modos no me hagas mucho caso, de estas cosas no se. BrunoBsso se ve que tiene la respuesta adecuada, ya casi la suelta. Saludos
__________________
Siempre Novato |
#7
|
|||
|
|||
Probe de la forma que me decis, pero no funciona.
unaQuery esta declarada tanto en el datamodule1 como en el datamodule2; si yo creo un procedimiento Datos de la forma que mencionas me sale un error al compilar del tipo "identificador no declarado", es decir, no encuentra "unaQuery". Por las dudas aclaro que en el uses del form de busqueda estan agregados los dos datamodules. Edit : Pido disculpas por no haber agradecido el interes en darme una respuesta, sin importar cual fuese el resultado. Para ser sincero, estoy tan metido en resolver esto que se me paso. Espero que cuente el "mas vale tarde que nunca" y te doy mil gracias por responderme. Saludos! |
#8
|
|||
|
|||
Cita:
Bueno, pablopessoa, lo que tendrías que hacer es ese procedimiento, pero agregarle un argumento. Explico:
Y desde el otro procedimiento:
Saludos!!!! No se si la adecuada, pero sí una explicativa Última edición por BrunoBsso fecha: 10-03-2010 a las 02:51:12. Razón: Basta de ser pedantes, sobretodo cuando no sabés |
#9
|
|||
|
|||
Les agradezco mucho a los dos por la ayuda.
Mas alla de la "sutiles replicas" que hayan tenido, la solucion recomendada por BrunoBsso compila bien, y de seguro funcione ( ya se me caen los ojos asi que la voy a completar mañana y la pruebo :S). Lo cual no desmerece la ayuda prestada por Caral. Si me permiten una sugerencia para el futuro, ni la soberbia ( no todos manejamos el mismo nivel de programacion) ni los botines afilados ( sobre todo para un usuario relativamente nuevo como nosotros) cooperan al buen desempeño de la comunidad en el foro. Es de saber que al momento de inscribirse en un foro, te encuentres con gente a un mismo nivel, a un nivel medio y a un nivel principiante (sin importar la cantidad de post que hayan hecho). La clave es tener paciencia, ayudar si se puede y se tiene ganas y por sobre todo, tratar de mantener cierta "camaraderia" entre nosotros. Nuevamente gracias a los dos, saludos y BrunoBsso te comento que soy de La Plata, asi que casi que somos vecinos jajaajaj. |
#10
|
|||
|
|||
Cita:
A lo segundo que remarqué, considerando que sos de La Plata y que estás aprendiendo Delphi, no puedo evitar la idea de que estás estudiando en la UNLP justamente en la facu de Informática. Ya sabés, cuando necesites ayuda en Delphi me avisas y yo intento solucionarte los problemas, pero no siempre voy a saber todo. Si estás estudiando ahí, cuando tengas a Bertone no te hagas amigo suyo, después te usa para demostrar cosas y casi siempre quedas mal (no es experiencia propia por suerte). Saludos! |
#11
|
||||
|
||||
Hola
Me alegra que obtuvieras la respuesta adecuada, ademas de ver tu educacion. Como siempre he dicho, tal vez si me dedicara a la programación o por lo menos algo supiera, ayudaría mas, o trataría. Con relación a la soberbia: Puede que lo sea algo, tal vez la edad ya me lo permita. No se en Argentina que significa (No se, digo..). Pero en castellano esta bien claro. BrunoBsso: Siempre es un gusto ver código de los que saben, así tratare de seguir aprendiendo de este mi pasatiempo. Saludos
__________________
Siempre Novato |
#12
|
||||
|
||||
El compañero Caral ha intentado ayudar. Cualquiera puede equivocarse en un momento dado o no dar una solución correcta, pero creo que nadie se molesta en dar una solución equivocada a propósito, siempre se hace de buena fé y con la mejor intención del mundo.
Debemos tener paciencia unos con otros, nadie es perfecto.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código Únete al grupo Teaming clubdelphi | Colabora mediante Paypal |
#13
|
|||
|
|||
Cita:
Si no fuese por ese malintencionado "No se, digo...." yo hubiese contestado con toda amabilidad para explicar el error y mostrar la solución. Sin embargo, la pedantería de ese "No se, digo...." me hizo saltar la térmica y a cosas así reacciono mal. Así que repito: mi reacción no se debe a que alguien, en un intento de ayudar, lo haga mal; se debe a la soberbia, y mas cuando es infundada. |
#14
|
||||
|
||||
Cita:
Necesitas acceder a las dos bases de datos a la vez ? o es que unas veces ejecutas el programa contra una bbdd y otras veces contra la otra. Si es éste el caso, no creo que lo estés haciendo bien, ya que con un sólo módulo de datos valdría, cambiando la base de datos a la que se accede al comenzar el programa e incluyendo un procedimiento de cambio de base de datos en el propio programa. Y Caral podría aportar muchísimo en cuanto a ficheros .INI y familia. ( y lo contento que se pondría, ya tan mayor ) . Por favor, confirmanos este dato. No sé, digo... Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
#15
|
||||
|
||||
Antes de que este hilo sea cerrado, quisiera expresar mi parecer.
Empecemos por la definición de soberbio (así es como se escribe): Que tiene soberbia o se deja llevar de ella. Y la de soberbia: 1. Altivez y apetito desordenado de ser preferido a otros. 2. Satisfacción y envanecimiento por la contemplación de las propias prendas con menosprecio de los demás. Si alguno de los participantes de este hilo ha actuado con soberbia aquí, es definitivamente el compañero BrunoBsso. Razones: 1. Su primer mensaje inicia con un total menosprecio de la sugerencia dada por Carlos. Además de usar de entrada esa descalificadora mano roja, no muestra haberse detenido a analizar que la idea de Carlos no es del todo mala si ese procedimiento se tratara de un método en ambos módulos de datos (el valor para los parámetros dependería de que pablopessoa especificara el origen de la expresión unValor). 2. Aún cuando en su léxico, la expresión "No sé, digo" signifique una grosería, Bruno mismo hace mofa con ella en más de una ocasión. Es decir, se rebajó al nivel de trato que erróneamente percibía en Carlos. 3. Ante la aclaración de Carlos «declaraste el procedimiento en su lista?» (donde ciertamente no emplea la palabra método, pero que no es difícil de entenderlo así para alguien con el conocimiento que Bruno ha demostrado) presenta nula humildad. Muy por el contrario, inicia su siguiente mensaje con altivez, diciendo «Véase que yo tenía razón». Además ya se aclaró que en Costa Rica la frase "No sé, digo" no es ninguna clase de injuria. Por tanto, me parece que Bruno haría bien en añadir un mensaje más, ofreciendo una disculpa a Carlos, siendo congruente con sus propias palabras: Cita:
Cita:
Un abrazo social. Al González. Última edición por Al González fecha: 10-03-2010 a las 19:29:51. |
#16
|
|||
|
|||
Creo que no hacía falta levantar el polvo dado que la discusión se terminó y se me dio a entender que fue un malentendido de léxicos.
|
#17
|
||||
|
||||
Y bueno, nadie mencionó que posiblemente estamos ante un mal diseño de BD, ya que bien podrían convivir los datos tanto generales como "locales" en la misma base de datos y acceder a una u otra mediente "wheres". No veo pq nos vamos por otro rumbo....
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#18
|
|||
|
|||
A ver gente.... ni por casualidad pretendia que se armara tanto lio por un simple post....
Para contestar algunas cosas... Siempre digo ser novato... simplemente por que lo soy. Primero que nada, se que no es la intencion de nadie dar una respuesta equivocada o guiar por mal camino a un forista intencionalmente, si asi fuera, estoy seguro que se arriesgaria la continuidad en este foro. En cuanto a las dos bases de datos, la persona que me pidio el programa (de mas esta decir que con mi nivel no es un trabajo profesional sino un encargo de un amigo) expresamente me pidio que lo maneje de esa manera... dos bases de datos iguales... pero que en una esten los datos locales y en la otra los datos de las sucursales, la cual se usa para acualizar via ftp. En un post de este tema, trate de calmar las aguas y nunca menosprecie ninguna de las respuestas, es mas agradeci cada aporte que se hizo. Mi conocimiento de POO no es pobre, pero tampoco avanzada. y por ultimo, acaso nunca le paso a alguien tener un problema con un codigo, cuando estas hace rato metido en lo mismo y no darte cuenta de que la solucion era algo obvio hasta qeu alguien vino y te lo dijo? Si algun moderador ve esto y quiere cerrar el hilo, me parece barbaro y es mas, lo solicito. Me parece un derroche gastar tiempo en una discusion vacia y sin sentido cuando se podria emplearlo en aportar algo a algun otro forista que necesite ayuda. Siempre agradezco mucho la ayuda que me brinda este foro, y reconozco que son muchas mas las veces qeu pregunto que las que respondo, espero algun dia revertir las cosas y ser mas de ayuda que de molestia. Les doy las gracias a todos los aportes. Saludos! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
existe alguna utilidad o manual para migrar codigo a Delphi 2009? | cocute | Varios | 5 | 05-02-2009 11:16:17 |
Existe alguna clase para serializar un objeto en Delphi | rgstuamigo | OOP | 4 | 04-10-2008 14:05:20 |
Uso de Compononetes para reutilizar codigo (abuso de la tecnica) | olmecas | OOP | 9 | 17-01-2008 18:47:28 |
existe alguna manera de evitar los archivos ddp (diagramas) en D7 | pvizcay | Varios | 2 | 02-12-2006 15:44:10 |
¿Existe alguna propiedad que te diga el nº de Items de un ComboBox??. | nuri | Varios | 7 | 11-08-2005 16:26:35 |
|