Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Chiedo grande aiuto visual basic.net
martedì 27 febbraio 2007 - 13.05
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
almax
Profilo
| Junior Member
175
messaggi | Data Invio:
mar 27 feb 2007 - 13:05
Salve un saluto a tutti, sono nuovo.
Mi serve un aiuto importante.
Ho una tabella access con code, anno, importo1, importo2, importo3, al momento la query di select mi restituisce i valori in un file txt
in questo modo :
12345678 05 importo1 importo2 importo3
12345678 o6 importo2 importo2 importo3
io vorrei che si visualizzasse in questo modo
12345678
05 importo1 importo2 importo3
06 importo1 importo2 importo3
Come devo fare?
Ringrazio in anitcipo..
BiBi
Profilo
| Junior Member
158
messaggi | Data Invio:
mar 27 feb 2007 - 13:40
Non ho capito bene, la tua applicazione è Access o .NET ed il file lo devi generare da una funzione di .NET?
almax
Profilo
| Junior Member
175
messaggi | Data Invio:
mar 27 feb 2007 - 14:01
Allora ho un form di inserimento in .net e un form di ricerca sempre in .net
La base di dati è in access, quindi tutte le query le faccio da .net, il file si lo creo con una funzione di .net
BiBi
Profilo
| Junior Member
158
messaggi | Data Invio:
mar 27 feb 2007 - 14:30
Io in genere faccio in questo modo: mi creo una variabile di tipo StreamWriter e poi inserisco i dati al suo interno ad esempio:
Dim lswTXT As IO.StreamWriter
lswTXT = IO.File.CreateText("C:\prova.txt")
lswTXT.WriteLine("Codice cliente") 'Mi inserisce la prima riga
lswTXT.WriteLine("Descrizione") 'Mi inserisce la seconda riga
Non so se ti sono stata utile...
almax
Profilo
| Junior Member
175
messaggi | Data Invio:
mar 27 feb 2007 - 14:55
Si ma infatti è così che faccio , pero' tutto all'interno di un ciclo quindi quello che vado a scrivere è fatto così
12345678 05 importo1 .......
12345678 06 importo2 .........
invece io vorrei che fosse
12345678
05 importo1
06 importo2
credo che la soluzione dovrebbe arrivare sulla query sql
BiBi
Profilo
| Junior Member
158
messaggi | Data Invio:
mar 27 feb 2007 - 15:36
C'è una cosa che mi sfugge, anche se lo fai all'interno di un ciclo, perchè non fai due WtiteLine?
almax
Profilo
| Junior Member
175
messaggi | Data Invio:
mar 27 feb 2007 - 15:48
perchè la query di select mi cicla sui record e ne trova due come ti ho scritto in precedenza,
quindi quello che mi visualizza sono due codici per ogni riga. Io devo raggruppare il codice su una riga e poi listare le seguenti con la data e gli importi .. Come posso fare?
sanbiz
Profilo
| Senior Member
208
messaggi | Data Invio:
mar 27 feb 2007 - 16:51
>perchè la query di select mi cicla sui record e ne trova due
>come ti ho scritto in precedenza,
>quindi quello che mi visualizza sono due codici per ogni riga.
>Io devo raggruppare il codice su una riga e poi listare le seguenti
>con la data e gli importi .. Come posso fare?
Penso che la soluzione migliore sia quella di verificare l'ultimo codice inserito e se uguale a quello della riga che sto ciclando, non lo scrivo; una cosa del genere
1. prima fai la tua select recuperandone probabilmente un datareader od un dataset o datatable non importa
2. Cicli tra tutte le righe
(inizio cilo)
Qui verifichi il tuo codice (if oldCodice = Codice then .... else ..... end if)
oldCodice = Codice
(fine ciclo)
Ovviamente nel caso in cui sia un nuovo codice scrivi solo la riga col codice stesso, altrimenti scrivi solo i valori che ti interessano.
--
Sandro Bizioli
http://blogs.dotnethell.it/sandro/
almax
Profilo
| Junior Member
175
messaggi | Data Invio:
mar 27 feb 2007 - 17:26
Mi sembra che puo' andare questa soluzione, purtroppo non utilizzo nessuno strumento data ,
mi collego al db access faccio la select e vado ad inserire i valori nelle variabili che poi vado scrivere con il writeline..
Per fare quello che tu dici mi potresti dare dei consigli ? Grazie
sanbiz
Profilo
| Senior Member
208
messaggi | Data Invio:
mar 27 feb 2007 - 17:44
>Mi sembra che puo' andare questa soluzione, purtroppo non utilizzo
>nessuno strumento data ,
>mi collego al db access faccio la select e vado ad inserire i
>valori nelle variabili che poi vado scrivere con il writeline..
In che senso non usi "nessuno strumento data"?
Come fai a fare la select?
Non usi Ado.net?
Prova a guardare sui BOL l'utilizzo di Ado.net.
Detto molto sommariamente:
1. Crei un OleDb.OleDbConnection
2. Crei un OleDb.OleDbCommand (che poi sarà la tua select)
3. A questo punto potresti crearti semplicemente un OleDbDataReader
Ripeto. Guarda sui BOL (e sui ng) trovi tutto.
--
Sandro Bizioli
http://blogs.dotnethell.it/sandro/
almax
Profilo
| Junior Member
175
messaggi | Data Invio:
mar 27 feb 2007 - 19:20
A si si pensavo per la visualizzaione ... Si utilizzo oledbdatareader ...
faccio la select e vado avanti...
Quello che al momento visualizzo è questo:
Codice Bilancio = 12345678
Codice Classificazione
000 000 000 000 000 000 000 000 000 000
000 000 000 000 000 000 000 000 000 000
000 000 000 000 000 000 000 000 000 000
Residui = 12,00
Pagamenti = 121,00
Impegni = 12,00
Totale Anno 05 = 133,00
Economie Anno 05 = -121,00
Totale Complessivo = 133,00
Economie Complessive = -121,00
Codice Bilancio = 12345678
Codice Classificazione
000 000 000 000 000 000 000 000 000 000
000 000 000 000 000 000 000 000 000 000
000 000 000 000 000 000 000 000 000 000
Residui = 12,00
Pagamenti = 12,00
Impegni = 12,00
Totale Anno 06 = 24,00
Economie Anno 06 = -12,00
Totale Complessivo = 24,00
Economie Complessive = -12,00
se ci fai caso è uguale il codice bilancio e la classificazione il resto sono le specifiche di due anni..
Io vorrei il codbilancio e la classificazione scritta una sola volta .. Così non va un gran che..
Guarda devo ringraziarti un casino per l'aiuto che mi stai dando perchè sto impazzendo dietro sta cosa..
Cmq fammi capire bene oldcodice dove lo prendo, Sto cercando di utilizzare la proprietà equals o sbaglio?
ti posto il codice:
Do While dr.Read()
Dim bil As String = (dr("codbilancio"))
Dim res As String = Format((dr("residui")), "standard")
Dim pag As String = Format((dr("pagamenti")), "standard")
Dim imp As String = Format((dr("impegni")), "standard")
Dim tot As String = Format((dr("totale")), "standard")
Dim eco As String = Format((dr("economie")), "standard")
Dim t As String = Format((dr("t")), "standard")
Dim e As String = Format((dr("e")), "standard")
Dim an As String = (dr("annocomp"))
'dei campi mancanti che non ti posto'
If dr.Equals(bil) = False Then
sw.WriteLine("Codice Bilancio = " + (dr("codbilancio")), fnt)
sw.WriteLine("Codice Classificazione", fnt)
sw.WriteLine(" ")
sw.WriteLine("" + codp, fnt)
sw.WriteLine("" + codp1, fnt)
sw.WriteLine("" + codp2, fnt)
sw.WriteLine(" ")
sw.WriteLine("Residui = " + res, fnt)
sw.WriteLine("Pagamenti = " + pag, fnt)
sw.WriteLine("Impegni = " + imp, fnt)
sw.WriteLine("Totale Anno " + an + " = " + tot, fnt)
sw.WriteLine("Economie Anno " + an + " = " + eco, fnt)
sw.WriteLine("Totale Complessivo = " + t, fnt)
sw.WriteLine("Economie Complessive = " + e, fnt)
sw.WriteLine(" ")
Else
sw.WriteLine(" ")
sw.WriteLine("Residui = " + res, fnt)
sw.WriteLine("Pagamenti = " + pag, fnt)
sw.WriteLine("Impegni = " + imp, fnt)
sw.WriteLine("Totale Anno " + an + " = " + tot, fnt)
sw.WriteLine("Economie Anno " + an + " = " + eco, fnt)
sw.WriteLine("Totale Complessivo = " + t, fnt)
sw.WriteLine("Economie Complessive = " + e, fnt)
sw.WriteLine(" ")
End If
LOOp
così pero' non mi funziona
sanbiz
Profilo
| Senior Member
208
messaggi | Data Invio:
mer 28 feb 2007 - 12:07
>Cmq fammi capire bene oldcodice dove lo prendo, Sto cercando
>di utilizzare la proprietà equals o sbaglio?
Io intendevo proprio con una variabile
Dim oldCode as integer = 0
Do While dr.Read()
.....
If oldCode <> dr("codbilancio") Then
sw.WriteLine("Codice Bilancio = " + (dr("codbilancio")), fnt)
sw.WriteLine("Codice Classificazione", fnt)
Else
...
....
end if
oldCode = dr("codbilancio")
Loop
--
Sandro Bizioli
http://blogs.dotnethell.it/sandro/
almax
Profilo
| Junior Member
175
messaggi | Data Invio:
mer 7 mar 2007 - 09:57
Il sistema è andato bene grazie Sandro
Torna su
Stanze Forum
Elenco Threads
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 !