FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
|||
|
|||
Mysql, ZeosDB
Buenas, podría alguien explicar que sucede. Tengo un data modulo con los un Tzconection y varios tzquery, al buscar información no he tenido ningún problema, el problema se me presento al intentar modificar el valor de un campo el cual no se modifica. Es la primera ves que utilizo estos componentes.
Datos adicionales: Delphi 7, ZeosDb cnprincipal(Tzconection) : los parametros se cargan desde un inifile. (sin problema) sqlsecuencias(tzquery) : SQL (Select * from tblsecuencias). Codigo:
El programa no me da ningún error pero no me modifica el registro |
#2
|
||||
|
||||
¿Y qué sentencia de edición estás usando?
|
#3
|
||||
|
||||
Desde luego, si le asignas el "Número de Historia" de forma manual, no lo va a cambiar puesto que el edit y el post están en el else.
Un saludo.
__________________
La Madurez se llama... ~~~Gaia~~~ |
#4
|
|||
|
|||
Me disculpo por no haber leído el post lo mas rápido posible, pero el caso es el siguiente el la tabla secuencia existe un registro previo con los valores de cada campo inicializado en 0, cada pantalla incrementara el campo correspondiente dependiendo de la actividad (facturas, HCN, deduciones, ND, NC, etc,etc).
Si es nuevo y es manual no debe leer el campo secuencia, de lo contrario si es automático debe leer la tabla secuencia e incrementar el campo HCN en uno y guardar dicho valor. Lo siguiente extraño es que si inicializo la variable hcn a cero siempre, cuando hago varios guardar automático veo que se incrementa pero el la tabla el campo esta en cero. |
#5
|
||||
|
||||
¿Este trozo de código solamente sirve para saber calcular el hcn?
Ahora mismo no veo donde ha de actualizarse el registro. Por otra parte, en este código:
No sé si tiene que ser así o no pero veo algo raro. Abres "SqlSecuencias" pero calculas en base a "sqlSecuenciasHistoriaClinica" y lo guardas en "sqlSecuenciasHistoriaClinica". ¿Para qué se abre SqlSecuencias entonces?
__________________
La Madurez se llama... ~~~Gaia~~~ |
#6
|
||||
|
||||
Cita:
Cita:
Lo que realmente quería decir es que creía que había un error a la hora de usar los querys pero no quería tirarme mucho al agua.
__________________
La Madurez se llama... ~~~Gaia~~~ |
#7
|
||||
|
||||
Yo no entiendo nada de lo que estás diciendo
|
#8
|
|||
|
|||
dmConexiones.sqlSecuencias es el query o conexión a la tabla de secuencias donde se encuentra el campo HistorialClinica el cual es el que me interesa por ahora. Pero para acceder a su valor lo debo hacer completo según entiendo es dmConexiones.sqlSecuenciasHistoriaClinica.Value. Si verificas el dmConexiones.sqlSecuencias.post es para guardar los cambios realizados según se. Reitero nunca haber trabajado con los zeos pero en ADO me funcionan muy bien
|
#9
|
||||
|
||||
El problema parece estar en que sqlSecuencias es un Query y por lo tanto tiene unsolo SQL asignado.
En este caso el SQL es un 'SELECT ... FROM TABLA'. TZQuery al ser un SELECT solo devuelve valores, pero no sabe como hacer updates, inserts ni deletes. Es un componente que sirve para ejecutar una instrucción en la base de datos. Supongo que deberías utilizar el componente TZUpdateSQL. Este componente tiene un SQL para cada acción que necesita. Mira esta web Cita:
|
#10
|
|||
|
|||
Ok ya entiendo duilioisola, voy a probar
|
#11
|
||||
|
||||
La belleza de ZeosDB es que te permite hacer esto:
Yo quitaría eso de asignación de secuecina manual y se lo dejo a MySQL con un campo autoincrementado, no veo la utilidad de darle al usuario la potestad de poder decidir que número siguen en la secuencia cuando lo que necesitas es un número único por cada historia clínica. Creo que en todo caso falta revisar el model de BD que hiciste.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#12
|
|||
|
|||
Gracias por la ayuda AzidRain, pero es una tabla donde estaran todas las secuencias para todos los documentos, y configuraciones que necesiten, como el caso del IVA, etc
|
#13
|
||||
|
||||
Es lo mismo que te mencionaba, no necesitas tener una tabla para guardar en que numero va cada documento. Aparte de impráctico corres el riesgo de que si no diseñaste bien la BD, termines con folios desfasados.
Te recomiendo colocar un campo intenger sin signo tipo autoincrementando en todas las tablas que requieran tener un número consecutivo para identificar cada registro. Además así es más fácil de mantener las relaciones entre tablas. Y no tienes que hacer nada en tu código ya que MySQL se encargará de ir generando los numeros de forma automática.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#14
|
||||
|
||||
Cita:
Un saludo
__________________
La Madurez se llama... ~~~Gaia~~~ |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Copiar "Algunos" Campos de una Tabla a otra - ZEOSDB Sqlite | martini002 | Conexión con bases de datos | 6 | 21-08-2012 01:46:41 |
ZeosDB con MySql 5.1 | franroju | Conexión con bases de datos | 1 | 24-05-2012 15:21:39 |
Sincronizar BD MySQL Hosting con BD MySQL servidor local | ivantech | MySQL | 3 | 09-03-2010 19:01:07 |
ZeosDB | daly | Conexión con bases de datos | 2 | 07-10-2005 16:16:38 |
como conectarme remotamente mysql a mysql | sakuragi | MySQL | 14 | 11-11-2004 15:04:46 |
|