Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-07-2012
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Poder: 19
Efren2006 Va por buen camino
Vista Actualizable... Como hacerla ?

Saludos

Tengo un pequeño enredo por desconocimiento, uso Firebird 2.1 con Delphi 2009, he creado vista y procedimientos etc,etc, pero en tengo un caso que necesito hacer una Vista que sea ACTUALIZABLE es decir que a la misma debo poder EDITAR el valor de uno de los campos,

Explico la estructura de las tablas y la Vista Como la necesito:

Tabla A: "TomaFisico"
CODARTICU varchar(15)
CANTIDAD numeric(18,2)

Tabla B: "Articulos"
CODARTICU varchar(15)
DESARTICU varchar(100)
UBICACION varchar(10)


Necesito una Vista de la Siguiente Manera:
Código SQL [-]
CREATE VIEW POSTEO(
    CODARTICU,
    DESARTICU,
    UBICACION,
    CANTIDAD)
AS
SELECT A.CODARTICU,B.DESARTICU,B.UBICACION,A.CANTIDAD FROM TomaFisico A
  LEFT JOIN Articulos B ON (A.CODARTICU=B.CODARTICU)

Y del Lado de Delphi Necesito tener un DBGRID para que el usuario poste la CANTIDAD del Conteo Físico del inventario, Ahora explico porque una Vista , porque necesito que el usuario pueda colocar el orden de los artículos según le parezca mas cómodo hacerlo (Ordenado por , Código, Descripción, Ubicación).

Pero cuando efectúa esta operación el Delphi me indica que la Vista es de SOLO LECTURA.... Existe alguna manera de hacer lo que Pretendo ?
Responder Con Cita
  #2  
Antiguo 19-07-2012
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
No trabajo con firebird pero, no veo la necesidad de crear una vista para ordenar tu consulta. simplemente guarda tu consulta general en un string y el campo por el que quieras ordenar en otro, entonces montas la consulta.

Código Delphi [-]
consulta:=SQLGeneral+' ORDER BY '+CampoParaOrdenar;

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
Responder Con Cita
  #3  
Antiguo 19-07-2012
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Poder: 19
Efren2006 Va por buen camino
Cita:
Empezado por ElDioni Ver Mensaje
No trabajo con firebird pero, no veo la necesidad de crear una vista para ordenar tu consulta. simplemente guarda tu consulta general en un string y el campo por el que quieras ordenar en otro, entonces montas la consulta.

Código Delphi [-]
consulta:=SQLGeneral+' ORDER BY '+CampoParaOrdenar;

Saludos.
Amigo ElDione

Gracias por su tiempo.

No el problema realmente no es la Vista, también podria hacer una consulta Select con ello,, el problema es que si hago una consulta con campos de otras tablas NO puedo EDITAR en esa consulta el Valor de un CAMPO,, ya que el delphi me indica que la consulta es de solo LECTURA.

Saludos
Responder Con Cita
  #4  
Antiguo 19-07-2012
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 13
MartinS Va por buen camino
Hola, creo que deberías usar el componente IbDataset al cual le podes dar el código de consulta, inserción, edición y eliminación. Yo también para esos casos uso un componente de JEDI que me parece que se llama memorytable que precisamente hace eso pone podes recorrer el resultado del query y pasarlo al memory.

Saludos
Responder Con Cita
  #5  
Antiguo 20-07-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
También puede seguir este minitutorial.
Responder Con Cita
  #6  
Antiguo 20-07-2012
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Poder: 19
Efren2006 Va por buen camino
Talking

Amigos

Gracias a Todos por sus aportes y tiempo , creo ya haber resuelto el problema, la solución es que debo usar los Trigger de la vista para mandar ha actualizar solo los campos que voy a editar, y en del lado de Delphi en el componente TIBDataset, solo realizar las actualizaciones de los campos que voy a modificar.. Ahora estoy probando y todo va bien.

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
pregunta tonta pero alguien iba a hacerla droguerman OOP 2 02-10-2007 03:37:55
Como Utilizar La Funcion Desc Para Hacerla Parte De Un Query JOTAAB Oracle 2 06-01-2006 19:41:25
Barra progreso con IdSMTP...Como hacerla?? AFilth Internet 3 20-12-2005 01:59:49
Programa actualizable... Xianto OOP 3 24-11-2004 17:30:07
consulta actualizable Ail Conexión con bases de datos 3 29-05-2003 11:27:40


La franja horaria es GMT +2. Ahora son las 07:29:05.


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
Copyright 1996-2007 Club Delphi