Newsgroup: it.comp.appl.access
Titolo: Lunghezza verticale linee

Scusate se torno su un argomento gia' ampiamente trattato in NG ed anche nel
sito comune ma negli esempi e risposte reperite non ho trovato la soluzione.
La mia situazione: ho un report con due sottoreport nidificati posti nei
dettagli del report principale. Nelle mie intenzioni, i sottoreport
dovrebbero costituire una cella di una tabella che orizzontalmente prevede
altre celle, le quali pero' appartengono al report principale. La tabella (e
quindi anche le linee verticali che la delimitano) deve essere disegnata
solo nella sezione dettagli, ma in ogni pagina i dettagli si ripresentano
piu' volte, di conseguenza non posso utilizzare l'evento Line, che almeno a
quanto ho capito mi potrebbe disegnare linee verticali della lunghezza
desiderata. Il fatto e' che io non so a priori la lunghezza delle linee in
quanto non so la lughezza che si otterra' per ogni tabella (sezione
dettagli) ad ogni ripetizione, e non posso tracciare una linea lunga come
tutta la pagina perche' andrebbe ad attraversare anche altre sezioni.
Non ho una grossa esperienza di formattazione report, ma se capisco bene,
contrariamente ai forms, i sottoreport vengono calcolati dopo il report
principale. in questo modo non posso calcolare la lunghezza del sottoreport
e porre la linea alla stessa lunghezza, infatti ho provato una cosa piu' o
meno di questo tipo e non ha funzionato:
If myLine.height<MySubreport.Height then MyLine.Height=MySubreport.Height
dall'help ho visto che la proprieta' height per i reports e' riferita non al
report ma alle sezioni. ho quindi creato una variabile che ad ogni passaggio
per ogni sezione del sottoreport somma le varie altezze e paragonato questo
valore alla lunghezza della linea, ma come detto non funzia.....
Chi puo' aiutarmi?
grazie in anticipo!
Carlo

 ha scritto nel messaggio
news:bha5u9$vj4ed$1...@ID-29643.news.uni-berlin.de...

Usa nel sottoreport delle piccole linee verticali con queste proprietà:
Da margine superiore: 0
Larghezza: 0
Altezza: uguale all'altezza della sezione in cui si trova la linea
La linea risulterà composta da tanti segmenti, ma in fase di stampa apparirà
come una riga unica, senza più preoccuparsi di quanto sarà alto il
sottoreport o se andrà su più pagine.
Namor


innanzitutto grazie!
Purtroppo temo che il mio problema sia un po' piu' complicato, infatti non
devo solo creare le linee della giusta dimensione all'interno del
sottoreport ma anche nel report. la tabella infatti deve contenere 3 colonne
e solo una delle 3 e' occupata dal sottoreport mentre le altre due sono del
report. come posso imporre alle line che demarcano le colonne esterne la
stessa lunghezza del sottoreport???
Spero di essermi spiegato.
Grazie ancora in anticipo!
Carlo

 Carlo
Quindi la situazione č questa?
+--------------+--------------+--------------+
|                       |                       |                       |
|  sottoreport    |                       |                       |
|                       |                       |                       |
+--------------+--------------+--------------+
Prova ad aggiungere i segmenti verticali nel sottoreport, lasciando le due
colonne vuote, il corpo dovrebbe risultare cosě:
-corpo-
|       dati          |                       |                       |
E poi se in quelle due colonne vuote ci devi stampare dei dati, nel report
principale metti le caselle sopra al sottoreport (vedi menů Formato -->
Porta in primo piano / Porta in secondo piano)
Non so se questo puň risolvere il problema.
Magari c'č qualche altra soluzione, ma la situazione non mi č ben chiara al
100%.
Namor

 colonne vuote, il corpo
[cut]
direi che l'idea e' buona. te ne sono infinitamente grato e vado subito a
provare!
Carlo

Ripoto la soluzione che ho adottato nell'augurio che sia utile a qualcuno,
anche perche' ho risolto senza utilizzare nemmeno una riga di codice.
Ripeto qual'era il mio problema: disegnare correttamente le linee di
delimitazione di una tabella a piu' colonne, con i dati tutti contenuti nel
report principale esclusa una colonna, per la quale i dati sono contenuti in
un sottoreport.
Ho sfruttato l'idea di Namor di mettere nel sottoreport tutte le linee
verticali (anche quelle relative alle colonne i cui dati sono nel report),
lunghe quanto la sezione details (uso Acc in inglese....credo che in
italiano sia il "corpo"), mettendo nel report solo i controlli relativi alle
celle della tabella i cui valori si trovano appunto nei records del report
principale.
Rimaneva un problema....quello di dimensionare l'altezza minima della
tabella nel caso in cui il sottoreport mi avesse restituito una lunghezza
non sufficiente a coprire tutti i controlli nelle celle del report
principale.
Ho quindi formattato verticalmente la mia tabella ANCHE nel report,
dimensionandola all'altezza minima necessaria. Nel caso in cui il
sottoreport non risulti abbastanza lungo, sfrutto quindi le linee del report
mentre se il sottoreport supera il report, le linee verticali di
quest'ultimo si sovrappongono a quelle del report e le oltrepassano.
La linea di chiusura orizzontale va nel report (altrimenti taglierebbe la
tabella nel caso di sottoreport non sufficientemente lungo), con
l'accortezza di dimensionare verticalmente la finestra del sottoreport nel
report esattamente alla stessa altezza della linea orizzontale. Se si
dimensiona la finestra del sottoreport in modo che oltrepassi la linea
orizzontale, questa non verra' trascinata in basso nel caso in cui il
sottoreport superera' il report (analogamente, tutti i controlli del report
che devono rimanere al loro posto, devono essere posizionati in modo che
vengano coperti interamente dal sottoreport altrimenti verranno trascinati
in basso) mentre se si lascia dello spazio tra le due, questo si
ripresentera' a formattazione avvenuta come bianco tra la fine delle line
verticali (del sottoreport) e la chiusura orizzontale.
Spero davvero che questo semplicissimo uovo di Colombo risulti utile a chi
come me non e' afferrato con il codice o ha poca esperienza in generale.
Carlo

è possibile far scrivere un campo al contrario 
cioè in modo speculare da destra a sinistra??
il problema consiste nel far scrivere sulla linguetta di una busta il
nome del destinatario in maniera tale che una volta chiusa e
guardandola posteriormente il nome venga letto correttamente e non
capovolto
scusatemi per la mia ignoranza perchè forse questo è un problema
banale che non so risolvere
frank

 ha scritto nel messaggio
news:2n9ujvoott1post6b...@4ax.com...

La prossima volta non mandare una nuova richiesta come risposta ad un
vecchio quesito, sennò sarà difficile che qualcuno ti risponda. Io infatti
l'ho vista per caso.
Credo che il modo più semplice sia crearsi un font con le lettere a specchio
con uno dei tanti font-editor che puoi trovare su internet, a partire da uno
dei font già presenti sul PC, e usare una semplice funzione visual basic per
rivoltare la stringa come un calzino.
Namor

 rivoltare la stringa come un calzino.
Bisogna anche ricordarsi che il font deve poi essere installato anche sulla
macchina dove girerà quel MDB.
-- 
Gabriele Bertolucci
PBsoft