Newsgroup: it.comp.appl.access
Titolo: Presentazione e consiglio in generale

Ciao a tutto il NG,
mi chiamo Davide e ho iniziato a leggere il vostro interessante newsgroup da
poco; ho usato con grande piacere MSAccess fin dalla sua prima versione e in
questi mesi sto finalmente "costruendo" un programma gestionale per il mio
studio dentistico con Access97 (incluso in MS Office97 Professional in
italiano), basandomi sulla lettura di questo manuale:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/office97/ht
ml/whatsnewinmicrosoftaccess97.asp?frame=true
Per quanto riguarda le funzioni che si possono automatizzare, controlli da
attivare/disattivare etc. nel manuale ci sono codici VB molto esplicativi
per la versione inglese e alla fine di ogni capitolo si suggerisce anche
come fare la stessa operazione attraverso le macro. Siccome non ho alcuna
esperienza di programmazione in VB, ho provato a ingegnarmi appunto creando
una lunga serie di macro per ogni singola situazione ma il risultato qualche
volta e' deludente e non riesco a capire dove sta il problema, quando tutto
apparentemente coincide con quanto indicato nel manuale. Vorrei cortesemente
chiedere se:
1) eventuali malfunzionamenti possono essere causati da comandi diversi tra
la versione italiana e quella inglese;
2) e' vero oppure no che macro e codici funzionano con la stessa sicurezza
ed efficienza;
3) magari il problema sono io e non il programma (cosa verosimile e
probabile) ed e' meglio che mi metta a studiare anche il vostro sito comune
per imparare ad usare meglio il mio programma.
Grazie in anticipo a chi vorra' gentilmente rispondere,
Davide

 ha scritto nel messaggio 
news:e4v6g2$epo$1...@newsread.albacom.net...

(quasi) Tutto è possibile; ma non fai prima a descrivere l'ambiente (form, 
tabelle, etc. etc.) e quello che vuoi fare?
Insieme si risolve prima il problema...
Ciao.
-- 
Sergio MAZZA 

 Insieme si risolve prima il problema...
Gentilissimo Sergio,
grazie per la risposta, provo a spiegarti due piccoli malfunzionamenti (che
dipendono probabilmente dalla mia niubbaggine):
- ci sono 3 tabelle:
la tabella "terapia" con 2 campi: descrizione e tariffa
la tabella "preventivo" con: pazienteID (chiave p), preventivoID (chiave p),
data, importo, accettazione (si/no) e note (memo)
la tabella "subpreventivo" (per il dettaglio di ogni singola voce) con:
pazienteID (chiave p), preventivoID (chiave p), subpreventivoID (chiave p),
numero, terapia, oggetto e tariffaunitaria.
Nel Form "preventivo" ci sono ovviamente i campi della tabella "preventivo"
e un subform con i campi della tabella "subpreventivo.
Dopo l'aggiornamento del campo "terapia" nel subform (che e' una casella
combinata che prende le voci dalla tabella "terapia") vorrei inserire
automaticamente il valore della corrispondente "tariffa" nel campo
"tariffaunitaria" del subform e per farlo ho provato invano a usare la
funzione DLookup secondo le indicazioni del manuale.
Per disperazione e provvisoriamente nella proprieta' AfterUpdate del campo
"terapia" lancio una macro che apre una query per tirare fuori il valore che
mi mserve, lo copia, chiude la query e lo incolla nella giusta casella;
funziona ma e' molto rozzo e il flash della query che si apre e si chiude mi
infastidisce molto.
Avrei pensato di mettere un altro subform (nascosto) basato sulla tabella
"terapia" e sincronizzato con il record del "subpreventivo" attraverso
semplici macro, in modo da fare tutto senza aprire e chiudere altri
documenti, credo che funzionera' ugualmente.
Mi chiedo pero' perche' il codice VB indicato nel manuale per DLookup nel
mio database non funziona? In apparenza non sembrerebbe una faccenda cosi'
complicata.
- il secondo malfunzionamento riguarda forse la funzione OnCurrent di un
form; vorrei disabilitare alcuni Command Button quando non sono visualizzati
record nel form, per evitare messaggi di errore o operazioni impossibili (ad
esempio "apri scheda anagrafica" quando non c'e' nessun paziente
visualizzato); per far questo sempre seguendo il manuale ho associato alla
funzione OnCurrent del form una macro con condizioni del tipo:
[PazienteID] Is Null   ->    Imposta a Falso il Valore
[Forms]![F0]![anagrafica].[Abilitato] dove [anagrafica] e' il bottone che
apre il form corrispondente;
nella riga sottostante senza condizioni ne' puntini di sospensione la macro
imposta su Vero la stessa proprieta'.
Il problema sta nel fatto che quando apro il form la prima volta e non c'e'
nessun paziente visualizzato i bottoni in oggetto sono disabilitati; quando
cerco e visualizzo il primo paziente, si abilitano e tutto va bene; se poi
di nuovo provo a cercare un paziente che non c'e' e il form non visualizza
nessun record i bottoni rimangono abilitati, come se la funzione SuCorrente
non venisse richiamata.
Se hai avuto la pazienza di arrivare fino alla fine di questo pippone, ti
ringrazio ancora solo per questo    :-)    e ti saro' ancora piu' grato se
avrai qualche suggerimento da darmi. Per il resto trovo che Access sia il
piu' bel programma del mondo dopo lo strip-poker di Playboy!
:-) dal Cava

 :-) dal Cava
Certo che fa un po' impressione come firma "il Cava"... Brrr...
Ciao.
-- 
Sergio MAZZA 

 Certo che fa un po' impressione come firma "il Cava"... Brrr...
In effetti e' un po' lugubre come nick "il Cava(denti)" ma sono passati
alcuni anni da quando me l'hanno appiccicato, ormai me lo sento addosso come
la pelle.
:-) dal Cava

 :-) dal Cava
Comunque; se vuoi, descrivi (in un nuovo messaggio) quello che vuoi 
fare/ottenere in modo dettagliato e vediamo che esce fuori...
Ciao.
-- 
Sergio MAZZA 

 vuoi fare/ottenere in modo dettagliato e vediamo che esce fuori...
Grazie, se non riesco a risolvere, scrivero' di nuovo ma non vorrei sembrare
quello che arriva e cerca la pappa pronta, anche perche' il mio database non
e' niente di particolare. Con i tuoi consigli credo di aver capito la strada
giusta e mi sto anche divertendo a lurkare e leggere il sito comune.
Visto che siete tutti cosi' gentili e disponibili: se mettessi in rete il
mio database (adesso vuoto pesa 7 MB), non appena sara' guardabile, ci
sarebbe per caso qualcuno tanto curioso da fare qualche test alla ricerca di
errori o inghippi?
Un saluto e ancora grazie,
Davide

 Davide
Di nulla e buon lavoro.
Ciao.
-- 
Sergio MAZZA 

 Mars Express (che non č la versione ridotta della famosa merendina).
;<)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
--
ac