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.

color celda arraybrowse

Foro de Xailer profesional en español
Responder
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

color celda arraybrowse

Mensaje por Francisco Sanchez »

Vamos a ver, he probado de todas las formas imaginables posibles. Es un
array de cincuenta elementos, distribuidos en 5 filas de 10, es decir en
otros 5 arrays de 10 elementos cada uno. Por la posicion que ocupa en el
arraydata, busco en otro array de datos paralelo un valor a ver si es .T. o
..F., y en funcion de esto mostrar la celda de un color u otro, por ejemplo
rojo o verde. Pero no hay forma. He revisado los ejemplos y no veo como
hacerlo sin que - por ignorancia mia - me de algun error.
Probe con el ondrawcel, pero ahi llamaba a un metodo para averiguar la celda
en cuestion, ojo no la seleccionada, si no una celda en cuestion para buscar
en este array de datos y en funcion de ese valor pintar esa celda de color
rojo o verde. A ver si me podeis echar una mano.
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL - LT 3000
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

color celda arraybrowse

Mensaje por Francisco Sanchez »

ya me respondo yo, ya lo consegui, venga un saludo a todos
Atentamente : Francisco sanchez GERENTE GRUPO ST - Software TOTAL - LT 3000
"Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje
news:[email=42b9ab78@ozsrvnegro.ozlan.local...]42b9ab78@ozsrvnegro.ozlan.local...[/email]
> Vamos a ver, he probado de todas las formas imaginables posibles. Es un
> array de cincuenta elementos, distribuidos en 5 filas de 10, es decir en
> otros 5 arrays de 10 elementos cada uno. Por la posicion que ocupa en el
> arraydata, busco en otro array de datos paralelo un valor a ver si es .T.
> o .F., y en funcion de esto mostrar la celda de un color u otro, por
> ejemplo rojo o verde. Pero no hay forma. He revisado los ejemplos y no veo
> como hacerlo sin que - por ignorancia mia - me de algun error.
> Probe con el ondrawcel, pero ahi llamaba a un metodo para averiguar la
> celda en cuestion, ojo no la seleccionada, si no una celda en cuestion
> para buscar en este array de datos y en funcion de ese valor pintar esa
> celda de color rojo o verde. A ver si me podeis echar una mano.
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL - LT
> 3000
>
jasm.nospam
Mensajes: 203
Registrado: Vie Abr 01, 2005 9:05 am

color celda arraybrowse

Mensaje por jasm.nospam »

Paco,
Colabora un poco con los demás, hombre ;-)
Aqui dejo mi solución que es muy parecida a la de Paco:
WITH OBJECT :oArrayBrowse1
:SetArray( {}, { "id", "Codigo", "Descripción", "Cantidad",
"Precio", "Importe" }, .f. )
:aCols[ 1 ]:nAlignment := taRIGHT
:aCols[ 2 ]:nAlignment := taRIGHT
:aCols[ 4 ]:nAlignment := taRIGHT
:aCols[ 5 ]:nAlignment := taRIGHT
:aCols[ 6 ]:nAlignment := taRIGHT
:aCols[ 1 ]:nWidth := 25
:aCols[ 2 ]:nWidth := 88
:aCols[ 3 ]:nWidth := 300
:aCols[ 4 ]:nWidth := 80
:aCols[ 5 ]:nWidth := 80
:aCols[ 6 ]:nWidth := 90
:aCols[ 4 ]:cPicture := "@ZE 999,999.99"
:aCols[ 5 ]:cPicture := "@ZE 999,999.99"
:aCols[ 6 ]:cPicture := "@ZE 999,999.99"
:lAllowEdit := .F.
:nMarqueeStyle := bmHIGHLROW
WITH OBJECT :aCols[ 6 ]
:onDrawCell := { | oSender, nClrText, nClrPane | nClrText
:= If( oFrm:oArrayBrowse1:aArrayData[ oFrm:oArrayBrowse1:nArrayAt, 6 ] <
0, CLR_HRED, CLR_BLACK ) }
END WITH
END WITH
Saludos
Jose A. Suarez
Francisco Sanchez escribió:
> ya me respondo yo, ya lo consegui, venga un saludo a todos
>
>
> Atentamente : Francisco sanchez GERENTE GRUPO ST - Software TOTAL - LT 3000
>
> "Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje
> news:[email=42b9ab78@ozsrvnegro.ozlan.local...]42b9ab78@ozsrvnegro.ozlan.local...[/email]
>
>>Vamos a ver, he probado de todas las formas imaginables posibles. Es un
>>array de cincuenta elementos, distribuidos en 5 filas de 10, es decir en
>>otros 5 arrays de 10 elementos cada uno. Por la posicion que ocupa en el
>>arraydata, busco en otro array de datos paralelo un valor a ver si es .T.
>>o .F., y en funcion de esto mostrar la celda de un color u otro, por
>>ejemplo rojo o verde. Pero no hay forma. He revisado los ejemplos y no veo
>>como hacerlo sin que - por ignorancia mia - me de algun error.
>>Probe con el ondrawcel, pero ahi llamaba a un metodo para averiguar la
>>celda en cuestion, ojo no la seleccionada, si no una celda en cuestion
>>para buscar en este array de datos y en funcion de ese valor pintar esa
>>celda de color rojo o verde. A ver si me podeis echar una mano.
>>
>>Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL - LT
>>3000
>>
>
>
>
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

color celda arraybrowse

Mensaje por Francisco Sanchez »

Hombre si todavia andaba puliendo mi metodo para funcionar perfecto, jeje no
me diste ni tiempo de pulirlo.
Pero vaya como ya lo subiste tu ya no lo escribo yo.
Un saludo
"Jose Alfonso Suárez Moreno" <jasm.nospam@chochurro.com> escribió en el
mensaje news:42b9d3ec$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Paco,
>
> Colabora un poco con los demás, hombre ;-)
>
> Aqui dejo mi solución que es muy parecida a la de Paco:
>
> WITH OBJECT :oArrayBrowse1
> :SetArray( {}, { "id", "Codigo", "Descripción", "Cantidad",
> "Precio", "Importe" }, .f. )
> :aCols[ 1 ]:nAlignment := taRIGHT
> :aCols[ 2 ]:nAlignment := taRIGHT
> :aCols[ 4 ]:nAlignment := taRIGHT
> :aCols[ 5 ]:nAlignment := taRIGHT
> :aCols[ 6 ]:nAlignment := taRIGHT
> :aCols[ 1 ]:nWidth := 25
> :aCols[ 2 ]:nWidth := 88
> :aCols[ 3 ]:nWidth := 300
> :aCols[ 4 ]:nWidth := 80
> :aCols[ 5 ]:nWidth := 80
> :aCols[ 6 ]:nWidth := 90
> :aCols[ 4 ]:cPicture := "@ZE 999,999.99"
> :aCols[ 5 ]:cPicture := "@ZE 999,999.99"
> :aCols[ 6 ]:cPicture := "@ZE 999,999.99"
> :lAllowEdit := .F.
> :nMarqueeStyle := bmHIGHLROW
> WITH OBJECT :aCols[ 6 ]
> :onDrawCell := { | oSender, nClrText, nClrPane | nClrText :=
> If( oFrm:oArrayBrowse1:aArrayData[ oFrm:oArrayBrowse1:nArrayAt, 6 ] < 0,
> CLR_HRED, CLR_BLACK ) }
> END WITH
> END WITH
>
> Saludos
>
> Jose A. Suarez
>
> Francisco Sanchez escribió:
>> ya me respondo yo, ya lo consegui, venga un saludo a todos
>>
>>
>> Atentamente : Francisco sanchez GERENTE GRUPO ST - Software TOTAL - LT
>> 3000
>>
>> "Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje
>> news:[email=42b9ab78@ozsrvnegro.ozlan.local...]42b9ab78@ozsrvnegro.ozlan.local...[/email]
>>
>>>Vamos a ver, he probado de todas las formas imaginables posibles. Es un
>>>array de cincuenta elementos, distribuidos en 5 filas de 10, es decir en
>>>otros 5 arrays de 10 elementos cada uno. Por la posicion que ocupa en el
>>>arraydata, busco en otro array de datos paralelo un valor a ver si es .T.
>>>o .F., y en funcion de esto mostrar la celda de un color u otro, por
>>>ejemplo rojo o verde. Pero no hay forma. He revisado los ejemplos y no
>>>veo como hacerlo sin que - por ignorancia mia - me de algun error.
>>>Probe con el ondrawcel, pero ahi llamaba a un metodo para averiguar la
>>>celda en cuestion, ojo no la seleccionada, si no una celda en cuestion
>>>para buscar en este array de datos y en funcion de ese valor pintar esa
>>>celda de color rojo o verde. A ver si me podeis echar una mano.
>>>
>>>Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL - LT
>>>3000
>>>
>>
>>
Responder