DataEnvironment Command annidati VB6

mercoledì 28 maggio 2008 - 11.04

xelhark Profilo | Newbie

Ciao a tutti
Ho un problema, non credo sia nulla di difficile.. Praticamente devo stampare delle fatture con l'elenco dei prodotti e ho i dati nel database con la tabella fatture(id, data ----) e la tabella di associazione PX(fattura, prodotto, quantità)
Bene, ho usato un DataEnvironment SOLAMENTE per la stampa e mi servirebbe ottenere un command in modo da avere l'elenco di fatture e per ogni fattura la lista di prodotti (mi basta solo l'ID del prodotto quindi si può evitare la connessione con la tabella prodotti)
Bene tutto questo credo sia abbastanza semplice vista la struttura dei dataenvironment in Visual Basic 6, ho visto che è possibile creare dei command annidati pensavo di prendere con un command le fatture e con un altro command l'elenco dei prodotti per ogni fattura.. Credo ci debba essere un gioco di parametri, ma purtroppo non so farlo.. Potreste aiutarmi? Grazie a tutti in anticipo ^^

assiolle Profilo | Junior Member

Personalemente non mi pare la soluzione migliore, anche se è un pò che non lavoro in vb6.

Io metterei tutto in un recordset (che è il Join delle 2 tabelle) e poi vado in stampa.
Alessio
http://blogs.dotnethell.it/alessiop

xelhark Profilo | Newbie

Posso anche fare così, ma come faccio a "iterare" il report in modo da scorrere le fatture e per ogni fattura tutti i prodotti?

Cioè la stampa dovrà essere una cosa del genere

Intestazione
----------------
Dati fattura 1
----------------
Prodotto 1
Prodotto 2
Prodotto 3
-----------------
Dati fattura 2
-----------------
Prodotto 1
Prodotto 2
------------------

E non so come fare aiuto

assiolle Profilo | Junior Member

Non sai come crearti la query o come riportare le informazioni nel report?Ed in caso utilizzi Crystal Report per le stampe?
Alessio
http://blogs.dotnethell.it/alessiop

xelhark Profilo | Newbie

La query la so, dovrebbe essere "Select * from AS group by ID_Fattura" oppure selezionando direttamente per l'ID della fattura che mi serve.. non so come creare il report con
INTESTAZIONE (Dati fattura es: data, nome intestatario, partita iva)
-------
Dettaglio (cioè lista prodotti associati alla fattura)
-------

Cmq sto utilizzando il DataReport integrato nel VB6

Ho provato qualcosa del genere per il command ma all'apertura mi da un errore
"SHAPE {SELECT * FROM Fatture } " & _
"APPEND ({SELECT * FROM AS } " & _
"RELATE Fattura to IDFattura) as Fatture"

dove Fattura è la chiave esterna della tabella AS alla tabella Fatture e IDFattura è la chiave primaria alla quale si riferisce (nella tabella fatture)
La tabella AS contiene le associazioni tra fatture e prodotti (associazione molti a molti)

L'errore è:
"Gli argomenti non sono di tipo valido, non sono compresi nell'intervallo o sono in conflitto"
aiuto

assiolle Profilo | Junior Member

Ho sempre lavorato con CR e non ricordo più come utilzzare i datareport.

Cmq volevo farti osservare che nelle query utlizzare il nome Tabella "AS" potrebbe creare qualche problema visto che in SQL "AS" sta per ALIAS.
Metti il nome tabella tra parentesi quadre --> [AS]

SELECT * FROM [AS]
Alessio
http://blogs.dotnethell.it/alessiop

Dainesi Profilo | Senior Member

Sarà anche uno spreco, sarà una de-normalizzazione ma ottenere un recordset i cui primi n campi riportano l'intestazione della fattura e solo gli ultimi due l'ID e la quantità non mi sembra un idea malvagia ...
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-2014
Running on Windows Server 2008 R2 Enterprise, SQL Server 2008 & ASP.NET 3.5