In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Novato

Foro público de Xailer en español
Responder
paco-ssi
Mensajes: 390
Registrado: Lun Feb 07, 2005 4:17 pm

Novato

Mensaje por paco-ssi »

Si en vuestro ejemplo dbtest quisiera cambiar la base de datos, supongo que
solamente seria necesario cambiar el nombre en la propiedad cName del
oDataSet. ¿ Habria que hacer algo mas?
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9246
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Novato

Mensaje por ignacio »

Paco,
Efectivamente eso es lo único que haría falta hacer.
Un saludo,
--
Ignacio Ortiz
www.xailer.com
"Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
news:4198f10f$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Si en vuestro ejemplo dbtest quisiera cambiar la base de datos, supongo
> que
> solamente seria necesario cambiar el nombre en la propiedad cName del
> oDataSet. ¿ Habria que hacer algo mas?
>
>
>
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
paco-ssi
Mensajes: 390
Registrado: Lun Feb 07, 2005 4:17 pm

Novato

Mensaje por paco-ssi »

En vuestro mismo ejemplo, ¿de donde toma los nombres de las cabeceras?
"Ignacio Ortiz" <NoNameToAvoidSpam@ozs.com> escribió en el mensaje
news:4198f220$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Paco,
>
> Efectivamente eso es lo único que haría falta hacer.
>
> Un saludo,
>
> --
> Ignacio Ortiz
> www.xailer.com
> "Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
> news:4198f10f$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> > Si en vuestro ejemplo dbtest quisiera cambiar la base de datos, supongo
> > que
> > solamente seria necesario cambiar el nombre en la propiedad cName del
> > oDataSet. ¿ Habria que hacer algo mas?
> >
> >
> >
>
>
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9246
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Novato

Mensaje por ignacio »

Paco,
Por defecto el control TDBBrowse toma como nombre de las cabeceras, el
nombre de los campos de la base de datos. No obstante incluso aunque tome
dicha información de los nombres de los campos, es posible especificar una
cabecera distinta. Fijate que la clase TDataField tiene un dato
'cDisplayName' que por defecto es igual que 'cName', pero lo puedes cambiar
si lo deseas por un texto más descriptivo. Logicamente deberás de asignar
cDisplayName antes de asignar la propiedad oDbBrowse:oDataSet.
oDataSet := TDbfDataSet():New( ... )
oDataSet:aFields[ 1 ]:cDisplayName := "Nombre y apellidos"
oBrowse:oDataSet := oDataSet
Un saludo,
--
Ignacio Ortiz
www.xailer.com
"Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
news:4198f5f8$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> En vuestro mismo ejemplo, ¿de donde toma los nombres de las cabeceras?
>
> "Ignacio Ortiz" <NoNameToAvoidSpam@ozs.com> escribió en el mensaje
> news:4198f220$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Paco,
>>
>> Efectivamente eso es lo único que haría falta hacer.
>>
>> Un saludo,
>>
>> --
>> Ignacio Ortiz
>> www.xailer.com
>> "Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
>> news:4198f10f$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> > Si en vuestro ejemplo dbtest quisiera cambiar la base de datos, supongo
>> > que
>> > solamente seria necesario cambiar el nombre en la propiedad cName del
>> > oDataSet. ¿ Habria que hacer algo mas?
>> >
>> >
>> >
>>
>>
>
>
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
paco-ssi
Mensajes: 390
Registrado: Lun Feb 07, 2005 4:17 pm

Novato

Mensaje por paco-ssi »

Ignacio:
En vuestro ejemplo DBFData2, en que sitio debería poner esto.
No encuentro donde hacerlo.
Si además quiero que en los campos lógicos me guarde una S en lugar de .T. y
una N en lugar de .F ., como lo hago?
Paco
"Ignacio Ortiz" <NoNameToAvoidSpam@ozs.com> escribió en el mensaje
news:4199bd67$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Paco,
>
> Por defecto el control TDBBrowse toma como nombre de las cabeceras, el
> nombre de los campos de la base de datos. No obstante incluso aunque tome
> dicha información de los nombres de los campos, es posible especificar una
> cabecera distinta. Fijate que la clase TDataField tiene un dato
> 'cDisplayName' que por defecto es igual que 'cName', pero lo puedes
cambiar
> si lo deseas por un texto más descriptivo. Logicamente deberás de asignar
> cDisplayName antes de asignar la propiedad oDbBrowse:oDataSet.
>
> oDataSet := TDbfDataSet():New( ... )
> oDataSet:aFields[ 1 ]:cDisplayName := "Nombre y apellidos"
> oBrowse:oDataSet := oDataSet
>
> Un saludo,
>
> --
> Ignacio Ortiz
> www.xailer.com
> "Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
> news:4198f5f8$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> > En vuestro mismo ejemplo, ¿de donde toma los nombres de las cabeceras?
> >
> > "Ignacio Ortiz" <NoNameToAvoidSpam@ozs.com> escribió en el mensaje
> > news:4198f220$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> >> Paco,
> >>
> >> Efectivamente eso es lo único que haría falta hacer.
> >>
> >> Un saludo,
> >>
> >> --
> >> Ignacio Ortiz
> >> www.xailer.com
> >> "Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
> >> news:4198f10f$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> >> > Si en vuestro ejemplo dbtest quisiera cambiar la base de datos,
supongo
> >> > que
> >> > solamente seria necesario cambiar el nombre en la propiedad cName del
> >> > oDataSet. ¿ Habria que hacer algo mas?
> >> >
> >> >
> >> >
> >>
> >>
> >
> >
>
>
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9246
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Novato

Mensaje por ignacio »

Paco,
Ahora mismo no se puede editar la cabecera de cualquier columna del browse
desde el propio inspector, pero en un futuro próximo si será posible.
El problema es que en dicho ejemplo el DataSet esta ya abierto y asignado al
Browse, por lo tanto habría que desasignarlo primero, cambiar el DataSet y
volverlo a asignar y se podría hace en el evento OnCreate del DbBrowse
with object oSender
:Reset()
::oDataSet:aFields[ 1 ]:cDisplayName := "prueba"
:oDataSet := ::oDataSet
end with
Aunque quizas sea más sencillo tocar directamente la cabecera de la columna:
oSender:aCols[ 1 ]:cHeader := "prueba"
Para mostrar una 'S' en vez de un '.T.' mira el evento OnGetData en la
documentación para entenderlo, no obstante sería algo así:
oSender:aCols[ nCol ]:OnGetData := {|oSender, cText, nImage| cText := iif(
cText, "S", "N" ) }
Un saludo,
--
Ignacio Ortiz
www.xailer.com
"Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
news:[email=419e2409@ozsrv2.ozlan.local...]419e2409@ozsrv2.ozlan.local...[/email]
> Ignacio:
> En vuestro ejemplo DBFData2, en que sitio debería poner esto.
> No encuentro donde hacerlo.
> Si además quiero que en los campos lógicos me guarde una S en lugar de .T.
> y
> una N en lugar de .F ., como lo hago?
>
> Paco
>
> "Ignacio Ortiz" <NoNameToAvoidSpam@ozs.com> escribió en el mensaje
> news:4199bd67$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Paco,
>>
>> Por defecto el control TDBBrowse toma como nombre de las cabeceras, el
>> nombre de los campos de la base de datos. No obstante incluso aunque tome
>> dicha información de los nombres de los campos, es posible especificar
>> una
>> cabecera distinta. Fijate que la clase TDataField tiene un dato
>> 'cDisplayName' que por defecto es igual que 'cName', pero lo puedes
> cambiar
>> si lo deseas por un texto más descriptivo. Logicamente deberás de
>> asignar
>> cDisplayName antes de asignar la propiedad oDbBrowse:oDataSet.
>>
>> oDataSet := TDbfDataSet():New( ... )
>> oDataSet:aFields[ 1 ]:cDisplayName := "Nombre y apellidos"
>> oBrowse:oDataSet := oDataSet
>>
>> Un saludo,
>>
>> --
>> Ignacio Ortiz
>> www.xailer.com
>> "Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
>> news:4198f5f8$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> > En vuestro mismo ejemplo, ¿de donde toma los nombres de las cabeceras?
>> >
>> > "Ignacio Ortiz" <NoNameToAvoidSpam@ozs.com> escribió en el mensaje
>> > news:4198f220$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> >> Paco,
>> >>
>> >> Efectivamente eso es lo único que haría falta hacer.
>> >>
>> >> Un saludo,
>> >>
>> >> --
>> >> Ignacio Ortiz
>> >> www.xailer.com
>> >> "Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
>> >> news:4198f10f$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> >> > Si en vuestro ejemplo dbtest quisiera cambiar la base de datos,
> supongo
>> >> > que
>> >> > solamente seria necesario cambiar el nombre en la propiedad cName
>> >> > del
>> >> > oDataSet. ¿ Habria que hacer algo mas?
>> >> >
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder