Gestione cassetti stampante

mercoledì 28 gennaio 2009 - 12.24

Laurona Profilo | Newbie


Ciao a tutti,

ho un problema molto grosso .... diciamo che se non riesco a risolverlo sono abbastanza nella ......
vabbè.... aiutatemi!!!!!!!

Vorrei sapere se è possibile impostare cassetti di alimentazione diversi per un report.

es.
ho un report di due pagine. la prima pagina deve essere stampata dal cassetto 1 e la seconda pagina dal cassetto 2.
la cosa più complicata è che le pagine sono variabili . ho sempre la pagina 1 ma non ho sempre la pagina 2.

Grazie mille,
Laura.


Jeremy Profilo | Guru

Guarda la proprietà "FaiIlCaffè" dell'oggetto Printer.....
No...scusa....scherzavo.
Penso sia molto dura...ma fatto stà che dipende da come attualmente stampi i report.
Se usi il tastino "Stampa" del ReportViewer penso che puoi sbattere la testa contro uno spigolo...e ti fai meno male.
Se invece usi qualche classe del .NET Framework dipende da cosa ti offre l'oggetto in questione(ma lo spigolo tienilo sempre vicino a te).

Dovresti, secondo me, innanzitutto, spiegarci come stampi attualmente i Report.

Alla fine, comunque, sono convinto che tutto quello a cui potremmo pensare....è e sarà solo un accrocchio.
Tipo:
Hai pensato a stampare le pagine come fossero 2 report diversi?

Facci sapere...
Ciao.

Laurona Profilo | Newbie

Sto ancora ridendo adesso...... Grazie .... avevo bisogno di sdrammatizzare un pò...
:-)

e lo so che è un bel casino .... ma pensavo ci fosse qualcosa tipo quello che puoi fare in word.
in word puoi impostare l'alimentazione della stampante per ogni sezione del foglio.

In Crystal Report puoi impostare l'alimentazione ma te ne prende una per tutto il documento.
Ho provato a gestire due sottorteport. uno con alimentazione cassetto 1 e uno con alimentazione cassetto 2 ma si perde l'informazione.

Sto usando VB.NET 2005.

Per la stampa è indifferente. posso utilizzare il CrystalReportViewer che aprire l'elaborato direttamente in Crystal Report.
Non so se volevi sapere altro.

Grazie. Ciao Laura.



Jeremy Profilo | Guru

Io, piuttosto, mi concentrerei a risolvere questo problema
>uno con alimentazione cassetto 1 e uno con alimentazione cassetto 2 ma si perde l'informazione
solo che prima devo capire cosa significa.

Altrimenti prova anche a spiegare perchè ti si presenta questo tipo di necessità...in modo da vedere se si può raggirare.

Facci sapere...
Ciao.

Laurona Profilo | Newbie

Riciao,

Sto impostando il report con Crystal Report 11.
E' possibile impostare l'alimentazione andando in File - Imposta Pagina.
Anche se questo lo fai su tutti i sottoreport viene mantenuto per il report principale l'ultima impostata.
Ho bisogno di riuscire ad impostare l'alimentazione a livello di sottoreport.

Mi serve perchè ho un tot di documenti da creare, le attività che faccio sono le seguenti:
- da codice mi carico in un dataset tutti gli elementi da elaborare.
- da crystal report ho delle sezioni/sottoreport che vengono visualizzati /omesse in base alla valorizzazione di alcuni campi del dataset.
- se è presente un certo tipo di sottoreport deve andare in stampa su un cassetto a parte perchè deve usare un tipo di carta diversa da quella di tutto il resto del documento.

Bel casino vero!!!!
Mi sembra strano che una cosa che con Word era abbastanza banale con Crystal Report è forse irrealizzabile....

Boh.....
Non so se mi sono spiegata meglio.....


Jeremy Profilo | Guru

Guarda...al momento l'unica cosa che ho trovato è la proprietà PaperSource ...bisognerebbe vedere se è possibile valorizzare la stessa proprietà per ogni sottoreport.....

Ma dovrei fare delle prove.....se non hai fretta...ci provo.

Ciao.

Jeremy Profilo | Guru

Senti un pò....mi sbaglierò, ma a me sembra semplicissimo...
Ho provato a dare un'occhiata.

Ho creato un report vuoto...e ho aggiunto un sottoreport.
Poi ho fatto Modifica SottoReport e nelle proprietà del SOTTOREPORT ho trovato Imposta stampante dove è possibile selezionare la fonte di alimentazione.

Prova un pò....sia mai che...


Facci spaere....
Ciao

Laurona Profilo | Newbie

e lo so che c'è la proprietà PaperSource ma sembra una proprietà generica lagata al report .... almeno mi sembra di aver capito così.

Ho comunque provato ad impostarla ad ogni sotto report utilizzando il codice che ti allego ma in debug mi dice che l'istruzione non è supportata dai sottoreport..... ma dico .... perchè me la fa scrivere?!?!?!?!

Dim objEnvoiceReport As New CrystalDecisions.CrystalReports.Engine.ReportDocument

objEnvoiceReport.Load("C:\PROVA\Prova_Totale.rpt")
objEnvoiceReport.PrintOptions.PrinterName = "hp color laserjet 3550"

'cassetto1
objEnvoiceReport.Subreports.Item("Prova1.rpt").PrintOptions.PaperSource = 259
'cassetto2
objEnvoiceReport.Subreports.Item("Prova2.rpt").PrintOptions.PaperSource = 258
'mando in stampa
objEnvoiceReport.PrintToPrinter(1, True, 1, 999)


Quella dell'imposta stampante lo so che c'è ma se provi a mettere due sottoreport e ad impostare ad ognuno un cassetto vedi che ti tiene per tutti e due l'ultimo impostato.
Non ti succede così a te? Che versione usi di Crystal Report?

Scusa se sono un pò noiosa!!!!
Grazie della pazienza.
Ciao Laura.

Jeremy Profilo | Guru

Dammi il tempo di fare 2 prove....stasera.

Ti faccio sapere....
Ciao

Laurona Profilo | Newbie

Vai tranquillo.Grazie della disponibilità.
Ciao Laura.

Jeremy Profilo | Guru

Ciao..
Con tutta la buona volontà....non ci sono riuscito.
Però avrei un paio di alternative, se ti interessano.

La prima:
Poniamo il caso che attualmente hai un Report con dei sottoreport.
Uno dei questi sottoreport è quello che devi stampare con la carta del cassetto posteriore anzichè quello anteriore.

Tu fai un copia/incolla di questo report principale e cancelli il sottoreport in questione.
Il sottoreport lo metti in un'altro report principale.

A questo punto ti trovi ad avere 3 Report principali.
Uno completo,uno completo senza il sottoreport,uno solo con il sottoreport.

Dalla tua applicazione valuti quali datatable sono valorizzate... nel caso sia valorizzata quella per il quale devi stampare il sottoreport con carta diversa punti al secondo report per la stampa dal vassoio anteriore e al terzo report(quello che contiene il sottoreport in questione) per la stampa dal vassoio posteriore.

La seconda soluzione.....ti ricordi quello spigolo???

Facci sapere...
Ciao




Laurona Profilo | Newbie

Purtroppo non posso farlo così .... perchè all'interno dello stesso report principale una pagina devo stamparla su un certo tipo di carta ed una pagina devo stamparla su un altro tipo di carta .....
per cui la soluzione di usare due sottoreport mi sembrava quella più fattibile e realizzabile .... e invece.....

Mi sa che devo rifugiarmi sullo spigolo!!!!!! :-)

Grazie lo stesso ..... e scusa se ti ho fatto perdere del tempo.

ciao Laura.
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