![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Problema con 2 Campos en un dbGrid
Uso IBX 6.08, Delphi 6, FireBird 1.52
Aqui ando de nuevo molestandolos, ahora la duda que tengo, bueno mas que duda es que el problema es que no se en donde podre aterrizar mi idea, pero bueno mi problema es, tengo un dbGrid del cual lo enlazo a un Detalle de un Maestro-Detalle(Factura), este Detalle tiene su Campo Clave del Articulo, Su Descripcion del Articulo entre otros campos, cuando abro el Detalle tengo esta sentencia SQL en el SelecSQL del ibDataset: Código SQL: Select Fac.Bodega,Fac.TipoMov,Fac.Folio,Fac.Indice,Fac.ClaveArt, Fac.Cantidad,Fac.Descto,Fac.Pventa,Fac.DesglosaI,Fac.ImpSIva, Fac.ArtIva,Fac.ImpCIva,Fac.ArtDesc,Fac.ImpDescto,Fac.Servicios, Inv.ClaveArt,Inv.DesArtfrom TFAC_DFACTURAS FacJoin TINV_ARTICULOS Inv on (Fac.ClaveArt=Inv.ClaveArt)where Fac.bodega=:bodega and Fac.tipomov=:tipomov and Fac.folio=:folio Ahora veran que puse en Negritas 2 campos uno es la Descripcion del Articulo y el Otro Campo es la Descripcion de Servicios en Caso de que la Clave sea un Servicio en vez de un articulo Guardo lo que capturan en la Descripcion en el Campo Servicios, el Campo Servicios no lo tengo enlazado al dbGrid por que forma parte de la Descripcion del Articulo, el Detalle que tengo es que al Abrir una Factura que tiene Servicios no se como hacerle que en el Campo Descripcion del Articulo visualizar el SERVICIO en caso de haberlo, como por ejemplo: Tengo el siguiente producto en la Tabla de Articulos: CODIGO DESCRIPCION 0001 MARTILLO V-88 Tengo el siguiente Servicio en la Tabla de Articulos: CODIGO DESCRIPCION Servicio01 Servicio Si guardo el Codigo Servicio01 y en la Descripcion le pongo "XXXXXXXX" y guardo la Factura al Abrirla me mostrara "Servicio", porque tengo enlazado el dbGrid a la Descripcion del Articulo, vuelvo a repetir. En que parte puedo hacer que al momento de Abrir el Detalle durante el proceso de este evento poner una condicion para igualar el Campo Descripcion=Servicios para que se muestre este último, espero no haberlos mareado con tanto rollo. Agradezco cualquier comentario. Que tengan buen día. |
#2
|
||||
|
||||
Hola,
una posible solución es crearte un campo calculado de tipo string, que es el que debes mostrar en el grid, y en el evento OnCalcFields del DataSet, comprobar si es un artículo o un servicio y asignar a este campo el valor correspondiente. Salu2.
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... |
![]() |
|
|
![]() |
|