title: DMax Con Condizione Where

author: Franchi Graziano & Famiglia

text:
Ho una Tabella di nome ->MiaTabella
IDMiaTabella č intero lungo
Ho questi numeri memorizzati in tabella:
1500001
1500002
1600001
1600002
1600003
Dim NomeControllo as string,UltimoID as Variant
NomeControllo="IDMiaTabella"
In questo modo funziona:
UltimoID = DMax("[IDMiaTabella]", "MiaTabella",
"Int([IDMiaTabella]/100000)=16")
Il Risultato č 1600003
Se sostituisco->[IDMiaTabella]->Con->NomeControllo NON FUNZIONA
UltimoID = DMax(NomeControllo, "MiaTabella",
"Int(NomeControllo/100000)=16") -->NON FUNZIONA
Dove Sbaglio?
Saluti
Graziano


title: DMax Con Condizione Where

author: Alessandro Cara

text:
Il 06/03/2011 22.51, Franchi Graziano & Famiglia ha scritto:
> Ho una Tabella di nome ->MiaTabella
> IDMiaTabella è intero lungo
> Ho questi numeri memorizzati in tabella:
> 1500001
> 1500002
> 1600001
> 1600002
> 1600003
>
> Dim NomeControllo as string,UltimoID as Variant
>
> NomeControllo="IDMiaTabella"
>
> In questo modo funziona:
> UltimoID = DMax("[IDMiaTabella]", "MiaTabella",
> "Int([IDMiaTabella]/100000)=16")
> Il Risultato è 1600003
>
> Se sostituisco->[IDMiaTabella]->Con->NomeControllo NON FUNZIONA
> UltimoID = DMax(NomeControllo, "MiaTabella",
> "Int(NomeControllo/100000)=16") -->NON FUNZIONA
"Int(" & NomeControllo & "/100000)=16"
>
> Dove Sbaglio?
>
> Saluti
> Graziano
>
>
--
ac (x=y-1)


title: DMax Con Condizione Where

author: Franchi Flavio S.r.l.

text:
"Alessandro Cara" <
alessan...@ay-1anetwork.it
> ha scritto nel messaggio
news:YBTcp.4562$2w1....@tornado.fastwebnet.it...
> Il 06/03/2011 22.51, Franchi Graziano & Famiglia ha scritto:
>> Ho una Tabella di nome ->MiaTabella
>> IDMiaTabella č intero lungo
>> Ho questi numeri memorizzati in tabella:
>> 1500001
>> 1500002
>> 1600001
>> 1600002
>> 1600003
>>
>> Dim NomeControllo as string,UltimoID as Variant
>>
>> NomeControllo="IDMiaTabella"
>>
>> In questo modo funziona:
>> UltimoID = DMax("[IDMiaTabella]", "MiaTabella",
>> "Int([IDMiaTabella]/100000)=16")
>> Il Risultato č 1600003
>>
>> Se sostituisco->[IDMiaTabella]->Con->NomeControllo NON FUNZIONA
>> UltimoID = DMax(NomeControllo, "MiaTabella",
>> "Int(NomeControllo/100000)=16") -->NON FUNZIONA
>
> "Int(" & NomeControllo & "/100000)=16"
>
>>
>> Dove Sbaglio?
>>
>> Saluti
>> Graziano
>>
>>
>
>
> --
>
> ac (x=y-1)
Funziona
1000 Grazie


title: ricerca stringa in listbox

text:
buonasera,
a2003
come posso fare per trovare in una colonna di una listbox l'occorrenza di una stringa (StrBibita) e di quante n volte?
ho provato anche con esempi in rete, ma non ci sono riuscito.
Grazie


title: ricerca stringa in listbox

author: BFS

text:

se la listbox è alimentata da tabella/query ti basta fare un dcount su
tale tabella/query con il filtro opportunamente costruito

esempio
tabella1 con campi id, nome

vuoi sapere quante righe nella tabella1 hanno la parola pippo dentro il
campo nome

MsgBox DCount("id", "tabella1", "nome like '*pippo*'")

se invece la listbox non è associata devi fare un ciclo per scorrerla ed
ad ogni step cercare se la stringa è presente

ciao
BFS


title: ricerca stringa in listbox

text:
La listbox non è associata,
sto provando a fare un ciclo .
la listbox è multicolonna,e voglio fare la ricerca solo su una determinata colonna
ho visto che in VB esiste la proprietà .list(riga,colonna) ma non mi funziona.
esiste un corrispondente o modo laternativo on vba access ?
Grazie


title: ricerca stringa in listbox

text:
Se non è associata analizza la stringa RowSource.
Ovviamente poi sw serve ricostruire l'index è abbastanza semplice...

@Alex


title: ricerca stringa in listbox

text:
cut
Grazie per le risposte, ma mi sono reso conto che ho postato il mio problema in modo sbagliato.
Mi scuso e spero leggiate il prossimo topic che inserisco


title: Impostare i margini in un report

text:
Cerco di stampare delle etichette in formato A4 che hanno sia il margine
superiore che inferiore pari a zero, in imposta pagina del report
sostituisco il valore con un bello zero ma puntualmente viene sostituito.
Posso impostarlo nell'on load del report?
grazie
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Impostare i margini in un report

author: Simone Calligaris

text:
"fe_lo" <
> Cerco di stampare delle etichette in formato A4 che hanno sia il margine
> superiore che inferiore pari a zero, in imposta pagina del report
> sostituisco il valore con un bello zero ma puntualmente viene sostituito.
> Posso impostarlo nell'on load del report?
> grazie
Non dipende da Access ma dai limiti fisici della stampante ... sempre
superiori allo zero.
Saluti


title: alcune dritte grazie!

text:
ciao, ho appena iniziato ad entrare nel mondo access ma devo
sviluppare con urgenza il seguente database per gestire le offerte:
dovrei inserire una serie di materiali ed associare ad ognuno di essi
vari fornitori che mi devono elaborare l'offerta di vendita relativa
agli stessi. Devo quindi sviluppare un database snello che mi permetta
di inserire i materiali, i fornitori ad essi associati e specificare a
lato di ogni fornitore se mi ha già fatto pervenire o meno l'offerta.
Successivamente devo avere a disposizione dei report che mi permettano
di visualizzare i per ogni fornitore le offerte che deve ancora farmi
pervenire.  Grazie in anticipo per l'eventuale aiuto!
(a proposito...mi sapete indicare per favore dove posso trovare in
rete una guida completa di Access 2002? grazie)
Alex


title: alcune dritte grazie!

author: SiculoDoc

text:
<
mon...@infinito.it
> ha scritto nel messaggio
news:e26d0c7a-6291-40a4...@a23g2000hsc.googlegroups.com...

================================================
Scritta così da' l'idea di dover partire da zero e non é proprio banale.
Se sei a digiuno completo di ACCESS, compra un libro. Normalmente hanno
tutti
degli esempi che si possono adattare senza essere degli addetti ai lavori.
G
====================================================


title: QrCode e database

author: pfm

text:
salve

avete dei consigli su come iniziare a creare un app per leggere una QrCode collegata ad un database access?

Grazie anticipatamente


title: QrCode e database

author: RobertoA

text:

Puoi usare anche le varie app gia' belle e pronte
In definitiva quello che fanno e' leggere testo contenuto nel codice,
avviare un browser web, e visualizzare la pagina memorizzata nel testo
Esempio, se nel qr-code ci metti
www.pippo.it/articolo1.htm
  l'app ti
portera' su quella pagina, che ovviamente deve esistere se vuoi
visualizzare qualcosa
Il db Access dovra' periodicamente andare ad aggiornare il sito web


title: Apri file word

author: Paolo Agagiů

text:
Ciao a tutti e grazie in anticipo.
Come posso creare un pulsante in una maschera che mi apre un documento
word????


title: Apri file word

author: Giuseppe

text:
"Paolo Agagiů" <
aga...@tiscalinet.it
> ha scritto nel messaggio
news:8munfm$8il$1...@lacerta.tiscalinet.it...
> Ciao a tutti e grazie in anticipo.
> Come posso creare un pulsante in una maschera che mi apre un documento
> word????
>
>
>
Dobbiamo aprire il file Doc1 posizionato nella cartella C:\Documenti
Dim lngVal As Long
lngVal = Shell("C:\Programmi\Microsoft Office\Office\Winword.exe
c:\Documenti\Doc1.doc ", vbNormalFocus)
giuseppe


title: Incompatibilità Access 2000 e Sql Server 2000 ?

author: Giorgio

text:
Salve a tutti,
ho un progetto in Access2000 con Sql Server 2000
(prima girava con Sql Server 7)
sapete se ci sono incompatibilità tra i due ?
Sul sito Microsoft le incompatibilità parlano solo delle
procedure e qualche altro problemino.
Sembra funzionare tutto ma vorrei essere un po' più
tranquillo.
Un grazie a quanti mi risponderanno
ed un saluto a tutti gli altri.
Giorgio


author: giorgio rancati

text:
"Giorgio" <
navarrag@tiscalinet_nospam.it
> ha scritto nel messaggio
news:tziTd.584333$b5.26...@news3.tin.it...

Ciao Giorgio,
Il seguente articolo mostra le incompatibilità ma anche il modo per
risolverle.
------------
Description of incompatibility issues between Access 2000 projects (*.adp)
and SQL Server 2000
http://support.microsoft.com/default.aspx?scid=kb;en-us;269824&Product=acc2000
------------
Se hai installato i service pack di Office 2000 non dovresti avere alcun
problema.
Ciao Giorgio


text:
"giorgio rancati" <
giorgio_No_Sp...@tiscali.it
> ha scritto nel
messaggio news:421dd0ac$0$32346$5fc...@news.tiscali.it...
>
> > ho un progetto in Access2000 con Sql Server 2000
> > (prima girava con Sql Server 7)
> > sapete se ci sono incompatibilità tra i due ?
> > Sul sito Microsoft le incompatibilità parlano solo delle
> > procedure e qualche altro problemino.
> >
>
> Ciao Giorgio,
> Il seguente articolo mostra le incompatibilità ma anche il modo per
> risolverle.
> ------------
> Description of incompatibility issues between Access 2000 projects (*.adp)
> and SQL Server 2000
>
http://support.microsoft.com/default.aspx?scid=kb;en-us;269824&Product=acc2000
> ------------
> Se hai installato i service pack di Office 2000 non dovresti avere alcun
> problema.
>
Grazie mille
Ciao
Giorgio


title: [Stringhe] Eliminare un carattere finale

author: Alessandro Baraldi

text:
Ho una stringa composta da diverse righe, come separatore ho vbNewline
Alla fine della stringa posso avere un numero indefinito di vbNewLine.
Dovrei togliere tutti i vbNewLine in coda alla stringa.
Questa cosa mi stà un pò facendo innervosire.
Ho provato questa ma dà bruttissimi risultati:
 Do Until InStrRev(sArr, vbNewLine)=0
     sArr = Mid$(sArr, 1, InStrRev(sArr, vbNewLine))
 Loop
Risultato mi mangia tutta la stringa ovviamente, ad eccezione della 1°
riga.
Sono certo sia semplice, ma ad ora sono in tilt...!
Se qualcuno ha una soluzione
@Alex


author: Sergio MAZZA

text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio news:1151688392.4...@p79g2000cwp.googlegroups.com...








@Alex
[risposta]
Ma il Replace?
Ciao.
--
Sergio MAZZA


text:
Sergio MAZZA ha scritto:
> [risposta]
> Ma il Replace?
>
> Ciao.
> --
> Sergio MAZZA
MMmmmm, come ti dicevo il vbNewLine c'è in tutta la stringa, se uso il
Replace
che mi combina...?
Il problema è solo sui NewLine in coda, e non saprei come fermarmi
quando non ce ne sono più in coda...!
Supponi che ci siano in coda 3 vbNewLine..
Es:
"Alex" & vbnewLine & "Sergio" & vbnewLine & "Roberto" & vbnewLine &
vbnewLine & vbnewLine
Come tolgo solo quelli in fondo..?
@Alex


text:

temo che gli faccia la replace anche dei new line intermedi
aVar = split(mystr,vbcrlf)
for each aEl in avar
	if ael<>"" then "e' bona"
next
--
ac


author: wlady

text:
Alessandro Baraldi ha scritto:

' Conta quanti VbNewLine ci sono in fondo
For X = (Len(sArr) - Len(vbNewLine) - 1) To 1 Step Len(vbNewLine) * -1
If Mid(sArr, X, Len(vbNewLine)) = vbNewLine Then a = a + 1
Next X
' Elimina i VbNewLine dal fondo
sArr = Left(sArr, Len(sArr) - ((a - 1) * Len(vbNewLine)))
ciao


text:
wlady ha scritto:
> ' Conta quanti VbNewLine ci sono in fondo
> For X = (Len(sArr) - Len(vbNewLine) - 1) To 1 Step Len(vbNewLine) * -1
> If Mid(sArr, X, Len(vbNewLine)) = vbNewLine Then a = a + 1
> Next X
> ' Elimina i VbNewLine dal fondo
> sArr = Left(sArr, Len(sArr) - ((a - 1) * Len(vbNewLine)))
>
> ciao
Mo la provo poi ti dico, in sostanza è uguale a quanto scritto da
Alessandro Cara
ma se funzionano entrambe direi che la soluzione di A.C. è più
elegante.
Grazie
@Alex


text:
Alessandro Cara ha scritto:
[CUT ]
> temo che gli faccia la replace anche dei new line intermedi
Si era proprio così...!
> aVar = split(mystr,vbcrlf)
> for each aEl in avar
> 	if ael<>"" then "e' bona"
> next
> --
> ac
Bella soluzione, la provo subbito..!
@Alex


text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:1151688392.4...@p79g2000cwp.googlegroups.com...
>Ho una stringa composta da diverse righe, come separatore ho vbNewline
>Alla fine della stringa posso avere un numero indefinito di vbNewLine.
>Dovrei togliere tutti i vbNewLine in coda alla stringa.
>Questa cosa mi stà un pò facendo innervosire.
>Se qualcuno ha una soluzione
>@Alex
una bella for next ?
----
Function FiltravbNewLine(ByVal strIn As String) As String
Dim i As Long
For i = Len(strIn) - 1 To 1 Step -2
    If Mid(strIn, i, 2) <> vbNewLine Then Exit For
Next
FiltravbNewLine = Left(strIn, i + 1)
End Function
----
Ciao
--
Giorgio Rancati
[Office Access MVP]


text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:1151693132....@d56g2000cwd.googlegroups.com...
> aVar = split(mystr,vbcrlf)
> for each aEl in avar
> if ael<>"" then "e' bona"
> next
> --
> ac
>Bella soluzione, la provo subbito..!
ochio che cosě filtri anche le concatenazioni di vbcrlf in mezzo alla
stringa.
----
Stringa="aaa"+vbCrLf+vbCrLf+"bbb"+vbCrLf+vbCrLf+vbCrLf



text:
giorgio rancati ha scritto:

Ok Giorgio funziona bene.
Grazie
@Alex


text:
wlady ha scritto:
> ' Conta quanti VbNewLine ci sono in fondo
> For X = (Len(sArr) - Len(vbNewLine) - 1) To 1 Step Len(vbNewLine) * -1
> If Mid(sArr, X, Len(vbNewLine)) = vbNewLine Then a = a + 1
> Next X
> ' Elimina i VbNewLine dal fondo
> sArr = Left(sArr, Len(sArr) - ((a - 1) * Len(vbNewLine)))
>
> ciao
Come ha detto Giorgio la soluzione di Alessandro non tiene conto della
possibilità
del doppio vbNewLine intermedio, questa soluzione però ha un problema
simile.
Vale a dire che mi elimina tanti caratteri finali quanti sono i
vbNewLine consequenziali
che trova nel testo intermedio.
La soluzione di Giorgio è quella che dopo le prove non mi ha dato
problemi.
Ciao Wlady grazie.
@Alex


text:
Alessandro Baraldi ha scritto:

sì in effetti è molto simile alla mia, ma di sicuro molto più
semplificata
contento che tu abbia risolto :)
ciao


text:
wlady ha scritto:
[CUT]
> sì in effetti è molto simile alla mia, ma di sicuro molto più
> semplificata
> contento che tu abbia risolto :)
>
> ciao
Forse no mi sono spiegato bene.
La tua soluzione è si simile a quella di Giorgio ma ha un baco, cioè
che se metto vbNewLine multipli in posizioni intermedie mi mangia
caratteri finali.
Ciao
@Alex


text:
Alessandro Baraldi ha scritto:

beh i bachi devono pur mangiare...altrimenti come fanno a diventare
farfalle ;)


text:
wlady ha scritto:
[CUT]
> beh i bachi devono pur mangiare...altrimenti come fanno a diventare
> farfalle ;)
Bellissima battua, mi hai rinfrescato la giornata...!
;-)
Sono convinto sia un bachetto da poco, il problema è che dovrà
mangiare molto
per crescere...
Ciao buon WeekEnd
@Alex


text:
"Alessandro Cara" <
al...@puntablunet.it
> ha scritto nel messaggio news:Ozdpg.5288$yg6....@tornado.fastwebnet.it...
>
> temo che gli faccia la replace anche dei new line intermedi
>
> aVar = split(mystr,vbcrlf)
> for each aEl in avar
> if ael<>"" then "e' bona"
> next
> --
> ac
Avevo capito male...
Ciao.
--
Sergio MAZZA


text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio news:1151689891.3...@p79g2000cwp.googlegroups.com...
MMmmmm, come ti dicevo il vbNewLine c'č in tutta la stringa, se uso il
Replace
che mi combina...?
Il problema č solo sui NewLine in coda, e non saprei come fermarmi
quando non ce ne sono piů in coda...!
Supponi che ci siano in coda 3 vbNewLine..
Es:
"Alex" & vbnewLine & "Sergio" & vbnewLine & "Roberto" & vbnewLine &
vbnewLine & vbnewLine
Come tolgo solo quelli in fondo..?
@Alex
[risposta]
Avevo capito che li volevi tigliere tutti e difatti mi sembrava strano che non utilizzassi la Replace...
Ciao.
--
Sergio MAZZA
Ciao.
--
Sergio MAZZA


text:
Sergio MAZZA wrote:
> Avevo capito male...
Conoscendoti (via post) mi sembrava chiaro.
Anch'io, facendo delle illazioni ed in modo incompleto, ho suggerito
qualcosa che toglieva anche +newline intermedi.
In questi casi sento la mancanza delle espressioni regolari native.
un bel replace("\n+$","") sarebbe stato il massimo.
Ma con questo caldo perche' non stai al "Battistini" (esiste ancora?) a
"panza all'aria?"
--
ac


text:
Alessandro Baraldi ha scritto:

altrettanto a te
ciao


text:
"Alessandro Cara" <
al...@puntablunet.it
> ha scritto nel messaggio news:Yrrpg.5914$yg6....@tornado.fastwebnet.it...

Manchi da parecchio da Ostia vero?
Prova solo ad avvicinarti all'entrata di qualche gestore e poi mi fai sapere.
Ti dico solo che questa stagione, ai "locali" nei giorni feriali, ci hanno proposto un pacchetto con sconto del 10-20%!
Però se vuoi cedere Totti, Mammuccari e le orde di Veline non c'è problema; li trovi tutti qui...
Per fortuna la spiaggia migliore, quella che faceva parte della tenuta del Presidente, ancora resiste (leggi: i cancelli); ma devi
alzarti alle 6 e andartene alle 20:00 o alle 13:00 sotto il solleone se vuoi cavartela con solo 45min. di auto.
No; Ostia l'estate è improponibile... Ne è passata di acqua sotto i ponti da quando mi facevo di corsa tutta la spiaggia da Levante
a Ponente senza che ti rompevano i buttafuori. Eh sì! Negli stabilimenti ci sono loro che evitano il passaggio di chi vuole solo
transitare e con l'asciugamano fermarsi un po' per prendere il sole. Ti si piazzano li o davanti ai tui piedi o ti ritrovi la nuca
appoggiata sulle loro fette! Se poi se uno che se le cerca, non c'é problema, la scazzottata è garantita; anche se chiami i vigili
(in)urbani e cerchi di far valere i 3m di battigia franca...
Basta che sennò mi si alza la temperatura e non è proprio il caso...
Ciao.
P.S. Ma farti vedere da queste parti noo? Il gelato lo fanno ancora buono e i krapfen pure...
--
Sergio MAZZA


title: Problema risolto con gestione memoria di sistema

author: Gippe

text:
Volevo comunicare che installando il service pack sp 1a per office 2000 ho
risolto il problema da me riscontrato e discusso in un precedente tread.
Pubblico tale risultato al fine d'essere d'ausilio per altri malcapitati.
Ringrazio Jonathan Canova per il prezioso consiglio e anche gli altri amici
che si sono preoccupati di darmi una mano.
Saluti a tutti.
Gippe.


text:
Gippe ha scritto:

io ti consigliere di togliere anche le immagini. Guada quanto e' grosso
il tuo db. Se proprio non puoi farne a meno, collegale.
--
a.cara
togli qualcosa dall'email


text:
"Alessandro Cara" <
alexqu...@blunet.it
> ha scritto nel messaggio
news:3F6F61C5...@blunet.it...

Il collegare a cosa è riferito? Io di solito preparo la maschera e poi lo
sfondo lo scelgo andando nella cartella di office dove trovo le bitmap.
Ora comunque ho monitorato la memoria e tutto resta inalterato.
Grazie.
Gippe


text:
Gippe wrote:
>
[cut]
> >
> > io ti consigliere di togliere anche le immagini. Guada quanto e' grosso
> > il tuo db. Se proprio non puoi farne a meno, collegale.
>
> Il collegare a cosa è riferito? Io di solito preparo la maschera e poi lo
> sfondo lo scelgo andando nella cartella di office dove trovo le bitmap.
> Ora comunque ho monitorato la memoria e tutto resta inalterato.
non mi riferivo alla gestione della memoria. Ho letto che il problema lo hai
risolto.
Ti suggerivo di non incorporare l'immagine per evitare di "gonfiare" il db.
--
a.cara
Togli qualcosa dall'email


text:
"Alessandro Cara" <
alexqu...@blunet.it
> ha scritto nel messaggio
news:3F704B78...@blunet.it...

Ok! Grazie del consiglio.
Gippe


title: Maschere a visualizzazione continua

author: kecco's

text:
Ciao a tutti!
E' possibili fissare il numero di record di una maschera a
visualizzazione continua?
Io vorrei che sulla mia maschera venisse visualizzato un numero fisso
di record e che i rimanenti si potessero visualizzare scorrendo la
barra...
Idee?
Grazie!
F


title: Maschere a visualizzazione continua

text:
"kecco's" <
francesc...@gmail.com
> ha scritto nel messaggio
news:1160065719.8...@i3g2000cwc.googlegroups.com...

Sottomaschera?
> Grazie!
>
> F
Ciao.
--
Sergio MAZZA


title: Da una tabella selezionare alcun record per stampa

author: Giampaolo :-)

text:
Salve a tutti
Il mio problema è questo:
Ho una tabella Prodotti e visonati i record attraverso una maschera,
vorrei avere la possibilità di scegliere (flaggare ???) solo alcuni record
per poi stampare solo questi.
Non riesco a concepire un metodo: potete darmi uno spunto?
WinME - Acces 2000
Grazie
Giampaolo


author: Roberto da casa

text:
"Giampaolo :-)" <
kai...@libero.it
> ha scritto nel messaggio
news:WQUhb.199781$hE5.6...@news1.tin.it...

Vai sul Sito Comune (link qui sotto) e nella Sezione Reports leggi la FAQ
intitolata "Come si può filtrare un report in base alla selezione multipla
effettuata su una casella di riepilogo?".
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


text:
"Giampaolo :-\)" <
kai...@libero.it
> wrote in message
news:WQUhb.199781$
hE5.6...@news1.tin.it

Ci sono almeno 2 buoni sistemi per farlo.
1)Semplicissimo
  Inserisci nella tua Tabella un Campo aggiuntivo(Stampa) tipo Si/No
  che puoi usare per discriminare solo i Record con campo Si/No=Si
  Questo campo si presta ad essere associato al controllo CheckBox
  che non è altro che il Flag che dicevi.
  Fatto questo ti prepari una Query basata sulla Tabella in questione
  includi i Campi che ritieni necessari al fine di generare il Report
  ed inserisci un criterio nel campo che hai aggiunto [Stampa]=Si.
  Quando apri il Report devi modificare l'origine dati dalla Tabella
  alla tua Nuova Query.
2)Una ListBox a selezione Multipla che ti permette di selezionare
  i Record da stampare e passarli all'origine del Report come WHERE
  Conditon.
  Questo esempio è decisamente più complesso, ma mi pare ce ne
  sia un valido esempio, forse di Roberto sul sitoComune.
www.sitocomune.com
Ciao.
@Alex.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:EzVhb.27494$vO5.1...@twister1.libero.it...
>
> "Giampaolo :-)" <
kai...@libero.it
> ha scritto nel messaggio
> news:WQUhb.199781$hE5.6...@news1.tin.it...
[cut]
> Vai sul Sito Comune (link qui sotto) e nella Sezione Reports leggi la FAQ
> intitolata "Come si può filtrare un report in base alla selezione multipla
> effettuata su una casella di riepilogo?".
>
> --
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
Grazie !
Giampaolo


text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:7d12e2c5dee9d0091f...@mygate.mailgate.org...
> "Giampaolo :-\)" <
kai...@libero.it
> wrote in message
> news:WQUhb.199781$
hE5.6...@news1.tin.it
> [CUT]
>
> Ci sono almeno 2 buoni sistemi per farlo.
> 1)Semplicissimo
>   Inserisci nella tua Tabella un Campo aggiuntivo(Stampa) tipo Si/No
>   che puoi usare per discriminare solo i Record con campo Si/No=Si
>   Questo campo si presta ad essere associato al controllo CheckBox
>   che non č altro che il Flag che dicevi.
>   Fatto questo ti prepari una Query basata sulla Tabella in questione
>   includi i Campi che ritieni necessari al fine di generare il Report
>   ed inserisci un criterio nel campo che hai aggiunto [Stampa]=Si.
>   Quando apri il Report devi modificare l'origine dati dalla Tabella
>   alla tua Nuova Query.
>
> 2)Una ListBox a selezione Multipla che ti permette di selezionare
>   i Record da stampare e passarli all'origine del Report come WHERE
>   Conditon.
>   Questo esempio č decisamente piů complesso, ma mi pare ce ne
>   sia un valido esempio, forse di Roberto sul sitoComune.
> Ciao.
> @Alex.
>
Grazie
Giampaolo
P.S. E' sicuramente (come hai scritto tu) piů veloce il primo metodo.


title: report: stampa di caselle di testo solo in certe pagine

author: fabio

text:
Devo poter stampare un campo a piè di pagina in tutte le pagine tranne
l'ultima.
Devo anche poter stampare un campo in intestazione di pagina in tutte le
pagine tranne la prima.
(Sto parlando di campi per riporti da scrivere poi a mano in un tabulato per
offerte a prezzi unitari per lavori pubblici)
Come si fa?
Grazie
--
Ing. Fabio Dalla Villa
U.T. CORDAR S.p.A.
Viale Roma n.14
13900 - Biella (BI)
tel. +39 15 405852 int 49
fax +39 15 8495581


author: MA

text:
Il 13 Feb 2003, 16:41, "fabio" <
cor...@tiscali.it
> ha scritto:
> Devo poter stampare un campo a piè di pagina in tutte le pagine tranne
> l'ultima.
> Devo anche poter stampare un campo in intestazione di pagina in tutte le
> pagine tranne la prima.
> (Sto parlando di campi per riporti da scrivere poi a mano in un tabulato
per
> offerte a prezzi unitari per lavori pubblici)
> Come si fa?
> Grazie
If
me.page
=pages then tuocampo.visible = false
If me page = 1 then tuocampo.visible = false
ciao MAssimiliano
P.s. Me.MAssimiliano.visible = false ;-]
--------------------------------
Inviato via
http://usenet.libero.it


text:
Il 13 Feb 2003, 16:41, "fabio" <
cor...@tiscali.it
> ha scritto:
> Devo poter stampare un campo a piè di pagina in tutte le pagine tranne
> l'ultima.
> Devo anche poter stampare un campo in intestazione di pagina in tutte le
> pagine tranne la prima.
> (Sto parlando di campi per riporti da scrivere poi a mano in un tabulato
per
> offerte a prezzi unitari per lavori pubblici)
> Come si fa?
> Grazie



text:
Devo poter stampare un campo a piè di pagina in tutte le pagine tranne
l'ultima.
Devo anche poter stampare un campo in intestazione di pagina in tutte le
pagine tranne la prima.
(Sto parlando di campi per riporti da scrivere poi a mano in un tabulato per
offerte a prezzi unitari per lavori pubblici)
Come si fa?
Per esempio, posso rendere invisibile il controllo per certe pagine con una
IF dietro un certo evento?
Grazie
fabio
nomec...@tiscali.it
Biella


author: Alessandro Cara

text:

si evento di formattazione. Se non erro il sistema mette a disposizione
sia
il numero di pagina (page?) che il numero di pagine (pages?)
--
a.cara
Togli qualcosa dall'email


text:
"fabio" <
cor...@tiscali.it
> ha scritto nel messaggio
news:b2og8j$bi8$1...@usenet.itgate.net...

Hai già postato questo quesito il 13/2/2003 alle ore alle ore 16:41 e MA ti
ha risposto lo stesso giorno alle ore 17:16.
Se qualcosa non ti è chiara, perché non l'hai detto replicando a MA nel
precedente thread?
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


author: Fabio Dalla Villa

text:
> Hai già postato questo quesito il 13/2/2003 alle ore alle ore 16:41 e MA
ti
> ha risposto lo stesso giorno alle ore 17:16.
> Se qualcosa non ti è chiara, perché non l'hai detto replicando a MA nel
> precedente thread?
> --
> Roberto
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
Perchè ho fatto casino col computer: ha perso i messaggi e non riuscivo a
sottoscrivere nuovamente il NG.
Poi tutto ha ripreso a funzionare 2gg dopo. (Il PC ha fatto tutto da solo,
io non l'ho più toccato, giuro). Dato che vedevo solo una risposta al
quesito ed era passata una settimana, ho ripostato. Non lo faccio più.
Ciao
--
Fabio Dalla Villa
Biella
nomec...@tiscali.it


text:
"Fabio Dalla Villa" <
fabioda...@tiscali.it
> ha scritto nel messaggio
news:b2ran7$mrl$1...@usenet.itgate.net...
[CUT]
> Non lo faccio più.
> Ciao
>
> --
> Fabio Dalla Villa
E va beh, pe' sta volta ti perdoniamo. :-))))



title: Pubblicazione di un data base su server remoto.

text:
Buongiorno a tutti,
č possibile trasferire via ftp su un server remoto un file .mdb utilizzando
un comando VBA (fileCopy, xcopy, TransferDatabase) senza dover utilizzare la
procedura manuale con Esplora risorse o altre utility per ftp?
grazie anticipatamente
thomas.az


text:
"
thomas.az
" <
thomas.a...@alice.it
> ha scritto nel messaggio
news:46c5bb1b$0$37198$4faf...@reader3.news.tin.it...
> Buongiorno a tutti,
> è possibile trasferire via ftp su un server remoto un file .mdb

scusate,
non avevo letto la risposta di VT@Work all'analoga richiesta di Marco_67 di
ieri.
... sulla soluzione c'è da studiare!
ciao a tutti
thomas.az


title: Query di aggiornamento

author: Luxor

text:
Ciao a tutti. Il problema è il seguente: ho una tabella clienti con
dati anagrafici, città e provincia.
Ho aggiunto il campo regione alla precedente tabelle ed ora devo
riempirlo con la regione corrispondente alla provincia già immessa.
Pensavo di farlo con una query di aggironamento e mi sono procurato
una tabella contenente tutti i comuni con relativa provincia e regione.
Come devo procedere adesso?


title: Query di aggiornamento

text:
"Luxor" <
a...@bbb.cc
> ha scritto nel messaggio
news:iJDsi.81323$U01.7...@twister1.libero.it...

ho risolto da solo, bastava impostare correttamente i criteri aiutandosi
col generatore di espressioni.


title: Query aggiornamento, meglio su una tabella o più tabelle?

author: Cristina Bernazzani

text:
Buonasera a tutto il ng
Vorrei un vs parere su in piccolo db che sto costruendo e che grazie a voi sta prendendo forma :-)
Faccio un esempio senza tante parole ..altrimenti rischio di incastrarmi. La situazione.
tbAziende/FrmAziende
tbProgress/FrmProgress (su tbProgress.   [Attività] (tramite maschera ovviamente) inserisco varie tipologie di attività tra cui "Proposta" e
"Chiusura" e a seguire il valore per ogni singolo prodotto ( 50)
Orbene: Quando una "Proposta" diventa " Chiusura" clono il record (grazie Cinzia!) facendolo diventare " Chiusura" e modificando, se il caso, i dati.
Successivamente aggiorno tbAziende ( Valore tabAziende+Valore tbProgress)  attraverso una query di aggiornamento, col filtro " Chiusura" per ogni
singolo cliente. In questo modo ho sempre il dato di venduto di ogni singolo prodotto.
Dovrei però poter aggiornare anche i valori "Proposta" in quanto, con gli opportuni calcoli ponderati,i due valori assieme potrebbero restituirmi una
  "proiezione" per ogni singolo prodotto.
E qui non so come orientarmi ....
1) Duplico la tabAziende dove vado ad aggiornare come sopra, ma in questo caso filtro "Proposta" e poi attraverso query mi calcolo una Proiezione
facendo i calcoli sulle due ...oppure
2) Nel momento in cui creo una "Proposta" vado a clonare il record Cliente su tbAziende in modo da trovarmi due record per lo stesso cliente, ma uno
Proposta" ed un altro " Chiusura?
Pensandoci, la seconda mi sembra poco percorribile anche per l'unicità dell' IDqualsiasicosa...o no ?
3) Aggiungo ulteriori campi alla tbAzienda....ma sono già una settantina...non vado ad appesantire troppo la tabella
(in questo caso dovrei aggiungerne altri 40)?
Come posso fare secondo voi ?
Grazie a chi mi darà un parere ed una indicazione.
Un abbraccio virtuale a tutti
Cristina


title: backUp

author: GahanaWay

text:
Su access 97, come posso fare in modo che la macro di BackUp venga eseguita
solo quando il DB viene chiuso, e non uno specifico oggetto (maschere ,
report) ?
thks


title: backUp

text:
Maschera nascosta che gestisce la chiusura del DB.
Non hai altre alternative non essendo in essere nulla senza Maschere
aperte.
P.S. altrimenti devi gestire la chiusura di Access disabilitando i
pulsanti di chiusura
ed i ContextMenù, ma poi ti rimane ALT+F4 che ti riporta all'uso di
una Form Hidden.
@Alex


title: Contatore... o no?

author: Adriano

text:
Ho un database composto da una tabella 'anagrafica clienti' e un'altra
'Protocollo Ordini'.
Non tutti i clienti hanno corrispondenza nell'altra tabella perché non tutti
fanno ordini (magari...).
Ovviamente tutte le operazioni avvengono su maschere.
Per il numero protocollo ho predisposto un campo contatore (+1) che però
parte anche se accidentalmente inserisco un solo carattere in un campo di
questa tabella (maschera).
Mi chiedo: è possibile avere in un campo di una maschera una generazione di
numeri sequenziale senza un campo contatore e che mi parta solo se, per
esempio, faccio due clic sul campo (o qualche altro 'segnale'
inequivocabile)?
Scusate se uso una terminologia impropria, ma sono 'neofita'.
Grazie a chi mi aiuterà
Ciao
Adriano


title: Contatore... o no?

author: Antonio Biso

text:
Adriano <
a.n...@tiscalinet.it
> wrote in message
9rbj4c$m25$1...@pegasus.tiscalinet.it...

Non sei neofita, sei scemo, perchè t'abbiamo già risposto!!!!
Antonio


title: Contatore... o no?

author: Silvio Berruti

text:
"Antonio Biso" <
ch...@etruria.net
> ha scritto nel messaggio
news:HLdC7.7120$Qj6.6...@news.infostrada.it...

Dai, non offendere... è solo distratto...
--
Silvio
il sito comune di it.comp.appl.access:
http://www.sitocomune.com


title: Contatore... o no?

text:
Silvio Berruti <
sber...@libero.it
> wrote in message
%JwC7.13298$Qj6.9...@news.infostrada.it...
>
> > > Mi chiedo: è possibile avere in un campo di una maschera una
generazione
> > di
> > > numeri sequenziale senza un campo contatore e che mi parta solo se,
per
> > > esempio, faccio due clic sul campo (o qualche altro 'segnale'
> > > inequivocabile)?
> > >
> > > Scusate se uso una terminologia impropria, ma sono 'neofita'.
> >
> > Non sei neofita, sei scemo, perchè t'abbiamo già risposto!!!!
> >
>
> Dai, non offendere... è solo distratto...
Ma io non l'ho offeso, ho solo constatato un dato di fatto oggettivo...
Antonio


title: Visualizzare un'immagine esterna tramite un collegamento

author: [§] DjMiX [§]

text:
Salve a tutti.
Ho cercato nei thread precedenti e nel sito comune senza nessuna soluzione.
Ho creato un db per l'archiviazioni dei cd - dvd - vcd. In una maschera
avrei bisogno di visualizzare la copertina del cd.
Non voglio immagazzinare le immagini nel db (sarebbe una pazzia), quindi ho
optato alla soluzione del collegamento esterno: tramite un tool che ho
trovato, tramite un pulsante, apro la finestrella "Apri" di Windows e scelgo
il file immagine (tutte le immagini sono in jpeg) dopodicchč formo la
stringa che contiene il percorso assoluto del file (quindi
c:\immagini\img.jpg).
Come faccio ora per visualizzare l'immagine nella form, e poi anche nel
report?
grazie a tutti


author: TIR

text:
"[§] DjMiX [§]" <
NOSPAMdjmi...@libero.it
> ha scritto nel messaggio
news:EOCt9.25017$aL4.7...@news1.tin.it...
> Salve a tutti.
> Ho cercato nei thread precedenti e nel sito comune senza nessuna
soluzione.
> Ho creato un db per l'archiviazioni dei cd - dvd - vcd. In una maschera
> avrei bisogno di visualizzare la copertina del cd.
> Non voglio immagazzinare le immagini nel db (sarebbe una pazzia), quindi
ho
> optato alla soluzione del collegamento esterno: tramite un tool che ho
> trovato, tramite un pulsante, apro la finestrella "Apri" di Windows e
scelgo
> il file immagine (tutte le immagini sono in jpeg) dopodicchè formo la
> stringa che contiene il percorso assoluto del file (quindi
> c:\immagini\img.jpg).
> Come faccio ora per visualizzare l'immagine nella form, e poi anche nel
> report?
>
> grazie a tutti
>
>
Memorizza il percorso in un campo della tabella cd,
inserisci un controllo image sul form o sul report e nell'evento current
imposta la proprietà del controllo immagine con il percorso momorizzato.
Ciao TIR


author: Claudio

text:
"[§] DjMiX [§]" <
NOSPAMdjmi...@libero.it
> ha scritto nel messaggio
news:EOCt9.25017$aL4.7...@news1.tin.it...
> Salve a tutti.
> Ho cercato nei thread precedenti e nel sito comune senza nessuna soluzione.
Non hai cercato bene. Ci sono decinaia di post sull'argomento.
> Ho creato un db per l'archiviazioni dei cd - dvd - vcd. In una maschera
> avrei bisogno di visualizzare la copertina del cd.
> Non voglio immagazzinare le immagini nel db (sarebbe una pazzia), quindi ho
> optato alla soluzione del collegamento esterno: tramite un tool che ho
> trovato, tramite un pulsante, apro la finestrella "Apri" di Windows e scelgo
> il file immagine (tutte le immagini sono in jpeg) dopodicchè formo la
> stringa che contiene il percorso assoluto del file (quindi
> c:\immagini\img.jpg).
> Come faccio ora per visualizzare l'immagine nella form, e poi anche nel
> report?
Crea un controllo Immagine e imposta la proprietà Picture con il path che ti sei creato.
Cerca anche sul sitocomune per "Programma di esempio per catalogare immagini
(*.wmf,*.bmp,*.jpg,*.tif). ".
Ciao. Claudio.


author: warp

text:
"[吞 DjMiX [吞" <
> Salve a tutti.
> Ho cercato nei thread precedenti e nel sito comune senza nessuna
soluzione.
Hai cercato malissimo, oppure non hai cercato affatto :-)
Trovi ben due esempi pratici sul Sito Comune.


title: Applica Funzione

author: Ferrari Rino

text:
Come applicare la funzione arrotondamento di Karl Donaubauer su un campo?
grazie


title: Applica Funzione

text:
"Ferrari Rino" <
rinof...@virgilio.it
> ha scritto nel messaggio
news:eqeSa.183$t92....@news1.tin.it...
> Come applicare la funzione arrotondamento di Karl Donaubauer su un campo?
> grazie
La funzione di Karl non può naturalmente essere applicata al campo di una
tabella, ma al campo calcolato di una query e al controllo calcolato di una
maschera o di un report: in quale di queste condizioni sei?
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Applica Funzione

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:2%ySa.190526$Ny5.5...@twister2.libero.it...
>
> "Ferrari Rino" <
rinof...@virgilio.it
> ha scritto nel messaggio
> news:eqeSa.183$t92....@news1.tin.it...
> > Come applicare la funzione arrotondamento di Karl Donaubauer su un
campo?
> > grazie
>
> La funzione di Karl non può naturalmente essere applicata al campo di una
> tabella, ma al campo calcolato di una query e al controllo calcolato di
una
> maschera o di un report: in quale di queste condizioni sei?
>
> --
> Roberto
>
>
Sono nella condizione  del campo calcolato
Domanda-  la soluzione e valida anche per il controllo della partita Iva?>
>


title: Applica Funzione

text:
"Ferrari Rino" <
rinof...@virgilio.it
> ha scritto nel messaggio
news:QqLSa.5952$SN1.2...@news2.tin.it...
> "Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
> news:2%ySa.190526$Ny5.5...@twister2.libero.it...
> >
> > "Ferrari Rino" <
rinof...@virgilio.it
> ha scritto nel messaggio
> > news:eqeSa.183$t92....@news1.tin.it...
> > > Come applicare la funzione arrotondamento di Karl Donaubauer su un
> campo?
> > > grazie
> >
> > La funzione di Karl non può naturalmente essere applicata al campo di
una
> > tabella, ma al campo calcolato di una query e al controllo calcolato di
> una
> > maschera o di un report: in quale di queste condizioni sei?
> >
> > --
> > Roberto
> >
> >
> Sono nella condizione  del campo calcolato
Per prima cosa devi registrare in un modulo del tuo database la funzione di
Karl che hai trovato pubblicata sul Sito Comune.
Poi, se nella tua query il campo calcolato ha questa connotazione:
TuoCampo: [Campo1] * [Campo2]
se vuo ottenerlo arrotondato al secondo decimale, scrivi:
TuoCampo: fctRound([Campo1] * [Campo2])
> Domanda-  la soluzione e valida anche per il controllo della partita Iva?
Scusami, ma la partita Iva è un codice e come tale non deve essere
arrotondato; se volevi intendere importo Iva, allora la funzione di Karl è
valida per il suo arrotondamento.



title: Applica Funzione

text:

>Grazie!
>
>


title: Andare a capo con enter in una casella di testo memo, anzichè utilizzare Ctrl+invio

author: Bruno - S95

text:
Access 2003
Ciao, conoscete la soluzione per andare a capo quando si scrive in una
casella di testo memo, anzichč passare al record successivo.
Mille grazie, Bruno


text:
"Bruno - S95" <
mus...@virgilio.it
> ha scritto nel messaggio
news:49457064$0$1106$4faf...@reader3.news.tin.it...

---------
Trovato!!!!!
Nella proprietą della casella di testo memo, 13 riga, funzione tasto invio.
Aprire la tendina e scegliere "Nuova riga del campo"
Ciao e grazie a tutti lo stesso.
Bruno


title: inserire user corrente

author: Wiking Derek

text:
ho creato un database nel quale per entrare devi inserire nome user e password.
Adesso vorrei che un campo nella tabella avesse come valore predefinito il username. Come posso fare?
Questo è il codice di accesso:

Private Declare Function GetKeyState Lib "user32" _
        (ByVal nVirtKey As Long) As Integer

Private Sub UserPassword_AfterUpdate()

    Dim UserPass As String

    If Nz(UserPassword) = "" Then
        Exit Sub
    End If

    UserPass = DLookup("UserPassword", "Users", "UserID = " & UserID)

    If StrComp(UserPass, UserPassword, vbBinaryCompare) = 0 Then
        DoCmd.OpenForm "Menu"         ' Open the menu
        DoCmd.Close acForm, Me.Name
    Else
        If GetCapslock() = True Then
            MsgBox "Password Sbagliata. Blocco Maiuscolo ATTIVATO! - Reinserire la password"
        Else
            MsgBox "Password Sbagliata - Reinserire la password", vbInformation
        End If
    End If

    On Error Resume Next                ' Form closed

    UserPassword = Null
    UserPassword.SetFocus

End Sub

Function GetCapslock() As Boolean
    'Return the CapsLock Value

    GetCapslock = CBool(GetKeyState(vbKeyCapital) And 1)

End Function


title: inserire user corrente

author: BFS

text:
Il 21/02/2014 06:44, Wiking Derek ha scritto:
>    Dim UserPass As String

dichiara questa variabile in un modulo globale
public UserPass as string
e togli Dim UserPass As String dalla tua routine

a questo punto il valore userpass sarà disponibile fino alla chiusura
del programma.

ora per scrivere tale valore dentro una tabella dipende da cosa usi per
scrivere i dati
direttamente compilando una form associata?
via codice dao?
via codice ado?
via sql?

per ognuno dei casi c'è una soluzione diversa
ciao
BFS


title: inserire user corrente

text:

grazie.....
praticamente vorrei che un campo della maschera (che fa riferimento ad un campo di una tabella) ci fosse come valore predefinito il username (variabile che devo ancora definire nella funzione)


title: Gruppo Sottogruppo Categoria

author: "Claudia G

text:
Scusate ma sul mio Newsreader si è cancellato il messaggio con cui io
chiedevo aiuto su Gruppo Sottogruppo Categoria
Allora io ho 3 tabelle:
Gruppo con
IDGruppo Descrizione
Sottogruppo con
ID Gruppo IDSottogruppo Descrizione
Categoria con
IDSottogruppo IDCategoria Descrizione
ora io volevo che selezionando la combo Gruppo quando andavo a selezionare
la combo Sottogruppo questa aveva già filtrato  dati collegati che mi
servivano e di conseguenza quando selezionavo la combo categoria mi
ripetesse la routine precedente.
Uno di voi mi aveva già aiutato ma ora non trovo più niente potete
riaiutarmi?
Grazie Claudia


title: Gruppo Sottogruppo Categoria

author: Roberto dal portatile

text:
""Claudia G" <
cla...@libero.it
> ha scritto nel messaggio
news:pkZ96.88810$eB2.6...@news.infostrada.it...

Ipotizziamo che le tre combo si chiamino rispettivamente ComboGruppo,
ComboSottogruppo, ComboCategoria e che la maschera che le contiene si chiami
Maschera1.
Apri la struttura della query che è origine riga di ComboSottogruppo e nei
criteri relativi al campo IDGruppo scrivi:
[Forms]![Maschera1]![ComboGruppo]
Apri la struttura della query che è origine riga di ComboCategoria e nei
criteri relativi al campo IDSottogruppo scrivi:
[Forms]![Maschera1]![ComboSottogruppo]
A fronte dell'evento "Dopo aggiornamento" di ComboGruppo genera il seguente
codice VBA:
Me![ComboSottogruppo].Requery
A fronte dell'evento "Dopo aggiornamento" di ComboSottogruppo genera il
seguente codice VBA:
Me![ComboCategoria].Requery
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://members.xoom.it/it_db_access/
---------------------------------------------


title: Avviare Access a tutto schermo

author: Arighi Alberto

text:
Sapete come si fa ad avviare Access a tutto schermo da un'applicazione VB?
In Excel basta forzare a TRUE la proprietą DisplayFullScreen dell'oggetto
Application, ma in Access mi sembra non esista nulla di simile.
Grazie!!!


title: Avviare Access a tutto schermo

author: Karl Donaubauer

text:
Arighi Alberto ha scritto:
> Sapete come si fa ad avviare Access a tutto schermo da un'applicazione VB?
> In Excel basta forzare a TRUE la proprietą DisplayFullScreen dell'oggetto
> Application, ma in Access mi sembra non esista nulla di simile.
RunCommand acCmdAppMaximize
--
HTH
Karl
*********
Access-FAQ (tedesco):
http://www.donkarl.com


title: Arrotondamento alle 100 lire

text:
Salve!
Ho creato una procedura che converte le valute degli stati CEE che
hanno adottato l'Euro,  in Euro ed in Lire (se volete poi ve la mando
sul Sito Comune, magari potrebbe servire anche a qualcun altro).
Il mio problema è questo: essendo le Lire calcolate come parte intera
di  ValutaInEuro*1936.27, avrei bisogno di arrotondare il valore
ottenuto alle 100 lire superiori o inferiori (es: 197.579 -> 197.600 ;
185.420 -> 185.400).
Ringrazio anticipatamente chiunque sia in grado di risolvere il mio
piccolo (spero...) quesito.
Marco
marc...@altavista.net
Sent via Deja.com
http://www.deja.com/
Before you buy.


title: Arrotondamento alle 100 lire

author: sib

text:
marco1979 scrive:
> Salve!
> Il mio problema è questo: essendo le Lire calcolate come parte intera
> di  ValutaInEuro*1936.27, avrei bisogno di arrotondare il valore
> ottenuto alle 100 lire superiori o inferiori (es: 197.579 -> 197.600 ;
> 185.420 -> 185.400).
MioValore=Int((MioValore+50)/100)*100
Ciao, Sib


title: Arrotondamento alle 100 lire

author: Omar Marzocco

text:
marco1979 <
marc...@my-deja.com
> wrote in message
news:832obo$1i2$1...@nnrp1.deja.com...
>...avrei bisogno di arrotondare il valore
> ottenuto alle 100 lire superiori o inferiori (es: 197.579 -> 197.600 ;
> 185.420 -> 185.400).
> Ringrazio anticipatamente chiunque sia in grado di risolvere il mio
> piccolo (spero...) quesito.
La seguente funzione arrotonda nNumero alla nPosiz (1 alla lira,2 alle 10
lire, 3 alle 100 lire . . .) con un arrotondamento tipo (C=non mi
ricordo!!!;D=Difetto; E=Eccesso)
Function nArrotonda(nNumero, nPosiz, cTipoArr)
nNumero = nNumero / 10 ^ nPosiz
nNumInt = Int(nNumero)
nResto = nNumero - nNumInt
If nResto <> 0 Then
    Select Case cTipoArr
        Case "C"
            If nResto > 0.5 Then
                nArrotonda = (nNumInt + 1) * 10 ^ nPosiz
            Else
                nArrotonda = nNumInt * 10 ^ nPosiz
            End If
        Case "D"
                nArrotonda = nNumInt * 10 ^ nPosiz
        Case "E"
                nArrotonda = (nNumInt + 1) * 10 ^ nPosiz
    End Select
Else
    nArrotonda = nNumero * 10 ^ nPosiz
End If
End Function
By(e) Omar


title: campo query troncato a 255

author: tasso

text:
in una query ho un campo che ricavo da una concatenazione di pi� campi ma
se la somma della concatenazione � superiore a 255 il testo mi viene
troncato
� possibile ovviare a questo problema?
ciao a tutti e buona giornata
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: campo query troncato a 255

text:
tasso wrote:
> in una query ho un campo che ricavo da una concatenazione di pi�
> campi ma se la somma della concatenazione � superiore a 255 il testo
> mi viene troncato
>
> � possibile ovviare a questo problema?
Hai un ragruppamento nella query?
Vale lo stesso che per un campo memo:
www.donkarl.com/it?FAQ5.18
--
HTH
Karl
*********
Access FAQ:
www.donkarl.com/it


title: campo query troncato a 255

author: sv

text:
tasso ha scritto:
> in una query ho un campo che ricavo da una concatenazione di pi� campi ma
> se la somma della concatenazione � superiore a 255 il testo mi viene
> troncato
> � possibile ovviare a questo problema?
> ciao a tutti e buona giornata
Ce ne vuole pi� di uno.
Nel primo:  left("tuaconcatenazione";255)
Nel secondo: mid("tuaconcatenazione";256;255)
--
sv



title: campo query troncato a 255

text:
Karl Donaubauer ha scritto:
> tasso wrote:
> > in una query ho un campo che ricavo da una concatenazione di pi�
> > campi ma se la somma della concatenazione � superiore a 255 il testo
> > mi viene troncato
> >
> > � possibile ovviare a questo problema?
> Hai un ragruppamento nella query?
> Vale lo stesso che per un campo memo:
>
www.donkarl.com/it?FAQ5.18
grazie mille come sempre
ho messo espressione al posto di raggruppamento nella query ed il campo si
visualizza perfettamente (con primo non funziona!!!!!)
ciao



title: scadenze

author: valerio

text:
Ciao a tutti
sto approntando un db che gestisce rilevamenti copie su fotocopiatori. Ho
l'esigenza di creare una procedura che a partire da una data e poi
attraverso una combobox in cui si possa selezionare la scadenza(tipo
mensile,trimestrale, semestrale o annuale)generi tanti record quante sono le
scadenze impostando le relative date di scadenza.
Con qualche aiuto potrei poi pensare di costruire uno scadenzario per i
pagamenti.
grazie


title: Filtro

author: Monica Moscardi

text:
Ciao,
chi mi aiuta a risolvere questo problema:
da una tabella contenente i seguenti campi:
Data
Articolo
Prezzo
dovrei estrapolare il prezzo più aggiornato di ogni articolo da inserire in
una maschera per effettuare il calcolo dei costi di un certo prodotto...
In attesa e ringraziando ... saluto
Ciao
Mauro


title: Filtro

author: Antonio Biso

text:
"Monica Moscardi" <
monica....@virgilio.it
> ha scritto nel messaggio
news:ICuY8.66922$Jj7.1...@news1.tin.it...

Prova a dare un'occhiata all'help su funzione dmax
Antonio


title: incredibile access quanto è mistificatorio

author: Piero

text:
Ammetto che per pigrizia non mi sono mai impountato a capire il meccanismo
delle combobox.
Stasera dopo ammetto tantissima difficolta ho capito come funzionano:
La proprieta colonna associata è quella da cui dipende il valore che ha in
quel momento la combo, ho infati provato a mettere 3 colonne in una combo
mettendo larghezza (0,0,1).
Ho messo la prima colonna associata, nella casella mi vedo un bell'uno
selezionato e poi in realta usando msgbox scopro che il valore non è quello
che si vede in primo piano.
Una cosa cosi controrta non l'ho mai vista.
Sara anche molto utile ma per niente pratica da capire.
Che sudore ragazzi magari solo io che ne so.
Comunque ce l'ho fatta.
Saluti a tutti.


text:
Piero <
piero...@jumpy.it
> wrote in message
t5v6ajm...@corp.supernews.com...
> Ammetto che per pigrizia non mi sono mai impountato a capire il meccanismo
> delle combobox.
> Stasera dopo ammetto tantissima difficolta ho capito come funzionano:
>
> La proprieta colonna associata è quella da cui dipende il valore che ha in
> quel momento la combo, ho infati provato a mettere 3 colonne in una combo
> mettendo larghezza (0,0,1).
> Ho messo la prima colonna associata, nella casella mi vedo un bell'uno
> selezionato e poi in realta usando msgbox scopro che il valore non è
quello
> che si vede in primo piano.
> Una cosa cosi controrta non l'ho mai vista.
E invece è una GRANDISSIMA cosa questa.
Supponiamo che tu abbia una tabella anagrafica clienti e tramite la combo
vuoi far fare una scelta all'utente in modo che vengano visualizzate poi
tutte gli acquisti eseguiti da quel cliente. Ci sarà infatti una tabella
acquisti legata alla tabella clienti sul campo ID del cliente. ID è un campo
univoco, per esempio un contatore che all'utente assolutamente non dice
nulla (non pretendi che l'utente sappia che il cliente 000235 sia Pinco
Pallo vero?). Quel valore però ti individua univocamente tutti gli acquisti
fatti da Pinco Pallo.
L'utente quando sceglie il cliente dalla combo lo farà leggendo nome e
cognome. La tua combo quindi avrà 0;4;4 come dimensione colonne che sono
l'ID, il cognome e il nome. Alla fine resta visualizzato il cognome ma la
query che restituisce gli acquisti filtra rispetto al valore della combo che
sarà l'ID. Si poteva anche fare usando la proprietà COLUMN della combo, ma
così è più comodo!
Antonio


author: Nao

text:
Complimenti, speriamo che con un po di impego tu riesca a risolvere anche
anchi problemi che dovrai affrontare nella tua vita.
Ciao AUGURI
"Piero" <
piero...@jumpy.it
> ha scritto nel messaggio
news:t5v6ajm...@corp.supernews.com...
> Ammetto che per pigrizia non mi sono mai impountato a capire il meccanismo
> delle combobox.
> Stasera dopo ammetto tantissima difficolta ho capito come funzionano:
>
> La proprieta colonna associata č quella da cui dipende il valore che ha in
> quel momento la combo, ho infati provato a mettere 3 colonne in una combo
> mettendo larghezza (0,0,1).
> Ho messo la prima colonna associata, nella casella mi vedo un bell'uno
> selezionato e poi in realta usando msgbox scopro che il valore non č



author: ema

text:
Mio cuggino  mi  ha  detto  che  Piero	<
piero...@jumpy.it
>	scrisse:
> Una cosa cosi controrta non l'ho mai vista.
>  Sara  anche	molto  utile  ma   per	 niente   pratica   da	 capire.
>
ma come: mi sembra normalissimo.
Come  origine  hai  una  query,  che  restituisce  un  tot  di	colonne.
A ciascuna puoi associare la larghezza	che  vuoi,  cosi`  eventualmente
qualcuna la nascondi.
Il valore del controllo deve essere uno solo (non puo` avere come valore
una riga...), e dunque scegli la colonna associata.
L'utilizzo normale e` quello di avere come origine dei dati della  combo
una query:
	ID	nome
visualizzare solo il nome (impostare  la  larghezza  dell'ID  a  0),  ma
salvare come dato significativo  l'ID  (che  e`  ovviamente  molto  piu`
significativo,	e  occupa  meno  spazio,  e  velocizza	 le   ricerche!)
bye!
--
Emanuele Cesena
http://www.penguinpowered.com/~ecesena
<
ece...@penguinpowered.com
> - rimuovi XXX  x  rispondere  ICQ	#8814554

I Macintosh usano mouse con 1 tasto solo.
I PC con Windows usano mouse con 2 tasti.
Linux e Unix usano mouse con 3 tasti.
Devo aggiungere altro?
		-- Andrea `Zuse' Balestrero, "Matemastica e Deformatica"


author: Lbo

text:
>Ammetto che per pigrizia non mi sono mai impountato a capire il meccanismo
>delle combobox.
>Stasera dopo ammetto tantissima difficolta ho capito come funzionano:
oh, bravo.  Antonio Biso ti ha spiegato perché in realtà questa cosa è
utile.
io vorrei chiederti invece una cosa.  tu dici mistificatorio.  ma
mistificatorio rispetto a cosa?
--
non studio non lavoro non guardo la tv
non vado al cinema non faccio sport
----------------------------------------
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access


title: Visualizzazione errata in treeview su win2000

author: vtt

text:
In una macchina con W2000 pro senza office installato il controllo treeview
su accessRT viene visualizzato erroneamente.
In pratica la sua struttura è corretta, ma i nomi dei nodi non vengono
visualizzati.
Inoltre viene ripetuta l'icona del nodo padre a tutti i figli.
In realtà esistono tre livelli con tre icone diverse.
Grazie per l'aiuto
il codice di creazione è il seguente:
Private Sub Form_Open(Cancel As Integer)
On Error GoTo Errore
' Imposta l'albero dei clienti e delle osservazioni
    Dim rstCliente As New ADODB.Recordset
    Dim strSQL As String, intAnno As Integer
    Dim intIndex As Integer, strIndex As String, strCliente As String,
strOsserva As String
    Dim objNodo As MSComctlLib.Node
    intAnno = MenuAnno()
    strSQL = "SELECT Anno, Cliente, Osserva01, Osserva02 FROM qryEstrazione
WHERE Anno=" & intAnno & " ORDER BY Cliente"
    With rstCliente
        .Open strSQL, CurrentProject.Connection, adOpenForwardOnly,
adLockReadOnly, adCmdText
        'Aggiungo il nodo principale e lo chiamo 'Clienti'
        Set objNodo = Me.ctrTree.Nodes.Add(, , "R", "CLIENTI")
        objNodo.Image = 1
        objNodo.Bold = True
        intIndex = 1
        Do Until .EOF
            strIndex = StrConv("A" & CStr(intIndex), vbUpperCase) 'stringa
univoca da assegnare ad ogni nodo creato
            strCliente = StrConv(rstCliente.Fields(1), vbUpperCase)
            'Ad ogni record aggiungo un nodo figlio chiamato col nome del
cliente
            Set objNodo = Me.ctrTree.Nodes.Add("R", tvwChild, strIndex,
strCliente)
            objNodo.Image = 2
            objNodo.EnsureVisible
            objNodo.ForeColor = RGB(0, 0, 255)
                'Ad ogni nodo 'NomeCliente' aggiungo un figlio per ogni
osservazione inviata
                If rstCliente.Fields(2) <> "" Then
                    Set objNodo = Me.ctrTree.Nodes.Add(strIndex, tvwChild,
"F1" & strIndex, rstCliente.Fields(2))
                    objNodo.Image = 3
                    objNodo.ForeColor = RGB(0, 0, 0)
                    objNodo.EnsureVisible
                End If
                If rstCliente.Fields(3) <> "" Then
                    Set objNodo = Me.ctrTree.Nodes.Add(strIndex, tvwChild,
"F2" & strIndex, rstCliente.Fields(3))
                    objNodo.Image = 3
                    objNodo.ForeColor = RGB(0, 0, 0)
                    objNodo.EnsureVisible
                End If
            .MoveNext
            intIndex = intIndex + 1
        Loop
        .Close
    End With
' Deselezione dei nodi
    Set objNodo = Me.ctrTree.Nodes(1)
    objNodo.Selected = True
    objNodo.Selected = False
    objNodo.Checked = True
' Etichetta
    Me.ctrTree.Appearance = ccFlat
    Me.Caption = "Anno " & intAnno & " - Osservazioni dei clienti"
    Exit Sub
Errore:
    Call ErroreImprevisto(Err.Number, Err.Description,
"frmAnalisiOsservazioni-Open")
End Sub


title: query con like

author: luigi onofrio

text:
ho una tabella con un campo testo "fascicolo" i cui dati sono alfanumerici
divisi sempre con una /
ho fatto una query e come criterio del campo "fascicolo" ho messo "like
*/01*" che funziona bene per i valori ricercati.
quello che vorrei è fare una query in cui il criterio sia lo stesso, ma
che mi si chieda al momento il valore dei solo due numeri dopo la /,
è possibile? come?
grazie
luigi
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: query con like

author: Alessandro Baraldi

text:
luigi onofrio ha scritto:
> ho una tabella con un campo testo "fascicolo" i cui dati sono alfanumerici
> divisi sempre con una /
> ho fatto una query e come criterio del campo "fascicolo" ho messo "like
> */01*" che funziona bene per i valori ricercati.
> quello che vorrei è fare una query in cui il criterio sia lo stesso, ma
> che mi si chieda al momento il valore dei solo due numeri dopo la /,
> è possibile? come?
> grazie
> luigi
>
Prova così:
SELECT *
FROM TableName
WHERE FieldName Like "*/" & [Enter string:] & "*";
@Alex


title: query con like

text:
Alessandro Baraldi ha scritto:
> luigi onofrio ha scritto:
> > ho una tabella con un campo testo "fascicolo" i cui dati sono alfanumerici
> > divisi sempre con una /
> > ho fatto una query e come criterio del campo "fascicolo" ho messo "like
> > */01*" che funziona bene per i valori ricercati.
> > quello che vorrei č fare una query in cui il criterio sia lo stesso, ma
> > che mi si chieda al momento il valore dei solo due numeri dopo la /,
> > č possibile? come?
> > grazie
> > luigi
> >
> Prova cosě:
> SELECT *
> FROM TableName
> WHERE FieldName Like "*/" & [Enter string:] & "*";
> @Alex
Alessandro!!  SEI GRANDE!!!
funziona!
grazie



title: X Anonio Bisio - OpenForm

author: Michele

text:
Caro Antonio,
L'argomento che mi interessava era (come avevi accennato) l'OpenForm.
In effetti ho risolto con:
    DoCmd.OpenForm stDocName, acFormDS, acFormPropertySettings,
stLinkCriteria
Il particolare era che non individuavo (o meglio, non sapevo sia la sintassi
sia il significato di "acFormDS" e "acFprmPropertySettings".
Ho improvvisato e ...mi è andata bene!
Avevi comunque visto giusto.
Se Tu, non mi avessi dato "l'input" dell'OpenForm, starei ancora a
sperimentare.
Grazie
Michele
PS:
Penso che la riga di codice chiarisca quello che volevo ottenere.(anche se
non sapevo spiegarlo).
Un Salutone
Mik


title: X Anonio Bisio - OpenForm

text:
"Michele" <
michele....@tin.it
> ha scritto nel messaggio
news:Ncx5c.51755$z23.2...@news3.tin.it...
> Caro Antonio,
> L'argomento che mi interessava era (come avevi accennato) l'OpenForm.
> In effetti ho risolto con:
>     DoCmd.OpenForm stDocName, acFormDS, acFormPropertySettings,
> stLinkCriteria
> PS:
> Penso che la riga di codice chiarisca quello che volevo ottenere.(anche se
> non sapevo spiegarlo).
A parte il nome sbagliato, non aprire nuovi thread
Antonio


title: X Anonio Bisio - OpenForm

text:
"Antonio Biso" <
ch...@etruria.net
> wrote in message
news:0RA5c.74016$
FJ6.2...@twister1.libero.it
[CUT]
> A parte il nome sbagliato, non aprire nuovi thread
>
> Antonio
Subject:"Re: X Anonio Bisio - OpenForm"
He...He....He.......!Che simpatico Umorista...!
@Alex.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: X Anonio Bisio - OpenForm

author: ciroteo

text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:2161411192e1ed0217...@mygate.mailgate.org...

non aprire 3d, e non sbagliare nome xè sennò il risultato è questo! zelig
docet!


title: X Anonio Bisio - OpenForm

text:
"ciroteo" <
cir...@libero.it
> ha scritto nel messaggio
news:c36ril$q53$1...@hulme.interac.it...

    SCUSA ANTONIO !!!
    Ma se noti l'orario del post, puoi ..."perdonarmi" (mi ero alzato da
poco).
    Sarà mia premura porre molta attenzione in futuro!
    Proverò cmq anche il Tuo consiglio che mi sembra più appropriato (Tab
Allegata Excel)
    Grazie ancora !
    ...Siete un Team di Simpaticoni!
    Mikele


title: X Anonio Bisio - OpenForm

text:
"Michele" <
michele....@tin.it
> ha scritto nel messaggio
news:OAI5c.67967$O31.3...@news4.tin.it...
>
> > non aprire 3d, e non sbagliare nome xè sennò il risultato è questo!
zelig
> > docet!
> >
>     SCUSA ANTONIO !!!
>     Ma se noti l'orario del post, puoi ..."perdonarmi" (mi ero alzato da
> poco).
Questa mi sembra un'ottima scusante...
Antonio


title: R: Conversione dati da 0001 a 00/0001

author: Riccardo

text:
Alessia <
les...@altavista.it
> wrote in message 958qbu$2ig$1...@half.spin.it...
> Ciao gente, buongiorno a tutti.
> Problemino, dovrei convertire tutti i dati di un campo testo (sono numeri
> che identificano il numero di protocollo dell'ultimo anno) da 0001 a
00/0001
> inserendo cioč all'inizio l'anno.
> Es:
> 0001          00/0001
> 0002          00/0002
> 0003          00/0003
>
> Devono subire una variazione perchč problemi per la ricerca dei dati, e
per
> evitare dei dei numeri doppi all'interno del protocollo.
>
> Grazie mille a tutti.
>
> Alessia
>
>
_____-
Per ipotesi:
La Tabella si chiama Protocolli
Il Campo si chiama Testo
ti crei una query di aggiornamento dove inserisci solo il campo Testo  e
nella riga "Aggiorna a" inserisci:
"00/" & [protocolli]![testo]
fatti prima un backup della tabella per precauzione.
ciao
Riccardo


title: PROBLEMI CON FILTRO

author: Saxguly

text:
Ciao, ho creato un piccolo e semplice programmino con access, dove abbiamo
una maschera di inserimento dati, ora il mio problema e creare un filtro nel
campo cognome in modo che vado ad inserire la prima lettara o le successive
e mi vi va ad aprire una piccola finestra con elencati i vari cognomi e nomi
che si riferiscano a quelle lettere che ho inserito. Chi mi puo aiutare gli
posso mandare il file direttamente per visionare la cosa. Grazie


title: PROBLEMI CON FILTRO

author: Fabrizio

text:
In data Sat, 29 Apr 2006 09:51:06 +0200, Saxguly <
rosario...@tele2.it
>
ha scritto:

madami il file
f_j...@virgilio.it
 vedo quello che posso fare.....
cosi evito alle persone esperte di sprecaro minuti preziosi su questo
problema (rif ai Geniiiiiiiiii)


title: PROBLEMI CON FILTRO

author: Roberto da casa

text:
"Saxguly" <
rosario...@tele2.it
> ha scritto nel messaggio
news:LVE4g.23$qx5...@nntpserver.swip.net...

Vai sul Sito Comune (link qui sotto) e nella Sezione Forms leggi la FAQ di
Davide La Mantia (Sib) intitolata "3.29 Come creare un controllo di
ricerca".
--
Roberto
-----------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
-----------------------------------------------


title: PROBLEMI CON FILTRO

text:
In data Sat, 29 Apr 2006 09:51:06 +0200, Saxguly <
rosario...@tele2.it
>
ha scritto:
> Ciao, ho creato un piccolo e semplice programmino con access, dove

Ma poi non si capisce bene cosa vuole fare!!!!
wrote:
  in modo che vado ad inserire la prima lettara o le
> successive
> e mi vi va ad aprire una piccola finestra con elencati i vari cognomi e
> nomi
> che si riferiscano a quelle lettere che ho inserito.
una piccola finestra si riferisce forse al munu a tendina della casella
combinata e poi su questa filtra i dati in base a cosgnome
sullamaschera......
bohh!!!! no ho capito.....
ps belle quelle icone dove le hai prese?


title: PROBLEMI CON FILTRO

text:
"Fabrizio" <
f_j...@libero.it
> ha scritto nel messaggio
news:op.s8rqs...@daithan.belkin...

DICIAMO CHE HAI CAPITO



title: problema 2

author: Matteo

text:
Ho una maschera "Ordine Materiale" dove ho una casella combinata "IDCliente"
dalla quale posso scegliere il nome del cliente. In questa maschera c'è una
sottomaschera "Spedizione" nella quale è possibile inserire i dati di
spedizione del materiale.
Vorrei realizzare un pulsante che mi permetta di compilare la sottomaschera
"Spedizione" con i dati del cliente scelto dalla casella combinata
"IDCliente". Come posso fare?
GRAZIE


title: problema 2

author: Graziano Franchi (Dal Server)

text:
Nella tabella clienti dove hai ID Cliente penso che abbia anche l'indirizzo
del cliente quindi basta fare una query appropriata e trovi quello che vuoi.
Ciao
"Matteo" <
moo...@softhome.net
> ha scritto nel messaggio
news:8pds5t$4l1$1...@nslave2.tin.it...
> Ho una maschera "Ordine Materiale" dove ho una casella combinata
"IDCliente"
> dalla quale posso scegliere il nome del cliente. In questa maschera c'č
una
> sottomaschera "Spedizione" nella quale č possibile inserire i dati di



title: problema 2

author: Giuseppe

text:
"Matteo" <
moo...@softhome.net
> ha scritto nel messaggio
news:8pds5t$4l1$1...@nslave2.tin.it...
> Ho una maschera "Ordine Materiale" dove ho una casella combinata
"IDCliente"
> dalla quale posso scegliere il nome del cliente. In questa maschera c'č
una
> sottomaschera "Spedizione" nella quale č possibile inserire i dati di
> spedizione del materiale.
>
> Vorrei realizzare un pulsante che mi permetta di compilare la
sottomaschera
> "Spedizione" con i dati del cliente scelto dalla casella combinata
> "IDCliente". Come posso fare?
>
> GRAZIE
>
Puoi trovare il Record della tabella origine dati della Casella combinata
che soddisfi il valore selezionato
Es.
Dim  strCriteri As String, strSQL As String
Dim db As Database, rs As Recordset
    Set db = CurrentDb
    strCriteri = Forms!frmportafogli!Cliente.value ' maschera principale
    strSQL = "SELECT * FROM tblClienti WHERE Cliente =  '" & strCriteri &
"'"
    Set rs = db.OpenRecordset(strSQL)
E successivamente copiare i record della tabella nei controlli della
sottomaschera.
Potresti utilizzare il codice nell'evento Su doppio clic di un controllo
della sottomaschera e risparmiare di aggiungere un pulsante .
giuseppe


title: Nome dell'utente connesso al database

author: Massimiliano

text:
Ho creato un database con la protezione a livello di utente in modo che ogni
utente per
accedere deve inserire la sua login e password.
Il database ha la tabella CLIENTE e la tabella CONTATTO.
I clienti devono essere periodicamente contattati e vorrei memorizzare
l'informazione sull'operatore
che ha contattato il cliente.
E' possibile recuperare tale informazione?
Grazie a tutti.


title: Nome dell'utente connesso al database

author: MegaMax

text:
> I clienti devono essere periodicamente contattati e vorrei memorizzare
> l'informazione sull'operatore
> che ha contattato il cliente.
>
> E' possibile recuperare tale informazione?
Usi la funzione
CurrentUser()
Max


title: MaxLocksPerFile (Access runtime)

author: Ammammata

text:
sul vecchio pc di sviluppo con windows 7 e access 2010 funziona
egregiamente con i valori predefiniti

sul pc con windows 10, office 2019 e access runtime 2016 non c'è verso

<
https://docs.microsoft.com/en-us/office/troubleshoot/access/file-sharing-

lock-count-exceeded>

ho portato il valore fino a 500.000 senza esito

c'è qualche altro trucco che ancora posso provare?

--
/-\ /\/\ /\/\ /-\ /\/\ /\/\ /-\ T /-\
-=- -=- -=- -=- -=- -=- -=- -=- - -=-
........... [ al lavoro ] ...........


title: MaxLocksPerFile (Access runtime)

text:
Il giorno lunedì 27 luglio 2020 13:33:41 UTC+2, Ammammata ha scritto:

> sul vecchio pc di sviluppo con windows 7 e access 2010 funziona
> egregiamente con i valori predefiniti
>
> sul pc con windows 10, office 2019 e access runtime 2016 non c'è verso
>
> <
https://docs.microsoft.com/en-us/office/troubleshoot/access/file-sharing-

> lock-count-exceeded>

Ma concretamente per quale ragione hai necessità di modificare quel parametro?

Saluti


title: MaxLocksPerFile (Access runtime)

text:
Il giorno Mon 27 Jul 2020 05:58:49p, ** ha inviato su it.comp.appl.access
il messaggio
news:f52d0a01-f47c-422c...@googlegroups.com
.
Vediamo cosa ha scritto:

> sul vecchio pc di sviluppo con windows 7 e access 2010 funziona
> egregiamente con i valori predefiniti

> per quale ragione hai necessità di modificare quel parametro?
>

errata corrige

sul windows 7 lo avevo aumentato a 20.000 per ovviare all'errore 3052

sul windows 10, come scritto, son salito fino a 500.000 senza successo

nota bene: ci sono diverse idee sul web su dove intervenire nel registro
per aumentarlo in quanto, di versione in versione, dal 32 al 64 bit, etc
etc le cose cambiano

ho seminato MaxLocksPerFile in almeno una dozzina di posti, seguendo di
volta in volta le indicazioni trovate sul web, ma a quanto pare ognuno dice
la sua e questa sua non è la mia :/



title: MaxLocksPerFile (Access runtime)

text:
> errata corrige
>
> sul windows 7 lo avevo aumentato a 20.000 per ovviare all'errore 3052
>
> sul windows 10, come scritto, son salito fino a 500.000 senza successo
>
> nota bene: ci sono diverse idee sul web su dove intervenire nel registro
> per aumentarlo in quanto, di versione in versione, dal 32 al 64 bit, etc
> etc le cose cambiano
>
> ho seminato MaxLocksPerFile in almeno una dozzina di posti, seguendo di
> volta in volta le indicazioni trovate sul web, ma a quanto pare ognuno dice
> la sua e questa sua non è la mia :/

Ok, ma che tipo di problema cerchi d'aggirare modificando quell'impostazione?
E' un segreto?

Saluti.


title: MaxLocksPerFile (Access runtime)

author: pfmarro

text:
Il giorno lunedì 27 luglio 2020 13:33:41 UTC+2, Ammammata ha scritto:

Aumentare la voce di registro MaxLocksPerFile.
significa che ha fatto una query in cui il numero di record in Join è maggiore del valore indicato nella seguente chiave di registro
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 4.0
Nel riquadro destro dell'editor del Registro di sistema fare doppio clic su MaxLocksPerFile.
Nella finestra di dialogo Modifica valore DWORD scegliere Decimale.
Modificare il valore della casella Dati valore come desiderato e quindi scegliere OK
VEDI
https://support.microsoft.com/it-it/help/815281/file-sharing-lock-count-exceeded-error-message-during-large-transactio

in caso di windows 64 bit ma jet 32 bit
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Jet\4.0\Engines\Jet 4.0 la chiave MaxLocksPerFile.
Nella finestra di dialogo Modifica valore DWORD scegliere Decimale. 20000


title: MaxLocksPerFile (Access runtime)

text:
Il giorno Tue 28 Jul 2020 01:41:03p, ** ha inviato su
it.comp.appl.access il messaggio
news:b663b2b6-798d-4eaa...@googlegroups.com
. Vediamo
cosa ha scritto:

> Ok, ma che tipo di problema cerchi d'aggirare modificando
> quell'impostazione?
>

no, ci mancherebbe

la procedura elabora una tabella OC_PRODU_TMP con circa 20mila record,
andando a cercare su un'altra tabella "VP-SAP Product Type" il codice
"alternativo", se esiste, e sostituendolo a quello esistente dopo averlo
opportunamente formattato

durante l'elaborazione, poco dopo il novemillesimo record, si pianta con
l'errore 3052

e non capisco perché

PRD.MoveFirst
While Not PRD.EOF

    CRI = "[VP] = '" & PRD![A00002] & "'"
    TPR.FindFirst [CRI]
    If Not (TPR.NoMatch) Then

        PRD.Edit
        PRD![A00002] = Format(TPR![SAP], "0000")
        PRD.Update
        j = j + 1

    Else
    'Messaggio ("- " & Time() & " Product type OC_PRODU_TMP " & CRI)
    End If

    i = i + 1

    PRD.MoveNext
    If i Mod 100 = 0 Then SysCmd acSysCmdSetStatus, "Product type
OC_PRODU_TMP : " & Format(i, "#,##0") & " / " & Format(j, "#,##0") & " / "
& Format(TotR, "#,##0")

Wend



title: MaxLocksPerFile (Access runtime)

text:
Hai provato ad inserire la modifica in una transazione...?

@Alex


title: MaxLocksPerFile (Access runtime)

text:
> la procedura elabora una tabella OC_PRODU_TMP con circa 20mila record,
> andando a cercare su un'altra tabella "VP-SAP Product Type" il codice
> "alternativo", se esiste, e sostituendolo a quello esistente dopo averlo
> opportunamente formattato
>
> durante l'elaborazione, poco dopo il novemillesimo record, si pianta con
> l'errore 3052

> e non capisco perché

Concordo.

Personalmente non ho mai tratto vantaggio dalla modifica dei parametri di JET, per le ragioni che hai valutato anche tu.
Va detto che mantengo solo vecchie applicazioni con BE .mdb (e quindi sono arrugginito sul vecchio formato) ma un errore del genere in uno scenario così semplice non è chiaro.
Immagino tu utilizzi versioni recenti di Access con Database .AccDB ... potresti verificare se tale situazione si verifica con un vecchio AXP o 2003? (ne dubito).

Cambia qualcosa se elimini syscmd acSysCmdSetStatus? (creava problemi in un lontano passato).
Prova a intercettare l'errore 3052 imponendo un brutale RESUME: l'applicazione va in loop o invece prosegue fino alla fine del ciclo?

Saluti.


title: MaxLocksPerFile (Access runtime)

text:
Dimenticavo: il problema si verifica solo con Access Runtime?

Che versione?

Saluti


title: MaxLocksPerFile (Access runtime)

text:
Il giorno Tue 28 Jul 2020 05:29:48p, *Ammammata* ha inviato su
it.comp.appl.access il messaggio
news:XnsAC08B1FDBBAA4am...@127.0.0.1
. Vediamo cosa ha
scritto:

> PRD.MoveFirst
> While Not PRD.EOF
>
>     CRI = "[VP] = '" & PRD![A00002] & "'"
>     TPR.FindFirst [CRI]
>     If Not (TPR.NoMatch) Then
>
>         PRD.Edit
>         PRD![A00002] = Format(TPR![SAP], "0000")
>         PRD.Update
>         j = j + 1
>
>     Else
>     'Messaggio ("- " & Time() & " Product type OC_PRODU_TMP " & CRI)
>     End If
>
>     i = i + 1
>
>     PRD.MoveNext
>     If i Mod 100 = 0 Then SysCmd acSysCmdSetStatus, "Product type
> OC_PRODU_TMP : " & Format(i, "#,##0") & " / " & Format(j, "#,##0") & "
> / " & Format(TotR, "#,##0")
>
> Wend
>

un grazie a tutti per cominciare

stanotte ci ho pensato su, vista la semplicità (apparente) dell'operazione
proverò a sostituire il codice VBA con una query di aggiornamento o un
comando diretto SQL, "per vedere che effetto che fa" (cit.)



title: MaxLocksPerFile (Access runtime)

text:
> un grazie a tutti per cominciare
>
> stanotte ci ho pensato su, vista la semplicità (apparente) dell'operazione
> proverò a sostituire il codice VBA con una query di aggiornamento o un
> comando diretto SQL, "per vedere che effetto che fa" (cit.)

Ok, ma non pensare solo a te stesso: potrebbe essere un'anomalia del prodotto (che versione? Solo con Access Runtime o pure full?) potenzialmente di pubblico interesse.
Quindi, facci sapere di più sulla release che utilizzi, e prova la forzatura su errore 3052.

Saluti


title: MaxLocksPerFile (Access runtime)

text:
Il giorno Wed 29 Jul 2020 08:26:57a, *Ammammata* ha inviato su
it.comp.appl.access il messaggio
news:XnsAC0955F4C1BC5am...@127.0.0.1
. Vediamo cosa ha
scritto:

> stanotte ci ho pensato su, vista la semplicità (apparente)
> dell'operazione proverò a sostituire il codice VBA con una query di
> aggiornamento

ecco qua: l'ho messa in pista un paio di settimane fa, funziona

UPDATE OC_PRODU_TMP

LEFT JOIN [VP-SAP Product Type] ON OC_PRODU_TMP.a00002 = [VP-SAP Product
Type].VP

SET OC_PRODU_TMP.a00002 = Format([SAP],"0000")

WHERE ((([VP-SAP Product Type].SAP) Is Not Null));

Adesso il nuovo problema è che la connessione ODBC tra access e sap non è
molto stabile quando si esegue il programma con il collegamento in VPN, ma
questa è un'altra storia



title: MaxLocksPerFile (Access runtime)

author: Simone Calligaris

text:
> UPDATE OC_PRODU_TMP
>
> LEFT JOIN [VP-SAP Product Type] ON OC_PRODU_TMP.a00002 = [VP-SAP Product
> Type].VP
>
> SET OC_PRODU_TMP.a00002 = Format([SAP],"0000")
>
> WHERE ((([VP-SAP Product Type].SAP) Is Not Null));

E quando dovrai scrivere una routine d'aggiornamento troppo complessa e/o macchinosa per essere affrontata con queries update cosa farai?

Saluti


title: MaxLocksPerFile (Access runtime)

text:
Il giorno Mon 17 Aug 2020 08:56:39a, *Simone Calligaris* ha inviato su
it.comp.appl.access il messaggio
news:53f42942-ee52-41a1...@googlegroups.com
. Vediamo
cosa ha scritto:

> E quando dovrai scrivere una routine d'aggiornamento troppo complessa
> e/o macchinosa per essere affrontata con queries update cosa farai?
>

il programma in questione è stato scritto nel 1998, ci sono parti di esso
che sono già state ricreate sul nuovo gestionale, decisamente più veloci
nei calcoli, ma potremo dismetterlo solo tra tre anni quando le statistiche
con confronto sugli anni precedenti prenderanno tutti i dati solo dal nuovo
database

detto programma è oggi "completo": venti anni di sviluppo lo hanno portato
praticamente alla perfezione e copre tutte le esigenze statistiche del
cliente: è anche pronto per incrociare in maniera diversa i dati esistenti,
c'è ormai poco da aggiungere dal punto di vista dell'elaborazione dei
suddetti dati (ogni tanto capita, come in questo caso, ma è la prima volta
dopo quasi un anno). Se, come ipotizzi, dovesse saltare fuori qualcosa di
più complesso lo saprò a suo tempo, per adesso ipotizzo almeno un altro
anno di tranquillità da questo punto di vista



title: help maschera

text:
E' possibile creare una maschera dove immettere i dati per far partire una ricerca sul db, modificando dalla maschera stessa i criteri della querry? infinitamente grato a chi mi potrıı aiutare .....impallato su questo problema
------------------------------------------------------------------------
Questo messaggio e` stato inviato da
http://www.inwind.it


title: help maschera

author: Roberto - Syd

text:
<
nospam_...@inwind.it
> ha scritto nel messaggio
news:1004402628129...@inwind.it...

Si è possibile fai la maschera inserisci i controlli che ti servono per la
ricerca e nella query imposti nei criteri il percorso e il nome dei
controlli.
Es.: se la maschera si chiama Maschera1 il controllo si chiama Test0 nella
query nella riga dei critei sotto il campo che devi filtrare scrivi
Forms![Maschera1]![Testo0] e la query conterrà tutti i records dove nel
campo dove hai messo il criterio il valore è uguale al valore contenuto in
Testo0 della Maschera1.
Ciao Roberto - Syd


title: Create table: + veloce campi calcolati in form oppure un create table esterno

author: esseAemme

text:
Ciao a tutto NG,
Pongo un problema, data la mia ignoranza, ho una maschera a record
continui, dove tramite due combo filtro i record.
Nella maschera sono presenti 12 controlli, caselle di testo, una delle
quali in particolare calcola al momento un valore abbastanza
complicato. Dopo che è stato trovata questa cifra, gli altri 11
controlli non fanno altro che sommare, magari moltiplicare per una
percentuale.
Il problema è che in base ai record presenti, passa un bel pò di tempo
a macchinare i calcoli.
Se in questo lasso di tempo, io clicco sulla form, mi sembra che i
calcoli vengono bloccati, e infatti sulle caselle di testo compare
#errore.
Risolverei il problema creando un create table, facendo i conti su una
tabella esterna e poi mostrandoli sulla form?
Oppure come potrei fare?
La formula che sta sotto questo controllo è
=IIf(IsError(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]=
" & [DISTINTAID]);0));0;
(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
[DISTINTAID]);0)))
la query q_smcstfly è:
SELECT TBL_DIST.dist_id, TBL_DIST.dist_codice, TBL_DIST.cli_id,
TBL_DIST.dist_data, TBL_DIST.dist_vsid, TBL_DIST.dist_cstgenacq,
TBL_DIST.dist_scarto, TBL_DIST.dist_trasp, TBL_DIST.dist_marg,
TBL_DIST.dist_przlistino, TBL_DIST.dist_valmargs,
TBL_DIST.dist_riferimento, TBL_DIST.dist_fstverslistino
FROM TBL_VSCSTMP INNER JOIN TBL_DIST ON TBL_VSCSTMP.vscstmp_id =
TBL_DIST.dist_vsid
WHERE (((TBL_DIST.cli_id)=[forms]![msc_cstfly]![cbocliente]));
Grazie x qualsiasi suggerimento,
Samantha


text:

Dimenticavo di dire,
che la maschera è lenta, e che ho attivato la formattazione
condizionale su due di questi controlli...
Grazie,
Samantha


author: VT @ home

text:
Il 31 May 2007 07:48:28 -0700, esseAemme <
samanth...@gmail.com
> ha scritto:
>(.....)
>Ciao a tutto NG,
>
>Pongo un problema, data la mia ignoranza, ho una maschera a record
>continui, dove tramite due combo filtro i record.
>
>Nella maschera sono presenti 12 controlli, caselle di testo, una delle
>quali in particolare calcola al momento un valore abbastanza
>complicato. Dopo che č stato trovata questa cifra, gli altri 11
>controlli non fanno altro che sommare, magari moltiplicare per una
>percentuale.
>
>Il problema č che in base ai record presenti, passa un bel pň di tempo
>a macchinare i calcoli.
>
>Se in questo lasso di tempo, io clicco sulla form, mi sembra che i
>calcoli vengono bloccati, e infatti sulle caselle di testo compare
>#errore.
>
>Risolverei il problema creando un create table, facendo i conti su una
>tabella esterna e poi mostrandoli sulla form?
>Oppure come potrei fare?
>
>
>
>La formula che sta sotto questo controllo č
>=IIf(IsError(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]=
>" & [DISTINTAID]);0));0;
>(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
>[DISTINTAID]);0)))
>
>la query q_smcstfly č:
>SELECT TBL_DIST.dist_id, TBL_DIST.dist_codice, TBL_DIST.cli_id,
>TBL_DIST.dist_data, TBL_DIST.dist_vsid, TBL_DIST.dist_cstgenacq,
>TBL_DIST.dist_scarto, TBL_DIST.dist_trasp, TBL_DIST.dist_marg,
>TBL_DIST.dist_przlistino, TBL_DIST.dist_valmargs,
>TBL_DIST.dist_riferimento, TBL_DIST.dist_fstverslistino
>FROM TBL_VSCSTMP INNER JOIN TBL_DIST ON TBL_VSCSTMP.vscstmp_id =
>TBL_DIST.dist_vsid
>WHERE (((TBL_DIST.cli_id)=[forms]![msc_cstfly]![cbocliente]));
Intanto crea un indice sul campo TBL_DIST.cli_id ed uno sul campo TBL_VSCSTMP.vscstmp_id (questa č la chiave esterna,
vero ?)
Prova e valuta se le prestazion migliorano.
>
>
>Grazie x qualsiasi suggerimento,
>Samantha
Vincenzo Turturro
---------------------------------------------
il sito comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------
risorse Access:
http://www.accessgroup.it
---------------------------------------------
Il sito comune di it.comp.as400
http://www.faq400.com
---------------------------------------------


text:
On 31 Mag, 17:38, "VT @ home" <
V...@home.it
> wrote:
> Il 31 May 2007 07:48:28 -0700, esseAemme <
samantha.ci...@gmail.com
> ha scritto:
>
>
>
> >(.....)
> >Ciao a tutto NG,
>
> >Pongo un problema, data la mia ignoranza, ho una maschera a record
> >continui, dove tramite due combo filtro i record.
>
> >Nella maschera sono presenti 12 controlli, caselle di testo, una delle
> >quali in particolare calcola al momento un valore abbastanza
> >complicato. Dopo che è stato trovata questa cifra, gli altri 11
> >controlli non fanno altro che sommare, magari moltiplicare per una
> >percentuale.
>
> >Il problema è che in base ai record presenti, passa un bel pò di tempo
> >a macchinare i calcoli.
>
> >Se in questo lasso di tempo, io clicco sulla form, mi sembra che i
> >calcoli vengono bloccati, e infatti sulle caselle di testo compare
> >#errore.
>
> >Risolverei il problema creando un create table, facendo i conti su una
> >tabella esterna e poi mostrandoli sulla form?
> >Oppure come potrei fare?
>
> >La formula che sta sotto questo controllo è
> >=IIf(IsError(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]=
> >" & [DISTINTAID]);0));0;
> >(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
> >[DISTINTAID]);0)))
>
> >la query q_smcstfly è:
> >SELECT TBL_DIST.dist_id, TBL_DIST.dist_codice, TBL_DIST.cli_id,
> >TBL_DIST.dist_data, TBL_DIST.dist_vsid, TBL_DIST.dist_cstgenacq,
> >TBL_DIST.dist_scarto, TBL_DIST.dist_trasp, TBL_DIST.dist_marg,
> >TBL_DIST.dist_przlistino, TBL_DIST.dist_valmargs,
> >TBL_DIST.dist_riferimento, TBL_DIST.dist_fstverslistino
> >FROM TBL_VSCSTMP INNER JOIN TBL_DIST ON TBL_VSCSTMP.vscstmp_id =
> >TBL_DIST.dist_vsid
> >WHERE (((TBL_DIST.cli_id)=[forms]![msc_cstfly]![cbocliente]));
>
> Intanto crea un indice sul campo TBL_DIST.cli_id ed uno sul campo TBL_VSCSTMP.vscstmp_id (questa è la chiave esterna,
> vero ?)
> Prova e valuta se le prestazion migliorano.
>
>
>
> >Grazie x qualsiasi suggerimento,
> >Samantha
>
> Vincenzo Turturro
> ---------------------------------------------
> il sito comune di it.comp.appl.access:
http://www.sitocomune.com
> ---------------------------------------------
> risorse Access:
http://www.accessgroup.it
> ---------------------------------------------
> Il sito comune di it.comp.as400
http://www.faq400.com
> ---------------------------------------------
Ciao Vincenzo :D
in realtà i campi che rappresentano chiavi esterne erano già
indicizzati con duplicati ammessi.
Mi viene il dubbio che sia la formattazione condizionale a fare quel
scherzetto. Perchè tipo ho bloccato le caselle, bloccate SI abilitate
NO, ma le 2 caselle dove c'è la formattazione condizionale mi permette
di cliccarci dentro. La cosa è strana.
Avevo pensato anche di mettere la form dove faccio i calcoli come
sottomaschera. Le caselle combo metterle in una altra maschera che
diventerebbe la masschera principale.
A questo punto, impostare le proprietà della sottomaschera di modo che
NON consenta modifiche nè filtri (ora li permette) e vedere se in
questo modo quando clicco mentre lei elabora, non abbia problemi.
Ci provo adesso e ti faccio sapere il risultato
Grazie ancora,
Samantha


author: Panathos

text:
esseAemme ha scritto:
> Pongo un problema, data la mia ignoranza, ho una maschera a record
> continui, dove tramite due combo filtro i record.
> La formula che sta sotto questo controllo è
> =IIf(IsError(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]=
> " & [DISTINTAID]);0));0;
> (nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
> [DISTINTAID]);0)))
Visto che hai già indicizzato i campi che usi per i join, potresti
lavorare su questa formula, "scavalcando" le aggregazioni sui domini
(che in certi casi diventano lente, sopratutto quando le tabelle sono
collegate via ODBC o quando lavorano su query).
Inoltre la iif(test,vero,falso) ha la prerogativa di valutare sempre
entrambe le condizioni, quindi la funzione qui sopra esegue sia la
formula del "vero" che quella del "falso", raddoppiando i tempi.
Al tuo posto farei queste cose:
Cercherei di sostituire la DSum con una query tipo:
select COUNT([id]) from TBL_DIST
INNER JOIN TBL_DIST ON TBL_VSCSTMP.vscstmp_id = TBL_DIST.dist_vsid
WHERE TBL_DIST_cli_id = [forms]![msc_cstfly]![cbocliente]
anche se non ho capito dove sta il campo [csarticolo] che sommi nelle
DSum.
Inoltre (ma questo sarebbe da scrivere prima :-)) vedo che hai usato
nz() e iserror() per garantirti che non ci siano errori o NULL che
vadano a sballare le somme.
Io userei nz() a monte, per garantirmi omogeneità nei tipi di dato da
sommare.
E per evitare la "doppia valutazione", come nel caso della tua iif(),
scomporrei il problema associando ad un controllo testo la select
vista qui sopra (che sostituisce la DSum), e poi la verifica la
metterei in un altro campo. In questo modo, se la query di conteggio è
ancora lenta, almeno viene eseguita una volta sola (e non due come nel
caso della iif()).
Dulcis in fundo, ma questa è solo una idea che non ho mai provato,
potresti verificare che succede mettendo
application.echo false
nell'evento "su apertura" della maschera e
application.echo true
nell'evento "su corrente".
Teoricamente, se ho capito bene la sequenza degli eventi di apertura
delle maschere, l'evento "su corrente" è l'ultimo che viene eseguito.
> Grazie x qualsiasi suggerimento,
Ecco, visto che siamo al "qualsiasi" potresti provare anche questo:
visualizzare il piè di pagina della maschera (se non ce l'hai già),
nel quale inserisci un controllo di testo con associata questa
funzione:
=sblocca_visualizzazione()
poi in un modulo di classe scrivi la relativa funzione:
function sblocca_visualizzazione()
  application.echo true
end function
Teoricamente, trattandosi di maschera continua, il piè di pagina viene
valutato dopo il corpo, quindi se disattivi l'echo in fase di apertura
dovresti essere a posto facendolo riattivare dal piè di pagina.
Poi magari fai sapere se e come hai risolto, grazie :-D
ciao,
Panathos


text:

Ciao Panathos grazie x le dritte, ora ci provo e ti faccio sapere,
Samantha


text:
On 31 Mag, 21:23, Panathos <
panat...@gmail.com
> wrote:
> esseAemme ha scritto:
>
> > Pongo un problema, data la mia ignoranza, ho una maschera a record
> > continui, dove tramite due combo filtro i record.
> > La formula che sta sotto questo controllo è
> > =IIf(IsError(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]=
> > " & [DISTINTAID]);0));0;
> > (nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
> > [DISTINTAID]);0)))
>
Ciao Panathos,
ecco il primo tentativo:
> Visto che hai già indicizzato i campi che usi per i join, potresti
> lavorare su questa formula, "scavalcando" le aggregazioni sui domini
> (che in certi casi diventano lente, sopratutto quando le tabelle sono
> collegate via ODBC o quando lavorano su query).
>
> Inoltre la iif(test,vero,falso) ha la prerogativa di valutare sempre
> entrambe le condizioni, quindi la funzione qui sopra esegue sia la
> formula del "vero" che quella del "falso", raddoppiando i tempi.
>
> Al tuo posto farei queste cose:
> Cercherei di sostituire la DSum con una query tipo:
>
> select COUNT([id]) from TBL_DIST
> INNER JOIN TBL_DIST ON TBL_VSCSTMP.vscstmp_id = TBL_DIST.dist_vsid
> WHERE TBL_DIST_cli_id = [forms]![msc_cstfly]![cbocliente]
> anche se non ho capito dove sta il campo [csarticolo] che sommi nelle
> DSum.
Purtroppo, non capisco cosa vuoi fare con select count(id), non ne
capisco proprio il senso perchè conosco da autodidattaSQL.
Devo riprendere qualche guida in italiano e vedere se il select count
id cosa fa
Cmq il cstarticolo è un campo calcolato in una query, la query in
questione è questa qua:
SELECT TBL_DIST.dist_id, TBL_DART.dart_distid, TBL_DART.dart_id,
TBL_ART.art_id, TBL_MP.mp_id, TBL_DIST.dist_vsid,
TBL_VSCSTMP.vscstmp_id, TBL_CSTMP.cstmp_vsid, TBL_DART.dart_qta,
(([cstmp_costo]*[cstmp_perc])+[cstmp_costo]) AS cstmpbase,
([cstmpbase]+[art_costo€]) AS cstartbase, (([cstartbase]*[art_coeff]))
AS cstartmm,
([cstartmm]*[dart_qta]) AS cstarticolo
FROM TBL_DIST INNER JOIN ((TBL_MP INNER JOIN (TBL_VSCSTMP INNER JOIN
TBL_CSTMP ON TBL_VSCSTMP.vscstmp_id = TBL_CSTMP.cstmp_vsid) ON
TBL_MP.mp_id = TBL_CSTMP.cstmp_mpid) INNER JOIN (TBL_ART INNER JOIN
TBL_DART ON TBL_ART.art_id = TBL_DART.dart_artid) ON TBL_MP.mp_id =
TBL_ART.art_mpid) ON (TBL_VSCSTMP.vscstmp_id = TBL_DIST.dist_vsid) AND
(TBL_DIST.dist_id = TBL_DART.dart_distid);
>
> Inoltre (ma questo sarebbe da scrivere prima :-)) vedo che hai usato
> nz() e iserror() per garantirti che non ci siano errori o NULL che
> vadano a sballare le somme.
> Io userei nz() a monte, per garantirmi omogeneità nei tipi di dato da
> sommare.
>
> E per evitare la "doppia valutazione", come nel caso della tua iif(),
> scomporrei il problema associando ad un controllo testo la select
> vista qui sopra (che sostituisce la DSum), e poi la verifica la
> metterei in un altro campo. In questo modo, se la query di conteggio è
> ancora lenta, almeno viene eseguita una volta sola (e non due come nel
> caso della iif()).
Come da te suggerito ho scomposto il problema.
Nella casella "sommacostoarticolo" c'è:
=nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
[DISTINTAID]);0)
La casella FLY1 è diventata:
=IIf(IsError([sommacostoarticolo]);0;([sommacostoarticolo]))
Ricontrollando il codice ho visto che non solo il costo articolo aveva
quella formula con iif, ma anche il costo lavorazioni e i costi vari.
Ho proceduto modificando come da tue indicazioni, e effettivamente è +
veloce.
>
> Dulcis in fundo, ma questa è solo una idea che non ho mai provato,
> potresti verificare che succede mettendo
>
> application.echo false
>
> nell'evento "su apertura" della maschera e
>
> application.echo true
>
> nell'evento "su corrente".
>
> Teoricamente, se ho capito bene la sequenza degli eventi di apertura
> delle maschere, l'evento "su corrente" è l'ultimo che viene eseguito.
>
> > Grazie x qualsiasi suggerimento,
>
> Ecco, visto che siamo al "qualsiasi" potresti provare anche questo:
> visualizzare il piè di pagina della maschera (se non ce l'hai già),
> nel quale inserisci un controllo di testo con associata questa
> funzione:
>
> =sblocca_visualizzazione()
>
> poi in un modulo di classe scrivi la relativa funzione:
>
> function sblocca_visualizzazione()
>   application.echo true
> end function
>
> Teoricamente, trattandosi di maschera continua, il piè di pagina viene
> valutato dopo il corpo, quindi se disattivi l'echo in fase di apertura
> dovresti essere a posto facendolo riattivare dal piè di pagina.
>
> Poi magari fai sapere se e come hai risolto, grazie :-D
>
> ciao,
> Panathos
Ho provato con application.echo, e ho fatto come da tue indicazioni, E
FUNZIONA!!!! , ossia se clicco con il mouse mentre elabora, non gli
crea nessun problema!!!
Cmq in questa maschera ho questi controlli:
FLY1  ==IIf(IsError([sommacostoarticolo]);0;([sommacostoarticolo]))
FLY2  =dist_cstgenacq -> valore noto
FLY3   =[FLY1]+([FLY1]*[FLY2])
sommacostolavorazioni =
=nz(DSum("[cstlavo]";"[q_smdlavo]";"[dlavo_distid]= " & [DISTINTAID]);
0)
FLY4   =IIf(IsError("[sommacostolavorazioni]");0;
("[sommacostolavorazioni]"))
sommacostivari
=nz(DSum("[dcstvari_costo]";"[q_smdcstvari]";"[dcstvari_distid]= " &
[DISTINTAID]);0)
FLY5  ==IIf(IsError("[sommacostivari]");0;("[sommacostivari]"))
Che prima erano
FLY4  =IIf(IsError(nz(DSum("[cstlavo]";"[q_smdlavo]";"[dlavo_distid]=
" & [DISTINTAID]);0));0;
(nz(DSum("[cstlavo]";"[q_smdlavo]";"[dlavo_distid]= " & [DISTINTAID]);
0)))
FLY5
=IIf(IsError(nz(DSum("[dcstvari_costo]";"[q_smdcstvari]";"[dcstvari_distid]
= " & [DISTINTAID]);0));0;
(nz(DSum("[dcstvari_costo]";"[q_smdcstvari]";"[dcstvari_distid]= " &
[DISTINTAID]);0)))
La domanda è, tramite VBA non potrei calcolare questi valori, e non
sarebbe un metodo + veloce?
Grazie infinite,
Samantha


text:

Ciao Panathos,
mi sono accorta di 2 cose:
a) NON METTERE su evento apertura il application.echo false
b) la formattazione condizionale non rallenta i calcoli (cosa della
quale dubitavo)
Non mettere application.echo false su apertura della maschera, perchè
altrimenti quando apri quella maschera, ti si blocca tutto. Prima non
me ne ero accorta, perchè lavoravo da modalità visualizzazione a
struttura. Ma una volta chiuso e aperto il database, il problema si
presenta. Per il resto i tuoi suggerimenti sono stati preziosi.
Ciao,
Samantha


text:
esseAemme ha scritto:
> Purtroppo, non capisco cosa vuoi fare con select count(id), non ne
> capisco proprio il senso perchè conosco da autodidattaSQL.
Avevo capito che volessi conteggiare gli articoli (per la qual cosa
dcount sarebbe andata bene), invece vuoi sommarne il costo quindi
occorre una sum().
La query qui sotto se ho capito bene ti riporta il costo totale
(suppongo sia cstarticolo) per ogni articolo elencato:
> SELECT TBL_DIST.dist_id, TBL_DART.dart_distid, TBL_DART.dart_id,
> TBL_ART.art_id, TBL_MP.mp_id, TBL_DIST.dist_vsid,
> TBL_VSCSTMP.vscstmp_id, TBL_CSTMP.cstmp_vsid, TBL_DART.dart_qta,
> (([cstmp_costo]*[cstmp_perc])+[cstmp_costo]) AS cstmpbase,
> ([cstmpbase]+[art_costo€]) AS cstartbase, (([cstartbase]*[art_coeff]))
> AS cstartmm,
> ([cstartmm]*[dart_qta]) AS cstarticolo
> FROM TBL_DIST INNER JOIN ((TBL_MP INNER JOIN (TBL_VSCSTMP INNER JOIN
> TBL_CSTMP ON TBL_VSCSTMP.vscstmp_id = TBL_CSTMP.cstmp_vsid) ON
> TBL_MP.mp_id = TBL_CSTMP.cstmp_mpid) INNER JOIN (TBL_ART INNER JOIN
> TBL_DART ON TBL_ART.art_id = TBL_DART.dart_artid) ON TBL_MP.mp_id =
> TBL_ART.art_mpid) ON (TBL_VSCSTMP.vscstmp_id = TBL_DIST.dist_vsid) AND
> (TBL_DIST.dist_id = TBL_DART.dart_distid);
Forse, e dico forse, potresti aggiungere il campo "cstarticolo" alla
tabella articoli e tenerlo memorizzato, invece di ricavarlo ogni volta
con i calcoli di cui sopra.
In questo modo i totali che estrai tramite la Dsum li estrarresti
molto più velocemente.
> La casella FLY1 è diventata:
> =IIf(IsError([sommacostoarticolo]);0;([sommacostoarticolo]))
Proprio ciò che intendevo dire.
> Ho proceduto modificando come da tue indicazioni, e effettivamente è +
> veloce.
Bene. Ma è "più veloce" o "soddisfacemente veloce"? :-D
> Cmq in questa maschera ho questi controlli:
> FLY1  ==IIf(IsError([sommacostoarticolo]);0;([sommacostoarticolo]))
> FLY2  =dist_cstgenacq -> valore noto
> FLY3   =[FLY1]+([FLY1]*[FLY2])
> sommacostolavorazioni =
> =nz(DSum("[cstlavo]";"[q_smdlavo]";"[dlavo_distid]= " & [DISTINTAID]);
> 0)
> FLY4   =IIf(IsError("[sommacostolavorazioni]");0;
> ("[sommacostolavorazioni]"))
> sommacostivari
> =nz(DSum("[dcstvari_costo]";"[q_smdcstvari]";"[dcstvari_distid]= " &
> [DISTINTAID]);0)
> FLY5  ==IIf(IsError("[sommacostivari]");0;("[sommacostivari]"))
> La domanda è, tramite VBA non potrei calcolare questi valori, e non
> sarebbe un metodo + veloce?
La risposta è: dal momento che stai facendo calcoli in base a
condizioni, probabilmente con un po' di codice otterresti qualcosa di
più "razionale".
Però non aspettarti che sia in grado di darti qualcosa di risolutivo
solo guardando i codici che mi hai scritto... finché si tratta di dare
consigli generici OK; ma senza vedere l'applicazione comincia a
diventare troppo difficile per me :-D
ciao,
Panathos


text:
>Panathos ha scritto:
> > esseAemme ha scritto:
> Forse, e dico forse, potresti aggiungere il campo "cstarticolo" alla
> tabella articoli e tenerlo memorizzato, invece di ricavarlo ogni volta
> con i calcoli di cui sopra.
> In questo modo i totali che estrai tramite la Dsum li estrarresti
> molto più velocemente.
Ciao Panathos
si ora vedo se è il caso di storicizzare il valore dei costi delle
materie prime,
>
>
> > La casella FLY1 è diventata:
> > =IIf(IsError([sommacostoarticolo]);0;([sommacostoarticolo]))
>
> Proprio ciò che intendevo dire.
>
>
> > Ho proceduto modificando come da tue indicazioni, e effettivamente è +
> > veloce.
>
> Bene. Ma è "più veloce" o "soddisfacemente veloce"? :-D
Non è soddisfacemente veloce, temo proprio che dovrò creare un campo
nella tabella TBL_DIST dove salvo la DSUM, come quando salvo il prezzo
di vendita finale
>
> > La domanda è, tramite VBA non potrei calcolare questi valori, e non
> > sarebbe un metodo + veloce?
>
> La risposta è: dal momento che stai facendo calcoli in base a
> condizioni, probabilmente con un po' di codice otterresti qualcosa di
> più "razionale".
> Però non aspettarti che sia in grado di darti qualcosa di risolutivo
> solo guardando i codici che mi hai scritto... finché si tratta di dare
> consigli generici OK; ma senza vedere l'applicazione comincia a
> diventare troppo difficile per me :-D
>
> ciao,
> Panathos
Invece mi sei stato effettivamente di aiuto x application.echo true e
false, che ho usato ma non ho  ancora avuto modo di capire come
funziona e cosa fa, e ora vado a studiacchiarmelo!
Grazie
Samantha