Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/04/2008, 19:10
GabrielDR
 
Fecha de Ingreso: julio-2004
Mensajes: 104
Antigüedad: 19 años, 10 meses
Puntos: 0
No se puede

Bueno el DATAREPORT no hace graficas. es solo para REPORTES.

Para hacer graficas se usa el control MSCHART
(yo lo conosco como GRAPH.OCX)
este control te permite crear una grafica y ponerla en un formulario, ademas imprimirla es muy sencillo. creo por aqui tengo un ejemplo..

SE DEBE USAR UN PICTURE BOX OCULTO DETRAS DEL CONTROL MSCHART PARA PODER IMPRIMIR

Código:
Dim gasto As Double
    With Me.MSChart1
        .ShowLegend = True
        .AllowDynamicRotation = True
        .AllowDithering = True
        .AllowSelections = True
        .AutoIncrement = True
        .AllowSeriesSelection = True
        .DrawMode = VtChDrawModeDraw
        
        
          .ColumnCount = RS.RecordCount 'numero de columans para la grafica
          .RowCount = 1
          RS.MoveFirst
          i = 1
          Do While Not RS.EOF
            .Column = i
            .ColumnLabel = RS.Fields(0).Value
            .Row = 1
            .Data = RS.Fields(1).Value
            i = i + 1
            RS.MoveNext
          Loop
          .RowLabel = "Valores"
   End With
End Sub

'iMPRIMIR
Private Sub cmd_IMPRIMIR_Click()
If MsgBox("Se procederá a enviar esta grafica a la impresora" & Chr(13) & "¿Desea continuar?", vbYesNo) = vbYes Then
'Copiar la imagen del gráfico actual al portapapeles
MSChart1.EditCopy

'Asignar el gráfico del portapapeles al control PictureBox
Set Picture1.Picture = Clipboard.GetData

'Imprimir el gráfico del control PictureBox
On Error Resume Next
Err.Clear
Printer.PaintPicture Picture1.Picture, 0, 0
If Err.Number <> 0 Then
Call MsgBox("No fue posible conectarse a la impresora, la grafica no se envio", vbCritical)
Else
Call MsgBox("Revise su impresora predeterminada, el trabajo ha sido enviado")
End If
End If
On Error GoTo 0
End Sub
__________________
Podria no estar de acuerdo con lo que dices....., pero daria mi vida por el derecho que tienes de decirlo.