Quando il tecnico della ditta si licenzia...

di il
9 risposte

Quando il tecnico della ditta si licenzia...

Salve, ho un cliente a cui ho installato una rete wifi per i clienti che mi chiede se gli risolvo questo problema dato che il tecnico che gli ha fatto il programma ha cambiato lavoro.

La ditta ha un software per gestire le prenotazioni e la fatturazione fatto su Access 2010 che ha smesso di funzionare da un giorno a un altro su un PC (gemello di altri su cui va benissimo)

il lob che si presenta è questo:

Le informazioni su come richiamare il debug JIT (Just-In-Time) anziché questa finestra
sono riportate in fondo al messaggio.

************** Testo dell'eccezione **************
System.Data.OleDb.OleDbException: Per l'operazione è necessaria una query aggiornabile.
in System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
in System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
in System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
in System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
in System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
in System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
in Agriturismo_net.ModRoutVarie.RegistraDescrizioneSpesaSeNull()
in Agriturismo_net.FRM_Spese.FRM_Spese_Load(Object sender, EventArgs e)
in System.Windows.Forms.Form.OnLoad(EventArgs e)
in System.Windows.Forms.Form.OnCreateControl()
in System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
in System.Windows.Forms.Control.CreateControl()
in System.Windows.Forms.Control.WmShowWindow(Message& m)
in System.Windows.Forms.Control.WndProc(Message& m)
in System.Windows.Forms.ScrollableControl.WndProc(Message& m)
in System.Windows.Forms.ContainerControl.WndProc(Message& m)
in System.Windows.Forms.Form.WmShowWindow(Message& m)
in System.Windows.Forms.Form.WndProc(Message& m)
in System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
in System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
in System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Assembly caricati **************
mscorlib
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5477 (Win7SP1GDR.050727-5400)
Base di codice: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Agriturismo_2013
Versione assembly: 3.0.7.2
Versione Win32: 3.0.7.2
Base di codice: file:///C:/Agriturismo_2013/Agriturismo_2013.exe
----------------------------------------
Microsoft.VisualBasic
Versione assembly: 8.0.0.0
Versione Win32: 8.0.50727.5420 (Win7SP1.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5467 (Win7SP1GDR.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5468 (Win7SP1GDR.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5467 (Win7SP1GDR.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Runtime.Remoting
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5420 (Win7SP1.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
XPCommonControls
Versione assembly: 3.0.1.60126
Versione Win32: 3.0.1.60126
Base di codice: file:///C:/Agriturismo_2013/XPCommonControls.DLL
----------------------------------------
System.Windows.Forms.resources
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5420 (Win7SP1.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_it_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
System.Data
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5420 (Win7SP1.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Transactions
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.4927 (NetFXspW7.050727-4900)
Base di codice: file:///C:/Windows/assembly/GAC_32/System.Transactions/2.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.EnterpriseServices
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5420 (Win7SP1.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_32/System.EnterpriseServices/2.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll
----------------------------------------
System.Configuration
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5476 (Win7SP1GDR.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5476 (Win7SP1GDR.050727-5400)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
mscorlib.resources
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.5477 (Win7SP1GDR.050727-5400)
Base di codice: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Accessibility
Versione assembly: 2.0.0.0
Versione Win32: 2.0.50727.4927 (NetFXspW7.050727-4900)
Base di codice: file:///C:/Windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------

************** Debug JIT **************
Per attivare il debug JIT, è necessario impostare il valore
jitDebugging nella sezione system.windows.forms del file di configurazione
dell'applicazione o del computer (machine.config).
L'applicazione inoltre deve essere compilata con il debug
attivato.

Ad esempio:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

Quando il debug JIT è attivato, tutte le eccezioni non gestite
vengono inviate al debugger JIT registrato nel computer,
anziché essere gestite da questa finestra di dialogo.



Posso fare qualcosa io che non conosco Access per risolverlo? mi potete dare qualche dritta?

Grazie mille

9 Risposte

  • Re: Quando il tecnico della ditta si licenzia...

    Gli errori indicano che il programma è scritto in VB.NET.
    Forse il database usato è quello di Access, ma niente sembra indicarlo con precisione.
  • Re: Quando il tecnico della ditta si licenzia...

    Se puoi dare qualche dettaglio tecnico in più...
  • Re: Quando il tecnico della ditta si licenzia...

    Ciao a tutti, mi trovo nella seguente situazione: ho un'applicazione access che è colleagata via ODBC a due DB differenti, uno SQL (in lettura e scrittura) e uno Oracle (in sola lettura). Ad un certo punto, premendo un tasto, faccio una query di update del tipo:
    UPDATE TABELLA_SQL INNER JOIN TABELLA_ORACLE ON ...... SET TABELLA_SQL.CAMPO=12345 WHERE...
    Quindi l'update viene fatto solo sulla tabella del DB SQL.
    Quando eseguo la query mi viene fuori la finestra con il seguente messaggio di errore: Errore di run-time '3073'. Per l'operazione è necessaria una query aggiornabile.
    Non credo sia un problema della query perchè il codice è stato copiato da un altro tasto che deve fare la stessa operazione, ma che è già in ambiente di produzione e funziona correttamente, ma, anche questo, nel mio ambiente di test, non funziona e 'sputa fuori' il messaggio precedente.
    Qualcuno ha idea di come risolvere questo problema?

    Grazie
  • Re: Quando il tecnico della ditta si licenzia...

    Nessuno sa darmi una mano per uscire da questo profondo fosso?
  • Re: Quando il tecnico della ditta si licenzia...

    L'errore mi pare abbastanza chiaro:
    La query non riesce ad aggiornare perchè non riesce ad identificare univocamente il record da aggiornare.
    Di norma è perché non sono state tutte indicate le chiavi primarie.

    Sei sicuro che l'ambiente di test sia identico a quello di produzione?
    Se in produzione funziona, ed in test no, allora si può pensare che esista qualche differenza.
  • Re: Quando il tecnico della ditta si licenzia...

    Ok, grazie. Il mio pensiero è prorpio questo che ci sia qualcosa che 'tocca' nell'ambiente di test.

    Provo a ricaricare le tabelle e a controllare le chiavi.

    Per ora grazie
  • Re: Quando il tecnico della ditta si licenzia...

    Grazie gibra, il problema era proprio quello: quando collegavo le tabelle di ORACLE non selezionavo correttamente le chiavi e quindi andava in errore.

    Avresti per caso una soluzione per un altro dei miei problemi?
    http://www.iprogrammatori.it/forum-programmazione/access/vba-access-2010-menu-personalizzato-t21400.html
  • Re: Quando il tecnico della ditta si licenzia...

    alsa81 ha scritto:


    Grazie gibra, il problema era proprio quello: quando collegavo le tabelle di ORACLE non selezionavo correttamente le chiavi e quindi andava in errore.
    Ottimo.

    alsa81 ha scritto:


    Avresti per caso una soluzione per un altro dei miei problemi?
    http://www.iprogrammatori.it/forum-programmazione/access/vba-access-2010-menu-personalizzato-t21400.html
    No, non so praticamente nulla dell'ambiente MS Access.
    Credo, se non sbaglio, che bisognerebbe aprire il form in modalità struttura, ma prendi questa indicazione con le pinze.

  • Re: Quando il tecnico della ditta si licenzia...

    Ok, grazie comunque per avermi aiutato.
Devi accedere o registrarti per scrivere nel forum
9 risposte