graficas en una aplicacion

nessthor
12 de Marzo del 2005
como puedo generar un grafico de barras dentro de una aplicacion o un projecto . Existe alguna libreria ke me pueda generarlo?
gracias!!!

Cipriano Torres
12 de Marzo del 2005
********************************************************************************
***************************** Genera el Gráfico ********************************
********************************************************************************
select 3
SET SAFETY OFF
create table foo (gen1 g)
SET SAFETY ON
append blank

If cambio = .t. && ************************* Genera Gráfico de Torta *******************************
cGData = ""
SELECT 1
go top
DO WHILE !EOF()
If Cantidad <> 0
cGData = cGData+TAB+alltrim(ESTATUS)+" = "+ALLT(STR(CANTIDAD)) && Para grabar el estatus
Endif
skip
ENDDO
cGData = cGData+CRLF
go top
DO WHILE !EOF()
If Cantidad <> 0
cGData = cGData+TAB+ALLT(STR(CANTIDAD)) && para grabara las cantidades
endif
skip
ENDDO
cGData = cGData+CRLF
Bartype = -4102
num = 6
Mensaje = "Distribución Porcentual de Solicitudes"+chr(13)+;
"del "+dtoc(fecha_Desde)+" al "+dtoc(fecha_Hasta)
else && ************************ Genera Gráfico de Barra ****************************
SELECT 1
GO TOP
cGData = ""+TAB+"Status"+CRLF
DO WHILE !EOF()
If Cantidad <> 0
cGData = cGData+alltrim(ESTATUS)+" = "+ALLT(STR(CANTIDAD))+TAB+ALLTRIM(STR(CANTIDAD))+CRLF && para grabara las cantidades
endif
skip
ENDDO

Bartype = -4100
num = 8
Mensaje = "Distribución de Solicitudes por Cantidades"+chr(13)+;
"del "+dtoc(fecha_Desde)+" al "+dtoc(fecha_Hasta)
endif && *********************** Termina Gráfico de Barra ****************************

select foo

THISFORM.LockScreen = .T.
append general gen1 class "msgraph.chart" DATA m.cGData

THISFORM.OleBoundControl1.ControlSource = "Gen1"
THISFORM.OleBoundControl1.HasLegend = .t.
THISFORM.OleBoundControl1.autoformat(bartype,num)
THISFORM.OleBoundControl1.HasTitle = .t.
THISFORM.OleBoundControl1.ChartTitle.Caption = Mensaje
THISFORM.LockScreen = .F.
*******************************************************************************************
*********************** TERMINA DE GENERAR EL GRAFICO ************************************
*******************************************************************************************
thisform.Oleboundcontrol1.visible = .t.
thisform.Command2.Enabled = .t.
thisform.refresh
CLOSE DATABASE

********* Prueba con esto a ver si te sirve, yo lo utilizó en algunas aplicaciones que he desarrollado. Lo tengo en el Click de un formulario - Adaptalo a tu conveniencia. ok.

JOSE
12 de Marzo del 2005
muchas gracias he aplicado el codigo que explicas aqui y me sirvio bastante, solo me falta poder enviarlo a la impresora, gracias