Modifica record sotto certe condizioni

martedì 09 novembre 2010 - 10.05
Tag Elenco Tags  Windows XP  |  Access (.mdb)  |  Office 2003  |  Chrome

teocartu Profilo | Newbie

Buongiorno, ho un problema da porvi.

Le mie tabelle sono:

- tabella "Manutenzioni" nel quale sono presenti i campi Id_Manutenzione (PK), Tipo_Manutenzione (che può assumere valori 1,2,3), Importo, Vaore_Istat.

Ho una maschera in cui inserisco il Valore_Istat (uguale per tutti i record) nel quale vorrei inserire un pulsante che faccia le seguenti cose:

- controlli uno ad uno tutti i record presenti nella tabella Manutenzioni e,per ogni record solo se Tipo_Manutenzione = 2, faccia le seguenti cose:

- mi salvi il record in una tabella archivio (che ha quindi gli stessi campi della tabella manutenzioni);

- modifichi solo successivamente il valore dell'importo nella tabella manutenzioni che diventerà: importo = importo*(1+valore_istat)

Credo ci voglia un ciclo FOR per controllare ogni singolo record, seguito da un IF con la condizione, seguito dalle due istruzioni.

Il mio problema è che conosco C ma non VBA e quindi in VBA non so come scrivere il codice.

Spero di essere stato abbastanza chiaro e ringrazio anticipatamente chiuque mi risponda.

ugk111 Profilo | Junior Member


per prima cosa devi contare i recor presenti nella tabella

dim Eseguisql as string
dim Contatorerecord as integer
Contatorerecord = DCount("Id_Manutenzione (PK) ", "Manutenzioni") 'conta record
for i=1 to Contatorerecord
if Tipo_Manutenzione = 2 then eseguisql="INSERT INTO Archivio ( CAmpo1, campo2) " : _
eseguisql=eseguisql & "SELECT [manutenzione].xx, [Manutenzione].yy ": _
eseguisql=eseguisql & "FROM Manutenzione" : _
docmd.runsql eseguisql 'Accoda alla tabella Archivio i valori di manutenzione
next i
cosa intendi per "modifichi solo successivamente il valore dell'importo nella tabella manutenzioni che diventerà: importo = importo*(1+valore_istat)" quando dovrebbe farlo e con quale meccanismo ?
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5