Stampa combinata testo / immagine

lunedì 21 agosto 2006 - 16.42

biggiu Profilo | Junior Member

Salve a tutto il forum,

ho gia' utilizzato Crystal report per altre applicazioni sviluppate in VD.NET ed ho ottenuto notevoli risultati.

Ora mi si pone il seguente problema:

Debbo stampare il corpo di un documento che contiene immagini, relative ad una serie di articoli omogenei.

L'immagine di cio' che deve risultare e' piu' o meno questa :


535x82 20Kb


Per intenderci, ad un'immagine possono corrispondere piu' prodotti che vanno elencati con le loro caratteristiche commerciali.

Sino ad oggi, per la realizzazione del corpo di un documento ho utilizzato dei sottoreport. Non so se e' possibile ottenere una nidificazione dei sottoreport.

Non so come agganciare la path dell'immagine per importare la foto corretta.

Grazie a tutti per l'aiuto che siete in grado di darmi.




BigGiu

freeteo Profilo | Guru

ciao,
tempo fa ho scritto proprio 1a tip su come fare questo tipo di operazioni, prova a guardare se fa al caso tuo magari adattandola 1po:
http://www.dotnethell.it/tips/Crystal-Reports-BLOB.aspx
ciao.

Matteo Raumer
MCAD ... .net addicted :-)
http://blogs.dotnethell.it/freeteo

biggiu Profilo | Junior Member

Ciao, ho provato a dare un'occhiata al codice ma non ho afferrato molto.

Comunque tu utilizzi tabelle access, mentre io utilizzi MSSQL.

Ho verificato che una tabella MSSQL puo' contenere un campo image di lunghezza pari a 16 bit.

Non so se serve per contenere immagini, fatto sta che se provo ad inserirvene una con il comando :

DatRowSoi("soi_imag") = System.Drawing.Image.FromFile(NomFile)

in fase di aggiornamento ottengo il messaggio :

L'oggetto deve implementare IConvertible.

Resta comunque il secondo problema :

quando stampo il corpo del documento debbo emettere piu' famiglie di articoli. Per ciascuna famiglia e non per il singolo articolo va emessa la foto.

Esempio :

110248-321
110248-333
110248-4567

110310-777
110310-2341
110310-900
110310-981
110310-2281

110623-345

In questo caso debbo emettere tre immagini, una per la famiglia 110248, una per 110310 ed una per 110623.

Quindi....


BigGiu

freeteo Profilo | Guru

>Ciao, ho provato a dare un'occhiata al codice ma non ho afferrato
>molto.
>Comunque tu utilizzi tabelle access, mentre io utilizzi MSSQL.
è lo stesso, tanto poi gli passi 1dataset e quindi il campo che si aspetta il report è corretto

>Ho verificato che una tabella MSSQL puo' contenere un campo image
>di lunghezza pari a 16 bit.

>Non so se serve per contenere immagini, fatto sta che se provo
>ad inserirvene una con il comando :
>
>DatRowSoi("soi_imag") = System.Drawing.Image.FromFile(NomFile)
>in fase di aggiornamento ottengo il messaggio :
>
>L'oggetto deve implementare IConvertible.
cosa intendi per "in fase di aggiornamento"? ma devi aggiornare la sorgente dati? avevo capito che dovevi leggere i dati e le immagini per visualizzarle in un report

>Resta comunque il secondo problema :
>
>quando stampo il corpo del documento debbo emettere piu' famiglie
>di articoli. Per ciascuna famiglia e non per il singolo articolo
>In questo caso debbo emettere tre immagini, una per la famiglia
>110248, una per 110310 ed una per 110623.
>
>Quindi....
devi lavorare con i raggruppamenti, se hai 1campo "famiglia" basta che raggruppi per quello, altrimenti fai 1a formula dove tiri fuori il "codice famiglia" es:

Left({db.campocodice},6)

dovrebbe tornarti solo "110310", "110248". Dopo che hai creato la formula con quel codice dentro (edito di formula) basta che lo metti giu nella sezione dettagli e vedi subito, appena è corretto raggruppi per quello...

ciao.

Matteo Raumer
MCAD ... .net addicted :-)
http://blogs.dotnethell.it/freeteo

biggiu Profilo | Junior Member

Per fase di aggiornamento intendo quanto segue :

Il programma in oggetto e' relativo ad un tipico inserimento di un documento, formato quindi da una testa e da un corpo ( vedi DDT )

Dopo aver compilato la form addetta alla gestione del documento, eseguo l'aggiornamento delle
tabelle di appoggio, delegate a contenere tutte le informazioni che debbono essere riportate nel report.

Registro quindi in apposite tabelle tutti i dati di testa e di corpo. In questo caso, ho generato una nuova tabella, destinata a contenere la path dell'immagine da gestire e ( qui entriamo nel merito ) questo campo definito image che genera quanto gia' illustrato.

Il resto di quanto hai illustrato cerchero' di provarlo quanto prima.

Grazie per la collaborazione
BigGiu
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5