FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Hola Agustín.
Cita:
En un principio me llamó la atención que la tabla "MESAS" que supongo almancena la cantidad de personas, el sector de ubicación, etc. de un grupo de mesas, tenga como nombres de campo a LEFT,WIDTH, HEIGHT, TOP... Disculpame si te hago una pregunta tonta ¿ No estarás intentando darle las propiedades Left,Width,Height,Top de TControl al componente de datos TIBQuery ? Aclararía mucho que nos dieras una brebe descripción sobre que almancenan los campos de la tabla "MESAS" (a que concepto corresponde lo que se guarda en TOP , LEFT o WIDTH por ejemplo ) Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#2
|
||||
|
||||
También puede ser que confunda 'LEFT' con la palabra reservada 'LEFT JOIN'.
|
#3
|
|||
|
|||
Hola como estan! Les comento, esos campos los utilizo porque creo componentes en tiempo de ejecucion para hacer un mapa de las mesas y guardo el cada mesa su respectiva posicion y tamaños para poder cargarlos nuevamente en el mapa de mesas. El campo LEFT si existe en la tabla Mesas, tal vez el error este relacionado a lo que dice casimiro. Miren les dejo el codigo completo:
Código:
procedure TForm1.Action9Execute(Sender: TObject); var CompName:String; comp : TComponent; ctrl : TControl; begin QMesas.First; while not QMesas.Eof do begin CompName := QMesasCODIGO.Value; comp := Self.FindComponent(CompName); if Assigned(comp) then begin SelectOnRunTime1.SelectControl := TControl(comp); //SelectOnRunTime1.Selected := True; ctrl := SelectOnRunTime1.SelectControl; end; with QMesas do begin Close; SQL.Clear; SQL.Add('UPDATE MESAS SET WIDTH = :WID, PERSONAS = :PER, HEIGHT = :HEI, TOP = :TO '); SQL.Add('WHERE CODIGO = :COD'); ParamByName('WID').Value := ctrl.Width; ParamByName('HEI').Value := ctrl.Height; ParamByName('PER').Value := ctrl.Tag; //ParamByName('LEF').Value := ctrl.Left; ParamByName('TO').Value := ctrl.Top; ParamByName('COD').Value := Form1.QMesasCODIGO.Value; ExecSQL; Open; end; QMesas.Next; end; end; Ahora probare cambiando el campo LEFT por otro en la tabla. Saludos y muchas gracias por su tiempo! |
#4
|
|||
|
|||
Miren que curioso esto, cambie los campos de la tabla mesas, y antes de hacer el commit en IBExpert me marca con color el campo LEFT y lo coloca entre comillas, seguro es una palabra reservada no?
|
#5
|
|||
|
|||
Realice los cambios en los campos de la tabla Mesas y cambie el codigo que quedo de la siguiente manera:
Código:
var CompName:String; comp : TComponent; ctrl : TControl; begin QMesas.First; while not QMesas.Eof do begin CompName := QMesasCODIGO.Value; comp := Self.FindComponent(CompName); if Assigned(comp) then begin SelectOnRunTime1.SelectControl := TControl(comp); //SelectOnRunTime1.Selected := True; ctrl := SelectOnRunTime1.SelectControl; end; with QMesas do begin Close; SQL.Clear; SQL.Add('UPDATE MESAS SET ANCHO = :ANC, PERSONAS = :PER, ALTO = :ALT, ARRIBA = :ARR, IZQUIERDA = :IZQ '); SQL.Add('WHERE CODIGO = :COD'); ParamByName('ANC').Value := ctrl.Width; ParamByName('ALT').Value := ctrl.Height; ParamByName('PER').Value := ctrl.Tag; ParamByName('IZQ').Value := ctrl.Left; ParamByName('ARR').Value := ctrl.Top; ParamByName('COD').Value := Form1.QMesasCODIGO.Value; ExecSQL; Open; Next; end; end; |
#6
|
||||
|
||||
Hola Agustin.
Supongamos que tu tabla está declarada así:
Con este código tiene que modificar correctamente:
Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#7
|
|||
|
|||
Mi amigo Ecfisa, muchas gracias!, voy a guardar tu ejemplo en mi biblioteca de codigos. Cambie de componentes y ahora utilizo zeos, porque ellos me permiten realizar los insert y Updates con los metodos .Insert y .Edit que me resultan mas familiares.
Te agradezco mucho por darle una solucion a mi problema. Casimiro muchas gracias tambien!! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Error DataSet is read Only | mightydragonlor | Lazarus, FreePascal, Kylix, etc. | 10 | 08-11-2008 21:43:16 |
Error 'Cannot modify a read-only dataset' | karaoke | Varios | 8 | 10-12-2007 06:38:31 |
Al intentar modificar un campo me dice "Cannot modify a read-only dataset" | raulahol | SQL | 1 | 22-01-2007 05:16:53 |
error cannot modify a read-only dataset | Renees | Varios | 2 | 30-09-2006 00:39:27 |
Query1 cannot modify a read-only dataset | Nbull | SQL | 14 | 14-12-2004 10:29:35 |
|