Newsgroup: it.comp.appl.access
Titolo: Chiusura improvvisa dell'applicazione usando BeginTrans CommitTrans e Rollback.

In una mia applicazione succede che al lancio di una procedura l'pplicazione
a volte si chiuda incomprensibilmente.Dato che la gestione degli errori che
ho inserito non riesce ad intercettarne la causa non riesco a capire il
perchè e volevo chiedervi un paio di cose.
E' possibile che il metodo BeginTrans CommitTrans e Rollback possano causare
in alcune situazioni tale anomalo comportamento?
Tale procedura acquisisce una serie di anagrafiche da tbl collegate da  un
server che prima era Informix ed adesso è SQL Server 2000
Dato che l'unica differenza tra la stessa applicazione la cui procedura
incriminata lavorava su Informix e non usava i metodi BeginTrans CommitTrans
e Rollback
e quella attuale che lavora su SQL Server 2000 e li usa mi sembra essere
l'utilizzo di tali metodi mi ponevo tale domanda e volevo sentire che ne
pensavate.
SunRex

 ha scritto nel messaggio
news:Jx2Uc.144314$5D1.7...@news4.tin.it...

Ciao, SunRex.
    Versione di Access?
    Hai installato tutti gli aggiornamenti?
-- 
    (Facci sapere se ed eventualmente come hai risolto. Grazie.)
Ciao :o)
Maurizio Borrelli, Microsoft MVP - Office Systems - Access
--------
?SPQR(C)
 X
--------

 SunRex
Ciao,
Massimo
-- 
web: 
www.piubelli.net
Vuoi il mio indirizzo? Togli _cut_ per rispondermi

"SunRex> In una mia applicazione succede che al lancio di una procedura

Non è che tu abbia ficcato il begintrans all'interno di un ciclo vero?

     Hai installato tutti gli aggiornamenti?
Chiedero al SIO dell'ospedale dove lavoro  e dove gira tale applicazione.


 ha scritto nel messaggio
news:cfsc0f$hc$1...@domitilla.aioe.org...

No cmq levando tali metodi il problema non si manifesta e cmq non mi spiego
la chiusura dell'applicazione così di botto.


 ha scritto nel messaggio
news:4CiUc.45250$OH4.1...@twister1.libero.it...

No c'è un ciclo ma begintrans sta fuori da questo.
Forse lo uso male.Questo è il codice.
Sub ListaDiLavoro()
Dim strSQL As String
Dim strConfronta As String
On Error GoTo ErrHandle
wsApplicazione.BeginTrans
strSQL = "SELECT CodiceFiscale FROM tblCUP"
Set rsCUP = dbApplicazione.OpenRecordset("tblCUP")
    Do Until rsCUP.EOF
        strConfronta = rsCUP.Fields("CodiceFiscale")
           strSQL = "SELECT * FROM tblAnagrafiche WHERE CodiceFiscale = '" &
strConfronta & "'"
            Set rsAnagrafiche = dbApplicazione.OpenRecordset(strSQL)
            If rsAnagrafiche.BOF And rsAnagrafiche.EOF Then
                    rsAnagrafiche.Close
                    Else
                    rsAnagrafiche.Edit
                    rsAnagrafiche.Fields("Data") = Date
                    rsAnagrafiche.Update
                    rsAnagrafiche.Close
                End If
            rsCUP.MoveNext
    Loop
    rsCUP.Close
    Set rsCUP = Nothing
    DoCmd.SetWarnings False
    DoCmd.OpenQuery "qryDelCup", acNormal, acEdit
 wsApplicazione.CommitTrans
ErrHandle:
    If Err.Number = 0 Then
        Exit Sub
    Else
        wsApplicazione.Rollback
        MsgBox "Si sono verificati dei problemi in fase di acquisizione." &
Chr(13) & "Nessun paziente acquisito" & Chr(13) & "Controllare che il PC sia
in rete." & Chr(13) & "Errore numero " & Err.Number, vbCritical,
"Applicazione"
        logFile.LWrite " Errore numero [" & Err.Number & " ] " & " Testo
Errore : " & Err.Description & "   " & " Oggetto Errore = " & Err.Source
End If

 MAssimiliano


 Massimo
Ciao MAssimiliano
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 fermarsi proprio lì.
non capisco cosa intendi esattamente che va a fermarsi li
ho provato
If err.number = 0 then
    msgbox err.description
else
    msgbox "errore numero " & err.number
endif


 Massimo
Ora fai le prove


 MAssimiliano
Ciao,
Massimo
PS: mi sa che stiamo dicendo proprio la stessa cosa.


 wsApplicazione dove è dichiarata e come?
in un modulo a parte come
Public dbApplicazione As DAO.DataBase, wsApplicazione As Workspace


 SunRex
Ciao,
Massimo
-- 
web: 
www.piubelli.net
Ciò che oggi è facoltativo domani sarà necessario.
Perchè non prepararci per tempo al futuro?
