Newsgroup: it.comp.lang.vo-clipper
Titolo: [VO-2.0] - Stampa reports

Devo poter risolvere il seguente problema:
Attualmente la stampa di un report, quando lanciato, impegna il computer e
lo monopolizza per tutto il tempo che occorre per elaborare il report e
quindi, procede poi a inviare il tutto in stampa...
1- Il mio questito č: E' possibile far si che, una volta lanciata la stampa,
anche l'elaborazione del report, che attualmente impegna il computer, possa
essere effettuato in BackGround e quindi liberare la procedura per
predisporla subito per un'altro processo ??? mentre si prosegue alla
elaborazione del Report e relativa stampa ????
Spero di essere stato chiaro e ringrazio tutti coloro che vorranno darmi una
traccia o una soluzione...
2- E' possibile far si che, una volta selezionato un elemento da un
comboBox, rilevato il codice con il quale si intende elaborare un processo,
all'uscita del processo, aggiornare con un refresh o altro i campi
successivi, legati ai dati che sono stati rilevati dal processo nato dal
rilevamento nel comboBox ???
grazie per ogni risposta anche al secondo quesito.
Mario D. Summa

rilevamento nel comboBox ???
Lo fai nel metodo ListBoxSelect (simile al metodo EditFocusChange)
Ciao
fabio
-----------------------------
Fabio Cresta
EDP Consultant & VO/Jasmine developer ITALY
President of Clipper/Visual Objects/Jasmine User Group Italy
e-mail: 
fcr...@tin.it
 
fcr...@windevs.com
web: 
http://www.windevs.com
------------------------------

 Lo fai nel metodo ListBoxSelect (simile al metodo EditFocusChange)
Anche quì, ho bisogno di almeno un'esempio da studiare, io il metodo
listBoxSelect, l'ho generato, ma poi francamente ho provato a riproporre al
suo interno i campi da "Rinfrescare" con il contenuto ricavato dalla ricerca
generata dalla selezione nel comboBox, ma...nulla accade e se provo,
ingenuamente a usare il Metodo"Refresh" ecco un bell'errore...
Grazie per la tua immensa disponibilità.
Mario D. Summa

rilevamento nel comboBox ???
Intercettando l'evento ListBoxSelect della finestra che contiene la
combobox, puoi ottenerne il codice memorizzato ed eseguire le tue
elaborazioni, per poi aggiornarne il contenuto.
Sinceramente è una cosa che non ho mai fatto, per cui è da provare,
ammesso che abbia capito la domanda.
Antonello.

Ti ringrazio, Antonello per la tua risposta, ma devo precisare quanto segue
e che forse, ho dato per scontato.
1) Primo questito; per i miei reports uso RPG 2.7, il report in questione,
viene lanciato dal metodo abbinato alla finestra dove si elaborano gli
estremi di stampa. Il mio problema è far si che la fase seguente il
ancio( elaborazione del report, composizione e stampa) sia totalmente
svincolata dalla procedura che la lancia, permettendo cosi di procedere,
mentre stampa,  alla preparazione di una nuova stampa o I/O. Attualmente
l'elaborazione del tabulato(Circa 400 pagine!!!!) impegna e monopolizza ogni
risorsa per troppo tempo e questo rischia di provocare l'abbandono della
procedura da parte del cliente !!!! . A tale proposito Fabio Cresta, mi
suggerisce di usare una variabile(lModal) nel lancio del report che se posta
a false, dovrebbe svincolare anche l'elaborazione oltre che la stampa
finale. MA IO NON LA TROVO.... tu ne sai niente ??
2) Secondo quesito; Attualmente uso un comboBox per rilevare il codice e la
Ragione sociale del Cliente.
Mediante il codice rilevato procedo, mediante il metodo FocusChange() della
finestra ove è depositato il TabControl che contiene il ComboBox a rilevare
nell'archivio altri dati che il ComboBox non può, per ovvi motivi dare.
Questi dati così rilevati, sono da mostrare nella finestra del  TabControl
dove sono contenuti (E' lo stesso).
Attualmente non conosco alcun metodo per far si che mediante un refresh
possa mostrare i campi interessati aggiornati, una volta selezionato un
cliente nel ComboBox. Ne conosci qualcuno....????
Grazie per qualsiasi suggerimento o esempio da studiare.
Mario D. Summa

 oReport:Print()


 stampa finale. MA IO NON LA TROVO.... tu ne sai niente ??
1) Non lo trovi subito perche' e' un parametro opzionale.
Prova ad aprire l'Help del ReportPro seleziona Indice-trova e
digita "lModal", dovresti ottenere una schermata come quella che
ti riporto di seguito.
Saluti
Paolo Cherubini
-----------------------------
PtrDevice:PrintPreview()
Purpose
Initiate the printing process and display the results in the
print preview dialog window.
Syntax
<oPtrDevice>:PrintPreview(cJobName, cPrint2File, cCaption,
cMessage, [lModal], [lPreBody], [lPostBody], [nShowState],
[lZoomed], [symPPWindow])
Arguments
cJobName	The name used for the print job.  This is the
name that will be displayed in the Windows Print Manager. This
parameter is only used if the user selects the print option from
the preview window.
cPrint2File	The filename used when the Print To File option
is selected.  This parameter is only used if the user selects
the print option from the preview window.
cCaption	The caption displayed on the Print Preview
window.
cMessage	The message string displayed on the dialog
window presented to the user during printing.  This parameter is
only used if the user selects the print option from the preview
window.
lModal	Optional parameter which if TRUE creates the Print
Preview as a modal dialog window; FALSE produces a modeless
one.  The default is TRUE.
lPreBody	Logical indicating if a pre-body page is to be
printed.  (You must provide a PrintPreBody() callback method to
actually perform the printing).  Default: FALSE
lPostBody	Logical indicating if a post-body page is to be
printed.  (You must provide a PrintPostBody() callback method to
actually perform the printing).  Default: FALSE
nShowState	Optional parameter to set the preview window
show state.  Valid options are: SW_SHOWNORMAL, SW_SHOWMAXIMIZED,
SW_SHOWMINIMIZED
nZoomed	Optional parameter which specifies the initial zoom
level of the Print Preview window.  Valid options
are:ZOOM_WHOLE_PAGE,  ZOOM_PAGE_WIDTH and ZOOM_100
symPPWindow	Optional parameter to specify a symbol
representing a class to instantiate for use as the Print Preview
window.   The class specified must provide certain callback
methods for ReportPro.  The code for ReportPro's PrintPreview
windows is provided as an example of what methods the window
needs to provide.  There are two Print Preview window types
provided with ReportPro:#rpPrintPreviewMDI: this symbol will
produce a Print Preview window that is built on an MDI child
window.  The owner must be an MDI shell type
window.#rpPrintPreviewDLG: this symbol will produce a Print
Preview window that is built on a modal or modeless dialog
window.
Description
For a complete description of the printing process, please see
the discussion in the PtrDevice  introduction.
Example
// Begin printing in a modeless preview window
oPtrDevice:PrintPreview("App Name", ;
	"PRINT.PRN","Print","Printing...",False)
---------------------------------------------------
* Sent from RemarQ 
http://www.remarq.com
 The Internet's Discussion Network *
The fastest and easiest way to search and participate in Usenet - Free!

cliente nel ComboBox. Ne conosci qualcuno....????
Intendi dire che vorresti vedere i dati completi del cliente
selezionato nei campi dell tabcontrol, quando evidenzi una riga
della combobox ?
Se č questo che ti serve, basta dichiarare l'evento ListBoxSelect,
come nell'esempio:
METHOD ListBoxSelect(oControlEvent) CLASS <DW pagina tabcontrol>
	LOCAL oControl AS Control
	oControl := IIf(oControlEvent == NULL_OBJECT, NULL_OBJECT,
oControlEvent:Control)
	SUPER:ListBoxSelect(oControlEvent)
	//Put your changes here
	IF oControl:NameSYm = <nome combo>
		//Ricerca il cliente usando il codice restituito
		//dalla combo
		oDbclienti:Seek( CMB_INGRED, false )
		...
		//carica le SLE con i dati del DBF
		SLE_RAGIONESOCIALE	:=	oDbclienti:RAGSOC
		//
	ENDIF
	RETURN NIL
Fammi sapere,
Antonello.

 file://carica le SLE con i dati del DBF
