Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-01-2009, 12:31   #1
Mancho
Senior Member
 
L'Avatar di Mancho
 
Iscritto dal: Dec 2001
Messaggi: 448
[VBA: ACCESS] Passare valori funzioni

Nel mio database ho la seguente funzione:


Codice:
codice:
    Function ListinoPrezzi(Forn) As Variant
           
        Forn = Val(Forn)        
    
    End Function


Il valore "Forn" è passato alla funzione utilizzando il comando "Call" da una mascherà nella quale, da una casella a discesa, si seleziona il nome di un fornitore che corrisponde ad un numero progressivo della relativa tabella. Quindi per esempio, se si seleziona il fornitore n. 7 ovviamente la variabile "Forn" memorizzerà il valore "7". Ho già verificato ed in effetti il valore viene memorizzato. Il problema si pone quando cerco di utilizzare questa variabile nel campo "Criteri" di una query di selezione. La funzione "ListinoPrezzi" viene visualizzata, ma purtroppo il valore non passa.

Dove sbaglio?
__________________
Blog Lago Trasimeno
Mancho è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2009, 12:19   #2
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Mancho Guarda i messaggi

Codice:
    Function ListinoPrezzi(Forn) As Variant
           
        Forn = Val(Forn)        
    
    End Function
Ci sono alcune cose "ambigue" in questa funzione :

1. Anzitutto perchè usare una funzione, quando si vuole semplicemente assegnare un valore ad una variabile pubblica ? Suppongo Forn sia pubblica e visibile da tutto il progetto...

2. Nella Function il parametro in ingresso Forn ha lo stesso nome della variabile Forn. Questo sarebbe sempre da evitare, soprattutto in VBA dove alcune ambiguità non vengono segnalate, e possono portare ad errori...

3. La Function ritorna un valore Variant, che all'interno della stessa non viene mai assegnato.

Se puoi posta il codice della Query che dovrebbe farne uso, e quello che hai messo in "Criteri"...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2009, 16:04   #3
Mancho
Senior Member
 
L'Avatar di Mancho
 
Iscritto dal: Dec 2001
Messaggi: 448
Ho usato una funzione perché credevo fosse la strada migliore e perché credo sia l'unico modo per far "vedere" il suo valore all'interno della query, ma se c'è un metodo migliore, ti sarei grato se vorrai spiegarmelo.

Il motivo per cui ho usato una funzione è perché vorrei creare un modulo standard per la ricerca dei dati dal listino prezzi. Il listino prezzi che ho nel database ha la seguente struttura:

IDArticolo
IDFornitore
Codice
Descrizione
Prezzo
....

Siccome utilizzo la stessa tabella per più fornitori, la stessa contiene più listini ed a volte questi possono contenere articoli che hanno lo stesso codice. Un esempio dei miei dati è quello che segue:


Codice:
IDArticolo	IDFornitore	Codice		Descrizione
1		1		A1		ART1
2		1		A2		ART2
3		1		A3		ART3
4		2		A1		ART1
5		2		A2		ART2
6		2		A3		ART3
7		3		A1		ART1
8		3		A2		ART2
9		3		A3		ART3
Ovviamente questi non sono i dati reali, ma illustrano bene la struttura e chiariscono il fatto che ci possano essere più articoli con lo stesso codice e descrizione, ma mai facenti parte dello stesso listino e cioè dello stesso fornitore.

Ora, se io ho una maschera di ricerca, dalla quale voglio, partendo da nome fornitore e codice articolo, ottenere la visualizzazione di descrizione, prezzo etc..., devo fare in modo di filtrare il listino e ovviamente la query dovrebbe ritornare soltanto i valori legati agli articoli di quel particolare fornitore.

Sono già riuscito ad ottenere questo inserendo nel campo criteri della query il numero del fornitore proveniente dalla maschera, ma il problema è che per ogni maschera di ricerca, devo creare un'altra query nel cui campo criteri ci sia indicato il nome del campo di ricerca della maschera stessa. Credo che se riuscissi a fare in modo che da ogni maschera di ricerca presente nel database, si possa passare il valore del fornitore ad una funzione o variabile che poi possa essere a sua volta passata alla query, si possa evitare di dover creare tante query per quante sono le maschere di ricerca.

Spero d'essere stato chiaro.
__________________
Blog Lago Trasimeno
Mancho è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2009, 23:04   #4
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Mancho Guarda i messaggi
Sono già riuscito ad ottenere questo inserendo nel campo criteri della query il numero del fornitore proveniente dalla maschera, ma il problema è che per ogni maschera di ricerca, devo creare un'altra query nel cui campo criteri ci sia indicato il nome del campo di ricerca della maschera stessa.
Ma non sarebbe più semplice creare una sola stored query parametrica ?
Poi, se hai più maschere, ognuna la chiama passando i suoi parametri, ma a livello di DB, la query è sempre una sola...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2009, 17:33   #5
Mancho
Senior Member
 
L'Avatar di Mancho
 
Iscritto dal: Dec 2001
Messaggi: 448
Query parametrica? Cosa diavolo è?

Scusa, ma non sono molto esperto. Potresti illuminarmi?

Grazie ancora!
__________________
Blog Lago Trasimeno
Mancho è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2009, 23:06   #6
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Una Stored Query parametrica in Access è appunto una Query le cui clausole WHERE presuppongono l'input di dati variabili.
Ad es.:

Codice:
SELECT * FROM Tabella WHERE id = [parametro];
In questo modo potrai avere N maschere che utilizzano la stessa unica query ( non una query per maschera ) passando di volta in volta i parametri necessari...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Ripartono le offerte DJI: Neo torna a 14...
ASUS anticipa le schede madri AM5 NEO: d...
La storia di Nikola arriva (davvero?) al...
Top 7 bestseller Amazon: prezzi da svend...
Nuove informazioni sul fallimento del la...
SpaceX: completato parte dell'assemblagg...
Landspace si prepara al secondo lancio d...
Tutti gli sconti Apple su Amazon: tornan...
Altro che entry-level: due smartwatch Am...
Roscosmos ha posticipato (ancora) il lan...
Isar Aerospace si prepara al secondo lan...
Tory Bruno è entrato in Blue Orig...
Fujifilm lancia la cartuccia per archivi...
Dreame H15 Mix: la soluzione 7-in-1 per ...
AirPods Pro 3 in forte sconto su Amazon:...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 09:26.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v