title: Gestione DB in rete

author: lna

text:
Egregi ragazzi,
c'è qualcuno che gentilmente mi può suggerire come gestire un database in
rete, mi spiego: ho creato un tool stand alone (all'interno ci sono tutti
gli oggetti di un database: tabelle, maschere, query, macro, moduli) ed ora
nasce la necessità di gestirlo in rete con accesso da parte di diversi
utenti.
Vi ringrazio in anticipo del vostro prezioso aiuto e vi saluto.
Lna
--------------------------------
Inviato via
http://usenet.libero.it


title: Gestione DB in rete

author: Alessandro Cara

text:
lna wrote:
>
> Egregi ragazzi,
> c'è qualcuno che gentilmente mi può suggerire come gestire un database in
> rete, mi spiego: ho creato un tool stand alone (all'interno ci sono tutti
> gli oggetti di un database: tabelle, maschere, query, macro, moduli) ed ora
> nasce la necessità di gestirlo in rete con accesso da parte di diversi
> utenti.
> Vi ringrazio in anticipo del vostro prezioso aiuto e vi saluto.
> Lna
un doppio click sull'icona xxx.mdb?
Sarebbe cmq il caso di dividerlo BE / FE
--
a.cara


title: casella di testo con recordset

author: stefano

text:
in una form ho una casella combinata con i codici di tutte le macchine...In
base alla scelta che faccio sulla casella combinata devo trovare la
scheda(sulla tabella "Macchina") corrispondente e visualizzarla in una
casella di testo....mi sembrava facile...invece indipendentemente dal tipo
di macchina che scelgo la scheda è sempre la stessa in tutti i casi al di
fuori della prima scheda in cui mi visualizza la scheda corretta....nn
riesco a capirne il motivo...
questo è il codice:
Private Sub CasellaCombinata0_AfterUpdate()
Dim dbs As Database
Set dbs = CurrentDb
Dim r As Recordset
Set r = dbs.OpenRecordset("Macchina")
Do
    ' se il codice macchina del record corrisponde al codice
    ' macchina inserito nella casella combinata esci....
    If r.Fields(0) = CasellaCombinata0 Then
        Exit Do
    Else
        r.MoveNext
    End If
Loop Until Not r.EOF
' assegno il codice scheda alla casella
Me!testo101 = r.Fields(1) 'il codice scheda è il 2°campo
r.Close
End Sub
--------------------------------
Inviato via
http://arianna.libero.it/usenet/


title: casella di testo con recordset

author: Roberto da casa

text:
"stefano" <
steg...@libero.it
> ha scritto nel messaggio
news:62Z110Z72Z86Y1...@usenet.libero.it...

Onestamente mi sembra che la stai facendo troppo complicata: per rosovere il
tuo problema è sufficiente fare in modo che CasellaCombinata0 abbia 2
colonne: quella da visualizzare sulla casella combinata e quella relativa al
dato che vuoi visualizzare nella casella di testo; a questo punto a fronte
dell'evento "Dopo aggiornamento" della casella combinata genera
semplicemente:
Private Sub CasellaCombinata0_AfterUpdate()
Me!testo101 = Me!CasellaCombinata0.Column(1)
End Sub
Per maggiori dettagli leggiti sull'help l'argomento Proprietà Column.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: PROBLEMA SU GESTIONE STAMPA

author: MICHELE

text:
Salve,
stampo delle etichette su una stampante termica da Access.
Questa  ogni tanto dà problemi.
Ho notato un sensibile miglioramento se mando  alla stampante una
etichetta alla volta e non 100 etichette insieme. Dopo agni stampa
aspetto 2 secondi..
Prima di lanciare la stampa vorrei verificare che la coda di stampa
sia libera, se non è libera aspetto altri due secondi.
Dato il nome di una stampante:
strPrinter = Application.Printer.DeviceName
Come posso vedere se ci sono stampe in corso?
Grazie per l'attenzione.


title: PROBLEMA SU GESTIONE STAMPA

author: almorel

text:

Ciao,
scusa ma che stampante hai? E che problemi hai ?
Ho lavorato con delle Intermech e con Zebra (a trasferimento termico)
ma non mai avuto problemi del genere.
In particolare una Intermech stampa etichette per barattoli di
inchiostro da stampa ed un lotto di lavorazione può avere anche
300-400 barattoli che stampo in una sola botta.
Credo che sarebbe meglio verificare il problema alla fonte che alla
fine ... Driver di stampa, settaggio della stampante ...
Ciao
Alberto


title: maschera in avvio automatico va in codice Form_Load

author: pfm

text:
salve

ho una un mdb in 2010 con una maschera attivata all'avvio.

non so cosa e capitato, ma ora aprendo il database si apre la maschera ma subito va in dabug sul form_load

(freccia gialla)

se invece non faccio partire in esecuzione automatica tutto ok

Come posso fare?

Grazie anticipatamente


author: Karl Donaubauer

text:
Salve,

Pfm ha scritto:

Controllare/debuggare cosa fa il codice evidenziato?

--
Ciao
Karl
*********
http://www.AccessDevCon.com

Access FAQ:
http://www.donkarl.com/it


text: Grazie del messaggio quello che mi fa strano è che premendo F8 non trovo nessun errore e se chiudo la maschera e l'avvio non in automatico si avvia normalmente


text: Ho anche provato a compilare nell'editor di VBA ma non mi dà nessun errore


author: GiorgioDaPrato

text:
Il giorno mercoledì 24 maggio 2017 11:50:11 UTC+2, pfm ha scritto:
> Ho anche provato a compilare nell'editor di VBA ma non mi dà nessun errore

evidenzio subito che la mia NON è una risposta,
anzi dopo tanto tempo mi è ancora rimasta QUESTA curiosità
(e questa evidente lacuna) per cui la faccio presente:

MA SI PUO' DAVVERO PARLARE DI MDB ACCESS 2010 ???
(ESISTE DAVVERO questa combinazione ???)

E, per il caso in questione:
hai guardato anche i riferimenti ?
nella form iniziale ci sono controlli (textbox) con formule o funzioni come origine dati ? (es: funzioni di dominio, funzioni personalizzate ...)
nella form iniziale è attivato un evento timer ?


text:
Grazie del messaggio non capisco la domanda se esiste ancora MDB Access 2010

 ho risolto il problema stranamente anche perché nel compilatore né il debugger mi davano dei problemi punto sono andato nei riferimenti e ho nient'altro che cliccato ok e tutto ha ripreso a funzionare


text:
Il giorno mercoledì 24 maggio 2017 14:10:53 UTC+2, pfm ha scritto:
> Grazie del messaggio non capisco la domanda se esiste ancora MDB Access 2010
>
>  ho risolto il problema stranamente anche perché nel compilatore né il debugger mi davano dei problemi punto sono andato nei riferimenti e ho nient'altro che cliccato ok e tutto ha ripreso a funzionare

Io sono rimasto alle versioni 2000 e 2003 e noto questo:

SE vengono tenute nei loro PROPRI ambienti di sviluppo in genere continuano a funzionare bene (adopero poi il runtime 2007)

SE le maneggio con una versione successiva (ho solo la 2013) succede anche a me qualche inghippo come quello da te descritto,
per cui la mia PERSONALE opinione è che, di fatto, gli ambienti di sviluppo superiori ad Access 2007 non generino dei "buoni" file mdb mantenendo dei riferimenti interni a componenti che il sistema ha difficoltà a ricondurre alle versioni precedenti


text:
sono pienamente d'accordo, ma devo tenere conto che non sempre conosco a priori il tipo di Access che lo digerirà

in effetti avevo iniziato a scrivere con il 2003 ma poi il cliente ha 2010!!



title: locking personalizzato

author: Mangini

text:
Ho creato un sistema di locking per una tabella documenti.
I client che leggono un documento inseriscono in un attributo della tabella
documenti il loro nome.
Ggli altri client quando leggono il documento si accorgono che c'è un altro
utente quindi che possiede quel documento e capiscono che il documento è in
sola lettura.
Attualmente però se il documento viene sbloccato non accade niente, cioè gli
utenti bloccati devono provare a rileggere il documento per capire che sono
stati sbloccati.
Ho pensato che avrei potuto rileggere periodicamente il documento dagli
utenti bloccati ma mi sembra troppo oneroso in termini di banda.
Non c'è una soluzione efficiente?


title: locking personalizzato

author: MA

text:
"Mangini" <t.ma...@LEVAtiscali.it> ha scritto
nel messaggio
news:ch4l3b$5po$1...@lacerta.tiscalinet.it...

 Chiunque è in lettura apre il record in maschera
singola??
private sub Fom_load()
me.InLettura = -1
end sub
Privatesub form_unLoad()
me.InLettura = 0
end sub
Massimialino


title: locking personalizzato

author: namor

text:
Mangini ha scritto:

Il primo che visualizza un 'documento' (un record della tabella) sul suo
schermo deve consentire agli altri di leggerlo ma impedire di modificarlo?
O è il primo che inizia a modificare un record che deve impedire agli
altri di modificarlo a loro volta?
Namor
--
namor at inwind punto it
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: locking personalizzato

text:
> Mangini ha scritto:
>
> > Ho creato un sistema di locking per una tabella documenti.
> > I client che leggono un documento inseriscono in un attributo della
tabella
> > documenti il loro nome.
> > Ggli altri client quando leggono il documento si accorgono che c'è un
altro
> > utente quindi che possiede quel documento e capiscono che il documento è
in
> > sola lettura.
> > Attualmente però se il documento viene sbloccato non accade niente, cioè
gli
> > utenti bloccati devono provare a rileggere il documento per capire che
sono
> > stati sbloccati.
> > Ho pensato che avrei potuto rileggere periodicamente il documento dagli
> > utenti bloccati ma mi sembra troppo oneroso in termini di banda.
> > Non c'è una soluzione efficiente?
>
> Il primo che visualizza un 'documento' (un record della tabella) sul suo
> schermo deve consentire agli altri di leggerlo ma impedire di modificarlo?
si, attualmente funziona così.
> O è il primo che inizia a modificare un record che deve impedire agli
> altri di modificarlo a loro volta?
no, naturalmente sarebbe meglio, ma mi basta quello che hai detto sopra,
però in modo più efficiente che ripetere ciclicamente la lettura usando
form_timer.
io mi aspettavo una gestione ad eventi per queste cose ma non c'è.
Se facessi la lettura ciclica dovrei cercare di essere efficiente il più
possibile, ma penso sia meglio che l'utente pigi un pulsante rileggi
documento.


title: locking personalizzato

text:
Mangini ha scritto:
> > Mangini ha scritto:


> si, attualmente funziona così.


E invece è molto più facile il secondo perchè Access lo gestisce
nativamente. Da Access 2000 in poi è disponibile il blocco a livello di
record e non più solo a livello di pagina.
Vai su Strumenti/Opzioni, scheda Avanzate e attiva "Apri database
utilizzando blocco a livello di record". Poi nelle proprietà della
maschera nella scheda Dati imposta "Blocco record" a "Record modificati",
poi premi F1 e leggiti l'help. Chiudi e riapri il database.
Adesso se più utenti accedono allo stesso record, il primo che inizia a
modificarlo lo blocca e gli altri vedranno un simbolo di "divieto" sul
selettore record ad indicare che quel record è in fase di modifica da
qualcun'altro. Quando finisce di modificarlo e lo salva il blocco viene
rilasciato, e i dati dovrebbero aggiornarsi in automatico sugli schermi
degli altri utenti.
Fai qualche prova. Non ti serve nemmeno lavorare in rete, basta aprire due
o tre volte lo stesso db sul tuo PC.



title: locking personalizzato

text:
> E invece è molto più facile il secondo perchè Access lo gestisce
> nativamente. Da Access 2000 in poi è disponibile il blocco a livello di
> record e non più solo a livello di pagina.
> Vai su Strumenti/Opzioni, scheda Avanzate e attiva "Apri database
> utilizzando blocco a livello di record". Poi nelle proprietà della
> maschera nella scheda Dati imposta "Blocco record" a "Record modificati",
> poi premi F1 e leggiti l'help. Chiudi e riapri il database.
> Adesso se più utenti accedono allo stesso record, il primo che inizia a
> modificarlo lo blocca e gli altri vedranno un simbolo di "divieto" sul
> selettore record ad indicare che quel record è in fase di modifica da
> qualcun'altro. Quando finisce di modificarlo e lo salva il blocco viene
> rilasciato, e i dati dovrebbero aggiornarsi in automatico sugli schermi
> degli altri utenti.
> Fai qualche prova. Non ti serve nemmeno lavorare in rete, basta aprire due
> o tre volte lo stesso db sul tuo PC.
> Namor
ti ringrazio ma già lo sapevo e non ho usato quel tipo di blocco perché non
andava bene nel mio caso che non ho spiegato in tutti i dettagli.
allora ti spiego che il documento è una fattura e che devo bloccare anche le
righe quando blocco una fattura, cosa che secondo me con i tipi di blocco
che access gestisce automaticamente non si può fare in modo "nativo" perché
le righe sono in un'altra tabella.
ci sono altre motivazioni per cui non mi andava bene il blocco di access, ad
esempio io dico chi è l'utente che ha bloccato la fattura,ecc.


title: locking personalizzato

text:
Mangini ha scritto:


So che in Access XP sono stati introdotti nuovi eventi, chissà se ce n'è
uno per questa esigenza? Un evento che ti dica quando il record è dirty su
un'altra macchina ti consentirebbe di bloccare anche la sottomaschera.
Il metodo che usi va bene, può funzionare, l'ho usato anch'io una volta.
Puoi fare una function Blocca(ID, nome) che richiami sull'evento current
della maschera. La function si incarica di bloccare il record se lo trova
libero, o di mettere maschera e sottomaschera in sola lettura magari
rendendo visibile un'etichetta di avviso che dice chi sta usando il
record. Per sapere quando il record si libera puoi continuare a richiamare
la function blocca sull'evento timer ogni 1-2 secondi o più.
Sorgono dei problemi: se un utente apre un record e poi va via lasciando
il PC, quel record sarà bloccato per ore. Io avevo previsto un autoclose
della maschera se non utilizzata per più di un certo tempo. O puoi
lasciare le maschere sempre bloccate e consentire la modifica solo quando
si preme un pulsante "Modifica". Ciò ti consente di bloccare i record
quando qualcuno richiede di modificarli e non quando li vuole solo
visualizzare.
Altro problema è il modo di fare il test per vedere se il record è libero.
Come lo fai?
Altro ancora è un eventuale crash dell'applicazione, che lascerebbe il
record bloccato anche se nessuno più lo sta usando. In questo caso devi
prevedere una procedura per forzare lo sblocco, magari registrando la
forzatura in un file di log.



title: locking personalizzato

text:
> > ti ringrazio ma già lo sapevo e non ho usato quel tipo di blocco perché
non
> > andava bene nel mio caso che non ho spiegato in tutti i dettagli.
> > allora ti spiego che il documento è una fattura e che devo bloccare
anche le
> > righe quando blocco una fattura, cosa che secondo me con i tipi di
blocco
> > che access gestisce automaticamente non si può fare in modo "nativo"
perché
> > le righe sono in un'altra tabella.
> > ci sono altre motivazioni per cui non mi andava bene il blocco di
access, ad
> > esempio io dico chi è l'utente che ha bloccato la fattura,ecc.
>
> Il metodo che usi va bene, può funzionare, l'ho usato anch'io una volta.
> Puoi fare una function Blocca(ID, nome) che richiami sull'evento current
> della maschera. La function si incarica di bloccare il record se lo trova
> libero, o di mettere maschera e sottomaschera in sola lettura magari
> rendendo visibile un'etichetta di avviso che dice chi sta usando il
> record. Per sapere quando il record si libera puoi continuare a richiamare
> la function blocca sull'evento timer ogni 1-2 secondi o più.
non è troppo oneroso in termini di banda rileggere ogni 2 secondi?
Penso sia meglio mettere un pulsante per rileggere il documento (che
potrebbe essere stato sbloccato).
> Sorgono dei problemi: se un utente apre un record e poi va via lasciando
> il PC, quel record sarà bloccato per ore. Io avevo previsto un autoclose
purtropppo è vero, però il programma funziona in rete locale, dato che c'è
il nome utente si può sapere chi ha bloccato il documento e andare
fisicamente al computer oppure telefonare.
> Altro problema è il modo di fare il test per vedere se il record è libero.
> Come lo fai?
ho detto che uso il nome utente come marca per indicare se il documento è
bloccato o no.
gli altri "oggetti" in relazione col documento sono accessibili sono da quel
documento, quindi possono essere bloccati solo insieme a lui.


title: locking personalizzato

text:
"Mangini" <t.ma...@LEVAtiscali.it> ha scritto nel messaggio
news:ch7d4q$gtq$1...@lacerta.tiscalinet.it...



No, un refresh ogni 2 secondi o anche ogni 1 non è per niente pesante. Da
recenti discussioni e ricerche sembra sia emerso che Access pur lavorando in
modalità file-server non trasferisca sempre l'intera tabella per eseguire le
query ma ottimizzi la ricerca in base agli indici. Se l'IDfattura è chiave
primaria, quindi con un indice univoco associato, una query tipo SELECT
utente FROM fatture WHERE ID=...; dovrebbe trasferire in rete pochissimi
dati perchè una volta letto l'indice può recuperare esattamente il singolo
record interessato senza dover leggere tutta la tabella.
E comunque la rilettura ogni N secondi si verifica solo quando due utenti
tentano di accedere in modifica allo stesso record.
> > Sorgono dei problemi: se un utente apre un record e poi va via lasciando
> > il PC, quel record sarà bloccato per ore. Io avevo previsto un autoclose
> purtropppo è vero, però il programma funziona in rete locale, dato che c'è
> il nome utente si può sapere chi ha bloccato il documento e andare
> fisicamente al computer oppure telefonare.
Soluzione spartana ma efficace e facile da implementare. Poi potrai
eventualmente trovare altre soluzioni in futuro.
> > Altro problema è il modo di fare il test per vedere se il record è
libero.
> > Come lo fai?
> ho detto che uso il nome utente come marca per indicare se il documento è
> bloccato o no.
> gli altri "oggetti" in relazione col documento sono accessibili sono da
quel
> documento, quindi possono essere bloccati solo insieme a lui.
Intendevo proprio come funziona il codice che controlla se il record è
libero ed eventualmente lo blocca.
Se è una cosa in due tempi del tipo:
  1. leggi il campo "blocco" del record
  2. scrivi il nome utente nel campo
è soggetto al vecchio problema del test&set in multiutenza che si verifica
quando due utenti accedono quasi contemporaneamente allo stesso record:
L'utente A legge il campo "blocco" del record e lo trova libero.
Nel frattempo l'utente B legge il campo, dopo A ma prima che A abbia salvato
il suo nome.
B trova il record libero perchè A non ha ancora salvato il suo nome.
A salva il suo nome.
B salva il suo nome sovrascrivendo A.
Hai due utenti in modifica contemporanea sullo stesso record.
Namor


title: locking personalizzato

text:
>"namor" <
do...@spam.me
> ha scritto
>> "Mangini" <t.ma...@LEVAtiscali.it> ha scritto nel messaggio
> No, un refresh ogni 2 secondi o anche ogni 1 non è per niente pesante. Da
> recenti discussioni e ricerche sembra sia emerso che Access pur lavorando
in
> modalità file-server non trasferisca sempre l'intera tabella per eseguire
le
> query ma ottimizzi la ricerca in base agli indici. Se l'IDfattura è chiave
> primaria, quindi con un indice univoco associato, una query tipo SELECT
> utente FROM fatture WHERE ID=...; dovrebbe trasferire in rete pochissimi
> dati perchè una volta letto l'indice può recuperare esattamente il singolo
> record interessato senza dover leggere tutta la tabella.
Dove trovo maggiori informazioni di questo tipo?
Io ho un recordset memorizzato in una variabile globale e faccio il requery.
Il recordset contiene una select di tutta la tabella documenti.
Col requery viene trasferito solo il record corrente del recordset o tutta
la tabella?
> Intendevo proprio come funziona il codice che controlla se il record è
> libero ed eventualmente lo blocca.
> Se è una cosa in due tempi del tipo:
>   1. leggi il campo "blocco" del record
>   2. scrivi il nome utente nel campo
> è soggetto al vecchio problema del test&set in multiutenza che si verifica
> quando due utenti accedono quasi contemporaneamente allo stesso record:
>
> L'utente A legge il campo "blocco" del record e lo trova libero.
> Nel frattempo l'utente B legge il campo, dopo A ma prima che A abbia
salvato
> il suo nome.
> B trova il record libero perchè A non ha ancora salvato il suo nome.
> A salva il suo nome.
> B salva il suo nome sovrascrivendo A.
> Hai due utenti in modifica contemporanea sullo stesso record.
Ci sarebbe voluta una transazione isolata, cosa che in access non c'è,
nonostante esista la proprietà "isolateODBCtrans".
comunque quello che dici lo evito perché appena l'utente apre il documento
in lettura io (A) apro il recordset in modalità pessimistic e faccio .edit
(dao)  nonostante voglia solo leggere il campo "blocco" del record.
Quindi anche se A non ha ancora scritto la marca, ha comunque bloccato il
record.
Naturale che B esegue lo stesso codice di A.


title: locking personalizzato

text:
Mangini ha scritto:
> >"namor" <
do...@spam.me
> ha scritto
> >> "Mangini" <t.ma...@LEVAtiscali.it> ha scritto nel messaggio
> > No, un refresh ogni 2 secondi o anche ogni 1 non è per niente pesante. Da
> > recenti discussioni e ricerche sembra sia emerso che Access pur lavorando
> in
> > modalità file-server non trasferisca sempre l'intera tabella per eseguire
> le
> > query ma ottimizzi la ricerca in base agli indici. Se l'IDfattura è chiave
> > primaria, quindi con un indice univoco associato, una query tipo SELECT
> > utente FROM fatture WHERE ID=...; dovrebbe trasferire in rete pochissimi
> > dati perchè una volta letto l'indice può recuperare esattamente il singolo
> > record interessato senza dover leggere tutta la tabella.
> Dove trovo maggiori informazioni di questo tipo?
> Io ho un recordset memorizzato in una variabile globale e faccio il requery.
> Il recordset contiene una select di tutta la tabella documenti.
> Col requery viene trasferito solo il record corrente del recordset o tutta
> la tabella?
Non lo so e non credo che si trovi in giro niente di esplicito. Solo
deduzioni ricavate da test effettuati misurando il numero di byte
trasferiti in rete durante l'esecuzione delle query.
> > Intendevo proprio come funziona il codice che controlla se il record è
> > libero ed eventualmente lo blocca.
> > Se è una cosa in due tempi del tipo:
> >   1. leggi il campo "blocco" del record
> >   2. scrivi il nome utente nel campo
> > è soggetto al vecchio problema del test&set in multiutenza che si verifica
> > quando due utenti accedono quasi contemporaneamente allo stesso record:
> >
> > L'utente A legge il campo "blocco" del record e lo trova libero.
> > Nel frattempo l'utente B legge il campo, dopo A ma prima che A abbia
> salvato
> > il suo nome.
> > B trova il record libero perchè A non ha ancora salvato il suo nome.
> > A salva il suo nome.
> > B salva il suo nome sovrascrivendo A.
> > Hai due utenti in modifica contemporanea sullo stesso record.
> Ci sarebbe voluta una transazione isolata, cosa che in access non c'è,
> nonostante esista la proprietà "isolateODBCtrans".
> comunque quello che dici lo evito perché appena l'utente apre il documento
> in lettura io (A) apro il recordset in modalità pessimistic e faccio .edit
> (dao)  nonostante voglia solo leggere il campo "blocco" del record.
> Quindi anche se A non ha ancora scritto la marca, ha comunque bloccato il
> record.
> Naturale che B esegue lo stesso codice di A.
Si, può andare se gli aggiungi una gestione degli errori, perchè il
problema della lettura contemporanea rimane, entrambi potrebbero leggere
assieme e credere che il record è libero, ma quando il secondo tenterà di
fare il .edit sarà generato un errore.
Altro metodo potrebbe essere una query
UPDATE tabella SET blocco=nome WHERE ID=... and blocco is null;
Se blocco è vuoto lo imposta altrimenti no.
Se la esegui da DAO hai la possibilità di testare la proprietà
recordsaffected per vedere se il record era libero o no.
In vba con un'unica riga (qry.execute) viene fatto sia il test che la
scrittura del nome. Non so poi come si comporta Jet nell'esecuzione della
query, se spezza in due tempi test/scrittura e se possa dare o meno lo
stesso problema. Non credo che troverai in rete dettagli sul funzionamento
interno di Jet nè di Access quindi con questo metodo non ci sarà mai la
certezza assoluta di un corretto funzionamento.
dim qry as querydef
set qry=...
qry.execute
if qry.recordsaffected>0 then
  'ha bloccato il record
else
  'non ha bloccato il record
end if



title: campo di tabella riesce ad assumere diversi valori?

text:
Ciao a tutti ho una tabella di clienti identificati da un valore
incrementale-> chiave primaria. Decido di mandare un mail a ciascuno di
essi. Voglio registrare in un record di un'altra tabella il fatto di
aver inviato un mail a ciascuno. un campo di questa tabella deve
contenere tutti gli ID dei clienti a cui ho mandato un mail. Come devo
definire un campo di questo genere?  grazie


text:
<
pico...@excite.it
> ha scritto nel messaggio
news:arabhl$4hu$1...@gossip.excite.it...

Sempre che 64KB ti bastino, prova con un campo di tipo Memo.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: dlookup con apostrofo

author: dark

text:
ciao
dlookup("nomecampo","tabella","nomecampo='" & casella.value & "'" )
questa non funziona se casella.value ha dentro un apostrofo, in quanto '
e' un delimitatore di stringa.
cìe un modo per aggirare il problema e' devo  impedire che ci siano
apostrofi in tabella?
ciao
thx


title: dlookup con apostrofo

author: ALESSANDRO Baraldi

text:
"dark" <
d...@aa.com
> ha scritto nel messaggio
news:bsOkd.310355$35.14...@news4.tin.it...

Forse è faticoso..... ma questo POST è trattato mediamente 1 volta
a settimana e magari cercandolo avresti trovato tutto....!!
[DATA]                martedì 9 novembre 2004 19.34
[Oggetto Post]        Apici doppi apici e tripli apici
Ciao
--
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.mantuanet.it/alessandro.baraldi/
---------------------------------------------------------------------------


title: Nuovo record sottomaschera

author: Steve

text:
Ciao a tutti
ho un problema con una sottomaschera in modalità foglio dati, mi mostra solo
una riga e una volta compilata non mi va al nuovo record, eppure la
proprietà consenti aggiunte della sottomaschera è impostata a si.
Suggerimenti?
Ciao
Steve


title: Nuovo record sottomaschera

text:
"Steve" <
st...@serviziassociati.it
> ha scritto nel messaggio
news:9ftfqn$qke$1...@serv1.iunet.it...

Chissà, forse basta che aumenti l'altezza del controllo sottomaschera e vedi
anche gli altri record della sottomaschera. ;-)
Per avere maggiori possibilita di manovra, ti consiglio di dare alla
sottomaschera la visualizzazione a Maschere continue anzichè la
visualizzazione Foglio Dati.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Nuovo record sottomaschera

author: STEVE

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:wxtU6.7184$fG4.2...@news.infostrada.it...
>
> "Steve" <
st...@serviziassociati.it
> ha scritto nel messaggio
> news:9ftfqn$qke$1...@serv1.iunet.it...
> > Ciao a tutti
> >
> > ho un problema con una sottomaschera in modalità foglio dati, mi mostra
> solo
> > una riga e una volta compilata non mi va al nuovo record, eppure la
> > proprietà consenti aggiunte della sottomaschera è impostata a si.
> >
> > Suggerimenti?
> >
> > Ciao
> >
> > Steve
> >
>
> Chissà, forse basta che aumenti l'altezza del controllo sottomaschera e
vedi
> anche gli altri record della sottomaschera. ;-)
> Per avere maggiori possibilita di manovra, ti consiglio di dare alla
> sottomaschera la visualizzazione a Maschere continue anzichè la
> visualizzazione Foglio Dati.
>
> --
> Roberto
proverò a utilizzare le maschere continue, per l'altezza è già sufficiente
ora, infatti ho una casella combinata non associata che mi permette tramite
una procedura messa nell'evento dopo aggiornamento dello stesso controllo di
riempire alcuni campi, ebbene finita la procedura la sottomaschera mi
visualizza il nuovo record, se invece inserisco un valore non compreso nella
casella combinata e lo gestisco con l'evento non in lista il nuovo record
non vuole saperne di presentarsi
Ciao
Grazie


title: Nuovo record sottomaschera

text:
"STEVE" <
ST...@SERVIZIASSOCIATI.IT
> ha scritto nel messaggio
news:9fts7a$t5$1...@serv1.iunet.it...

Prova, dopo l'inserimento del nuovo record, a fare un Requery della casella
combinata.



title: Nuovo record sottomaschera

text:
cut

Grazie sei magico ho risolto facendo una requery della sottomaschera
Ciao
Grazie


title: esiste un databaase con le regioni d'Italia?

text: scaricabile in qualche sito? grazie.


author: AEOM

text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:bkep1v$f5$2...@lacerta.tiscalinet.it...
> scaricabile in qualche sito? grazie.
>
>
delle regioni?
ciao,
AEOM


author: Sergio

text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:bkep1v$f5$2...@lacerta.tiscalinet.it...
> scaricabile in qualche sito? grazie.
>
eccolo qua:
piemonte
valle d'aosta
lombardia
veneto
trentino alto adige
friuli venezia giulia
liguria
emilia romagna
toscana
marche
lazio
umbria
abruzzo
molise
campania
basilicata
puglia
calabria
sicilia
sardegna


author: ciroteo

text:
"Sergio" <
ser...@libero.it
> ha scritto nel messaggio
news:Q6Cab.119564$R32.3...@news2.tin.it...

esiste un database con i nomi dei sette nani?
>


text:
> >
> esiste un database con i nomi dei sette nani?
> >
hoooooo sempre pronti a ironizzare, be dai non sono poche le regioni, che
poi sergio abbia avuto tempo e voglia di scriverle è un altro conto no?
visto che ci siete sapete se esiste un database che contiene tutti gli stati
possibili della logica binaria?
;)
Grazie.


text:
> eccolo qua:
>
> piemonte
> valle d'aosta
> lombardia
> veneto
> trentino alto adige
> friuli venezia giulia
> liguria
> emilia romagna
> toscana
> marche
> lazio
> umbria
> abruzzo
> molise
> campania
> basilicata
> puglia
> calabria
> sicilia
> sardegna
>
Ma la vuoi finire di servire tutta la pappa già pronta!!!
Gli hai evitato giorni e giorni di ricerca e digitazione. E in più poi
queste sono notizie riservate.
A proposito tu come le hai avute???
Se mi fai arrabbiare spiffero anch'io tutto e gli dico quali sono i
continenti...
Oppure i nomi dei Beatles
O ancora com'erano fatte le case dei 3 porcellini
O ancora i colori di una tastiera di un pianoforte
O ancora, i nomi dei partecipanti a questo Ng  che sono andati negli Emirati
Arabi... per lavoro...
Ma ce la farà la sua inbox a contenere database così corposi!!!
MAssimiliano


author: Alessandro Cara

text:

com'era quella? ".....le persone si dividono in 10 classi. Quelli che
comprendono il binario e *quelli che non*...."
--
a.cara
Togli qualcosa dall'email


text:
ciroteo wrote:
>
[cut]
> esiste un database con i nomi dei sette nani?
otto. Ultimamente se ne e' aggiunto un altro "Ridicolo"
(ogni riferimento a persone o cose e' voluto. Chissa' se mi cita per 15Milioni
di "Euri")



author: Alessandro Baraldi

text:
"Simba883" <
simb...@libero.it
> wrote in message
news:bkevks$4ia$
1...@lacerta.tiscalinet.it

Bene, logica binaria ad 1 bit:
1
0
Ca..zo ma te le cerchi.........!!!
@Alex.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


text:
"Alessandro Cara" <
alexqu...@blunet.it
> wrote in message
news:3F6B3D71...@blunet.it

Ma non era BISOLO....!



text:
"MA" <
keiko...@libero.it
> wrote in message
news:7sDab.41001$
w8....@news.edisontel.com
> > eccolo qua:
[CUT]
>
> Ma la vuoi finire di servire tutta la pappa già pronta!!!
> Gli hai evitato giorni e giorni di ricerca e digitazione. E in più poi
> queste sono notizie riservate.
> A proposito tu come le hai avute???
> Se mi fai arrabbiare spiffero anch'io tutto e gli dico quali sono i
> continenti...
> Oppure i nomi dei Beatles
> O ancora com'erano fatte le case dei 3 porcellini
> O ancora i colori di una tastiera di un pianoforte
> O ancora, i nomi dei partecipanti a questo Ng  che sono andati negli Emirati
> Arabi... per lavoro...
> Ma ce la farà la sua inbox a contenere database così corposi!!!
> MAssimiliano
Visto che siamo in tema di RIVELAZIONI....!
Chi sà dove posso scaricare il Database
dei giorni della settimana e dei mesi dell'anno....???
Ne ho sentito parlare, ma non ho li ho trovati....!
;-)



author: Colink®

text:
Non vorrei chiedervi troppo ma nessuno ha un database con tutte le regioni,
i comuni, le vie, i numeri civici e gli abitanti d'Italia?
Holla
Colink


text:
"ColinkŽ" wrote:
>
> Non vorrei chiedervi troppo ma nessuno ha un database con tutte le regioni,
> i comuni, le vie, i numeri civici e gli abitanti d'Italia?
Prova a chiedere alla CIA, il ministero delle finanze no di certo e tantomeno
l'istat



text:
>
>
> Bene, logica binaria ad 1 bit:
> 1
> 0
>
> Ca..zo ma te le cerchi.........!!!
>
> @Alex.
>
>
guarda che scherzavo


title: Richiesta di aiuto.

author: Lbo dal portatile

text:
>""Visualizzami i record tra la data del 01/12/99 e il 31/12/99 della Societą
>Bianchi".
>Ora, sebbene io riesca ad eseguire questa query impostando i criteri nella
>struttura della stessa, vorrei ricreare tutto ciņ all'interno di una
>maschera dedicata.
comincia a studiarti un po' di sql e cerca, magari con dejanews,
qualche messaggio su questo ng o su it.comp.database.access (adesso
non esiste piu', ma nell'archivio di deja dovrebbe esserci) che
parlano di sql dinamico.
mo' vedo di mandarti un esempietto, pero' se non ti studi l'sql e le
sue norme ti serve a poco.


title: Sottomaschera : Assegnare un Valore ad un campo

author: Mar&mar

text:
Salve a tutti, in  primis vorrei ringraziare "Roberto da Casa" x i suoi
preziosi suggerimenti, poi tutti quelli che in un modo o nell' altro stanno
contribuendo ad" ampliare" un po' le mie conoscenze su Access.
Ma bando alle ciance, espongo il problema.
Avrei la necessita' di dover assegnare un valore in un campo di una
sottomaschera, possibilmente via VB, soltanto se ci provo dalla maschera
principale mi dice che l'oggetto non è attivo e quindi mi va in debug.
Domanda:
Come si assegna un valore ad un campo in una sottomaschera in funzione di un
altro valore inserito nella maschera Principale?
Grazie in anticipo.


author: Roberto da casa

text:
"Mar&mar" <
pr...@prova.it
> ha scritto nel messaggio
news:ss07a.236672$0v.66...@news1.tin.it...

Innanzitutto in una maschera (quindi in una sottomaschera) non ci sono i
campi (che esistono nelle tabelle e nelle queries) ma i controlli.
Prova con:
Me!NomeControlloSottomaschera!NomeControlloDellaSottomaschera =
Me!NomeControlloDellaMaschera
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:Ju17a.157743$ZE.46...@twister2.libero.it...

Penso che non sia questa la risposta che cercavo, forse mi sono espresso
male nella domanda.:(
ci riprovo con un esempio.
Nella maschera principale ho due "Controlli " chiamati [data inizio] e [data
fine], ovviamente sono due date,
ecco vorrei che una volta aggiornata la [data fine] nella maschera
principale, il controllo [differenza giorni], (che ho la necessità di avere
in una sottomaschera), mi si aggiorni automaticamente alla differenza tra la
[data fine] - [ data inizio] .
Spero che ora si capisca quello che vorrei fare.


text:
"Mar&mar" <
pr...@prova.it
> ha scritto nel messaggio
news:yZ57a.324023$AA2.12...@news2.tin.it...

Scusa ma quanti record visualizzi nella sottomaschera?
Se sono più di uno (come normalmente è), quale record vuoi aggiornare con
[differenza giorni]?



text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:pg77a.157953$YG2.4...@twister1.libero.it...

nella sottomaschera ho tanti "controlli" quanti sono i mesi dell'anno ed
ognuno si chiama con il nome del mesi
e vorrei aggiornare il mese in corso.


text:
"Mar&mar" <
pr...@prova.it
> ha scritto nel messaggio
news:rY77a.239359$0v.66...@news1.tin.it...

Non mi interessa sapere quanti controlli hai ma quanti record hai nella
sottomaschera; se il record fosse solo 1, per qiale motivo usi una
sottomaschera?



text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:K487a.159008$ZE.46...@twister2.libero.it...

ogni anno la sottomaschera aumenta di un record.


text:
"Mar&mar" <
pr...@prova.it
> ha scritto nel messaggio
news:Xc87a.239451$0v.66...@news1.tin.it...

Se i record sono più di uno in quale di essi vuoi inserire il valore che è
memorizzato in un controllo della maschera principale, e come pensi di dirlo
ad Access?



text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:bFp7a.160564$YG2.4...@twister1.libero.it...

scusa il ritardo cmq spero di dirlo ad access tramite degli enunciati if
then
(almeno spero che si possa fare)


text:
"Mar&mar" <
pr...@prova.it
> ha scritto nel messaggio
news:B858a.255986$0v.71...@news1.tin.it...
[CUT]
> scusa il ritardo cmq spero di dirlo ad access tramite degli enunciati if
> then
> (almeno spero che si possa fare)
Dovresti prima rendere attivo il record verso il quale trasferire il valore
contenuto in un controllo della maschera principale: la cosa è tutt'altro
che banale; prova, nulla è impossibile però...
Secondo me non devi operare sulle maschere ma devi aprire dei recordset
sugli oggetti che sono origine record della maschera principale e della
sottomaschera ed operare su di essi.



text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:Vo68a.167086$YG2.5...@twister1.libero.it...

fermorestando che certe volte ti capisco ed altre no,come si attiva il
record della sottomaschera?


text:
"Mar&mar" <
pr...@prova.it
> ha scritto nel messaggio
news:GB88a.257197$0v.71...@news1.tin.it...

Il nostro dialogo è strettamente tecnico e come tale abbastanza ermetico:
occore che entrambi abbiamo una certa conoscenza di Access e di VBA che
presuppone una proprietà di linguaggio atta a farsi capire nel porre i
quesiti ed a capire le soluzioni proposte.
> come si attiva il record della sottomaschera?
Normalmente si ottiene spostando il fuoco sulla sottomaschera; quindi si
apre il recordsetclone della sottomaschera; ci si posiziona sul record del
recordset che ci interessa; con il Bookmark del recordset si imposta il
Bookmark della sottomaschera.



text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:Qpl8a.169684$ZE.50...@twister2.libero.it...

do un occhiata sull'help e poi riposto.


title: OT - I limiti del VBA e i nuovi device

author: Pino

text:
Mi sento un po’ frustrato a sapere che tutto cio’ che scrivo e faccio
in VBA non posso eseguirlo sui device di ultima generazione come
smarthpone e tablet.
Il linguaggio con cui lavoro e’ quanto di meno portabile ci sia,
questo gia’ lo sapevo ma l’arrivo sul mercato di questi nuovi “cosi”
non fra che aumentare la separazione tra le mie applicazioni e
l’esperienza utente-pc che si sta spostando sempre di piu’ (anche se
adesso siamo solo all’inizio) sui tablet ecc.
Le mie applicazioni in VBA si dividono in lavoro e casa. Sul lavoro…
finche’ Office MS continuera’ a essere uno standard per molte
aziende,e lo sara’ ancora per molto tempo…continuero’ a fare il mio
lavoro come prima.
Sulle applicazioni che scrivo a casa per mio diletto e per i miei
hobby…ecco che iniziano i problemi. Non posso piu’ usarle quando vado
in giro…a meno di non avere un netbook…e se voglio comprarmi un
tablet?
Come smartphone ho android e se mi dicessero che domani su Windows
Phone ci gira il VBA, non cambierei cmq android.
Ho voglia di usare i miei db, i miei programmi in excel
ovunque….altrimenti so di aver fatto un lavoro inutile e a me
sinceramente non piace perdere tempo.
Quindi quali alternative? Sarei orientato ad iniziare daccapo con un
linguaggio web in modo che l’applicazione sia usabile da qualsiasi
device, basta mettere l’applicazione sul server giusto.
Mi spaventa un po’ il lato design…fare maschere, pulsanti, combo,
listbox in access e’ di relativa facilita’….metti i controlli dove
vuoi e poi giochi con le proprieta’…riesco a fare ambienti gradevoli
perfino io che sono stato sempre un cane in disegno :-))
Pero’ fare lo stesso su un’applicazione web scrivendo chili e chili di
codice xhtml, CSS ecc…non farebbe per me…
Voi cosa proponete in alternativa? Quale alternativa al VBA? Quale
linguaggio e quale ambiente di sviluppo semplice e immediato come il
VBA e soprattutto…portabile….ovunque (o quasi).
Grazie.


title: OT - I limiti del VBA e i nuovi device

text:
"Pino"  ha scritto nel messaggio
news:2bdcba43-149d-489a...@s17g2000yqs.googlegroups.com...





__________Risposta:
Non c'è nulla di così immediato e cossplatform.
Se sviluppi su Android hai un tool, se sviluppi su iPhone un altro, se
WinPhone un altro ancora (non visual studio).
Se usi il web hai il limite della connettività e della navigabilità di un
browser.
Se sviluppi su Silverlight e/o WPF hai il limite della piattaforma, se
sviluppi con java hai limite della soglia di apprendimento e della
pesantezza,
se sviluppi con PHP hai il limite della vulnerabilità.
Per ogni linguaggio hai vantaggi e svantaggi, come in Access
MA


title: OT - I limiti del VBA e i nuovi device

author: BFS

text:

beh tablet con windows 7 starter ce ne sono parecchi...
altrimenti io mi sono buttatto su windows phone/windows mobile.
con
vb.net
 o smart develop si fanno discrete cose..soprattutto con sqlce
come database
ho provato il tool di sviluppo di android e non mi è sembrato
particolarmente complicato.
neppure quello per iphone.
ovvio che devi conoscere un qualcosa di programmazione OO.
ciao
BFS


title: OT - I limiti del VBA e i nuovi device

author: Bruno Campanini

text:
Pino on 15-07-11 wrote:
> Mi sento un po’ frustrato a sapere che tutto cio’ che scrivo e faccio
[...]
> Voi cosa proponete in alternativa? Quale alternativa al VBA? Quale
> linguaggio e quale ambiente di sviluppo semplice e immediato come il
> VBA e soprattutto…portabile….ovunque (o quasi).
Eh... a volte il caldo fa brutti scherzi.
Fatti una bella doccia.
Bruno


title: OT - I limiti del VBA e i nuovi device

text:
On 15 Lug, 12:42, "MA" <
mas...@massimilianoamendola.it
> wrote:
> Non c'è nulla di così immediato e cossplatform.
> Se sviluppi su Android hai un tool, se sviluppi su iPhone un altro, se
> WinPhone un altro ancora (non visual studio).
> Se usi il web hai il limite della connettività e della navigabilità di un
> browser.
> Se sviluppi su Silverlight e/o WPF hai il limite della piattaforma, se
> sviluppi con java hai limite della soglia di apprendimento e della
> pesantezza,
> se sviluppi con PHP hai il limite della vulnerabilità.
> Per ogni linguaggio hai vantaggi e svantaggi, come in Access
> MA
Si in effetti...pro e contro per ogni linguaggio. Ok su questo non ci
piove..
Anche se analizzando costi e benefici forse i problemi legati alla
connettivita' sono il male minore.
Non e' un caso che il cloud comp. si stia sviluppando proprio perche'
a causa di tutti questi nuovi dispositivi, mai
come in quest'epoca c'è bisogno di applicazioni "trasversali"..la cui
sede naturale e' proprio il cloud.
E di CMS, Joomla e vari che mi dici?
Grazie.


title: OT - I limiti del VBA e i nuovi device

text:
On 15 Lug, 14:36, Bruno Campanini <
brunoca...@libero.it
> wrote:
> Eh... a volte il caldo fa brutti scherzi.
> Fatti una bella doccia.
Dal tono "affabile" della tua risposta i lettori capiranno subito che
quello che vive al Sahara sei tu, non io.
Buona passeggiata nel deserto...


title: OT - I limiti del VBA e i nuovi device

text:

Non mi pare che abbia sollevato un "problema" tanto comico...anzi.
A chi non è capitato di sentirsi chiedere dal cliente "ma posso mettere
il tuo gestionale nell'ipad" (o tablet con android )
ciao
BFS


title: OT - I limiti del VBA e i nuovi device

text:
BFS on 15-07-11 wrote:
> Non mi pare che abbia sollevato un "problema" tanto comico...anzi.
> A chi non è capitato di sentirsi chiedere dal cliente "ma posso mettere il
> tuo gestionale nell'ipad" (o tablet con android )
Sai che cliente... quello che vuol mettere il gestionale nell'ipad!
Gli è che mi sembrava uno di quei discorsi estivi fatto così per non
dir niente... facendo finta di sapere tutto.
Avrò capito male come al solito, chiedo venia.
Mi vado a fare una doccia.
Bruno


title: OT - I limiti del VBA e i nuovi device

text:
Il 15/07/2011 16:42, Bruno Campanini ha scritto:
> BFS on 15-07-11 wrote:
>
>> Non mi pare che abbia sollevato un "problema" tanto comico...anzi.
>> A chi non è capitato di sentirsi chiedere dal cliente "ma posso
>> mettere il tuo gestionale nell'ipad" (o tablet con android )
>
> Sai che cliente... quello che vuol mettere il gestionale nell'ipad!
>
sai che clienti?
il 90% dei miei clienti che hanno agenti in giro sul territorio a
raccogliere ordini e trasmetterli in sede mi hanno chiesto di usare il
gestionale raccolta ordini sull'ipad. O su qualche tablet che non fosse
il classico portatile con windows lento ad avviarsi, ingombrante con i
problemi della batteria che si scarica etc etc etc.
Soprattutto agenti che passano per bar e ristoranti..dove il padrone ha
poco tempo libero per sedersi su un tavolo a vedere lo schermo del
notebook dell'agente.
vedi un po' agenti e promoter delle case farmaceutiche cosa usano ora
per mostrari i prodotti e fare ordini in tempo reale
questi sono i clienti che intendo io..
ciao
BFS


title: OT - I limiti del VBA e i nuovi device

author: MA

text:
"BFS"  ha scritto nel messaggio
news:4e20551f$0$15666$4faf...@reader2.news.tin.it...

sai che clienti?




ciao
BFS
_____________Risposta:
E allora ti serve web, o meglio, anche web
Assurdo l'agente con una soluzione desktop ed altrettanto assurdo in ufficio
con un gestionale web.
Ad ognuno il suo.
Poi web c'è
ASP.NET
 in tutte le sue declinazioni, PHP, java etc..
MA


title: OT - I limiti del VBA e i nuovi device

author: pablitomf

text:
> Voi cosa proponete in alternativa? Quale alternativa al VBA? Quale
> linguaggio e quale ambiente di sviluppo semplice e immediato come il
> VBA e soprattutto…portabile….ovunque (o quasi).
> Grazie.
un'alternativa e' il Web... anche se poi ti scontri con il discorso
connettivita'... le cose vanno prese per quelle che sono, non per
quelle che noi vorremmo siano. Access & Co. sono soluzioni Desk che
Desk restano, con (a tuo modo di vedere a quanto pare) l'aggravante
che per funzionare hanno bisogno di Office (ma perche' poi mi chiedo
io, i PDF non hanno bisogno di Acrobat?). O prendere o lasciare... un
mare di mezzo non c'e'. Vuoi la testimonianza della mia esperienza? te
la do... io ho circa 25 filiali in tutta italia, in cui gira
un'applicativo ACCESS. Girava in locale, e ogni tot era disposto (non
mi dilungo tecnicamente) per accentrare i dati in sede sfruttando
all'inizio la mail, poi evoluto con l'ftp, poi con la VPN. Cio' e'
parso pesante nell'arco del tempo (ovviamente) per cui mi sono munito
di un Win2003 Server e ci ho messo su un SQL Server... ho passato
"parte" delle tabelle del gestionale, e ho accentrato le connessioni,
in modo tale che tutti scrivessero sul centrostella e non in locale
per poi riversare... in questo modo ho risolto non pochi problemi. Poi
dopo ne sono arrivati altri (esigenze di crescita), per i quali sul
W03S ho messo su IIS e con l'ausilio di ASP (ma anche ASP.net)
utilizzando un IP statico nattato sull'IP locale acquistato da
Telecom, ho fatto il mio bel server Web che riesce a sfruttare i dati
del gestionale e a renderli usufruibili e manipolabili anche dal
Web....
Ci sarebbe da dirti un'altra miliardata di cose, ma mi fermo perche'
il mio intento non e' dirti cosa faccio io, ma cosa si fa per
"adeguarti" al sistema... se vuoi rimanere a casa, usi le cose che per
casa bastano, altrimenti come per andare per le sabbie del deserto hai
bisogno di un fuoristrada, cosi' per soddisfare le esigenze che
elenchi hai bisogno di altri strumenti...
Spero di esserti stato d'aiuto.
;)
(ho scritto a braccio, scusa per eventuali errori)


title: OT - I limiti del VBA e i nuovi device

text:

ti sbagli...un agente non puo' non raccogliere l'ordine perchè magari
non ha campo con il cellulare. E fidati che non è caso raro.
Con la soluzione web se non ha campo cosa fa? scrive tutto in un blocco
e poi alla prima piazzola lungo la strada dove trova campo si ferma e
ricompila il tutto nel sito? naaaa
la soluzione ottimale è sempre quella di raccogliere l'ordine sempre e
comunque...e trasmetterlo immediatamente se c'è campo..altrimenti appena
è in una zona coperta con un click
ciao
BFS


title: OT - I limiti del VBA e i nuovi device

text:
"BFS"  ha scritto nel messaggio
news:4e2060d4$0$44201$4faf...@reader1.news.tin.it...



ciao
BFS
_______________Risposta:
e così ritorniamo a punto e a capo.
Con quale tecnologia e per quale device??
MA


title: OT - I limiti del VBA e i nuovi device

text:

nel mio caso:
o con un notebook o tablet con windows 7 starter.
applicazione in access che sincronizza ogni mattina anagrafiche e
listini dala sede.
Raccolgono l'ordine con una semplice maschera.
Salvano l'ordine...se c'è campo l'ordine viene caricato direttamente sul
server sql della sede. Se non c'è campo lo tengo in un "buffer" appena
torna la connessione l'ordine viene trasmesso.
In alcuni caso stampo tramite una stampantina blutooth portatile
direttamente la copia dell'ordine al cliente
se gli agenti vogliono qualcosa di più pratico e maneggevole:
ho sviluppato in
vb.net
 / compact framework una piccola applicazione per
windows mobile/sql ce che fa le stesse identiche cose dell'applicazione
scritta sopra
ciao
BFS


title: OT - I limiti del VBA e i nuovi device

author: Riccardo Baldinotti

text:

Siete dei miti! Io mi fermo al desktop dei nostri uffici.
Riccardo Baldinotti


title: Invia mail da database con macro

author: leonardo esposito

text:
buongiorno, problema urgente:
ho impostato l'invio di posta elettronica con una macro (invia
oggetto, Snapshot format), fino ad oggi ha funzionato, ma
improvvisamente non ricevo più le e-mail, anche se outlook invia
regolarmente il messaggio! cosa può essere accaduto???
grazie a tutti e buona giornata


title: Invia mail da database con macro

author: Carlo Costarella

text:
"leonardo esposito" <
esposi...@gmail.com
> ha scritto nel messaggio
news:1173170360.9...@8g2000cwh.googlegroups.com...


-------------------------
Hai impostato qualche filtro? Aggiunto un nuovo antivirus?
Cestinare l'email con allegati?
Controlla.
Ciao, Carlo


title: Invia mail da database con macro

author: Leonardo Esposito

text:
controllo fatto. Niente di tutto quuesto. Il problema è di altra natura.
ciao e grazie comunque.
"Carlo Costarella" <
carloco...@libero.it
> ha scritto nel messaggio
news:esjqij$a3k$1...@tdi.cu.mi.it...



title: lentezza db: problemi tra access97 e la rete??

author: Roberta

text:
ciao a tutti.
 vi espongo il mio problema. io distribuisco una applicazione che
fino all'inizio dell'anno era in access 2.0 e che adesso viene
aggiornata a access 97.
la versione in access 2.0 consisteva in diversi database condivisi su
un server a cui accedevano tutti gli utenti.
la versiona in access 97 ha la parte programmi (file mde) in locale e
la parte dati condivisa su un server.
ora tutti i miei clienti sono rimasti molto contenti
dell'aggiornamento tranne uno, a cui il passaggio a access 97 ha
comportato un enorme rallentamento dei tempi di esecuzione del
programma.
io gli ho fatto cronometrare diversi eventi nel programma (apertura
di maschere, di report e di altri database, alcuni che comportano
solo e unicamente l'esecuzione di query, altri che comportano una
massiccia esecuzione di codice) in diverse situazioni:
1. con la versione vecchia in access 2.0 (tutto sul server): il pc
risponde istantaneamente, tranne per le operazioni più "pesanti" per
cui impiega al massimo 5 secondi);
2. con la nuova versione in access 97 (mde in locale, dati sul
server) per l'operazione più complessa impiega 12 secondi,  contro i
3 della versione precedente, per tutte è comunque più lento della
versione in access 2.0;
3. con la nuova versione in access 97 ma con in locale i file mdb
anzichè gli mde: stesse prestazioni del punto 2;
4. con la nuova versione in access 97 ma con anche gli mde sul server
(ho + o - riprodotto la situazione che c'era con access 2.0):
prestazioni simili a quelle del punto 2, solo un po' più lente;
5. con la nuova versione in access 97 ma con anche i dati in locale:
è tutto istantaneo;
6. cambiando server: prestazione peggiore in assoluto.
io da tutto ciò deduco che non è un problema di server (anche perchè
è lo stesso della versione in access 2.0), non è un problema di
macchina (è più lento su tutti i pc), mi viene da pensare che sia un
problema di access 97 con la rete.
qualcuno di voi mi sa indicare delle impostazioni/dll/qualsiasi altra
cosa da verificare?
aspetto suggerimenti
ciao e grazie
Robby


author: Antonio Biso

text:
"Roberta" <
rob...@freemail.it
> ha scritto nel messaggio
news:ai3fvd$58l$1...@fe1.cs.interbusiness.it...

Ci manca l'esecuzione di 2.0 con FE in locale e BE in remoto:
secondo me anche questa potrebbe essere lenta, in quanto con queste
situazioni, sulla rete viaggiano tutti i dati e poi la query viene eseguita
in locale.
La vecchia versione 2, con tutto sul server faceva viaggiare solo il
risultato (forse) mentre adesso no.
Maybe...
Antonio


author: Sergio MAZZA

text:
"Roberta" <
rob...@freemail.it
> ha scritto nel messaggio
news:ai3fvd$58l$1...@fe1.cs.interbusiness.it...

L'hardware di rete è tutto a 100Mb/s?
Ciao.
--
Sergio MAZZA


text:
"Sergio MAZZA" <
sergi...@tiscalinet.it
> ha scritto nel messaggio
news:ai3ha3$ptu$1...@canarie.caspur.it...
> L'hardware di rete č tutto a 100Mb/s?
non lo so.
in piů nell'azienda non hanno un ced interno, ma una ditta di
consulenza che gli manda un tecnico quando hanno bisogno.
inoltre l'azienda in questione č a novara e io sto a reggio emilia,
quindi di persona non riesco a verificare. o meglio, io riesco a
collegarmi ad un loro pc con pcanywhere, ma la mia ignoranza mi fa
fermare qui: esiste una qualche funzione che da pc mi dice le
caratteristiche della rete?


text:
"Antonio Biso" <
ch...@etruria.net
> ha scritto nel messaggio
news:9Eb19.14654$lu5.4...@twister1.libero.it...
> Ci manca l'esecuzione di 2.0 con FE in locale e BE in remoto:
> secondo me anche questa potrebbe essere lenta, in quanto con queste
> situazioni, sulla rete viaggiano tutti i dati e poi la query viene
eseguita
> in locale.
> La vecchia versione 2, con tutto sul server faceva viaggiare solo
il
> risultato (forse) mentre adesso no.
> Maybe...
>
> Antonio
una prova completa non riesco a farla (dovrei perdere almeno 2
settimane per rivedere tutto il codice).
ho fatto una prova parziale creando un db nuovo che ho messo in
locale, collegandoci le tabelle dal server, e lanciando un report
abb. complesso che con access 97 ci mette 5-6 secondi ad aprirsi, con
access 2.0 tutto sul server ce ne mette poco piů di 1, e con questo
mio nuovo db ce ne mette 2.
a questo punto?


text:
"Roberta" <
rob...@freemail.it
> ha scritto nel messaggio
news:ai3fvd$58l$1...@fe1.cs.interbusiness.it...

Ciao, Robby
credo che il problema è da risolvere a livello di registro di sistema.
Nella seguente chiave:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5\Engines\Jet 3.5
trovi una lista di valori che se opportunamente impostati faranno schizzare
il db.
Le impostazioni di default sono restrittive e non prevedono l'ottimizzazione
per un uso in rete.
Se per esempio la voce MaxBufferSize è impostata a zero (decimale). Una
impostazione di 512 o più alta migliora di molto le prestazioni.
Per sapere quanta ram assegnare a MaxBufferSize applicare la formula che
puoi trovare nella guida alla voce:
Inizializzazione del driver e poi scegliere Inizializzazione del driver del
modulo di gestione di database Microsoft Jet 3.5
((TotalRAM in MB - 12 MB) / 4) + 512 KB.
Tale formula credo contenga un errore perchè il dato va impostato in Kb e
non in Mb
Per esempio su una macchina con 256 Mb di memoria: 256 * 1024 = 262144  -
12288 (12 * 1024) = 249856 / 4 =  62464 + 512 = 62976
62976 è il valore da inserire cioè  61,5 Mb.
Se invece faccio il calcolo in Mb ottengo: (256 - 12) / 4 =  61 +  512 = 573
Credo che il primo valore sia quello corretto. Comunque puoi iniziare con
1024 e aumentare di 1024 alla volta.
Ancora RecycleLVs va impostato a zero.
Il tutto se usi Access 97 con jet 3.5 e sulla macchina client oltre che sul
server.
Ci sarebbe molto ancora da dire ma tutto si risolve in una corretta
impostazione del registro.
Ciao, Carlo


author: Massimiliano Amendola  kksrl

text:
> Ciao, Robby
> credo che il problema č da risolvere a livello di registro di sistema.
> Nella seguente chiave:
> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5\Engines\Jet 3.5
ciao scusa ho lo stesso problema con A97 e W2000, posso chiederti come vi
accedo a queste chiave?
> trovi una lista di valori che se opportunamente impostati faranno
schizzare
> il db.
E i ti faccio santo...
> Le impostazioni di default sono restrittive e non prevedono
l'ottimizzazione
> per un uso in rete.
> Se per esempio la voce MaxBufferSize č impostata a zero (decimale). Una
> impostazione di 512 o piů alta migliora di molto le prestazioni.
> Per sapere quanta ram assegnare a MaxBufferSize applicare la formula che
> puoi trovare nella guida alla voce:
> Inizializzazione del driver e poi scegliere Inizializzazione del driver
del
> modulo di gestione di database Microsoft Jet 3.5
> ((TotalRAM in MB - 12 MB) / 4) + 512 KB.
> Tale formula credo contenga un errore perchč il dato va impostato in Kb e
> non in Mb
> Per esempio su una macchina con 256 Mb di memoria: 256 * 1024 = 262144  -
> 12288 (12 * 1024) = 249856 / 4 =  62464 + 512 = 62976
> 62976 č il valore da inserire cioč  61,5 Mb.
> Se invece faccio il calcolo in Mb ottengo: (256 - 12) / 4 =  61 +  512 =
573
> Credo che il primo valore sia quello corretto. Comunque puoi iniziare con
> 1024 e aumentare di 1024 alla volta.
>
> Ancora RecycleLVs va impostato a zero.
> Il tutto se usi Access 97 con jet 3.5 e sulla macchina client oltre che
sul
> server.
>
> Ci sarebbe molto ancora da dire ma tutto si risolve in una corretta
> impostazione del registro.
Mi dici anche dove posso trovare info in merito che smidollo l'help?
Tks MAsssimiliano


text:
"Massimiliano Amendola kksrl" <
massimilia...@kksrl.com
> ha scritto
nel messaggio news:ai3nbb$9c7$1...@atlantis.cu.mi.it...

62144  -
> > 12288 (12 * 1024) = 249856 / 4 =  62464 + 512 = 62976
> > 62976 č il valore da inserire cioč  61,5 Mb.
> > Se invece faccio il calcolo in Mb ottengo: (256 - 12) / 4 =  61 +  512 =
> 573
> > Credo che il primo valore sia quello corretto. Comunque puoi iniziare
con
> > 1024 e aumentare di 1024 alla volta.
> >
> > Ancora RecycleLVs va impostato a zero.
> > Il tutto se usi Access 97 con jet 3.5 e sulla macchina client oltre che
> sul
> > server.
> >
> > Ci sarebbe molto ancora da dire ma tutto si risolve in una corretta
> > impostazione del registro.
>
> Mi dici anche dove posso trovare info in merito che smidollo l'help?
>
> Tks MAsssimiliano
>
>
Ciao Massimiliano.
Ti ricordo che prima di operare sul registro di configurazione e bene farne
una copia.
Da Avvio...esegui...regedit...(invio)
selezioni HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5\Engines\Jet 3.5 o
Jet 4.0
Su MSDN immettendo una delle chiavi del registro come criterio della ricerca
trovi una miriade di informazioni.
Per esempio ecco quello che dice per MaxBufferSize:
MaxBufferSize
Microsoft Jet reads and writes data in 2K pages, placing the data in a
temporary holding area called the buffer as required by its operations. By
default, when performing operations that add, delete, or update records and
that aren't part of an explicit transaction, Microsoft Jet automatically
performs internal transactions that group changes to records and temporarily
saves them in the buffer. After a specified time, or when the size specified
by the MaxBufferSize setting is exceeded, it then writes the data as a chunk
to the database. This minimizes the time spent reading and writing data to
the database. Additionally, Microsoft Jet can minimize the time spent
reading data for tables, queries, forms, or reports by reading available
data from its buffer.
See Also   For information about other settings that regulate the management
of transactions, see "ImplicitCommitSync," "ExclusiveAsyncDelay," and
"SharedAsyncDelay" later in this section.
The MaxBufferSize setting specifies a "high water mark" for the size of the
buffer that Microsoft Jet uses to work with records in memory, measured in
kilobytes. Microsoft Jet can temporarily exceed the MaxBufferSize. As soon
as it does, however, it starts a background thread to write data to the
database to bring the buffer's size down to the specified "high water mark."
By default, Microsoft Jet allocates memory for its internal buffer on an
as-needed basis up to the MaxBufferSize. The default value written in the
Windows Registry for the MaxBufferSize setting when Access is installed is
0, which indicates that Microsoft Jet calculates the setting based on the
following formula:
((Total RAM in K - 12,288)/4 + 512K)
For example, on a system with 32 MB of RAM (32,768K), Microsoft Jet uses a
MaxBufferSize setting of 5,632 KB.
You can override the default calculated setting by specifying a different
MaxBufferSize value. This sets a new "high water mark." The minimum value
that Microsoft Jet uses by default is 512K, but you can specify a value as
low as 128K. However, setting the MaxBufferSize to a value less than 512K is
not recommended for Access applications because it can seriously degrade
performance.
For computers with 16 MB or less of installed RAM, there is generally no
need to override the calculated setting. For computers with 32 MB of RAM,
you may see some performance improvement when specifying a larger
MaxBufferSize if no other applications are running at the same time as
Access. For example, tests have shown performance improvements in
applications that perform large transactions when a MaxBufferSize as large
as 8 MB is specified.
Specifying a MaxBufferSize larger than 8 MB hasn't been found to increase
performance. Setting a value too high can degrade performance due to the
added CPU overhead needed to manage the cache, and due to the fact that the
operating system may start swapping Microsoft Jet's cache to disk as virtual
memory.
Note   When specifying a MaxBufferSize setting that is larger than the
default, you should also increase the SharedAsyncDelay setting to increase
the time that data is held in the buffer. If you don't increase the
SharedAsyncDelay setting, Microsoft Jet writes the contents of its buffer to
the database before it has had time to utilize the additional memory you
specified. For more information about the SharedAsyncDelay setting, see
"SharedAsyncDelay" later in this section.
Ciao, Carlo


author: Massimiliano Bertoglio

text:
"Carlo Costarella"

Mai provate queste impostazioni ... lo farò quanto prima ;-)
Però una domanda sorge spontanea: credi diminuiscano l'affidabilità del .mdb
condiviso?
Ciao, Max


text:
"Massimiliano Amendola kksrl"
> > Ci sarebbe molto ancora da dire ma tutto si risolve in una corretta
> > impostazione del registro.
> Mi dici anche dove posso trovare info in merito che smidollo l'help?
Per impostare queste opzioni a Run-Time puoi usare i metodi SetOption e
GetOption (DAO) senza modificare in modo permanente il registro.
Io avevo provato qualcosa con JET 4.0  ma i risultati erano deludenti (forse
sbagliavo qualcosa).
Ciao, Max


text:
"Massimiliano Bertoglio" <
maxber...@libero.it
> ha scritto nel messaggio
news:4Xd19.14449$n04.4...@twister2.libero.it...
>
cut
>
> Mai provate queste impostazioni ... lo farò quanto prima ;-)
> Però una domanda sorge spontanea: credi diminuiscano l'affidabilità del
.mdb
> condiviso?
>
> Ciao, Max
>
>
>
L'affidabilità del db non viene compromessa a patto di seguire correttamente
le impostazioni.
Per fare ciò affidati sicuramente a MSDN.
Tieni presente che le suddette impostazioni possono essere impostate anche
solo per il db che distribuisci e nel momento che l'utente apre
l'applicativo.
Per fare questo comincia a leggerti SetOptions.
Ciao, Carlo


text:
"Massimiliano Bertoglio" <
> Mai provate queste impostazioni ... lo farò quanto prima ;-)
Per meglio dire: mai provate con Jet 3.5 ... col 4.0 mi pareva non dessero i
risultati sperati.


text:
"Carlo Costarella"
> Tieni presente che le suddette impostazioni possono essere impostate anche
> solo per il db che distribuisci e nel momento che l'utente apre
> l'applicativo.
 >Per fare questo comincia a leggerti SetOptions.
Come già accennato l'anno scorso ho perso qualche mezz'ora sulla questione
ma senza risultati.
Due ipotesi:
1) Jet 4.0 non patchato se ne sbatte di maxbuffersize
2) ho sbagliato l'assegnazione dei parametri
Comunque proverò quanto prima con la versione '97.
Ciao, Max


text:
"Carlo Costarella" <
carloco...@libero.it
> ha scritto nel
messaggio news:G1d19.136515$Jj7.3...@news1.tin.it...
> Ci sarebbe molto ancora da dire ma tutto si risolve in una corretta
> impostazione del registro.
ciao Carlo, innanzitutto grazie per il suggerimento, ma non ha
funzionato.
il pc ha 128 MB di RAM. RecycleLVs era già impostata a zero. io ho
provato a impostare MaxBufferSize (che prima era a zero) prima a
1024, poi a 4096, poi a 8192 infine al risultato esatto della formula
che mi viene 30208. ma le prestazioni non sono migliorate.
MaxBufferSize l'ho impostata prima con base decimale (come avevo
capito fosse corretto fare dalla ua mail), poi mi è sorto il dubbio e
l'ho impostata a 30208 a base esadecimale ma niente da fare nemmeno
così.
esistono altre chiavi di registro da sistemare?
aspetto altri suggerimenti (o correzioni, nel caso io abbia cannato
qualcosa)
intanto grazie
Roberta


text:
> > > trovi una lista di valori che se opportunamente impostati faranno
> > schizzare
> > > il db.
> >
> > E i ti faccio santo...
Ho avviato la pratica presso il Vaticano, mi dicono che il titolare č fuori
per affari (Guatemala o giů di lě) perň non  ti preoccupare quando torna ci
riprovo.
> > > Le impostazioni di default sono restrittive e non prevedono
> > l'ottimizzazione
> > > per un uso in rete.
> > > Se per esempio la voce MaxBufferSize č impostata a zero (decimale).
Una
> > > impostazione di 512 o piů alta migliora di molto le prestazioni.
> > > Per sapere quanta ram assegnare a MaxBufferSize applicare la formula
che
> > > puoi trovare nella guida alla voce:
> > > Inizializzazione del driver e poi scegliere Inizializzazione del
driver
> > del
> > > modulo di gestione di database Microsoft Jet 3.5
> > > ((TotalRAM in MB - 12 MB) / 4) + 512 KB.
> > > Tale formula credo contenga un errore perchč il dato va impostato in
Kb
> e
> > > non in Mb
> > > Per esempio su una macchina con 256 Mb di memoria: 256 * 1024 =
> 62144  -
> > > 12288 (12 * 1024) = 249856 / 4 =  62464 + 512 = 62976
> > > 62976 č il valore da inserire cioč  61,5 Mb.
Ho impostato 62976 su base esadecimale, bene cosě?
Grazie di vero cuore.
MAssimiliano


text:
"Roberta
> "Carlo Costarella"
> > Ci sarebbe molto ancora da dire ma tutto si risolve in una corretta
> > impostazione del registro.
>
> ciao Carlo, innanzitutto grazie per il suggerimento, ma non ha
> funzionato.
> il pc ha 128 MB di RAM. RecycleLVs era già impostata a zero. io ho
> provato a impostare MaxBufferSize (che prima era a zero) prima a
> 1024, poi a 4096, poi a 8192 infine al risultato esatto della formula
> che mi viene 30208. ma le prestazioni non sono migliorate.
> MaxBufferSize l'ho impostata prima con base decimale (come avevo
> capito fosse corretto fare dalla ua mail), poi mi è sorto il dubbio e
> l'ho impostata a 30208 a base esadecimale ma niente da fare nemmeno
> così.
> esistono altre chiavi di registro da sistemare?
> aspetto altri suggerimenti (o correzioni, nel caso io abbia cannato
> qualcosa)
Una domanda sorge spontanea: ieri hai scritto d'aver installato
l'applicazione ad altri che si sono ritenuti molto soddisfatti.
Significa che le prestazioni da altre parti sono buone?
In tal caso magari devi indagare su altri fattori software (alcuni antivirus
sui clients rallentano molto).
Ciao, Max


text:
"Massimiliano Bertoglio" <
maxber...@libero.it
> ha scritto nel
messaggio news:CMu19.18007$lu5.5...@twister1.libero.it...
>
> Una domanda sorge spontanea: ieri hai scritto d'aver installato
> l'applicazione ad altri che si sono ritenuti molto soddisfatti.
> Significa che le prestazioni da altre parti sono buone?
>
> In tal caso magari devi indagare su altri fattori software (alcuni
antivirus
> sui clients rallentano molto).
>
> Ciao, Max
gli altri miei clienti sono 3.
1 ha una postazione sola, quindi tutto in locale, quindi va a
scheggia.
1 altro ha 6-7 postazioni e per adesso sono contenti.
1 altro (il mio cliente + grosso) ha 12-15 postazioni che accedono al
programma, e sono contenti. stamattina gli ho fatto cronometrare i
tempi per gli stessi eventi che ho fatto cronometrare al mio cliente
scontento.
quelli del programma nuovo sono simili. i tempi del programma vecchio
erano più lenti dal cliente contento (che quindi nell'aggiornamento
ha sentito meno il rallentamento).
non sono molto sicura di essermi spiegata bene, se non ci sono
riuscita ditemelo.
insomma, indagando pian piano ho scoperto che il cliente scontento ha
grossomodo le stesse prestazioni di quelli contenti.
e quindi non so come fare a salvare la faccia. ma in un qualche modo
mi arrangerò.
resta il fatto che anche qui in sede da me il mio pc (win98, 128 MB
di RAM, ci sono installati sopra access 2.0, 97 e 2000) ha dei tempi
simili a quelli del mio cliente scontento, il pc del collega accanto
a me (con win nt, sempre 128 MB di RAM, ci sono installati sopra
access 2.0 e 97) ha dei tempi dimezzati rispetto ai miei.
non ci capisco più niente.
se qualcuno avesse qualche altro suggerimento.....
ciao
Roberta


author: Hp

text:
un saluto al ng
hai mai pensato ad utilizzare le repliche del DB ?
mi spiego:
- qualche anno fa ho avuto il tuo stesso problema sono diventato
"matto" tra registri e ottimizzazione varie ma nulla .. la conclusione è
stata che l'architettura file-server di accees incomincia a degradare,
in termini di velocità,  quando il db cresce e gli utenti sono tanti.
che fare .??
1) passare a SQL .... troppo oneroso per i clienti
2) creare delle repliche e implementare un algoritmo di sincronismo tra
i db attraverso dei flag sul server ...
In pratica sul server rimane la replica principale e sui clienti le repliche
secondarie  .. quando il tuo applicativo accede ai dati legge la db locale
Naturalmente non è tutto cosi semplice .. perché bisogna gestire i conflitti
tra
i vari DB .. dopo 2 anni di esperienza ti posso assicurare che il sistema
regge e rallentamenti sono stati drasticamente ridotti anche se i Db
crescono
di piu del normale ...
Saluti
hp
"Roberta" <
rob...@freemail.it
> ha scritto nel messaggio
news:ai6813$fkk$1...@fe2.cs.interbusiness.it...



text:
"Roberta" <
rob...@freemail.it
> > >

HP te ne ha già dati un paio buoni.
Eccone altri due
1) Leggi bene le istruzioni per ottimizzare i tempi delle tabelle collegate
(soprattutto l'apertura di connessioni persistenti al BE)
2) Per installazioni così onerose  (più di dieci posti sono tanti per un
File-Sharing) cominciate a sperimentare Microsoft Terminal Server: ne vale
la pena te l'assicuro.
Ciao, Max


text:
"Roberta" <
rob...@freemail.it
> ha scritto nel messaggio
news:ai3kv1$jqa$1...@fe2.cs.interbusiness.it...
>
> non lo so.
> in più nell'azienda non hanno un ced interno, ma una ditta di
> consulenza che gli manda un tecnico quando hanno bisogno.
> inoltre l'azienda in questione è a novara e io sto a reggio emilia,
> quindi di persona non riesco a verificare. o meglio, io riesco a
> collegarmi ad un loro pc con pcanywhere, ma la mia ignoranza mi fa
> fermare qui: esiste una qualche funzione che da pc mi dice le
> caratteristiche della rete?
>
Non lo so se c'è qualche funzione, io di solito guardo i led (quando ci
sono) delle schede di rete/hub; se sono gialle trasmettono a 100Mb/s.
E' un metodo un po' rozzo ma veloce...
Ciao.
--
Sergio MAZZA


title: Autorizzazioni con MSDE

author: Fabio Chiaro

text:
Ciao a tutti.
Dopo aver installato MSDE2000 al posto di MSDE1 sul Server, quando cerco di
entrare in struttura di una tabella da un Client WIN98 mi dice che non ho
l'accesso esclusivo in questo momento.
Da un altro client con WinXP funziona.
Dove posso andare a sbattere la testa? Sul server c'č Win2000 Server.
Grazie, FABIO


title: Autorizzazioni con MSDE

author: Fabrizio yQy

text:
"Fabio Chiaro" <
nospam_fa...@tin.it
> ha scritto nel messaggio
news:VCvx9.113935$RO.29...@twister1.libero.it...
> Ciao a tutti.
>
>
> Dove posso andare a sbattere la testa? Sul server c'è Win2000 Server.
fai l'utente su windows xp/2000 server, cioe' quello ke entra in rete con
windows 98
supponiamo che il client 98 entri in rete con:
none utente: pippo
password: pippo
fai su XP (cioe' dove hai il db) l'utente pippo/pippo e lo assegni alla
cartella dove risiede il db.
Dovrebbe andare.
Ciao, Fabrizio yQy


title: Autorizzazioni con MSDE

text:
"Fabrizio yQy" <
fabrizi...@tin.it
> ha scritto nel messaggio
news:8XEx9.72143$aL4.2...@news1.tin.it...

Non è questo il problema purtroppo, anche perchè il mio utente ha tutte le
autorizzazioni. Ho scoperto però che il problema è anche se lavoro in
locale: ho installato MSDE2000 anche sulla mia macchina con Win98 e mi da lo
stesso problema.
Ce l'ho tralaltro anche da un altro cliente, adesso volevo provare ad
aggiornare MDAC (servirà a qualcosa?) e poi ti so dire.
Grazie, FABIO


title: Autorizzazioni con MSDE

text:
"Fabio Chiaro" <
nospam_fa...@tin.it
> ha scritto nel messaggio
news:pdLx9.117499$%M1.30...@twister2.libero.it...
> Ce l'ho tralaltro anche da un altro cliente, adesso volevo provare ad
> aggiornare MDAC (servirà a qualcosa?) e poi ti so dire.
magari fammi sapere...
hai provato per caso a verificare se fosse un problema di Service Pack?
Service pack 2 per office 97
service pack 3 per office 2000
service pack 1 per office xp
service pack 1 x Winxp
service pack 3 per windows 2000
?
prova tutte le evrsioni di mdac, dalla + piccola alla + grande
Ciao :)


title: Autorizzazioni con MSDE

text:
"Fabrizio yQy" <
fabrizi...@tin.it
> ha scritto nel messaggio
news:yQPx9.91108$TD1.4...@news2.tin.it...

Rispondo solo adesso perchè ieri non c'ero. Considera che il problema, oltre
a verificarsi anche da un mio cliente, ce l'ho anche in locale e sulla mia
macchina (Win98 SE + Office 2000) ci sono tutti gli aggiornamenti possibili
e immaginabili (ora anche MDAC).
Visto che però ho "smanettato abbastanza" volevo prendere un PC e
reinstallargli da zero Win98 + Office 2000 + MSDE 2000 e vedere se mi si
ripropone il problema.
Grazie ancora per l'interessamento, se vuoi ti tengo informato.
Fabio


title: CIAO

author: BelloBello

text: CIAO


title: CIAO

author: Alessandro Cara

text:
BelloBello wrote:
>
> CIAO
al prossimo ciao che si vince?
--
a.cara
Togli qualcosa dall'email


title: collegamento a tabella

author: ggggg

text:
se ho 2caselle di spunta su una maschera: è possibile collegare uno ad
una tabella e uno ad un' altra ?
ho provato a mettere nella proprietà dati   = [Tabella1]![1] su una
casella e = [Tabella2]![1]
ma non funziona:
Questo perche' essendo il numero massimo di campi su ogni tabella 250
allora mi serve avere piu' tabelle
per arrivare a coprire 300 caselle di spunta che devono essere su una
unica form.
Ci sono alternative?
tipo uso di sottomaschere ?
thanks you


title: collegamento a tabella

text:
"ggggg" <
g...@g.it
> ha scritto nel messaggio news:3EAED7BF...@g.it...

Ma sarà mai possibile che ti servano 300 Campi Si/No....??
Non è il caso, senza nulla togliere alla tua competenza, di
esporre meglio anche la struttura e realmente ciò che ti serve
in modo da evitare risposte parziali e non esaurienti......?????????????
@Alex.


title: collegamento a tabella

text:

è una form molto grande, che si sviluppa in lunghezza con quesiti con test
di vario tipo,
in cui si devono scegliere le risposte anche multiple ad uno stesso test


title: collegamento a tabella

author: Alex

text:
"ggggg" <
g...@g.it
> wrote in message
news:3EAF1944...@g.it
[CUT]
> > Ma sarà mai possibile che ti servano 300 Campi Si/No....??
> > Non è il caso, senza nulla togliere alla tua competenza, di
> > esporre meglio anche la struttura e realmente ciò che ti serve
> > in modo da evitare risposte parziali e non esaurienti......?????????????
>
> è una form molto grande, che si sviluppa in lunghezza con quesiti con test
> di vario tipo,
> in cui si devono scegliere le risposte anche multiple ad uno stesso test
Ora ho capito meno di prima, ma se hai la struttura che dici
secondo me può essere articolata con un rapporto 1-->Molti
tra 2 tabelle, in questomoso una tabella ha l'elenco delle
domande in relazione 1 e lato molti la tabella con i campi
relativi alle risposte.
Così facendo hai semplificato la struttura e la rendi Flessibile a
modifiche.
Tutto questo è comprensibile se hai qualche nozione di Database
Relazionali,
ma se vuoi usare Access come fosse EXCEL allora usa Excel....!!
@Alex.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: ActiveX

author: Antonio

text:
Qualcuno sa indicarmi qualche indirizzo ove
approfondire l'uso delle activex?

Grazie e buona Pasqua

Antonio


title: Disabilitare tasto shift con password in Acess 2000

author: Dino

text:
Ciao a tutti sono Dino.Ho necessita' di abilitare/disabilitare il
tasto Shift attraverso una password.
Sul sito comune ho trovato questa routine :Private Sub Ctl___Click()
Dim stLinkCriteria As String
Dim strinput As String
Dim strMsg As String
Dim domanda As String
Dim messaggio As String
Dim intopzioni As Integer
    strinput = InputBox("Inserire una password valida.")
    strMsg = "Password corretta"
        ' Prova il valore di input utente.
        If strinput = "password" Then
        On Error Resume Next
        domanda = InputBox("Chiudere il database?")
            Const DB_Boolean As Long = 1
        If domanda = "Apri" Then
            ChangeProperty "AllowBypassKey", DB_Boolean, True
        Else
            ChangeProperty "AllowBypassKey", DB_Boolean, False
        End If
        Else
 intopzioni = vbCritical
messaggio = "La password immessa è ERRATA."
byscelta = MsgBox(messaggio, intopzioni)
DoCmd.Quit
         End If
Quando eseguo il debug mi dice che ChangeProperty e' una funzione non
definita.
Scusate la domanda ma come faccio ha definirla????
Grazie in anticipo Dino


text:
Dino wrote:
> Ciao a tutti sono Dino.Ho necessita' di abilitare/disabilitare il
> tasto Shift attraverso una password.
>
> Sul sito comune ho trovato questa routine :Private Sub Ctl___Click()
> Dim stLinkCriteria As String
> Dim strinput As String
> Dim strMsg As String
> Dim domanda As String
> Dim messaggio As String
> Dim intopzioni As Integer
>
>     strinput = InputBox("Inserire una password valida.")
>     strMsg = "Password corretta"
>
>         ' Prova il valore di input utente.
>         If strinput = "password" Then
>         On Error Resume Next
>
>
>         domanda = InputBox("Chiudere il database?")
>             Const DB_Boolean As Long = 1
>         If domanda = "Apri" Then
>
>             ChangeProperty "AllowBypassKey", DB_Boolean, True
>         Else
>
>             ChangeProperty "AllowBypassKey", DB_Boolean, False
>         End If
>
>         Else
>  intopzioni = vbCritical
> messaggio = "La password immessa č ERRATA."
> byscelta = MsgBox(messaggio, intopzioni)
> DoCmd.Quit
>          End If
>
> Quando eseguo il debug mi dice che ChangeProperty e' una funzione non
> definita.
> Scusate la domanda ma come faccio ha definirla????
> Grazie in anticipo Dino
Forse c'e' anche la changeproperty che e' una "user" function e dovrebbe
essere pressapoco questa
Function ChangeProperty(strPropName As String, varPropType As Variant,
varPropValue As Variant) As Integer
     Dim dbs As Object, prp As Variant
     Const conPropNotFoundError = 3270
     Set dbs = CurrentDb
     On Error GoTo Change_Err
     dbs.Properties(strPropName) = varPropValue
     ChangeProperty = True
Change_Bye:
     Exit Function
--
ac
y-1=x


text:
On 5 Feb, 20:17, Alessandro Cara <
alessandro.c...@ay-1asistemi.it
>
wrote:
> Dino wrote:
> > Ciao a tutti sono Dino.Ho necessita' di abilitare/disabilitare il
> > tasto Shift attraverso una password.
>
> > Sul sito comune ho trovato questa routine :Private Sub Ctl___Click()
> > Dim stLinkCriteria As String
> > Dim strinput As String
> > Dim strMsg As String
> > Dim domanda As String
> > Dim messaggio As String
> > Dim intopzioni As Integer
>
> >     strinput = InputBox("Inserire una password valida.")
> >     strMsg = "Password corretta"
>
> >         ' Prova il valore di input utente.
> >         If strinput = "password" Then
> >         On Error Resume Next
>
> >         domanda = InputBox("Chiudere il database?")
> >             Const DB_Boolean As Long = 1
> >         If domanda = "Apri" Then
>
> >             ChangeProperty "AllowBypassKey", DB_Boolean, True
> >         Else
>
> >             ChangeProperty "AllowBypassKey", DB_Boolean, False
> >         End If
>
> >         Else
> >  intopzioni = vbCritical
> > messaggio = "La password immessa è ERRATA."
> > byscelta = MsgBox(messaggio, intopzioni)
> > DoCmd.Quit
> >          End If
>
> > Quando eseguo il debug mi dice che ChangeProperty e' una funzione non
> > definita.
> > Scusate la domanda ma come faccio ha definirla????
> > Grazie in anticipo Dino
>
> Forse c'e' anche la changeproperty che e' una "user" function e dovrebbe
> essere pressapoco questa
>
> Function ChangeProperty(strPropName As String, varPropType As Variant,
> varPropValue As Variant) As Integer
>      Dim dbs As Object, prp As Variant
>      Const conPropNotFoundError = 3270
>
>      Set dbs = CurrentDb
>      On Error GoTo Change_Err
>      dbs.Properties(strPropName) = varPropValue
>      ChangeProperty = True
>
> Change_Bye:
>      Exit Function
>
> --
> ac
> y-1=x- Nascondi testo tra virgolette -
>
> - Mostra testo tra virgolette -
Ciao Ale,come prima cosa grazie per la risposta.Volevo chiederti devo
inserire questa routine in un nuovo modulo o in quello che ho
riportato nel post??
Grazie ancora
Saluti Dino


text:

Va bene quello del post. Poi male che vada prendi errore, le tasse non
ti aumentano per questo ;<)
--
ac
y-1=x


text:
On 5 Feb, 20:49, Alessandro Cara <
alessandro.c...@ay-1asistemi.it
>

Grazie Ale...Di tasse ne ho gia' pagate troppe...
Provo ad inserirlo nello stesso modulo e poi ti faccio sapere.
Piuttosto ho trovato sul sito comune su GENERAL  FAQ  6.78  abilita/
disabilita tasto Shift.
E' un bellissimo DB con il quale inserendo il percorso del DB da
inibire di disabilita il tasto shift.
Il problema e' questo ho voluto importare gli oggetti di questo DB
(Vedrai una form e un modulo) nel mio DB per poter gestire il tutto in
un'applicazione ma dopo aver dato il percorso del DB quando voglio
disabil. il tasto il sw mi si blocca e mi compare il modulo in esame :
SOTTOLINEANDO LA PRIMA RIGA "Dim wrk As Workspace" DICENDO CHE NON E'
DEFINITO DALL'UTENTE
Public Function BypassKey(bolVal As Boolean, Optional strMdb As
String) As Boolean
'Autore: Federico Luciani dal sito comune del newsgroup di
it.comp.app.access
'Accetta:
'bolVal = True: abilita; False: disabilita
'strMdb = [Opz.] percorso+nome del database
'Restituisce: True l'operazione e' stata eseguita correttamente
On Error GoTo bypass_Err
    Dim wrk As Workspace
Dim dbs As Database
    Set wrk = DBEngine.Workspaces(0)
    If strMdb = "" Then
        Set dbs = CurrentDb()
    Else
        Set dbs = wrk.OpenDatabase(strMdb)
    End If
    dbs.Properties("AllowBypassKey") = bolVal
    BypassKey = True
    Set dbs = Nothing
    Set wrk = Nothing
    Exit Function
bypass_Err:
    If Err = 3270 Then
        Dim prp As Property
        Set prp = dbs.CreateProperty("AllowBypassKey", dbBoolean,
True)
        dbs.Properties.Append prp
        Resume
    Else
        BypassKey = False
    End If
End Function
'Per provare la funzione inseritela in un altro mdb e dalla finestra
di debug eseguite:
'Print bypassKey(False, "D:\copia di rubrica.mdb") 'per disabilitare
'Print bypassKey(True, "d:\copia di rubrica.mdb") 'per abilitare
Quello che ti chiedo e' questo.E' probabile che per funzionare deve
essere in un DB a parte (vedo la spiegazione remata in fondo) o si
puo' come voglio io inserirlo nello stesso DB da inibire??.
Scusa per il poema e molte grazie per le risposte.
Saluti Dino


text:

>>>>> messaggio = "La password immessa č ERRATA."

Il codice che hai postato fa esttamente quello che faceva l'altro,
modifica cioe' la Property "AllowByPassKey". Il secondo codice se non
passi nulla come nome (path) del DB agisce su quello corrente
i.e.
      If strMdb = "" Then
          Set dbs = CurrentDb()
      Else
         Set dbs = wrk.OpenDatabase(strMdb)
      End If
e quindi
'Print bypassKey(False, "") 'per disabilitare il currentdb
'Print bypassKey(True, "") 'per abilitare il currentdb
cmq e' strano che ti dia errore sulla definizione del workspace che e'
un oggeto DAO. Tu hai la libreria DAO vero?
--
ac
y-1=x


text:
On 6 Feb, 18:15, Alessandro Cara <
alessandro.c...@ay-1asistemi.it
>

> >>>>> messaggio = "La password immessa è ERRATA."

Si' se per libreria DAO tu intendi andare su strumenti>riferimenti e
flaggare tutte le voci DAO; O no.
Provo comunque ad impostare il path e poi ti faccio sapere.
Saluti Dino


title: Numerazione record

author: Gimamon

text:
Ciao! Buongiorno a tutti
Ho il seguente problema:
Ho una tabella
p.es
. con 50 record con un campo IDCaso (non contatore)  che
li numera progressivamente e con un altro campo "Ass" (ordinato crescente)
che devo controllare in maniera tale che il 25° e il 26° record  (record
intermedio) abbiano diverso valore di "Ass".
Avrei pensato di rinumerarli assegnado al 50° il valore 1 di IDCaso e quindi
al 1° il valore 2 e così via (insomma spostando l'ultimo record al primo
posto, facendoli tutti slittare di un posto fintanto che la condizione non è
verificata) tramite queste righe di codice
   Medio = (intCasi / 2) + 1
   Do Until Ass1 <> Ass2
        Set rst1 = db.OpenRecordset("TMPCasi", dbOpenDynaset)
        rst1.MoveFirst
        rst1.FindFirst "IDCaso = " & Medio
        Ass1 = rst1("Ass")
        rst1.MovePrevious
        Ass2 = rst1("Ass")
        rst1.Close
        If Ass1 = 0 Then
            Exit Do
        Else
            If Ass1 <> Ass2 Then
                Exit Do
            Else
                For intCount1 = 1 To intCoppie Step 1
                    intCount2 = intCount1 + 1
                    If intCount1 = intCoppie Then
                        strSQL1 = "UPDATE TMPCasi SET TMPCasi.IDCaso = 1
WHERE (((TMPCasi.IDCaso)=" & intCount2 & "));"
                        DoCmd.RunSQL (strSQL)
                    Else
                        strSQL = "UPDATE TMPCasiSET TMPCasi.IDCaso = " &
intCount2 & " WHERE (((TMPCasi.IDCaso)=" & intCount1 & "));"
                        DoCmd.RunSQL (strSQL)
                    End If
                Next intCount1
            End If
        End If
    Loop
Ma ad un certo punto si blocca in quanto tutti i record hanno lo stesso
IDCaso = 50
Qualcuno mi sa dire dove è l'errore?
Grazie!
P.S. Ho postato il quesito anche su: microsoft.public.it.office.access


title: Contare dei campi data per mese e per anno

author: giaconet

text:
Ciao a tutti.
Vorrei contare le occorrenze dei record per giorno, mese e anno.
Per giorno ci sono riuscito (anche grazie a Roberto), ma per mese e per anno
non so come fare. Premesso che chiedo all'utente di inserire il mese per il
quale contare i record, come posso impostare il criterio di ricerca?
Thanx
giaconet


author: Fabio Dalla Villa

text:
"giaconet" <
giac...@wind.it
> ha scritto nel messaggio
news:9dc971$hgsrv$1...@ID-71483.news.dfncis.de...

Se ho capito il problema, io uso una query in cui mi estrapolo Anno, Mese e
Giorno con funzioni tipo Year(data) e nei criteri imposto le condizioni.
Saluti.
Fabio Dalla Villa
Biella


text:
"Fabio Dalla Villa" <
f...@gvo.it
> ha scritto nel messaggio
news:9dcan1$dh5$1...@lacerta.tiscalinet.it...

Grazie. Intanto avevo risolto con Format, ma mi sembrava pesante.
Bye
giaconet


title: Videata di partenza applicazione

text:
Ho sviluppato un'applicazione con questa sequenza di visualizzazione:
1- Lancio dell'MDB da un link
2- Visualizzazione della videata popup che ho definito come "Partenza"
tramite la configurazioni di "Avvio" (tipo videata di Spash Info)
3- Premendo un tasto dalla videata di partenza si torna alla videata di
Access che ha dei menu personalizzati, una barra personalizzata e un'icona
personalizzata (quelle standard sono eliminate) in modo da ottenere un
effetto simile a applicativi MDI (Word, Excell, ecc).
Tutto funziona perfettamente ma, per qualche secondo (penso il tempo
necessario all'applicazione ad eliminare le barre e i menu standard e
sostituire quelli programmati) vedo (sotto la videata di partenza) i menu,
le barre e l'icona standard di Access.
E' possibile eliminare questo spiacevole inconveniente ?
Grazie


title: Videata di partenza applicazione

text:
"Roby_71" <
pi...@pippo.it
> ha scritto nel messaggio
news:buqlf3$ql9$1...@atlantis.cu.mi.it...

Prova ad inserire prima di tutto il codice VBA: Application.Echo False;
chiaramente lo reimposterai a True alla fine. Suggerimento: inserisci una
gestione dell'errore inserendoci anche Application.Echo True come prima riga
per evitare spiacevoli inconvenienti...
Ciao.
--
Sergio MAZZA


title: Gestione documenti - come la fareste ?

author: RobertoA

text:
Sto rivedendo vecchie procedure dedicate alla gestione documentale, che
vorrei migliorare
Attualmente il sistema accetta ogni tipo di file, ed archivia i singoli
file contenenti pdf o immagini, senza modificarli, all'interno di una
directory SERVER\DOCUMENTALE
Una tabella del gestionale tiene associati i nomi dei singoli file alle
registrazioni contabili cosi' da poter avviare rapidamente il
visualizzatore per il file desiderato
Se nella directory docuentale sta arrivando un file omonimo di uno gia'
presente, allora viene creata una sottodirectory
nomefile_data_ora_secondi e li dentro salvato il file in arrivo
C'e' la gran rogna che in questo modo le varie postazioni client DEVONO
avere accesso alla directory SERVER\DOCUMENTALE, e questo non mi piace
pe' gnnnente
Sto pensando di creare un db separato da quelo del gestionale, destinato
a contenere solamente le immagini e blobbarcele dentro
Che dite, dpo qualche tera di immagini si scassa tutto?
Come fareste voi?


title: Gestione documenti - come la fareste ?

text:
Se rinomina la radice del server con il $ diventa non visibile...
Ovviamente è una cosa banale.

Fossi in te valutare un FTP_SERVER al quale accedi con autenticazione in modo non dipendente dalla gestione utenti del DB.
Questo ti assicura che "nessuno" possa scorazzare nel server dei file...
Quando li devi aprire download in locale... e li apri.

Se realizzi un buon sistema di salvataggio/modifica file... potresti salvare la struttura relativa nel DB e da lì poi andare nel server ftp.

@Alex


title: Gestione documenti - come la fareste ?

text:

La prima cosa che mi viene in mente e' di mantenere la procedura attuale
(tutto i files in una directory, se arrivano file omonimi allora si crea
directory con prefisso diverso coi millisecondi o guid), scrivendo e
leggendo sull'ftp server piuttosto che sul disco condiviso, ma
sostanzialmente non cambierebbe niente, anzi credo che via ftp ci sia un
plus di lavoro rispetto alla lettura risorsa condivisa
Potresti esplicitare chiaramente cosa avevi in mente quando hai scritto
"buon sistema salvataggio/modifica file" che suggerisci di usare?
Ciao e grazie


title: Gestione documenti - come la fareste ?

text:

Lavorare in FileSharing con un archivio è un metodo che non viene usato molto...
Sai bene che chi accede con Access deve avere i diritti di accesso alla cartella e di conseguenza può volendo fare dei danni...
Questo ragionamento fa si che chi sviluppa gestione documentale NON USA questo metodo.

L'uso di FTP_SERVER, che è uno dei modi che casualmente garantisce anche funzionalità in reti geografiche, sana molti dei problemi di sicurezza e di accessibilità da Reti distribuite a livello nazionale(internazionale).
Un Server FTP consente anche connessioni SSH...
Ci sono Aziende che lavorano in Rete Geografica internazionale, che devono sottostare a Normative tipo la Direttiva NIS(Europa) ma anche a extra europa... ed in tutti questi casi un FileSharing sarebbe impossibile.
Per questo suggerivo un metodo che probabilmente andrà sempre bene, ed anche se richiede qualche riga di codice in più, sarà per sempre...!

La questione di Salvataggio Modifica invece è perchè serve valutare la dimensione della struttura gerarchica e l'entità dei File, è ovvio che fare una scansione per presentare un TREEVIEW dei contenuti potrebbe richiedere tempo, quindi non è un processo da incoraggiare, per questo usare una struttura memorizzata in Locale, che va mantenuta SINCRONIZZATA con il reale...

@Alex


title: Gestione documenti - come la fareste ?

author: Ammammata

text:
Il giorno Tue 21 Aug 2018 07:37:34p, *RobertoA* ha inviato su
it.comp.appl.access il messaggio news:plhhre$aes$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

> Se nella directory docuentale sta arrivando un file omonimo di uno gia'
> presente, allora viene creata una sottodirectory
> nomefile_data_ora_secondi e li dentro salvato il file in arrivo
>

non mi piace, preferirei una tabella con ID autoincrementante che viene
usato al posto del nome del documento (a sua volta memorizzato nella
tabella stessa)
poi in giro per il database memorizzi solo l'ID
ovvimente serve una mascherina di gestione dei dati per un po' di
manutenzione quando necessaria

--
/-\ /\/\ /\/\ /-\ /\/\ /\/\ /-\ T /-\
-=- -=- -=- -=- -=- -=- -=- -=- - -=-
>>>>>
http://www.bb2002.it
 :)  <<<<<
........... [ al lavoro ] ...........


title: Gestione documenti - come la fareste ?

text:
....
>
> non mi piace, preferirei una tabella con ID autoincrementante che viene
> usato al posto del nome del documento (a sua volta memorizzato nella
> tabella stessa)
> poi in giro per il database memorizzi solo l'ID
> ovvimente serve una mascherina di gestione dei dati per un po' di
> manutenzione quando necessaria
....

Ma Windows... non gli piace avere in una Cartella 2 File UGUALI... vuole un NOME Differente... quindi, convengo con te, si rinomina con un ID PROGRESSIVO allineato all'ID della Tabella.

@Alex


title: Gestione documenti - come la fareste ?

text:

Si, in prima battuta sono partito proprio come dite voi
Poi usando il sistema, ho visto che spesso sarebbe servito avere il file
'integro', come arrivato dal campo, col nuo nome, magari perche' c'era
data e ora oppure perche' il nome richiamava il contenuto e con una
semplice ricerca sul filesystem, senza scomodare il gestionale, ti
veniva restituito quanto cercato
Per questo ho modificato, per consentire di mantenere i file intonsi,
consentendo pero' di far entrare omonimi (la creazione di directory con
nome senzaltro unico)


title: Gestione documenti - come la fareste ?

text:

Roberto, ovviamente uno fa come meglio crede, ma RINOMINARE il File con:
NomeOriginale & "_0001" & Estensione
non modifica la Data di Modifica nè quella di creazione
Un semplice STRIP del Testo Fisso agevola e tutto SENZA creare una Folder per ogni file che è poco pratica ad esempio se fai ricerche...

Ipotizza di cercare un file ed avere 10 Versioni, ti ritrovi con 9 SubFolder... ha senso...?
Ed all'utente serve l'indicazione della Folder...? NO

Chiaramente a te il tuo lavoro...

@Alex


title: Gestione documenti - come la fareste ?

text:

Non vedo nessuna differenza sostanziale tra il modificare nome file e
usare directory diverse per file omonimi
L'utente non vede proprio niente perche' opera attraverso l'interfaccia
del gestionale
Dopo avere usato un sistema che rinominava i file per alcuni mesi
(parliamo delle prime versioni ancora diversi anni fa), ho visto che
spesso tornava utile cercare alcuni files a colpi di comandi del sistema
operativo, e di conseguenza ho cambiato strategia di memorizzazione


title: Gestione documenti - come la fareste ?

text:
Il giorno Thu 23 Aug 2018 08:43:54a, *RobertoA* ha inviato su
it.comp.appl.access il messaggio news:pllka3$hau$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

> ho visto che
> spesso tornava utile cercare alcuni files a colpi di comandi del sistema
> operativo

questi bimbiminkia cresciuti a pane e computer diventano ogni giorno più
pericolosi: tra un po' vorranno avere la possibilità di usare comandi di
scrittura sulle tabelle del gestionale direttamente da SQL ;)



title: Gestione documenti - come la fareste ?

text:

Se l'utente che fa le ricerche le effettua tramite la tua interfaccia come dici... di certo non lo fa con il FileSystem... quindi hai da fare un po più fatica per convincere che quello che dici è funzionale...

I gusti sono gusti... e quì mi fermo perchè se andiamo nel campo del SOGGETTIVO è inutile anche chiedere o dare suggerimenti.

@Alex


title: Gestione documenti - come la fareste ?

text:

Non ho detto che "l'utente" fa le ricerche usando il comandi del fs
Le fa' l'amministratore quando il db immagini e' fermo oppure quando
c'e' un disallineamento tra riferimenti db e files fisici oppure quando
bisogna spostare massivamente terabyte di roba e non sai mai se c'e'
tutto come c'era prima oppure ...
E non devo convincere nessuno che cosi' sia funzionale 'in generale'
Lo e' stato per me, in moltissime occasioni
E' stato tanto utile, per me, che ho modificato il sistema iniziale, che
rinominava i files, in questo che risulta piu' efficace
Ora, dovendoci metter mano, chiedevo informazioni in base alla vostra
esperienza per migliorarlo (ed il server ftp e' una di queste)
Informazioni che poi, in base AI MIEI GUSTI, valutero' se utilizzare
oppure riservare per altri momenti
O davvero credi ingenuamente che esista

----  IL METODO MILLIORE -----

per fare una qualsiasi cosa?
Io non credo proprio, ognuno trova il proprio modo di risolvere i
problemi, in base alla propria conoscenza, alle esperienze passate, ed
ai consigli che magari riceve chiedendo aiuto
Una volta un mio insegnante alle superiori dopo la dimostrazione
analitica che un cerchio era il poligono con area massima data il
perimetro, ci propose anche una dimostrazione sperimentale
Un telaietto rettangolare immerso in acqua saponata, tirato su' il velo
di sapone copriva l'interno, ci appoggio' delicatamente un filo di
cotone annodato (gia' bagnato), che si appoggio' al velo di acqua
saponata e poi con un ago foro' il velo interno del filo, che essendo
chiuso si dispose a forma di cerchio.
Quella era la dimostrazione che, per una data circonferenza, l'area
maggiore la mostrava il cerchio e non il pentagono o il quadrato,
essenso che il velo di acqua saponata sembrava 'tirare' verso l'esterno,
e quindi massimizzando l'area all'interno del filo
Mi fa piacere che questa discussione abbia fatto affiorare un ricordo
che conservo caramente
Mi dispiace invece che la tua profonda conoscenza sugli argomenti di cui
si discute qua dentro spesso sia farcita di sarcasmo, di supponenza, di
un'ironia che non ha senso di esserci
Ciao e grazie