Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Un aiutino con una query access

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Un aiutino con una query access

Postdi cyber81 » 19/05/12 10:28

Salve ragazzi ho un problemino.. :)
Allora ho due tabelle che chiameremo TAB1 e TAB2 con FORM1 e FORM2. Vorrei che taluni campi della TAB 1 si aggiornassero con i valori di alcuni altri campi della TAB2. Ho fatto su FORM1 una "list box" che mi fa selezionare l'ID del record di TAB2 che mi interessa e che automaticamente mi aggiorna un campo (campoz) sempre della FORM1 e fin qui tutto ok.
Ora vorrei che selezionato il record di TAB2 mi si aggiornassero nel FORM1 corrente anche altri campi... purtroppo il wizard della listbox consente di automatizzare tutto con 1 solo campo.
Allora ho inserito un evento "on click" sulla Listbox che richiama una Query. Ma non funziona! E quindi evidentemente sbaglio qualcosa nella query.
Ho usato questo codice:

UPDATE [TAB1] SET [TAB1].campox = [TAB2]![campoy]
WHERE ((TAB2]![ID]=[TAB1]![campoz]));

spero di non aver fatto troppa confusione ! Avete qualche idea ???
cyber81
Utente Junior
 
Post: 32
Iscritto il: 26/10/11 08:09

Sponsor
 

Postdi archimede » 19/05/12 15:06

cyber81 ha scritto:Vorrei che taluni campi della TAB 1 si aggiornassero con i valori di alcuni altri campi della TAB2.
Perché? Duplicare dati in un db 9 volte su 10 non è una buona idea.

Se proprio DEVI farlo, perché usare delle form? Non basta una query di aggiornamento?

Alessandro
archimede
Moderatore
 
Post: 2755
Iscritto il: 07/11/02 12:41
Località: Genova

Re: Un aiutino con una query access

Postdi cyber81 » 20/05/12 09:25

Si infatti .. avevi ragione, con una query di aggiornamento ho risolto.
Però c'è una cosa strana... se richiamo la query tramite la creazione guidata di macro (2 volte di seguito) riesco a far aggiornare i dati a video automaticamente ... se richiamo la query tramite codice scritto a mano devo poi salvare e quindi fare il refresh a mano affinchè si aggiornino i campi del form...

Avete mica qualche idea su come rendere più veloce il procedimento di salvataggio e refresh ? Tanto per capirci se lo scrivo così esegue la Query ma i dati a video non si aggiornano:

DoCmd.OpenQuery "Query1", acViewDesign, acEdit
DoCmd.Close acQuery, "Query1"
RunCommand acCmdSaveRecord
RunCommand acCmdRefreshPage

Devo poi cliccare sul pulsante "salva" e poi su quello "aggiorna" che tra l'altro ri-esegue la query e refresha nuovamente... :-)
cyber81
Utente Junior
 
Post: 32
Iscritto il: 26/10/11 08:09

Postdi archimede » 21/05/12 09:15

Perché acViewDesign? E a che serve acCmdSaveRecord? In ogni caso credo sia meglio usare currentdb.execute "Query1", dbFailOnError.

Alessandro
archimede
Moderatore
 
Post: 2755
Iscritto il: 07/11/02 12:41
Località: Genova


Torna a Applicazioni Office Windows


Topic correlati a "Un aiutino con una query access":


Chi c’è in linea

Visitano il forum: Anthony47 e 8 ospiti