Newsgroup: it.comp.lang.visual-basic
Titolo: Problema urgente!! :°(

Ciao NG,
ho un problema che nn riesco a risolvere x quanto riguarda i db.
Uso il componente Adodc e come Db uso uno fatto con Access 97.
Il problema č che quando inserisco un record con adodc.recordset.addnew, e
poi voglio cancellare un record o fare un'altra operazione, come cercare
l'EOF nn mi funziona. Come posso fare?
Ho provato sia con Update che con l'evento move, ma sempre lo
stesso..l'unico metodo č inserire, poi chiudere il programma e
riaprirlo..cosě funziona...
Grazie

 wrote in message
news:9b6arv$9t8$1...@nreadA.inwind.it...


 ha scritto nel messaggio
news:9b6auv$83kq8$1...@ID-77234.news.dfncis.de...


Dopo l'AddNew hai eseguito l' UpDate???

 wrote in message
news:9b6cau$afh$1...@nreadA.inwind.it...


 si, io scorro tutti i records e li inserisco nella treeview :)


 x ogni operazione devo eseguire l'update? Io so che anche se faccio un
movenext, funzica da update, giusto?

io faccio cosě...
Frm.Adodc1.Recordset.AddNew
inserisco i dati etc...
e poi faccio
Frm.Adodc1.Recordset.Update
ok..fin qui tutto apposto, xo' poi,
quando vado ad effettuare una nuova operazione tipo la cancellazione di un
record
(questo č il codice)
Dim itm As ListItem
Dim msg As String
On Error Resume Next
cod = TreeView1.SelectedItem.text
msg = MsgBox("Vuoi rimuovere il prodotto con il seguente codice:" & vbCrLf &
cod & " ?", vbQuestion + vbYesNo, "Rimuovi")
If msg = vbYes Then
varBookmark = ""
Frm.Adodc1.Recordset.MoveFirst
Frm.Adodc1.Recordset.Find "cod_barre = " & (cod), 0, adSearchForward, 0
varBookmark = Frm.Adodc1.Recordset.Bookmark
If Frm.Adodc1.Recordset.EOF Or Frm.Adodc1.Recordset.BOF Then
MsgBox "Record non trovato", vbCritical, "Errore"
Frm.Adodc1.Recordset.MoveFirst
Else
Frm.Adodc1.Recordset.Delete adAffectCurrent
Frm.Adodc1.Recordset.MoveNext
If Frm.Adodc1.Recordset.EOF = True Then
Frm.Adodc1.Recordset.MoveLast
End If
End If
elenca  <--- quando arriva qui e deve passare alla sub elenca x il refresh
va in loop infinito xchč nn trova l'EOF (questo accade solo dopo aver
eseguito la cancellazione del record, quindi se io cancello un record,
chiudo l prog. e lo riapro, la sub elenca la fa...)
End If

 va in loop infinito xchè nn trova l'EOF (questo accade solo dopo aver


 Frm.Adodc1.Recordset.Requery
Dovrebbe ri eseguire la query sql...
Semmai posta il codice di "elenca"!
CiaoZ
SebaMix

Grazie a tutti x la collaborazione ragazzi e scusate l'"imbranataggine"

IL CODICE DI "ELENCA"
-----
Sub elenca()
On Error Resume Next
Dim i, j As Long
Dim nodo As Node
Dim pos, pod As Variant
Dim text As String
TreeView1.Nodes.Clear
Adodc1.Recordset.MoveFirst
j = 1
Do While Adodc1.Recordset.EOF <> True
DoEvents
    Adodc1.Recordset.MoveNext
    j = j + 1
Loop
ProgressBar1.Max = j
ProgressBar1.Value = 0
Adodc1.Recordset.MoveFirst
i = 1
Set nodo = TreeView1.Nodes.Add(, , "A0", "Prodotti", 1)
Do While Adodc1.Recordset.EOF <> True
ProgressBar1.Value = i
pos = "A0"
pod = "W1" & i
text = Text1(0).text
    Set nodo = TreeView1.Nodes.Add(pos, tvwChild, pod, text, 2, 3)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X0" & i, "Nome: " &
Text1(1).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X1" & i, "Titolo: " &
Text1(2).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X2" & i, "Tipo: " &
Combo1.text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X3" & i, "Casa
produttrice: " & Text1(3).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X4" & i, "Data: " &
Text1(4).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X5" & i, "Costo: " &
Text1(6).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X6" & i, "IVA: " &
Combo2.text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X7" & i, "Costo + IVA: "
& Text1(7).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X8" & i, "Quantità
acquistata: " & Text1(8).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X9" & i, "Quantità
disponibile: " & Text1(5).text)
    Set nodo = TreeView1.Nodes.Add(pod, tvwChild, "X10" & i, "Quantità
vendute: " & Text1(9).text)
    i = i + 1
    Adodc1.Recordset.MoveNext
Loop
ProgressBar1.Value = 0
End Sub

L'importante č che tu abbia risolto...
CiaoZ
SebaMix

 Loop
non fai prima a fare
Adodc1.Recordset.MoveLast
j = Adodc1.Recordset.RecordCount
?
con DAO sarebbe necessario chiamare il metodo MoveLast (per riempire il
recordset), con ADO non so
Faber

news:9b7va5$83946$1...@ID-66268.news.dfncis.de...
[snip]


ma che cappero sign. quotare?

 ma che cappero sign. quotare?
Lo fai ogni volta che rispondi ad un post, sono quei '>' a fianco del
messaggio a cui stai rispondendo.
Ogni volta che rispondi devi quotare soltanto quello a cui stai
rispondendo, tutto il resto lo cancelli, per es firme pubblicità
e cose varie sono subito da eliminare, poi scegli tu cosa tenere.
ciao
--------------------------------------------
             ASSA
http://assatarram.yohoo.it
Napster: Assatarram3
it.comp.lang.visual-basic: Assa
--------------------------------------------