Documento interfaz de usuario utilizando Quantum cuadrícula (cxGrid) de Developer Express

StackOverflow https://stackoverflow.com/questions/1928321

  •  20-09-2019
  •  | 
  •  

Pregunta

Necesito para generar una interfaz de usuario para la introducción de un documento de ventas (por ejemplo, la factura). Estoy tratando de utilizar componentes de "Developer Express", específicamente el componente QuantumGrid (TcxGrid). He visto las demostraciones de componentes maestro-detalle y la búsqueda en el centro de apoyo DevExpress, pero ninguno me ha ayudado porque todos utilizan 2 rejillas para manejar la relación maestro-detalle, y editar varios registros a la vez.

Sólo necesito editar un registro (documento) a la vez y el uso de un par de objetos componentes Dataware (por ejemplo TDBEdit) en el encabezado y una rejilla para manejar el detalle.

algo como esto

alt text

¿Dónde puedo encontrar un ejemplo básico de la utilización de estos componentes de esta manera?

¿Fue útil?

Solución

propiedades Lla Maestro / Niños en la QuantumGrid están diseñados principalmente para anidar varios elementos de la red. Si desea establecer la relación de los componentes de datos sólo tiene que conectar los controles hasta el origen de datos correcta y todo saldrá bien.

Así que si usted tiene dos conjuntos de datos de los clientes y la factura. El Maestro Factura origen de datos es el origen de datos del cliente. A continuación, en sus controles de edición apuntar al origen de datos de los clientes y que posicione la rejilla a la factura origen de datos.

Si usted piensa acerca de lo que la relación maestro / detalle está haciendo en realidad sólo filtra los registros del conjunto de datos detalle para que coincida con el registro actual en el conjunto de datos maestro. Editar controles individuales siempre van a mostrar el registro "actual" en el conjunto de datos que están conectados. Las rejillas se mostrarán todos los registros visibles en el conjunto de datos que están conectados.

Tengo una tendencia a no utilizar las relaciones maestro / detalle en un formulario de edición como usted muestra aquí. Estoy asumiendo que hay alguna manera en una pantalla diferente para recoger la factura editar. Por lo general crear una copia de las bases de datos necesarias con sólo los registros necesarios para esta edición. Si estoy editando una factura existente copio los registros actuales. Si se trata de una nueva factura que puede comenzar con un conjunto de registros vacío. Es más trabajo - Tengo algunas funciones de biblioteca genéricos que copiar una estructura de conjunto de datos y luego copiar uno o más registros en ese conjunto de datos. Dependiendo de su configuración también se puede volver a consultar su base de datos para obtener sólo los registros que le interesan. Obviamente que no debe hacerse en todos los casos. Otro problema con este enfoque es que necesita una forma de actualizar las otras bases de datos que pueda tener con estos datos. - es decir, la pantalla principal de búsqueda

Sin embargo, una vez que llegue a la pantalla de edición me parece que hace las cosas eaiser. Ahora bien, no hay que preocuparse acerca de la relación maestro detalle en el nivel superior. Si la factura tiene relaciones maestro / detalle internos sólo se puede tratar con ellos, pero ya se sabe que los conjuntos de datos sólo tienen los datos para esta sola factura -. No todo en la base de datos

En el caso de que su formulario si limitar los datos en las bases de datos se puede simplemente conectar directamente todo y debería funcionar como se espera. Sólo tendría un registro en el conjunto de datos del cliente y la factura sólo tendría los registros para esta factura.

Otros consejos

Creo que tendrá que hacerse cargo de las relaciones maestro-detalle en sus componentes ClientDataSource. La rejilla seguirá entonces esta relación.

¿Por qué no le preguntas a este support@devexpress.com?

La razón por la que tengo una suscripción VCL es, aparte de la calidad de los componentes, por supuesto, porque tienen un gran sitio de soporte y el personal?

No le preguntas directamente a las personas que han escrito las cosas, y lo más probable es feliz para suministrarle un ejemplo de programa (al menos he recibido una gran cantidad de muestras a lo largo de los años).

La premisa es la misma que con cualquier otra relación maestro-detalle, independientemente de los componentes. Usted tendrá que configurar el maestro-detalle en el nivel de conjunto de datos para lograr lo que desea.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top