Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 19-05-2011
_CALI _CALI is offline
Miembro
 
Registrado: mar 2008
Posts: 99
Poder: 19
_CALI Va por buen camino
gracias por mostrar interes y discúlpa por no explicarme bien.

estoy haciendo un proyecto MDI para que pueda ser usado en red por varios usuarios; Mi proyecto consta de los siguientes elementos:
  • Un formulario principal (padre) estableciendo su propiedad formStyle a MDIForm y con un TMainMenu que llama a un formulario (hijo) para el control de Artículos.
  • Un formulario (hijo) con su propiedad formStyle a MDIChild, en este formulario es donde controlo los registros de los artículos, posee un ClientDataSet que esta conectado a un DataSetProvider que se encuentra en el Modulo de Datos.
  • Un Módulo de Datos que contiene los siguientes componentes:
1. Un ADOConnection para conectarme a SQLServer 2005
2. Un DataSetProvider asociado al ADOQuery
3. Un ADOQuery que en su propìedad SQL tengo la instrucción:

'SELECT ID_ARTICULO, DESCRIPCION, PRECIO FROM ARTICULOS';


Ademas añado los campos persistentes en el ADOQuery, para poder configurar la propiedad ProviderFlags de cada campo


Nota: investiguando, di con la propiedad de TField: "ProviderFlags" y UpdateMode de DataSetProvider, que configuran como el DataSetProvider debe ejecutar las intrucciones SQL: UPDATE, DELETE O INSERT.

Lo que pienso; y si es que estoy mal, tambien me gustaria una orientación al respecto, es que cuando no se configuran los providerFlags de cada campo y UpdateMode del DatasetProvider; solo se puede modificar un registro por ves, es decir que el registro no acepta concurrencia, hice ciertas pruebas abriendo dos formularios de Articulos con los valores por defecto de las propiedades antes mensionadas, al momento de modificar un registro del formulario 2 que estaba siendo usado en el formulario 1, me daba como error "Record no found or changed by another user", pero estableciendo dichas propiedades como mas adelante detallo ya no me daba ese error.


configuro la propiedad de cada campo de ADOQuery ProviderFlags de la siguiente manera:

en el campo ID_ARTICULO establesco prodiverFlags a: [pfInUpdate,pfInWhere,pfInKey]

en el campo DESCRIPCION providerFlags a: [pfInUpdate]
en el campo PRECIO providerFlags a: [pfInUpdate]

por último, en el DataSetProvider, en la propiedad UpdateMode establesco a : upWhereKeyOnly


pues bien:

abro dos formularios de artículos

cuando modifico un registro en el formulario 1 y sin aplicar los cambios voy al formulario 2 y modifico el mismo resgistro pero esta vez si aplicando los cambios no me da el error de "Record no found or changed by another user"
todo bien; Pero cuando elimino un registro en el formulario 1 y luego trato de modificar el mismo registro en el formulario 2, me aparece el siguiente mensaje de error: "Record no found or changed by another user"





espero haberme explicado bien

Muchas Gracias como siempre!!
Responder Con Cita
 



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
Mover registros en ClientDataSet mglucero Conexión con bases de datos 2 14-03-2014 03:47:44
Ordenar registros con ClientDataSet Jose Roman Conexión con bases de datos 2 15-01-2010 22:11:27
Como eliminar un campo de una Query y ClientDataSet David Conexión con bases de datos 2 26-03-2009 13:23:07
Obtener los 30 primeros registros de un ClientDataSet David Conexión con bases de datos 7 21-04-2008 17:47:44
por que duplicidad de registros con clientdataset sin ingresar registros ...mysql Arturo MySQL 3 05-09-2006 18:39:37


La franja horaria es GMT +2. Ahora son las 18:15:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi