Newsgroup: it.comp.lang.visual-basic
Titolo: ANCORA questi Data Report!!!!!

Riusciro' mai a finire queste stampe?
1° problema: Nel mio database c'e' un campo di nome Fornitore dentro il 
quale memorizzo 1,2 o 3 a seconda che ho "ceccato" opt corrispondente al 
Fornitore 1,2 o 3. Sempre nel mio database esistono 3 campi di nome 
Offerta1, Offerta2, Offerta3 dove memorizzo un valore a seconda dell'opt 
"ceccato". Sul datareport devo far apparire il valore dell'offerta che 
corrisponde al fornitore "ceccato". Posso dare queste notizie al 
datareport tramite codice? Sicuramente SI ma come? HO provato ma 
naturalmente senza successo!!! Devo usare le RptFunction  o le 
RptTextBox? Non so passare i valori dai campi alle Rpt.... 
2° problema: Ho la somma di due campi (RptFunction -somma) devo far 
apparire quanto incide in percentuale un valore sull'altro 
Es: 100000 su 20000 perc=20% Come posso fargli fare questo calcolo? 
Sempre da codice?
Ho bisogno del VOSTRO AIUTO!!!!
Devo assolutamente finere queste stampe al piu' presto!!!
Spero di aver esposto "i problemi" in modo chiaro!!!!
Baci Francy.......

Io faccio tutto da codice impostando i valori in RptTextBox.
Se il tuo report si chiama MioReport:
Dim report As MioReport
report.Sections("IntestazionePagina").Controls("miocontrolloRptTextBox").Cap
tion = valore
e cosě per tutti i campi di ogni sezione!!!!.
Per la sezione dettagli, imposto nel report.DataSource un recordset ADO e
collego le RptTextBox ai
campi del mio recordset.
Per il calcolo della percentuale, č meglio che lo fai da codice.
Spero di esserti stato d'aiuto.
Ciao, Corrado.

 wrote in message
MPG.12630f0a8...@news.tiscalinet.it...


 
Oggi a lavoro ho provato a fare cosi':
Private Sub DataEnvironment_Initialize()
Dim QueryScheda As String
Dim RsReport As Recordset
Dim txtofferta As RptTextBox
Dim txtfornitore As RptTextBox
    'esempio visto nell'Help di VB6
    'Adodc1.RecordSource = "Select AVG(Sales)  " _
    '& " AS AverageSales From SalesTable"
    'Text1.DataField = "AverageSales"
    'Adodc1.Refresh
QueryScheda = "SELECT Scheda.*, Merci.DescMer, Economia.DescEco, 
	Programma.DescPro, Ordine.DescOrd FROM (((Scheda LEFT JOIN Merci 
	ON Scheda.CodMer=Merci.CodMer) LEFT JOIN Economia ON 
	Scheda.CodEco=Economia.CodEco) LEFT JOIN Programma ON 
	Scheda.CodPro=Programma.CodPro) LEFT JOIN Ordine ON 
	Scheda.CodOrd=Ordine.CodOrd  ORDER BY Commessa"
Set RsReport = DBScheda.OpenRecordset(QueryScheda, dbOpenDynaset)
    'nella Frmstampa ho messo Adodc1 connesso al database
FrmStampe.Adodc1.RecordSource = "Select offerta As off,offerta1 As 
off1,offerta2 As off2 From Scheda"
 
If txtfornitore.DataField = 1 Then ' qui mi da l'errore Variabile oggetto 
o variabile with non impostata
    txtofferta.DataField = "off"
ElseIf txtfornitore.DataField = 2 Then
    txtofferta.DataField = "off1"
Else
    txtofferta.DataField = "off2"
End If
FrmStampe.Adodc1.Refresh
RsReport.Close
End Sub
Nel DataReport nella sezione Dettagli ci sono le due txt che dichiaro 
senza aver impostato DataField per la txtofferta perche' deve variare a 
seconda di cio' che e' scritto nella txtfornitore(visible=false non si 
deve vedere nella stampa). Come faccio!!!!Cosi' non VA!!!Dove sbaglio? 
AIUTO DEVO FINIRE PER VENERDI!!!!!

 Saluti. Stefano
Oggi ho povato cosi':
Nel dataenviroment_iniz...
Dim QueryScheda As String
Dim RsReport As Recordset
Dim txtofferta As RptTextBox
Dim txtfornitore As RptTextBox
    'esempio dell'help
    'Adodc1.RecordSource = "Select AVG(Sales)  " _
    '& " AS AverageSales From SalesTable"
    'Text1.DataField = "AverageSales"
    'Adodc1.Refresh
QueryScheda = "SELECT Scheda.*, Merci.DescMer, Economia.DescEco, 
Programma.DescPro, Ordine.DescOrd FROM (((Scheda LEFT JOIN Merci ON 
Scheda.CodMer=Merci.CodMer) LEFT JOIN Economia ON 
Scheda.CodEco=Economia.CodEco) LEFT JOIN Programma ON 
Scheda.CodPro=Programma.CodPro) LEFT JOIN Ordine ON 
Scheda.CodOrd=Ordine.CodOrd  ORDER BY Commessa"
Set RsReport = DBScheda.OpenRecordset(QueryScheda, dbOpenDynaset)
'ho messo nella form un Adodc1 connesso al database    
FrmStampe.Adodc1.RecordSource = "Select offerta As off,offerta1 As 
off1,offerta2 As off2 From Scheda"
 
If txtfornitore.DataField = 1 Then 'qui mi da errore "Variabile 
oggetto...non impostata"
	txtofferta.DataField = "off"
ElseIf txtfornitore.DataField = 2 Then
       txtofferta.DataField = "off1"
Else
       txtofferta.DataField = "off2"
End If
FrmStampe.Adodc1.Refresh
RsReport.Close
txtfornitore e' visible=false perche' mi serve solo per sapere se devo 
visualizzare offerta,offerta1 o offerta2
txtofferta=datamember=command1
txtofferta=datafield="nulla" perche deve cambiare a seconda di quello che 
c'e' scritto nella txtfornitore. Le txt nel datareport si troivano nella 
sezione "Dettaglio".
Come faccio? Mi puoi spiegare dove sbaglio?
Ciao Francy :)