Página 1 de 1

AddCalcField cType = Nil

Publicado: Vie May 19, 2006 6:20 pm
por zeasoftware
Estoy utilizando campos calculados en algunos browse, pero al barrer este, y
quiero tomar el tipo de dato que estoy usando en la columna, ya sea "C",
"N"; "L","F", todo va bien mientras no me tope con un campo calculado ya que
este me devuelve el tipo = NIL.
Hay alguna manera de indicar al crear el campo calculado de que tipo es ?
oDataField:cType = "C" ERROR por que es NIL
Saludos.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/

AddCalcField cType = Nil

Publicado: Sab May 20, 2006 8:51 am
por zeasoftware
el methodo oDataSet:Clone() no pasa los campos calculados.
es un bug o asi trabaja?
Saludos.
hola.... hola.... hola.......la....la......a.....a.....a
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/

AddCalcField cType = Nil

Publicado: Dom May 21, 2006 7:47 pm
por jfgimenez
Ramón,
> el methodo oDataSet:Clone() no pasa los campos calculados.
>
> es un bug o asi trabaja?
Vamos a revisarlo lo antes posible.
--
Un saludo,
José F. Giménez

AddCalcField cType = Nil

Publicado: Lun May 22, 2006 12:02 pm
por ignacio
Ramón,
No tiene sentido que un cmapo calculado devuelva un valor NIL, le aconsejo
que revise su definición. No obstante siempre puede evitar que devuelva un
valor NIL utiliznado la función ToString().
Saludos,
"Ramón Zea" <zeasoftware@hotmail.com> escribió en el mensaje
news:[email=446dc626@ozsrvnegro.ozlan.local...]446dc626@ozsrvnegro.ozlan.local...[/email]
> Estoy utilizando campos calculados en algunos browse, pero al barrer este,
> y quiero tomar el tipo de dato que estoy usando en la columna, ya sea "C",
> "N"; "L","F", todo va bien mientras no me tope con un campo calculado ya
> que este me devuelve el tipo = NIL.
>
> Hay alguna manera de indicar al crear el campo calculado de que tipo es ?
>
> oDataField:cType = "C" ERROR por que es NIL
>
> Saludos.
> --
> Ramón Zea
> ramonzea@yahoo.com
>
> http://www.paginasprodigy.com/zeasoft/
>

AddCalcField cType = Nil

Publicado: Mié May 24, 2006 3:56 am
por zeasoftware
No me explique o no me entendiste.
No quiero que devuelva un nil, digo que DEVUELVE un NIL.
Ejemplo:
::oDataSet0:AddCalcField( "dFecha", {|o| DtoStr(o:oDataSet:Aplica,
"dd-mmm-yyyy") }) //columna 10
::oDataSet0:AddCalcField( "nTotal", {|o|
o:oDataSet:Subtotal+o:oDataSet:IVA+o:oDataSet:Total }) //Columna 11
::oDBBrowse1:oDataSet := ::oDataSet0
? ::oDBBrowse1:aCols[10]:oDataField:cType // regresa NIL y deberia dar
"C"
? ::oDBBrowse1:aCols[11]:oDataField:cType // regresa NIL y deberia dar
"N"
a Eso me refiero.
Ademas:
::oDataSet1 := oDataSet0:Clone()
? ::oDataSet1:dFecha //marca error de que dFecha no Existe.
Espero ser claro.
Saludos.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/

AddCalcField cType = Nil

Publicado: Mié May 24, 2006 10:04 am
por ignacio
Ramón,
Es lógico, un campo calculado puede devolver cualquier tipo de valor, e
incluso diferente cada vez que se evalue y además el objeto TDataField no se
puede tomar la libertad de evaluar el campo calculado pues puede que incluso
la tabla no esté abierta cuando lo definas.
Si quieres que la propiedad cType del TDataField de un campo calculado
devuelva un tipo, no tienes más que ponerselo tu a mano:
oDataField:cType := "C"
En cuanto al error del método Clone() con campos calculados ya está
arreglado. Estará disponible en la siguiente release. Muchas gracias.
Saludos,
"Ramón Zea" <zeasoftware@hotmail.com> escribió en el mensaje
news:[email=4473932f@ozsrvnegro.ozlan.local...]4473932f@ozsrvnegro.ozlan.local...[/email]
> No me explique o no me entendiste.
>
> No quiero que devuelva un nil, digo que DEVUELVE un NIL.
>
> Ejemplo:
>
> ::oDataSet0:AddCalcField( "dFecha", {|o| DtoStr(o:oDataSet:Aplica,
> "dd-mmm-yyyy") }) //columna 10
> ::oDataSet0:AddCalcField( "nTotal", {|o|
> o:oDataSet:Subtotal+o:oDataSet:IVA+o:oDataSet:Total }) //Columna 11
>
> ::oDBBrowse1:oDataSet := ::oDataSet0
>
> ? ::oDBBrowse1:aCols[10]:oDataField:cType // regresa NIL y deberia dar
> "C"
>
> ? ::oDBBrowse1:aCols[11]:oDataField:cType // regresa NIL y deberia dar
> "N"
>
> a Eso me refiero.
>
> Ademas:
> ::oDataSet1 := oDataSet0:Clone()
>
> ? ::oDataSet1:dFecha //marca error de que dFecha no Existe.
>
> Espero ser claro.
>
> Saludos.
>
> --
> Ramón Zea
> ramonzea@yahoo.com
>
> http://www.paginasprodigy.com/zeasoft/
>

AddCalcField cType = Nil

Publicado: Mié May 24, 2006 1:31 pm
por zeasoftware
Ok gracias, no lo habia contemplado asi, cierto, la evaluacion puede dar
muchos tipos de valores, pero con lo de ponerle el valor a mano me doy por
servido, pense que no me aceptaria asiganarle el valor.
:Clone().- Saludos.
--
Ramón Zea
ramonzea@yahoo.com
http://www.paginasprodigy.com/zeasoft/