Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    702

    [VB.Net] Immagini in Crystal Report

    Salve a tutti,
    sto utilizzando Visual Studio 2008 (e VB come linguaggio).
    Sto creando dei report con Crystal integrato di Visual Studio.
    Le mie necessità non sono particolarmente evolute, per questo lo strumento che adotto mi pare sufficiente. Almeno finora.
    Adesso vorrei aggiungere dinamicamente delle immagini al report ma non riesco proprio.

    Vi faccio l'esempio pratico:

    Nel report voglio inserire:

    Immagine prodotto -- Descrizione prodotto

    Solo questo.

    Ma come inserire questa immagine? Sulla base dati ho il percorso fisico sul File System dell'utente.

    Un saluto a tutti, ma un pò di più a chi può aiutarmi! []

  2. #2
    Devi prepararti la datasource prima di passarla al crystal report. Preparare la datasource vuol dire caricare i dati in una datatable, aggiungergli programmaticamente una colonna bytes caricare le immagini dei records dentro la colonna con un ciclo.
    Saluti a tutti
    Riccardo

  3. #3
    dimenticavo... questo è quello che si doveva fare con la versione distribuita con vs2005. Non utilizzando cr da un po' non so le ultime versioni se hanno introdotto anche nella ver compresa con visual studio la features della visualizzazione immagini più amichevole.
    Saluti a tutti
    Riccardo

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    702
    Originariamente inviato da riccardone
    1. Devi prepararti la datasource prima di passarla al crystal report.

    2.a Preparare la datasource vuol dire caricare i dati in una datatable

    2.b aggiungergli programmaticamente una colonna bytes caricare le immagini dei records dentro la colonna con un ciclo.
    Utilizzo già questo procedimento, tranne che per quello che ho chiamato 2b: come faccio ad aggiungere un'immagine e non il suo percorso al DB?

  5. #5
    per comodità dovresti usare un dataset tipizzato che contenga una datatable uguale a quella che hai nel db per intenderci.
    A questa datatable aggiungi una colonna Base64Binary.
    Fatto questo, da codice prima di passare il dataset con dentro la datatable piena di record fai un ciclo e per ogni record leggi l'immagine su disco e, sotto forma di array di bytes, la metti dentro la relativa riga.
    A questo punto dentro il report avrai la stessa datatable con la colonna aggiunta e quando la trascini sul designer ti ritrovi con l'immagine.
    Es di funzione per caricare una immagine da disco e convertirla in bytes (prendila come spunto ed eventualmente cerca di trovare su msdn i riferimenti visto che il codice non è legato a crystal report)
    Codice PHP:
    Public Shared Function ToByteArray(ByVal filenae As String) As Byte() 
    Dim image As System.Drawing.Image 
    image 
    System.Drawing.Image.FromFile(filenae
    Dim ImageConverter As New System.Drawing.ImageConverter 
    Dim bytes
    () As Byte 
    bytes 
    CType(ImageConverter.ConvertTo(imageGetType(Byte())), Byte()) 
    image.Dispose() : image Nothing 
    Return bytes 
    End 
    Function 
    Saluti a tutti
    Riccardo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.