title: Due sottomaschere da sincronizzare - 2ª parte per Alessandro Baraldi

author: TonyD

text:
Ciao Alessandro ti ringrazio per il suggerimento tempestivo, ma ho
avuto
problemi ad attuarlo:
1) Il controllo nascosto nel form Master, immagino sia un controllo
textbox, lo devo associare ad un campo oppure lo lascio "non
associato"?
2) Inoltre nella  subForm2 a collega CampiMaster, mi mostra solo
l'elenco
dei campi a cui la form Master č associata, e se metto il nome del
controllo mi da errore.
Sicuramente ho saltato qualche passaggio, dove? Grazie in anticipo.
ALESSANDRO Baraldi ha scritto:
> "AntonioD" <
ando...@tin.it
> ha scritto nel messaggio
> news:32869815.1117981433726.JavaMail.newsgroup@sc-ng-1...
> > Ho questa esigenza:
> >
> > In una gestione master/details (ad esempio testata fattura/righi
> > di dettaglio fattura) il record che compone le righe di
> > dettaglio contiene molti campi che non riesco a visualizzare su
> > un unico rigo. Per cui ho pensato di fare due sottomaschere: una
> > in formato 'foglio dati' con i record a mo di lista con le
> > colonne che visualizzano le informazioni piů significative, e
> > un'altra sottomaschera che mi visualizza tutte le altre
> > informazioni. Vorrei avere l'effetto che allo scorrere i la
> > lista della prima sottomaschera, la seconda sottomaschera mi
> > visualizzi lo stesso record con le altre informazioni. Come
> > posso fare? Ci ho provato in tanti modi ma senza esito.
> >
> > Mi potete aiutare? Grazie
> Nella Form Principale metti un Controllo Nascosto(non visibile)
> su Evento Current della SubForm Dettagli scrivi:
> Me.Parent!NomeControlloNascosto=Me.ControlloIdDettaglio
> Quindi nella SubForm2 collega CampiMaster fai riferimento
> al controllo Nascosto.
> Ciao


author: ALESSANDRO Baraldi

text:
"TonyD" <
ando...@tin.it
> ha scritto nel messaggio
news:6jaea150njnqnbnqk...@4ax.com...
> Ciao Alessandro ti ringrazio per il suggerimento tempestivo, ma ho
> avuto
> problemi ad attuarlo:
>
> 1) Il controllo nascosto nel form Master, immagino sia un controllo
> textbox, lo devo associare ad un campo oppure lo lascio "non
> associato"?
>
> 2) Inoltre nella  subForm2 a collega CampiMaster, mi mostra solo
> l'elenco
> dei campi a cui la form Master è associata, e se metto il nome del
> controllo mi da errore.
>
> Sicuramente ho saltato qualche passaggio, dove? Grazie in anticipo.
Questo è quanto ti suggerivo:
> > Nella Form Principale metti un Controllo Nascosto(non visibile)
> > su Evento Current della SubForm Dettagli scrivi:
>
> > Me.Parent!NomeControlloNascosto=Me.ControlloIdDettaglio
In questo caso non devi associarlo, ma puoi associarlo evitando
il codice nell'evento Current, ti basta andare in OrigineControllo
ed andare a selezionare il ControlloIdDettaglio nella SubForm attraverso
il Generatore d'espressioni.
=NomeSubForm.Form!ControlloIdDettaglio
Per il 2° punto scrivilo ugualmente anche se non è presente , scrivi
Collega Campi Master=NomeControlloNascosto
Verrà gestito ugualmente.
Ciao
--
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.mantuanet.it/alessandro.baraldi/
---------------------------------------------------------------------------


title: CONTEGGI SESSAGESIMALI

author: GARGY

text:
ho un problema vorrei far operazioni in ore e minuti.
grazie a chi mi da una mano


title: CONTEGGI SESSAGESIMALI

author: MA

text:
"GARGY" <
RIC...@INWIND.IT
> ha scritto nel messaggio
news:sDcyd.37882$Zk.7...@twister2.libero.it...
> ho un problema vorrei far operazioni in ore e minuti.
> grazie a chi mi da una mano
>
Ho aperto questo 3d perchč pensavo si trattasse di sesso... invece..
cmq
Che vuoi calcolare?
Il numero intero che ti viene restituito tu dividi per 60.
MAssimiliano


title: CONTEGGI SESSAGESIMALI

author: Pablitomf

text:
MA ha scritto:
[CUT]
> Ho aperto questo 3d perchč pensavo si trattasse di sesso... invece..
Ho un certo numero di cellulare che potrei scovare nella rubrica della mia
padrona che potrebbe inguaiarti tutto d'un pezzo... occhio č!
Sesso, sesso... ma dai che c'hai un etą! Poi va a finire che non ti rimane
+ nulla e alle "pagline a mandorla" che gli porti? Un Made in Italy dovrai
pur regalarlo no? :D :D
--
Ciao
Pablitomf (Maurizio Facciuti)
------------------------------
http://www.sitocomune.com/
http://www.accessgroup.it/
------------------------------
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: CONTEGGI SESSAGESIMALI

text:
"Pablitomf" <
maurizio...@accessgroup.it
> ha scritto nel messaggio
news:cqbqq8$tc0$1...@news.newsland.it...
> MA ha scritto:
>
> [CUT]
> > Ho aperto questo 3d perchč pensavo si trattasse di sesso... invece..
>
> Ho un certo numero di cellulare che potrei scovare nella rubrica della mia
> padrona che potrebbe inguaiarti tutto d'un pezzo... occhio č!
> Sesso, sesso... ma dai che c'hai un etą! Poi va a finire che non ti rimane
> + nulla e alle "pagline a mandorla" che gli porti? Un Made in Italy dovrai
> pur regalarlo no? :D :D
Questa tua č pura ammissione di colpa: quest'estate hai dispensato
tu Made in Itlay nella terra rossa???
...
[non ascoltate...]
Menu..
Rubrica...
...
scusa padrona, come funziona il tuo cell...???
...
MAssimiliano



title: help EXCEL 97 e campo ora

author: Valter dal portatile

text:
ciao a tutti
qualcuno mi può aiutare a risolvere il problema che mi è sorto poco fa ???
in pratica mi hanno fornito un tabulato in formato .TXT, contenente parecchi
dati, circa 4000 record, nel quale il campo ORA è stato formattato senza
segni di separazione esempio 123655 invece di 12.36.55.
come posso fare per far si che si possano mettere i puntini al posto giusto
???
ho già provato selezionando l'intera colonna e la proprietà delle celle in
ORA ma non succede niente
grazie e buon "divertimento"


title: help EXCEL 97 e campo ora

author: Riccardo

text:
Valter dal portatile <
val...@libero.it
> wrote in message
SOgz7.37202$1H1.3...@news.infostrada.it...

______
se quel campo sta nella cella a1 in una cella accanto scrivi:
=SINISTRA(A1;2) & "." & STRINGA.ESTRAI(A1;3;2) & "." & DESTRA(A1;2)
ciao Riccardo


title: help EXCEL 97 e campo ora

text:
grazie, funziona tutto
alla prossima
Riccardo <
ricc...@free.panservice.it
> wrote in message
9qkch8$pbv$1...@news.panservice.it...



title: SQL:Estrarre dati per fasce orarie.

author: TT

text:
Ciao
Come posso estrarre e/o contare record per fasce orarie?
Mi spiego meglio.
Avendo un campo orario (e qui devo aprire una parentesi per ringraziare
Roberto per la creazione del campo ora)
voglio avere un conteggio di record dalle 8:00:00 alle 12:00:00, dalle
12:00:01 alle 20:00:00 e dalle 20:00:01 alle 7:59:59
Ho provato a cercare sulla guida all'uso di access 2000 e su un altro
manuale sql ma non trovo nulla.
Come posso risolvere? Qualche ideuzza?
Ciao
TT


title: SQL:Estrarre dati per fasce orarie.

text:
"TT" <
tere...@libero.it
> ha scritto nel messaggio
news:i0Ubc.110192$FJ6.4...@twister1.libero.it...

Puoi usare 3 Query.... ma non sapendo cosa intendi come Campo Orario
dò per scontato sia un Campo DATA impostato come Ora estesa....!!!!
"SELECT * FORM Tabella Where CampoOre Beetwen #08:00:00# AND #12:00:00"
Per contarlo usa il RecordCount del Recordset nel quale lo carichi.....!!!
Ciao.
@Alex.


title: SQL:Estrarre dati per fasce orarie.

author: Roberto da casa

text:
"TT" <
tere...@libero.it
> ha scritto nel messaggio
news:i0Ubc.110192$FJ6.4...@twister1.libero.it...

Usando per i criteri di selezion/filtraggio l'operatore Between ...And (vedi
help); visto però che per la terza fascia l'orario di inizio è maggiore
dell'orario di fine, devi dividere questa fascia in due sottofasce: la prima
dalle 20:00:01 alle 23:59:59 e la seconda dalle 00:00:00 alle 7:59:59,
quindi metterai i due criteri di selezione in OR.
Se usi l'operatore Between ... And in VBA o SQL, visto che il campo orario è
di tipo Data/ora, ricordati di racchiudere i due secondi termini di paragone
tra due caratteri #, insomma:
MioOrario Between #08:00:00# And #12:00:00#
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: SQL:Estrarre dati per fasce orarie.

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:U%Wbc.110441$FJ6.4...@twister1.libero.it...

Ciao
Come avevi detto tu ho fatto la query, utilizzando però query by example.
Ho inserito nei criteri BETWEEN 06:00:00 AND 23:59:59 ............
Lancio la query e, con grande sorpresa, non visualizzo niente.Vado a vedere
l'SQL e trovo
SELECT Count(qTotCorseInserite.OraIns) AS Notturno
FROM tTelefonate
HAVING (((Count(OraInserimento)) Between #12/30/1899 21:0:0# And #12/30/1899
23:59:59#)) OR (((Count(OraInserimento.OraIns)) Between #12/30/1899# And
#12/30/1899 6:59:59#));
Eeeehhhhh? Cos'è sta roba? Allora modifico con
SELECT Count(qTotCorseInserite.OraIns) AS Notturno
FROM tTelefonate
HAVING (((Count(OraInserimento)) Between #21:0:0# And #23:59:59#)) OR
(((Count(OraInserimento.OraIns)) Between #00:00:00# And #6:59:59#));
Rilancio la query e, ricon grande sorpresa, non visualizzo nulla.
Ma non avrà mica ragione il PC e da gran testardo digito
SELECT Count(*) AS Notturno
FROM tTelefonate
WHERE (OraInserimento Between #21:0:0# And #23:59:59#) OR (OraInserimento
Between #00:00:00# And #6:59:59#);
finalmente trovo il mio 1452. Controllerò domani, adesso è tardi. Questo fa
capire ce è meglio scrivere le query con SQL.Il query by example è una
........
Però, non posso crearmi dei campi Notturno, mattina pomeriggio e
visualizzare tutti i conteggi per ogni campo tutto con una query?
Grazie Ciao
TT


title: SQL:Estrarre dati per fasce orarie.

text:
"TT" <
tere...@libero.it
> ha scritto nel messaggio
news:1d%bc.110820$FJ6.4...@twister1.libero.it...

Se ti serve solamente conoscere solamente i tre totali, non vale la pena
fare una query; creati una maschera non associata contenete tre caselle di
testo non associate, quindi effettua i conteggi delle persone nelle varie
fasce con delle funzioni DCount; nell'origine controllo della prima casella
di testo scrivi:
= DCount("*"; "tTelefonate"; "(OraInserimento Between #07:00:00# And
#12:00:00#)
nell'origene controllo della seconda scrivi:
= DCount("*"; "tTelefonate"; "(OraInserimento Between #12:01:00# And
#20:59:00#)
e nell'origine controllo della terza casella di testo scrivi:
= DCount("*"; "tTelefonate"; "(OraInserimento Between #21:0:0# And
#23:59:59#) OR (OraInserimento Between #00:00:00# And #6:59:59#)")



title: SQL:Estrarre dati per fasce orarie.

author: risparmioso

text:
TT ha scritto:
> Però, non posso crearmi dei campi Notturno, mattina pomeriggio e
> visualizzare tutti i conteggi per ogni campo tutto con una query?
Circa si', pero' non ti conviene creare tre campi in piu', ma basta creare
un nuovo campo (o meglio una nuova colonna) "FasciaOraria" contenente una
stringa in chiaro "notte" " mattina" ecc., il che poi viene buono per fare
conteggi, grafici ecc. gia' ripartiti comodamente per fascia oraria. Il
vantaggio e' che poi conti per criteri di uguaglianza anziche' dei
complessi "between", e sara' piu' facile fare report con gli strumenti e i
wizard di access.
nella stringa gioca con i leading spaces per favorire il naturale
ordinamento delle fasce ("notte" viene dopo " mattina", "mattina" viene
dopo " notte")
Io uso 4 fasce orarie, la colonna FASCIAORARIA viene aggiornata dalla
seguente query che va a vedere la colonna TIMESTAMP_ACCETTAZIONE:
UPDATE [TBLLOC ACCETTAZIONI]
SET [TBLLOC ACCETTAZIONI].FASCIAORARIA =
IIf(Format([TIMESTAMP_ACCETTAZIONE],"hh") Between 0 And 6,"Notte",
IIf(Format([TIMESTAMP_ACCETTAZIONE],"hh") Between 7 And 13," Mattina",
IIf(Format([TIMESTAMP_ACCETTAZIONE],"hh") Between 14 And 19," Pomeriggio",
IIf(Format([TIMESTAMP_ACCETTAZIONE],"hh") Between 20 And 23," Sera"))));
ciao
R.
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: SQL:Estrarre dati per fasce orarie.

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:JV9cc.111321$FJ6.4...@twister1.libero.it...
>
> "TT" <
tere...@libero.it
> ha scritto nel messaggio
> news:1d%bc.110820$FJ6.4...@twister1.libero.it...
> >
> > "Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
> > news:U%Wbc.110441$FJ6.4...@twister1.libero.it...
> > >
> > > "TT" <
tere...@libero.it
> ha scritto nel messaggio
> > > news:i0Ubc.110192$FJ6.4...@twister1.libero.it...
> > > > Ciao
[cut]
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
Grazie per la risposta.
Purtroppo non posso fare come suggerisce risparmioso, comunque grazie.
Passiamo a Roberto.
Non capisco la differenza tra DCount ed il count() qual'č?
Il tuo metodo, che ho utilizzato, funziona benissimo ma ben se mi servono i
risultati in tre controlli cosa che faccio.
Se voglio avere i 3 risultati in una query che conta quante telefonate sono
state fatte nelle tre fasce?
Es di risultato che voglio ottenere:
Notturno (dalle 21 alle 07 del giorno dopo)          Mattina (dalle 7 alle
13)         Pomeriggio (dalle 13 alle 21)
                    134
1745                                        2054
Ripeto se voglio avere i tre risultati separati va benissimo come dicevi tu.
Grazie
TT
PS
Perchč non funziona? pur avendo151500 orapartenza vale 00.00.00
    OraPartenza = Format(Forms![mTelData]![DaOra], "hh.mm.ss")
Devo per forza utilizzare CDate con mid, left, right?
L'obiettivo finale č:
Se sono selezionate le due date e l'interruttore č pigiato (true), filtro la
maschera con
    Me.Filter = "INS_DATE BETWEEN Forms![mTelData]![DaData] AND
Forms![mTelData]![AData]"
se sono state digitate le due ore in altri due textbox e l'interruttore ORA
č pigiato filtro la maschera come sopra ma con le ore.
Se sono state digitate entrambe e gli interruttori sono pigiati filtro con
tutto, data e ora. (Devo ancora vedere come fare, un passetto alla volta.)
Ancora grazie
Caio
TT


title: SQL:Estrarre dati per fasce orarie.

text:
"TT" <
tere...@libero.it
> ha scritto nel messaggio
news:14jcc.109384$Kc3.3...@twister2.libero.it...
>
> "Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
> news:JV9cc.111321$FJ6.4...@twister1.libero.it...
> >
> > "TT" <
tere...@libero.it
> ha scritto nel messaggio
> > news:1d%bc.110820$FJ6.4...@twister1.libero.it...
> > >
> > > "Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
> > > news:U%Wbc.110441$FJ6.4...@twister1.libero.it...
> > > >
> > > > "TT" <
tere...@libero.it
> ha scritto nel messaggio
> > > > news:i0Ubc.110192$FJ6.4...@twister1.libero.it...
> > > > > Ciao
> [cut]
> > Roberto
>
> Grazie per la risposta.
> Purtroppo non posso fare come suggerisce risparmioso, comunque grazie.
> Passiamo a Roberto.
> Non capisco la differenza tra DCount ed il count() qual'č?
La funzione DCount puň contenere i criteri di selezione che la funzione
Count() non puň contenere e devi quindi abbinarla a qualcos'altro che
effettua la selezione (una funzione IIf o inserirla nel contesto di una
query di selezione dove si usa il predicato WHERE).
>
> Il tuo metodo, che ho utilizzato, funziona benissimo ma ben se mi servono
i
> risultati in tre controlli cosa che faccio.
> Se voglio avere i 3 risultati in una query che conta quante telefonate
sono
> state fatte nelle tre fasce?
>
> Es di risultato che voglio ottenere:
>
> Notturno (dalle 21 alle 07 del giorno dopo)          Mattina (dalle 7 alle
> 13)         Pomeriggio (dalle 13 alle 21)
>                     134
> 1745                                        2054
>
Nessuno ti vieta di usare la funzione DCounte nel campo calcolato di una
query.
> Ripeto se voglio avere i tre risultati separati va benissimo come dicevi
tu.
> Grazie
> TT
>
> PS
> Perchč non funziona? pur avendo151500 orapartenza vale 00.00.00
>     OraPartenza = Format(Forms![mTelData]![DaOra], "hh.mm.ss")
> Devo per forza utilizzare CDate con mid, left, right?
--



title: SQL:Estrarre dati per fasce orarie.

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:vJycc.113716$FJ6.4...@twister1.libero.it...
>
> "TT" <
tere...@libero.it
> ha scritto nel messaggio
> news:14jcc.109384$Kc3.3...@twister2.libero.it...
> >
> > "Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
> > news:JV9cc.111321$FJ6.4...@twister1.libero.it...
> > >
> > > "TT" <
tere...@libero.it
> ha scritto nel messaggio
> > > news:1d%bc.110820$FJ6.4...@twister1.libero.it...
> > > >
> > > > "Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
> > > > news:U%Wbc.110441$FJ6.4...@twister1.libero.it...
> > > > >
> > > > > "TT" <
tere...@libero.it
> ha scritto nel messaggio
> > > > > news:i0Ubc.110192$FJ6.4...@twister1.libero.it...
> > > > > > Ciao
> > [cut]
> > > Roberto
 [cut]
>
> Nessuno ti vieta di usare la funzione DCounte nel campo calcolato di una
> query.
>
A ok.
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
>
Grazie per la risposta.
Visto che sei cosě figo dammi anche sta risposta va.
Ho usato il dcount come dicevi il 05/04/04 alle 11:46 in una maschera che
filtro con dued ate, se sono inserita in txt box, e/o con due ore, se sono
contenute in altre txt box.Il filtro funzia ma la dcoun, ovviamente, conta
mTelData quindi tutto , come posso fare ad adattarla alla mia form filtrata?
Riprendendo l'esempio dell'altra volta
= DCount("*"; "tTelefonate"; "(OraInserimento Between #21:0:0# And
#23:59:59#) OR (OraInserimento Between #00:00:00# And #6:59:59#)")
Come posso ottenere il conteggio del form filtrato, quindi non tTelefonate
che contiene tutti i record, ma da FormTelefonate?
Ciao
TT


title: SQL:Estrarre dati per fasce orarie.

text:
"TT" <
tere...@libero.it
> ha scritto nel messaggio
news:GLAcc.110840$Kc3.3...@twister2.libero.it...

Dovresti dirci come effettui il filtro della maschera.
>
> Ciao
> TT
--



title: SQL:Estrarre dati per fasce orarie.

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:7ZOcc.115024$FJ6.4...@twister1.libero.it...

> > Visto che sei così figo dammi anche sta risposta va.
> > Ho usato il dcount come dicevi il 05/04/04 alle 11:46 in una maschera
che
> > filtro con dued ate, se sono inserita in txt box, e/o con due ore, se
sono
> > contenute in altre txt box.Il filtro funzia ma la dcoun, ovviamente,
conta
> > mTelData quindi tutto , come posso fare ad adattarla alla mia form
> filtrata?
> > Riprendendo l'esempio dell'altra volta
> > = DCount("*"; "tTelefonate"; "(OraInserimento Between #21:0:0# And
> > #23:59:59#) OR (OraInserimento Between #00:00:00# And #6:59:59#)")
> > Come posso ottenere il conteggio del form filtrato, quindi non
tTelefonate
> > che contiene tutti i record, ma da FormTelefonate?
>
> Dovresti dirci come effettui il filtro della maschera.
>
> >
> > Ciao
> > TT
>
> --
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
Ciao
La maschera si becca tutti i record di una query, la filtro con il codice
Private Sub IntFiltro_Click()
    filtro = ""
    If Me.IntFiltro.Value = True Then
        If Me.IntData.Value = True Then
            filtro = "INS_DATE BETWEEN " & DataPartenza & " AND " &
DataArrivo
        End If
        If Me.IntOra.Value = True Then
                If filtro = "" Then
                    filtro = "OraIns BETWEEN " & OraPartenza & " AND " &
OraArrivo
                Else
                    filtro = filtro & " AND " & "OraIns BETWEEN " &
OraPartenza & " AND " & OraArrivo
                End If
            End If
        Me.IntData.Enabled = False
        Me.IntOra.Enabled = False
        Me.DaData.Enabled = False
        Me.AData.Enabled = False
        Me.DaOra.Enabled = False
        Me.AOra.Enabled = False
        'MsgBox filtro
        Me.Filter = filtro
        Me.FilterOn = True
    Else
        filtro = ""
        Me.Filter = ""
        Me.FilterOn = False
        Me.IntData.Enabled = True
        Me.IntOra.Enabled = True
        Me.DaData.Enabled = True
        Me.AData.Enabled = True
        Me.DaOra.Enabled = True
        Me.AOra.Enabled = True
    End If
End Sub
Il filtro generato funziona ed è il seguente (caso in cui ci sia sia la data
che l'ora).
INS_DATE BETWEEN #31/03/2004# AND #03/04/2004# AND OraIns BETWEEN #7.30.00#
AND #12.15.00#
Prendendo l'esempio dell'altro post
= DCount("*"; "tTelefonate"; "(OraIns Between #21:0:0# And
#23:59:59#) OR (OraIns Between #00:00:00# And #6:59:59#)")
questo dovrebbe contare 0, in realtà restituisce xxx perchè ha tTelefonate
come parametro.Posso fargli contare le
telefonate del form filtrato come sopra?
Grazie in anticipo.Ciao
TT


title: SQL:Estrarre dati per fasce orarie.

text:
"TT" <
tere...@libero.it
> ha scritto nel messaggio
news:h3Xcc.113292$Kc3.3...@twister2.libero.it...
[CUT]
> > > >
> > > >
> > > Grazie per la risposta.
> > > Visto che sei così figo dammi anche sta risposta va.
> > > Ho usato il dcount come dicevi il 05/04/04 alle 11:46 in una maschera
> che
> > > filtro con dued ate, se sono inserita in txt box, e/o con due ore, se
> sono
> > > contenute in altre txt box.Il filtro funzia ma la dcoun, ovviamente,
> conta
> > > mTelData quindi tutto , come posso fare ad adattarla alla mia form
> > filtrata?
> > > Riprendendo l'esempio dell'altra volta
> > > = DCount("*"; "tTelefonate"; "(OraInserimento Between #21:0:0# And
> > > #23:59:59#) OR (OraInserimento Between #00:00:00# And #6:59:59#)")
> > > Come posso ottenere il conteggio del form filtrato, quindi non
> tTelefonate
> > > che contiene tutti i record, ma da FormTelefonate?
> >
> > Dovresti dirci come effettui il filtro della maschera.
> >
> > >
> > > Ciao
> > > TT
> >
> > --
> > Roberto
> >

Prova così:
= DCount("*"; "tTelefonate"; Me.Filter & " AND " & _
"((OraIns Between #21:0:0# And #23:59:59#) OR " & _
"(OraIns Between #00:00:00# And #6:59:59#))")
>
> Grazie in anticipo.Ciao



title: SQL:Estrarre dati per fasce orarie.

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:R48dc.114725$Kc3.3...@twister2.libero.it...
>
> "TT" <
tere...@libero.it
> ha scritto nel messaggio
> news:h3Xcc.113292$Kc3.3...@twister2.libero.it...
> [CUT]
> > che l'ora).
> > INS_DATE BETWEEN #31/03/2004# AND #03/04/2004# AND OraIns BETWEEN
> #7.30.00#
> > AND #12.15.00#
> >
> > Prendendo l'esempio dell'altro post
> > = DCount("*"; "tTelefonate"; "(OraIns Between #21:0:0# And
> > #23:59:59#) OR (OraIns Between #00:00:00# And #6:59:59#)")
> > questo dovrebbe contare 0, in realtà restituisce xxx perchè ha
tTelefonate
> > come parametro.Posso fargli contare le
> > telefonate del form filtrato come sopra?
>
> Prova così:
>
> = DCount("*"; "tTelefonate"; Me.Filter & " AND " & _
> "((OraIns Between #21:0:0# And #23:59:59#) OR " & _
> "(OraIns Between #00:00:00# And #6:59:59#))")
>
> >
> > Grazie in anticipo.Ciao
> > TT
>
> --
> Roberto
>
> ---------------------------------------------
> il Sito Comune di it.comp.appl.access:
>
http://www.sitocomune.com
> ---------------------------------------------
>
Grazie per la cortesia.
Purtroppo non funzia, mettendo nella txtbox
=DCount("*";"tTelefonate";Me.Filter & " And " & _
 "((OraIns Between #21:00:00# And #23:59:59#) OR _
(OraIns Between #00:00:00# And #6:59:59#))")
all'apertura della maschera appare #Nome? Rileggedo il contenuto della
txtbox
vedo che qualcosa è cambiato.
Ma perchè fa [Me].[Filter] ? Che non sia quello il problema!
Bo
Ciao
TT


title: SQL:Estrarre dati per fasce orarie.

text:
"TT" <
tere...@libero.it
> ha scritto nel messaggio
news:1ihdc.116009$Kc3.3...@twister2.libero.it...

Si è quello il problema: prova a correggerlo in [Me.Filter]
> Ciao
> TT
Buona Pasua



title: SQL:Estrarre dati per fasce orarie.

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:k4udc.119301$FJ6.4...@twister1.libero.it...

Ciao,
stessa cosa! #nome?
Potrei fare con vba
txt7.Value = DCount("*", "tTelefonate", Forms![mTelDataOra].Filter & _
" And (OraIns Between #07:00:00# And #12:00:00#)")
ma se la maschera non è filtrata non conta correttamente.
Me.Filter =""
quindi alla fine
txt7.Value = Between And And (OraIns Between #07:00:00# And #12:00:00#)
Ciao e buona Pasqua


title: Raggruppamenti e decimali

text:
Ho una tabella in cui un campo č definito a precisione singola. Inserisco
tutti dati con non piů di 2 decimali (la maschera di input taglia cosě!). Se
guardo nella tabella i dati hanno i decimali correti. Se faccio una SELECT
tutto a posto anche lě. Se invece faccio una query di raggruppamento e
faccio la somma su quel campo compaiono una sfilza infinita di decimai!!!
Voi direte: č dovuto alla gestione dei decimali da parte dell'OS! VA bene,
ma come me li cavo dalla palle? Se nel campo metto un Round viene
completamente ignorato!
Che devo fŕ?
Denghiu!
--------------------------------
Inviato via
http://arianna.libero.it/usenet/


title: Raggruppamenti e decimali

author: Simone Calligaris

text:
"
>
> Ho una tabella in cui un campo č definito a precisione singola. Inserisco
> tutti dati con non piů di 2 decimali (la maschera di input taglia cosě!).
> Se
> guardo nella tabella i dati hanno i decimali correti. Se faccio una SELECT
> tutto a posto anche lě. Se invece faccio una query di raggruppamento e
> faccio la somma su quel campo compaiono una sfilza infinita di decimai!!!
> Voi direte: č dovuto alla gestione dei decimali da parte dell'OS! VA bene,
> ma come me li cavo dalla palle? Se nel campo metto un Round viene
> completamente ignorato!
>
> Che devo fŕ?
Precisione singola, eh?
Credo tu debba invocare una funzione globale che applichi la funzione CDec
al campo single in oggetto.
Tipo:
Public Function XXX(Valore as single) as double
      XXX=CDec(Valore)
End Function
Se non ricordo male non č possibile invocare la funzione CDec direttamente
nelle queries.


title: Raggruppamenti e decimali

text:
>
>
> Precisione singola, eh?
>
> Credo tu debba invocare una funzione globale che applichi la funzione CDec
> al campo single in oggetto.
>
> Tipo:
>
> Public Function XXX(Valore as single) as double
> XXX=CDec(Valore)
> End Function
>
> Se non ricordo male non è possibile invocare la funzione CDec direttamente
> nelle queries.
Cioè mi stai dicendo che se voglio fare una stupida somma con una query di
raggruppamento di 1.34 e 2.12, per ottenere 3.46 e non 3.46787478348583746
devo invocare una funzione VB?!?!?!?



title: Raggruppamenti e decimali

text:
>> Precisione singola, eh?
>>
>> Credo tu debba invocare una funzione globale che applichi la funzione
>> CDec
>> al campo single in oggetto.
>>
>> Tipo:
>>
>> Public Function XXX(Valore as single) as double
>> XXX=CDec(Valore)
>> End Function
>>
>> Se non ricordo male non è possibile invocare la funzione CDec
>> direttamente
>> nelle queries.
> Cioè mi stai dicendo che se voglio fare una stupida somma con una query di
> raggruppamento di 1.34 e 2.12, per ottenere 3.46 e non 3.46787478348583746
> devo invocare una funzione VB?!?!?!?
Ti sto dicendo di moderare il tono: cerco solo d'aiutarti e non vengo pagato
per questo.
La natura dei campi Floating Point (e le sorprese che possono dare) è comune
a TUTTI i sistemi di programmazione.
O cambi tipologia di campo numerico o ti devi adattare.
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q210423
Saluti.


title: Raggruppamenti e decimali

author: giorgio rancati

text:
"P@olo" <
paolodamo...@tim.it
> ha scritto nel messaggio
news:87Z21Z57Z94Y12...@usenet.libero.it...
>
> Cioč mi stai dicendo che se voglio fare una stupida somma con una query di
> raggruppamento di 1.34 e 2.12, per ottenere 3.46 e non 3.46787478348583746
> devo invocare una funzione VB?!?!?!?
sei tu che hai scelto un tipo di dato approssimato, quando si progetta una
tabella bisognerebbe conoscere le caratterisctiche e i comportamenti dei
tipi di dato che si intende utilizzare.
:-)
--
Giorgio Rancati
[Office Access MVP]


title: Raggruppamenti e decimali

text:
> > Cioč mi stai dicendo che se voglio fare una stupida somma con una query
di
> > raggruppamento di 1.34 e 2.12, per ottenere 3.46 e non
3.46787478348583746
> > devo invocare una funzione VB?!?!?!?
>
>
> Ti sto dicendo di moderare il tono: cerco solo d'aiutarti e non vengo
pagato
> per questo.
Ti chiedo scusa, il tono non voleva essere sgarbato nei tuoi confronti, ma
di semplice stupore!!! Ci mancherebbe che me la prendessi con te!
> La natura dei campi Floating Point (e le sorprese che possono dare) č
comune
> a TUTTI i sistemi di programmazione.
> O cambi tipologia di campo numerico o ti devi adattare.
Questo lo so, pensavo ci fosse una maniera piů agevole: d'altra parte, se
uno volesse usare Access senza l'ausilio di VBA non ce la farebbe!
>
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q210423
Ci do un'occhiata.
> Saluti.
Ciao e grazie!
Ps: dai, non te la prendere, č stato solo un "quiquoqua"!!!



title: Raggruppamenti e decimali

text:
Il 09 Mar 2008, 15:17, "giorgio rancati"
<
giorgio_No_Sp...@tiscali.it
> ha scritto:
>
> "P@olo" <
paolodamo...@tim.it
> ha scritto nel messaggio
> news:87Z21Z57Z94Y12...@usenet.libero.it...
> >
> > Cioè mi stai dicendo che se voglio fare una stupida somma con una query
di
> > raggruppamento di 1.34 e 2.12, per ottenere 3.46 e non
3.46787478348583746
> > devo invocare una funzione VB?!?!?!?
>
> sei tu che hai scelto un tipo di dato approssimato, quando si progetta una
> tabella bisognerebbe conoscere le caratterisctiche e i comportamenti dei
> tipi di dato che si intende utilizzare.
> :-)
Scusa, ma se mi serve un dato con dei decimali, 2 o 3, mai di più, che tipo
dovrei scegliere?



title: Raggruppamenti e decimali

text:
"P@olo" <
paolodamo...@tim.it
> ha scritto nel messaggio
news:87Z21Z57Z94Y12...@usenet.libero.it...
>
> Scusa, ma se mi serve un dato con dei decimali, 2 o 3, mai di più, che
> tipo
> dovrei scegliere?
ad esempio il tipo Valuta, tipo di dato non approssimato con max 4 decimali,
idoneo per calcoli monetari.
Oppure, da Acc2000 in avanti, il tipo Numerico-->Decimale, tipo di dato non
approssimato in cui puoi decidere il numero massimo di cifre totali e di
queste il numero di decimali da gestire.
Ciao



title: Raggruppamenti e decimali

text:
> Questo lo so, pensavo ci fosse una maniera piů agevole: d'altra parte, se
> uno volesse usare Access senza l'ausilio di VBA non ce la farebbe!
>>
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q210423
> Ci do un'occhiata.
>> Saluti.
> Ciao e grazie!
> Ps: dai, non te la prendere, č stato solo un "quiquoqua"!!!
Nessun problema.
Ciao: Simone


title: Raggruppamenti e decimali

text:
Il 09 Mar 2008, 15:50, "giorgio rancati"
<
giorgio_No_Sp...@tiscali.it
> ha scritto:
>

Azz, queste proprio mi mancavano.... OK con un Decimale/Euro a 3 decimali e
Decimale/NumeroGenerico a 2 decimali ho risolto tutto!!!
Grazie davvero!
E un grazie ancora anche a Simone!



title: Raggruppamenti e decimali

text:
"P@olo" <
paolodamo...@tim.it
> ha scritto nel messaggio
news:87Z21Z57Z94Y12...@usenet.libero.it...
>
> Azz, queste proprio mi mancavano.... OK con un Decimale/Euro a 3 decimali
> e
> Decimale/NumeroGenerico a 2 decimali ho risolto tutto!!!
> Grazie davvero!
umm..  non è molto chiaro cosa hai fatto, NumeroGenerico è il formato, il
numero dei decimali da dove l'hai impostato ?
Il numero di decimali desiderati va impostato nella proprietà "Scala"
Le proprietà "Formato" e "Posizioni Decimali" non hanno nessuna influenza
sul contenuto del campo perchè determinano solo la sua visualizzazione.



title: Raggruppamenti e decimali

text:
> umm.. non è molto chiaro cosa hai fatto, NumeroGenerico è il formato, il
> numero dei decimali da dove l'hai impostato ?
>
> Il numero di decimali desiderati va impostato nella proprietà "Scala"
> Le proprietà "Formato" e "Posizioni Decimali" non hanno nessuna influenza
> sul contenuto del campo perchè determinano solo la sua visualizzazione.
Ops....
OK, corretto mettendo in Scala lo stesso valore riportato in NumeroDecimali.
Adesso dovrei stare a posto!



title: Raggruppamenti e decimali

author: Oscar Manfredini

text:
"giorgio rancati" <
> umm..  non è molto chiaro cosa hai fatto, NumeroGenerico è il formato, il
> numero dei decimali da dove l'hai impostato ?
> Il numero di decimali desiderati va impostato nella proprietà "Scala"
> Le proprietà "Formato" e "Posizioni Decimali" non hanno nessuna influenza
> sul contenuto del campo perchè determinano solo la sua visualizzazione.
Il problema del tipo "Decimal" è che non esiste (almeno con Access 2000/XP)
un tipo di variabile in VB corrispondente.
Tu che fai: la memorizzi in un Double con la CDec() ?
Ciao!


title: Raggruppamenti e decimali

text:
"Oscar Manfredini" <
oscar.ma...@libero.it
> ha scritto nel messaggio
news:47d4355b$0$17946$4faf...@reader1.news.tin.it...
>
> Il problema del tipo "Decimal" č che non esiste (almeno con Access
> 2000/XP)
> un tipo di variabile in VB corrispondente.
c'č,  č un sottotipo del tipo Variant, poniamo che il campo Importo della
tua tabella sia di tipo decimal, per memorizzarlo in una variabile basta
fare:
----
Dim Importo as Variant
Importo=Rs!Importo
' Test del sottotipo:
MsgBox VarType(Importo)=vbDecimal
----
Risultato: Vero
> Tu che fai: la memorizzi in un Double con la CDec() ?
e no, in questo modo ricaschi nel tipo di dato approssimato.
:-)



title: Raggruppamenti e decimali

text:
"P@olo" <
paolodamo...@tim.it
> ha scritto nel messaggio
news:87Z21Z57Z94Y12...@usenet.libero.it...
> Ops....
>
> OK, corretto mettendo in Scala lo stesso valore riportato in
> NumeroDecimali.
> Adesso dovrei stare a posto!
;-)



title: Raggruppamenti e decimali

text:
"giorgio rancati" <
>> Tu che fai: la memorizzi in un Double con la CDec() ?
> e no, in questo modo ricaschi nel tipo di dato approssimato.
> :-)
M'intrometto per smentire   ;-)
Se applichi la funzione VB che ho postato ieri all'argomento Single nella
Query, il risultato è perfetto.
Vero comunque che da "manuale" il Decimal è un sottotipo del Variant (c'è
anche nell'Help mi pare).
Ciao: Simone


title: Raggruppamenti e decimali

text:
"Simone Calligaris" <
simo...@libero.it
> ha scritto nel messaggio
news:47d50125$0$37197$4faf...@reader3.news.tin.it...
>
>>> Tu che fai: la memorizzi in un Double con la CDec() ?
>
>> e no, in questo modo ricaschi nel tipo di dato approssimato.
>> :-)
>
>
> M'intrometto per smentire   ;-)
>
> Se applichi la funzione VB che ho postato ieri all'argomento Single nella
> Query, il risultato è perfetto.
si ma se poi esegui delle operazioni aritmetiche sulla variabile Double
ottieni sempre un risultato approssimato a meno di non usare per ogni
operazione la conversione in Cdec()
Se al contrario le operazioni aritmetiche le esegui sulla variabile Variant
non hai problemi.
esempio
----
'Poniamo che il valore 144 derivi da un campo decimal di un recordset
Dim varImporto As Variant
varImporto = CDec(144)
varImporto = varImporto - 143.7
Debug.Print varImporto
Dim dblImporto As Double
dblImporto = CDec(144)
dblImporto = dblImporto - 143.7
Debug.Print dblImporto
----
Risultati:
 0,3
 0,300000000000011



title: Raggruppamenti e decimali

text:
"giorgio rancati" <
>> M'intrometto per smentire   ;-)
>>
>> Se applichi la funzione VB che ho postato ieri all'argomento Single nella
>> Query, il risultato č perfetto.
> si ma se poi esegui delle operazioni aritmetiche sulla variabile Double
> ottieni sempre un risultato approssimato a meno di non usare per ogni
> operazione la conversione in Cdec()
> Se al contrario le operazioni aritmetiche le esegui sulla variabile
> Variant non hai problemi.
> esempio
Beh, sě: il CDec() nel caso di variabile Double si deve utilizzare in ogni
operazione.
Perň il caso specifico oggetto del post era semplicemente
Somma(<CampoSingle>) in Query Group By...
Ciao, Simone


title: Raggruppamenti e decimali

text:
"Simone Calligaris" <
simo...@libero.it
> ha scritto nel messaggio
news:47d5120b$0$17947$4faf...@reader1.news.tin.it...
>
> Beh, sě: il CDec() nel caso di variabile Double si deve utilizzare in ogni
> operazione.
>
> Perň il caso specifico oggetto del post era semplicemente
> Somma(<CampoSingle>) in Query Group By...
sě, ma poi Oscar ha sollevato il problema della variabile VB e vedendo la
tua ultima frase
----
Vero comunque che da "manuale" il Decimal č un sottotipo del Variant (c'č
anche nell'Help mi pare).
----
pensavo che anche tu ti riferissi alle variabili VB
:-)



title: Raggruppamenti e decimali

text:
"giorgio rancati" <
> c'č,  č un sottotipo del tipo Variant, poniamo che il campo Importo della
> tua tabella sia di tipo decimal, per memorizzarlo in una variabile basta
> fare:
> ----
> Dim Importo as Variant
> Importo=Rs!Importo
> ' Test del sottotipo:
> MsgBox VarType(Importo)=vbDecimal
> ----
> Risultato: Vero
>
> > Tu che fai: la memorizzi in un Double con la CDec() ?
> e no, in questo modo ricaschi nel tipo di dato approssimato.
Beh, grazie per i ragguagli: non avevo mai utilizzato i Decimal...
Ciao!


title: RS232

author: Ivan

text:
Salve a tutti
Vorrei sapere se e' possibile (e come) comandare via RS232 un rele'.
Dovrei in un applicativo in access (timbratura) comandare una sirena per gli
orari di lavoro
tramite uscita in seriale.
In alternativa se  sapete di un programma simile, anche in altri linguaggi
(es C, VB) in modo da poter generare un file eseguibile, richiamabile
tramite shell da access, che mi comandi la seriale.
Grazie.


title: RS232

text:
"Ivan" <
bell_...@tin.it
> ha scritto nel messaggio
news:pM2Wd.618973$b5.28...@news3.tin.it...

se cerchi vb+rs232 o vs+seriale credo troverai molto materiale
credo si debba utilizzare il componente mscomm sia in access che in vb
fammi sapere. ciao.


title: RS232

author: access il top

text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:422996b8$0$6296$5fc...@news.tiscali.it...

http://www.it-lang-vb.net/Documentazione/Articoli/MSCOMM.htm
http://www.nutchip.com/progetti/vb_sample/vb_sample_en.htm
http://digilander.libero.it/VBItalia/Lezioni/comm5.htm


title: A97-formula su report

author: flavio

text:
Ciao a tutti.
Ho un report con un raggruppamento che discrimina i valori in base ad un
flag. Nel piè di pagina del raggruppamento ci sono dei controlli, uno che
somma(totale), uno che calcola una percentuale (sconto) e un'altro che
calcola la differenza (netto). Nel piè di pagina del report vorrei sommare
l'ultimo di questi tre controlli (netto), ma non funziona. Durante
l'apertura del report mi chiede il nome del controllo "netto".
Qualcuno ha qualche consiglio?
Grazie comunque e ciao
Flavio


title: A97-formula su report

author: Livio Massa

text:
"flavio" <
flavio...@toglimi.tin.it
> ha scritto nel messaggio
news:89Ep7.335$Bk....@news1.tin.it...

Sulla riga del report creati un campo (eventualmente nascosto se non ti
interessa) contenente il "valore netto". Sul piede del raggruppamento e sul
piede di report somma il valore di questo campo. Dovrebbe risolvere il tuo
problema (fai attenzione ad eventuali arrotondamenti dei totali parziali)
Ciao - Livio


title: A97-formula su report

text:
"Livio Massa" <
l.m...@sistemidue.it
> ha scritto nel messaggio
news:9o72ce$npl$1...@fe2.cs.interbusiness.it...

Bravo Livio! hai centrato subito il problema. Se inserisco il calcolo del
netto nel corpo, ho poi una differenza legata agli arrotondamenti. La somma
dei valori netti calcolati sul corpo del report differisce (di poco.. ma è
sbagliata) dalla somma de valori lordi con l'applicazione successiva dello
sconto.
Non so che fare.
Ciao
Flavio


title: A97-formula su report

text:
"flavio" <
flavio...@toglimi.tin.it
> ha scritto nel messaggio
news:89Ep7.335$Bk....@news1.tin.it...

Se il totale nel piè di pagina cerchi di ottenerlo tramite la funzione
Somma, sperando ti sia di aiuto, riporto qui seguito cosa dice l'help circa
la somma di controlli caolcolati in una maschero o in un report:
=============================
Calcolare il totale di un controllo calcolato in una maschera o in un report
Quando si calcola il totale con una funzione di aggregazione quale Somma o
una funzione di aggregazione sui domini quale Dsum, non è possibile
utilizzare il nome di un controllo calcolato nella funzione Somma. È
necessario ripetere l'espressione nel controllo calcolato. Ad esempio:
=Somma([Quantità]*[PrezzoUnitario])
Tuttavia, se si ha un campo calcolato in una query sottostante, ad esempio:
=PrezzoComplessivo: [Quantità]*[PrezzoUnitario]
è possibile utilizzare il nome di tale campo nella funzione Somma, come nel
caso seguente:
=Somma([PrezzoComplessivo])
Note
· Per ulteriori informazioni sulla creazione di un campo calcolato in una
query, fare clic su  .
· Per ulteriori informazioni sulla funzione Somma, fare clic su  .
· Per ulteriori informazioni sulla funzione Dsum, fare clic su  .
==============================
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: A97-formula su report

text:
"flavio" <
flavio...@toglimi.tin.it
> ha scritto nel messaggio
news:kDEp7.498$Bk....@news1.tin.it...
>
> "Livio Massa" <
l.m...@sistemidue.it
> ha scritto nel messaggio
> news:9o72ce$npl$1...@fe2.cs.interbusiness.it...
> >
> > "flavio" <
flavio...@toglimi.tin.it
> ha scritto nel messaggio
> > news:89Ep7.335$Bk....@news1.tin.it...
> > Ciao - Livio
> Bravo Livio! hai centrato subito il problema. Se inserisco il calcolo del
> netto nel corpo, ho poi una differenza legata agli arrotondamenti. La
somma
> dei valori netti calcolati sul corpo del report differisce (di poco.. ma è
> sbagliata) dalla somma de valori lordi con l'applicazione successiva dello
> sconto.
> Non so che fare.
> Ciao
> Flavio
>
>
In questo caso penso che la cosa si complichi abbastanza.
Potresti provare con delle qry
1. Creati una qry di raggruppamento come fai sul report e calcolati i totali
per sezione (otterrai tante righe quante sono i totali parziali)
2. Creati una seconda qry di raggruppamento basata sulla precedente che ne
sommi tutte le righe
3. Inserisci un controllo nel piede del report che abbia come origine il
valore ottenuto dalla qry (puoi usare l'istruzione DLOOKUP della quale non
ricordo esattamente la sintassi, ma la trovi sul manuale in linea)
Fammi sapere, ma se neanche cosi' non risolvi il problema ... mi dispiace ma
ho finito le mie risorse.
Ciao  -  Livio


title: A97-formula su report

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:bnJp7.7568$Q25.3...@news.infostrada.it...

Grazie mille, ma ho risolto. Ho inserito un controllo sul pie' di pagina del
raggruppamento, con origine dati riferita al controllo che esegue il il
calcolo e impostando la somma parziale. Riferendomi a questo controllo nel
piè di pagina del report ottengo la somma desiderata.
Grazie a tutti comunque.
Flavio


title: A97-formula su report

text:
"Livio Massa" <
l.m...@sistemidue.it
> ha scritto nel messaggio
news:9o7tt2$fam$1...@fe2.cs.interbusiness.it...
>
> "flavio" <
flavio...@toglimi.tin.it
> ha scritto nel messaggio
> news:kDEp7.498$Bk....@news1.tin.it...
> >
> > "Livio Massa" <
l.m...@sistemidue.it
> ha scritto nel messaggio
> > news:9o72ce$npl$1...@fe2.cs.interbusiness.it...
> > >
> > > "flavio" <
flavio...@toglimi.tin.it
> ha scritto nel messaggio
> > > news:89Ep7.335$Bk....@news1.tin.it...
> > > Ciao - Livio
> > Bravo Livio! hai centrato subito il problema. Se inserisco il calcolo
del
> > netto nel corpo, ho poi una differenza legata agli arrotondamenti. La
> somma
> > dei valori netti calcolati sul corpo del report differisce (di poco.. ma
č
> > sbagliata) dalla somma de valori lordi con l'applicazione successiva
dello
> > sconto.
> > Non so che fare.
> > Ciao
> > Flavio
> >
> >
> In questo caso penso che la cosa si complichi abbastanza.
> Potresti provare con delle qry
>
> 1. Creati una qry di raggruppamento come fai sul report e calcolati i
totali
> per sezione (otterrai tante righe quante sono i totali parziali)
> 2. Creati una seconda qry di raggruppamento basata sulla precedente che ne
> sommi tutte le righe
> 3. Inserisci un controllo nel piede del report che abbia come origine il
> valore ottenuto dalla qry (puoi usare l'istruzione DLOOKUP della quale non
> ricordo esattamente la sintassi, ma la trovi sul manuale in linea)
>
> Fammi sapere, ma se neanche cosi' non risolvi il problema ... mi dispiace
ma
> ho finito le mie risorse.
>
> Ciao  -  Livio
Grazie, sei stato molto gentile. Ho risolto (la spiegazione nella risposta a
Roberto), ma domani per curiositŕ provo il tuo metodo.
Ciao
Flavio


title: Maschera con Nome Utente e Password

author: andreaf

text:
Salve,
ho una maschera che mi si apre non appena si lancia il db.
Ho messo due campi "username" e "password" e un bottone LOGIN.
Per ora alla pressione del bottone si entra diretti nel DB in quanto ho
impostato che alla pressione del bottone la maschera si chiuda e mi si
abiliti il menu per l'utilizzo delle maschere.
Ora però vorrei che prima di chiudermi la maschera mi controllasse che il
campo username e password esistano in una tabella UTENTI del mio db.
Come posso fare questo??


title: Maschera con Nome Utente e Password

author: ciroteo

text:
"andreaf" <
the...@libero.it
> ha scritto nel messaggio
news:zzw0e.19080$kC3....@tornado.fastwebnet.it...

devi verificare l'esistenza del dato tramite una funzione tipo dlookup o
ancor meglio dcount
puoi mettere la routine sotto un pulsante o dopo aggiornamento della form...
Dim cerca As String
Dim stringadiricerca As String
cerca = me.[tuo controllo]
stringadiricerca = "[utente] like " & Chr(34) & "*" & cerca & "*" & Chr(34)
Dim conteg As Integer
conteg = DCount("[utente]", "utenti", stringadiricerca)
If conteg > 0 Then
Me.FilterOn = True
docmd.close
' o apri la maschera che vuoi ...
Else
MsgBox ("Errore non ci sono utenti con lo user: " & cerca)
End If


title: Maschera con Nome Utente e Password

text:
"andreaf" <
the...@libero.it
> ha scritto nel messaggio
news:zzw0e.19080$kC3....@tornado.fastwebnet.it...

Vai sul Sito Comune (link qui sotto) e nella Sezione General leggi la FAQ di
Harry Evans intitolata "6.72 Semplice esempio di form per la richiesta di
login".
--
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------


title: Maschera con Nome Utente e Password

text:
"Roberto da casa" <
r.masso...@libero.it
> ha scritto nel messaggio
news:SQw0e.8641$IN.1...@twister2.libero.it...

ok.
Ora mi sono semplificato la vita.
Per lo username ho messo una combobox che mi pesca tutti gli utenti dalla
tabella UTENTI.
Ora ho bisogno di creare un codice che mi veda che la password inserita
coincida con quella del campo password dell'utente corrispondente.


title: Maschera con Nome Utente e Password

author: SunRex

text:
"andreaf" <
the...@libero.it
> ha scritto nel messaggio
news:KIy0e.19442$kC3....@tornado.fastwebnet.it...

Quello che ti serve è la funzione  StrComp.
SunRex
>
>


title: problema con i report per colonne

author: LIBERO NEWS

text:
Salve  a tutti.
Ho un problema!
Stň realizzando un report che analizza i valori di base e di offerta su
delgi appalti.
Dispondo sinteticamente di queste tabelle:
Appalti
ValoreAppalto
        relazionate con il campo NumAppalto
FornitoreAppalto
ValoreFornitore
        relazionate con il campo NumPIva
La relazione tra i due insiemi avviene tramite un campo presente sia in
tabella ValoreBase che in tabelle ValoreFornitore che č relativo al NumRiga
Devo ottentere un report che mi esponga per riga i  prodotti e/o servizi
richiesti con il relativo valore base estratti dalla tabella ValoreBase e
per colonna (una per ogni fornitore offerente) l'importo relativo alla riga
dell'offerta fatta dal fornitore estratto dalla tabella valore Fornitore.
Piů precisamente deve essere riportata una prima colonna in cui sono
elencati i profotti e o servizi richiesti con il loro valore (uno per ogni
riga con eventuali raggruppamenti di tipologia) e nelle colonne successive,
una per fornitore, per ogni riga della prima colonna, l'offerta
corripsondente fatta dal fornitore.
Io non so piů che fare.....mi sfugge qualcosa, sono imbranato, torppo stanco
o lascio perdere?!
Spero di non aver spiegato bene il problema.....dato il mio stato
confusionale.....spero di esserci riuscito.
Grazie
Lorenzo
--
"Un complimento e' qualcosa che ti vien detta in faccia, ma che nessuno
direbbe mai alle tue spalle"
Mark Twain


title: Estrarre fattura da p7m con CryptDecodeMessage

author: Davide La Mantia

text:
Ciao a tutti,
per acquisire automaticamente le fatture elettroniche ho scritto una funzione VBA che esegue l'estrazione.
La cosa funziona perfettamente, ma occasionalmente (ogni 6-12 mesi circa) salta fuori un nuovo flag della firma che non mi era ancora capitato e devo aggiornare la lista dei flag da rimuovere per l'estrazione.
Potrei continuare così, tanto finiranno prima o poi, tuttavia sto indagando altri metodi e ho trovato la funzione in oggetto che pare si possa usare allo scopo (link:
https://resch.pro/p/vba-da-p7m-a-xml/
 nb: attenzione che alla fine nel codice c'è un piccolo errore di sintassi da correggere, si vede subito).
Tuttavia l'estrazione fallisce e non ho trovato un modo per farla funzionare.

Qualcuno ha mai provato con questa funzione?

Ciao
Davide


author: BFS

text:

l'ho provato e funziona, anche con allegati

basta aggiungere questa funziona che in quel sorgente manca :

Function Stream_BinaryToString(sFullNameFile As String) As String
'Funzione per convertire un file da dati binari a dati di testo
'Necessario per inserire un "allegato" alla fattura elettronica
'Reperita alla seguente URL:
'
https://stackoverflow.com/questions/496751/base64-encode-string-in-vbscript

Const adTypeBinary = 1 ' Binary file is encoded
' Variables for encoding
Dim objXML
Dim objDocElem
' Variable for reading binary picture
Dim objStream
' Open data stream from picture
Set objStream = CreateObject("ADODB.Stream")
objStream.Type = adTypeBinary
objStream.Open
objStream.LoadFromFile sFullNameFile
' Create XML Document object and root node
' that will contain the data
Set objXML = CreateObject("MSXml2.DOMDocument")
Set objDocElem = objXML.createElement("Base64Data")
objDocElem.DataType = "bin.base64"
' Set binary value
objDocElem.nodeTypedValue = objStream.Read()
Stream_BinaryToString = objDocElem.Text
' Clean all
Set objXML = Nothing
Set objDocElem = Nothing
Set objStream = Nothing
End Function

bfs


text:
Il giorno lunedì 10 gennaio 2022 alle 16:51:18 UTC+1 BFS ha scritto:
> Il 10/01/2022 16:05, Davide La Mantia ha scritto:
CUT
> >ho trovato la funzione in oggetto che pare si possa usare allo scopo (link:
https://resch.pro/p/vba-da-p7m-a-xml/
 nb: attenzione che alla fine nel codice c'è un piccolo errore di sintassi da correggere, si vede subito).
> > Tuttavia l'estrazione fallisce e non ho trovato un modo per farla funzionare.
> >
> > Qualcuno ha mai provato con questa funzione?
> >
> > Ciao
> > Davide
> l'ho provato e funziona, anche con allegati
>
> basta aggiungere questa funziona che in quel sorgente manca :
>
>
> Function Stream_BinaryToString(sFullNameFile As String) As String
> 'Funzione per convertire un file da dati binari a dati di testo
CUT
> bfs

Grazie per la risposta!
Intendi dire che la funzione CryptDecodeMessage vuole passata la fattura codificata in Base 64?
Perchè avevo fatto attenzione a passargliela non codificata...

Comunque non funziona ancora...

Ciao
Davide


text:

OK, confermo che non va.
la variabile che dovrebbe contenere l'output rimane tutta fatta di null

ciao


text:

creati una form chiamata maschera1

metti un pulsante comando0
metti una textbox chiamata testo1

sul click del tuo bottone metti
leggiFileFirmato "c:\blablabla\test.p7m"  'il percorso del tuo p7m

su un modulo incolla tutto questo

Option Compare Database

Const CMSG_DATA_FLAG = 2                    ' Raw data with no
particular formatting
Const CMSG_SIGNED_FLAG = 4                  ' Signed message
Const CMSG_ENVELOPED_FLAG = 8               ' Enveloped (encrypted) message
Const CMSG_SIGNED_AND_ENVELOPED_FLAG = 16   ' Signed and encrypted message
Const CMSG_HASHED_FLAG = 32                 ' Hashed message
Const CMSG_ENCRYPTED_FLAG = 64              ' Encrypted message
Const CMSG_DATA = 1                         ' Raw data with no
particular formatting
Const CMSG_SIGNED = 2                       ' Signed message
Const CMSG_ENVELOPED = 3                    ' Enveloped (encrypted) message
Const CMSG_SIGNED_AND_ENVELOPED = 4         ' Signed and encrypted message
Const CMSG_HASHED = 5                       ' Hashed message
Const CMSG_ENCRYPTED = 6                    ' Encrypted message

Const CERT_FIND_ANY = 0
Const CERT_FIND_EXISTING = &HD0000
Const CERT_FIND_ISSUER_OF = &HC0000
Const CERT_FIND_ISSUER_STR = &H70004
Const CERT_FIND_KEY_SPEC = &H90000
Const CERT_FIND_PROPERTY = &H50000
Const CERT_FIND_SUBJECT_STR = &H70007
Const X509_ASN_ENCODING = &H1               ' X.509 Encoding
Const PKCS_7_ASN_ENCODING = &H10000         ' PKCS #7 Message Formatting

Public Type CRYPT_DECRYPT_MESSAGE_PARA
     cbSize As Long
     dwMsgAndCertEncodingType As Long
     cCertStore As Long                      ' hCryptProv As Long
     pfnGetSignerCertificate As Long         ' Pointer to callback
function    HCERTSTORE *rghCertStore;
     dwFlags As Long                         ' pvGetArg As Long  ' void
Pointer
End Type

Public Type CRYPT_VERIFY_MESSAGE_PARA
     cbSize As Long
     dwMsgAndCertEncodingType As Long
     hCryptProv As Long                      ' HCRYPTPROV_LEGACY hCryptProv;
     pfnGetSignerCertificate As Long         ' Pointer to callback
function PFN_CRYPT_GET_SIGNER_CERTIFICATE pfnGetSignerCertificate;
     pvGetArg As Long                        ' void Pointer
End Type

Public Declare Function CryptDecodeMessage Lib "Crypt32.dll" (ByVal
dwMsgTypeFlags As Long, _
                                             pDecryptPara As
CRYPT_DECRYPT_MESSAGE_PARA, _
                                             pVerifyPara As
CRYPT_VERIFY_MESSAGE_PARA, _
                                             ByVal dwSignerIndex As
Long, ByVal pbEncodedBlob As String, _
                                             ByVal cbEncodedBlob As
Long, ByVal dwPrevInnerContentType As Long, _
                                             pdwMsgType As Long,
pdwInnerContentType As Long, _
                                             ByVal pbDecoded As String,
pcbDecoded As Long, _
                                             ppXchgCert As Long,
ppSignerCert As Long) As Long

Public Function leggiFileFirmato(ByVal NomeFile As String) As String
     ' Funzione per leggere il contenuto di un file firmato p7m
     ' [NomeFile] nome del file da leggere completo di percorso
     ' Restituisce il contenuto del file firmato

     On Error Resume Next
     Dim dwMsgTypeFlags As Long, i As Long
     Dim pDecryptPara As CRYPT_DECRYPT_MESSAGE_PARA
     Dim pVerifyPara As CRYPT_VERIFY_MESSAGE_PARA
     Dim dwSignerIndex As Long
     Dim dwPrevInnerContentType As Long
     Dim pdwMsgType As Long, pdwInnerContentType As Long
     Dim ppXchgCert As Long, ppSignerCert As Long
     Dim m_lHCryptProv As Long               ' Handle for the
cryptographic service provider (CSP)

     Dim messaggioFirmato As String
     Dim messaggioFirmato_L As Long          ' Lunghezza messaggio
     Dim messaggioDecodificato As String
     Dim messaggioDecodificato_L As Long

     Dim iFile As Integer
     iFile = FreeFile
     Open NomeFile For Binary Access Read As #iFile
     messaggioFirmato = Input(LOF(iFile), iFile)
     Close #iFile

     messaggioDecodificato = Base64Decode(messaggioFirmato)  ' Verifica
codifica base64
     If Err.Number <> 0 Then     ' = -
2147467259
  "Errore durante
l'analisi di "..." come tipo di dati bin.base64."
         Err.Clear
     Else
         messaggioFirmato = messaggioDecodificato
     End If
     messaggioFirmato_L = Len(messaggioFirmato)  ' Lunghezza
     messaggioDecodificato = String(messaggioFirmato_L, vbNullChar)
     messaggioDecodificato_L = 0 'Len(messaggioDecodificato)

     ' strutture dati
     pVerifyPara.cbSize = 20
     pVerifyPara.dwMsgAndCertEncodingType = X509_ASN_ENCODING Or
PKCS_7_ASN_ENCODING  '--- The encoding type
     pVerifyPara.hCryptProv = m_lHCryptProv      '--- The CSP handle
     ' -
     pDecryptPara.cbSize = 16
     pDecryptPara.dwMsgAndCertEncodingType =
pVerifyPara.dwMsgAndCertEncodingType    'X509_ASN_ENCODING Or
PKCS_7_ASN_ENCODING
     'pDecryptPara.cCertStore = 0  '1000
     pDecryptPara.dwFlags = CMSG_SIGNED_AND_ENVELOPED
     pdwMsgType = CMSG_DATA_FLAG
     dwMsgTypeFlags = CMSG_SIGNED_FLAG    ' CMSG_DATA_FLAG
     pdwInnerContentType = 0

     i = CryptDecodeMessage(dwMsgTypeFlags, pDecryptPara, _
                              pVerifyPara, dwSignerIndex, _
                              messaggioFirmato, messaggioFirmato_L, _
                              dwPrevInnerContentType, pdwMsgType, _
                              pdwInnerContentType, messaggioDecodificato, _
                              messaggioDecodificato_L, ppXchgCert,
ppSignerCert)
     i = CryptDecodeMessage(dwMsgTypeFlags, pDecryptPara, _
                              pVerifyPara, dwSignerIndex, _
                              messaggioFirmato, messaggioFirmato_L, _
                              dwPrevInnerContentType, pdwMsgType, _
                              pdwInnerContentType, messaggioDecodificato, _
                              messaggioDecodificato_L, ppXchgCert,
ppSignerCert)

      Form_Maschera1.Testo1 = messaggioDecodificato

     If Err.Number = 0 Then
         leggiFileFirmato = messaggioDecodificato
     End If

End Function

Function Base64Decode(ByVal vCode)
     On Error Resume Next
     Dim oXML, oNode
     Set oXML = CreateObject(lb_XML_DOM)
     Set oNode = oXML.createElement("base64")
     oNode.DataType = "bin.base64"
     oNode.Text = vCode
     If Err.Number = 0 Then
         Base64Decode = Stream_BinaryToString(oNode.nodeTypedValue)
     End If
     Set oNode = Nothing: Set oXML = Nothing
End Function

Function Stream_BinaryToString(sFullNameFile As String) As String
'Funzione per convertire un file da dati binari a dati di testo

premi il pulsante e vedrai che nel testo1 troverai il contenuto del tuo xml
provato con una decina di fatture con allegati e no
e funziona

BFS


text:

CUT
> premi il pulsante e vedrai che nel testo1 troverai il contenuto del tuo xml
> provato con una decina di fatture con allegati e no
> e funziona
>
> BFS

Intanto ti ringrazio molto per la risposta completa ed esaustiva!

Controllando ho visto che sostanzialmente era lo stesso codice che già avevo, nondimeno, per evitare che mi fosse sfuggito qualcosa ho preso il tuo codice e l'ho sostituito al mio.

Il parametro lb_XML_DOM non viene riconosciuto, quindi l'ho sostituito con la stringa "MSXML2.DOMDocument"

Ad ogni modo, la fattura che sto usando per test non è codificata base64 quindi non dovrebbe avere bisogno di conversione.

Detto questo, purtroppo il risultato è lo stesso, viene restituita una stringa tutta di null (equivalente alla stringa di partenza), paro paro come se la doppia chiamata di funzione non eseguisse alcuna elaborazione, la variabile i resta uguale a zero.

La fattura in questione è una delle fatture da me ricevute che ho già importato con la mia routine, quindi è sicuramente ben formattata.

Ciao
Davide


text:

non so che dirti
io ho fatto copia incolla da quella pagina e ho aggiunto quello che ti
ho detto
e il risultato è questo

https://ibb.co/ZgkQWxv

fattura di un mio fornitore in p7m prelevata dal portale aruba estratta
perfettamente

anche con altre fatture nessun problema

BFS


text:
Il giorno martedì 11 gennaio 2022 alle 15:10:28 UTC+1 BFS ha scritto:
> Il 11/01/2022 14:52, Davide La Mantia ha scritto:
> > Il giorno martedì 11 gennaio 2022 alle 07:24:28 UTC+1 BFS ha scritto:
> >> Il 10/01/2022 22:13, Davide La Mantia ha scritto:
> >>> Il giorno lunedì 10 gennaio 2022 alle 21:14:42 UTC+1 Davide La Mantia ha scritto:
> >>>> Il giorno lunedì 10 gennaio 2022 alle 16:51:18 UTC+1 BFS ha scritto:
> >>>>> Il 10/01/2022 16:05, Davide La Mantia ha scritto:
CUT
> > Detto questo, purtroppo il risultato è lo stesso, viene restituita una stringa tutta di null (equivalente alla stringa di partenza), paro paro come se la doppia chiamata di funzione non eseguisse alcuna elaborazione, la variabile i resta uguale a zero.
> >
> > La fattura in questione è una delle fatture da me ricevute che ho già importato con la mia routine, quindi è sicuramente ben formattata.
> >
> > Ciao
> > Davide
> non so che dirti
> io ho fatto copia incolla da quella pagina e ho aggiunto quello che ti
> ho detto
> e il risultato è questo
>
>
>
https://ibb.co/ZgkQWxv

>
> fattura di un mio fornitore in p7m prelevata dal portale aruba estratta
> perfettamente
>
> anche con altre fatture nessun problema
>
> BFS

Secondo me c'è qualcosa che non va nel codice, visto che Stream_BinaryToString apre un file e lo legge, non può funzionare all'interno della funzione Base64Decode nel modo in cui è inserita.

Ti chiedo un paio di cose: la funzione Base64Decode nel codice della tua applicazione riceve come input il percorso del file o il contenuto del file?

Il parametro lb_XML_DOM da te viene riconosciuto?

La funzione CryptDecodeMessage prende come input messaggioFirmato il file in chiaro o il file codificato in base64?

Il file in chiaro se lo visualizzi contiene fondamentalmente tutti i caratteri del file xml condito con tutti i marcatori della firma, quello in base 64 è una sequenza indistinta di lettere e numeri...

Ciao
Davide


text:

fai finta che non abbia scritto nulla
leggevo un file che non centrava nulla
ti confermo che il codice riportato nel sito non funziona

BFS


text:

Nessun problema, mi è servito come spunto di riflessione...
Il fatto è anche che trovo documentazione piuttosto vaga sulla funzione Cryptdecodemessage, quindi non posso neanche vedere se i parametri di input siano corretti.

Ciao
Davide


author: RobertoA

text:

Hai provato a scrivere all'autore di quell'articolo chiedendo informazioni?
Magari la soluzione dell'inghippo e' dietro l'angolo


text:

Certo: è la soluzione che adotto da anni e funziona perfettamente!

Saluti

P:S:  Scherzavo ... confermo che non va: un vero peccato.


author: shado gps

text:
I

funziona perfettamente.

es :
https://shadoware.it/test/fatt_p7m.zip


text:

No, non funziona.
Anche la tua funzione, che poi è identica alla mia, restituisce una stringa di null.

Ciao


text:

Non ho trovato email sul sito, solo un link a linkedin.

Ciao


text:

Io ho provato il file FATT_P7M.ZIP  e coi p7m che ho a disposizione
funziona perfettamente, ho provato sia file vecchi del 2019 che roba
recente del 2021
Dove per 'funziona' intendo dire che dentro la testo1  vengono
visualizzate le righe dell'xml scelto


text:

Ciao Roberto,
visto che a me continua a dare una stringa di null (non poteva essere diversamente visto che la funzione dell'esempio è identica a lla mia che avevo già testato), puoi dirmi che configurazione hai?
Che versione di Access, SO, ecc
Le fatture che importi, sono codificate Base64?

Ciao


text:

Win10 64bit, Office 2013 32 bit
Le fatture sono i file che ricevo via sdi Agenzia Entrate
Per a codifica file Base64 non saprei, sono i file ricevuti direttamente
dallo sdi Agenzia Entrate, se mi indichi come capirlo posso confermare o
negare
Ho provato con almeno una ventina di questi file, di date diverse, e la
procedura non ha sbagliato un colpo, nel senso che me le ha visualizzate
tutte nella textbox
Quando parlo di 'procedura' intendo il file contenuto in
https://shadoware.it/test/fatt_p7m.zip


text:

Non vorrei che fosse perchè sto usanto Access a 64 Bit...
Ora provo su access a 32

Comunque verificare se è codificata base 64 è facilissimo: apri la fattura col notepad, se è una sequenza continua di lettere apparentemente alla rinfusa allora è codificata base64.

Ciao


text:

Questo e' il formato p7m che mi arrivano
Aperto con Notepad++

https://ibb.co/ZJZmrF5

Inizia con vari caratteri di controllo, poi si vede il testo come un xml
classico


text:
Il giorno mercoledì 12 gennaio 2022 alle 20:10:14 UTC+1 RobertoA ha scritto:
> Il 12/01/2022 19:25, Davide La Mantia ha scritto:
CUT
> > Non vorrei che fosse perchè sto usanto Access a 64 Bit...
> > Ora provo su access a 32
> >
> > Comunque verificare se è codificata base 64 è facilissimo: apri la fattura col notepad, se è una sequenza continua di lettere apparentemente alla rinfusa allora è codificata base64.
> >
> > Ciao
> Questo e' il formato p7m che mi arrivano
> Aperto con Notepad++
>
>
https://ibb.co/ZJZmrF5

>
> Inizia con vari caratteri di controllo, poi si vede il testo come un xml
> classico

Il file che mostri non è codificato base64, avresti una cosa tipo:

agHFSDHWRJWErhHFJFDgsdfhsgfJSDFHERHTERJEWRHOWEHJJdfrbteuer

e così via

Ad ogni modo ho verificato che su access 32 bit la funzione funziona ;-) e quindi la cosa diventa interessante.

Resta da capire come farla funzionare su Access a 64 bit

Ciao


text:
> Ad ogni modo ho verificato che su access 32 bit la funzione funziona ;-) e quindi la cosa diventa interessante.
>
> Resta da capire come farla funzionare su Access a 64 bit

Premetto che ho testato solo la versione da te recuperata (coincidente con quella di Shado?).
Esiti:

Access 64 bit   ---->   Null
Access2003     ---->   Null   (l'unica versione che ho su questo PC).

Quindi, pare che non vada su tutte le release a 32 bit, pur tenendo conto dell'antichità di A '2003.
Su quale versione l'hai provato?

Saluti


text:

Access 365 (2019) 32 bit e ha funzionato
Access 365 (2019)  64 bit, restituisce stringa di null

Sto cercando informazioni sull'adattamento delle api a VBA 64 bit, sto provando con LongPtr al posto dei Long, ma ancora niente

Ciao


text:
Vedi se questo ti aiuta:

https://stackoverflow.com/questions/40748130/adapt-crypto-api-vba-to-use-with-access-2010-64-bit

Ovviamente se gestisci in compilazione condizionale devi rendere condizionale anche i TypeStructure ecc... ma il codice esposto mi pare già estremamente chiaro.

Ciao
@Alex


text:

Grazie del suggerimento.
Purtroppo ho già fatto ogni possibile modifica per adattarlo alla versione 64 bit (PtrSafe, LongPtr, ecc) ma continua a funzionare perfettamente su 32 bit e a non funzionare su access 64 bit...

Ciao


author: Antonino Accardo

text:

Buonasera, ho il tuo stesso problema, tu hai risolto in qualche modo?

Ciao


text:
Il giorno venerdì 10 marzo 2023 alle 00:20:06 UTC+1 Antonino Accardo ha scritto:
CUT
> >
> > Ciao
> Buonasera, ho il tuo stesso problema, tu hai risolto in qualche modo?

Ciao Antonio,
in effetti no, quel codice non ne vuole sapere di funzionare su Access a 64 bit, mi sembra un grosso limite ma al momento non ho novità.
Vado col mio personale estrattore che finora ha funzionato benissimo.

Ciao


text:

Cosa usi? Estrae anche le fatture firmate il cui file xml è codificato base64? Io ho riscontrato alcune fatture che sono così e con la funzione CryptDecodeMessage a 32bit e qualche modifica al codice, sono riuscito ad estrarre il file xml corretto.
Ora che a 64bit non funziona più niente,  non riesco a trovare alternativa in VBA, quindi penso di utilizzare openssl.
Consigli?
Ciao


title: "manina tremolante"

author: Maurizio

text:
Ciao ragazzi, grazie ai vostri consigli sono riuscito a fare in modo che la
frccia del mouse quando tocca un determinato pulsante si trasformi in una
manina, oraperò mi sono accorto che la visualizzazione non è nitida ovvero
il puntatore trasformatosi in manina "trema" come se ci fossero problemi di
refresh, come posso risolvere il problema?


title: "manina tremolante"

author: MA

text:
"Maurizio" <
mauri...@tiscali.it
> ha scritto nel messaggio
news:qZD9b.96488$R32.3...@news2.tin.it...

Vedi letturatura sulle cure al Parkinson...
MAssimiliano
p.s. se non ci dici cos'hai scritto nel codice, mi sa che è l'unica risposta
che avrai...
transeat "quasi" sul subject


title: "manina tremolante"

text:
Option Compare Database
Option Explicit
Public Const IDC_APPSTARTING = 32650&
Public Const IDC_HAND = 32649&
Public Const IDC_ARROW = 32512&
Public Const IDC_CROSS = 32515&
Public Const IDC_IBEAM = 32513&
Public Const IDC_ICON = 32641&
Public Const IDC_NO = 32648&
Public Const IDC_SIZE = 32640&
Public Const IDC_SIZEALL = 32646&
Public Const IDC_SIZENESW = 32643&
Public Const IDC_SIZENS = 32645&
Public Const IDC_SIZENWSE = 32642&
Public Const IDC_SIZEWE = 32644&
Public Const IDC_UPARROW = 32516&
Public Const IDC_WAIT = 32514&
Declare Function LoadCursorBynum Lib "user32" Alias "LoadCursorA" _
  (ByVal hInstance As Long, ByVal lpCursorName As Long) As Long
Declare Function SetCursor Lib "user32" _
  (ByVal hCursor As Long) As Long
Function MouseCursor(CursorType As Long)
  Dim lngRet As Long
  lngRet = LoadCursorBynum(0&, CursorType)
  lngRet = SetCursor(lngRet)
End Function
Questo è il codice scritto in un modulo, questo codice l'ho inserito
nell'evento su mouse spostato del controllo
"MA" <
keiko...@libero.it
> ha scritto nel messaggio
news:D2E9b.39467$w8.1...@news.edisontel.com...



title: "manina tremolante"

author: Buonuomo

text:
"Maurizio" <
mauri...@tiscali.it
> ha scritto nel messaggio
news:qZD9b.96488$R32.3...@news2.tin.it...

Ottieni quell'effetto perchè Access reimposta il cursore in continuazione.
Prova crearti quattro rettangoli trasparenti che circondino il tuo pulsante
e nell'evento su mouse spostato di tutti e quattro reimposta a true una
variabile Boolean (ad esempio Freccia=True); ora  nell'evento su mouse
spostato del tuo pulsante inizi il tuo codice con If Freccia then ( Tutto il
tuo Codice); rima di End Sub ricordati di impostare Freccia = False.
Un pò rude ma funzia.
N.B. Freccia deve essere di tipo Public.
Ciao, Buonuomo.


title: Routine evento non viene eseguita

author: Ammammata

text:
cos�, di punto in bianco come mi riferisce il cliente, la routine evento
"On print" non viene pi� eseguita e il totale non viene calcolato

ho provato a metterci un punto di interruzione ma non si ferma e mi mostra
subito l'anteprima del documento

nelle propriet� si vede quello che sembra giusto: se clicco sulle ellissi
per vedere il codice, c'�:

Private Sub Detail1_Print(Cancel As Integer, PrintCount As Integer)
[TotaleArrotondati] = [TotaleArrotondati] + [TotaleRigaArrotondato]
End Sub

ho notato che aprendo il file con una versione access diversa dalla 2003
(prove fatte con 2007 e 2010) vengono aggiunti diversi nuovi eventi; i
tanti backup disponibili, su access 2003, funzionano bene
anche l'ultima versione, quella in uso, � nel formato 2003... per� non
funziona pi� :(

cosa potrebbe essere successo?

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


title: Routine evento non viene eseguita

author: Karl Donaubauer

text:
Ammammata ha scritto:
> così, di punto in bianco come mi riferisce il cliente, la routine evento
> "On print" non viene più eseguita e il totale non viene calcolato
>
> ho provato a metterci un punto di interruzione ma non si ferma e mi mostra
> subito l'anteprima del documento
>
> nelle proprietà si vede quello che sembra giusto: se clicco sulle ellissi
> per vedere il codice, c'è:
>
> Private Sub Detail1_Print(Cancel As Integer, PrintCount As Integer)
> [TotaleArrotondati] = [TotaleArrotondati] + [TotaleRigaArrotondato]
> End Sub
>
> ho notato che aprendo il file con una versione access diversa dalla 2003
> (prove fatte con 2007 e 2010) vengono aggiunti diversi nuovi eventi; i
> tanti backup disponibili, su access 2003, funzionano bene
> anche l'ultima versione, quella in uso, è nel formato 2003... però non
> funziona più :(

Non sono sicuro di capire la descrizione di cosa funziona
in quale versione ma se i problemi solo occorono con versioni
 > 2003 puo dipendere dalla visualizzazione.
Come viene aperto il report? In quale visualizzazione?

Le versioni nuovi  hanno la nuova vis. Report nella quale gli eventi
Format e Print  non succedono.

--
cu
Karl
*********
Access FAQ:
http://www.donkarl.com/it

Access Lobby:
http://www.AccessDevelopers.org


title: Routine evento non viene eseguita

text:
Il giorno Mon 07 Jul 2014 05:46:13p, *Karl Donaubauer* inviava su
it.comp.appl.access il messaggio
news:c1vtm7...@mid.individual.net
.
Vediamo cosa scrisse:

> > 2003 puo dipendere dalla visualizzazione.
> Come viene aperto il report? In quale visualizzazione?
>

[risolto]

la routine evento associata a una sezione del report viene eseguita solo se
la sezione ha una altezza anche minima, ma NON ZERO

il cliente ha (purtroppo) la possibilit� e la capacit� di manomettere la
struttura del report: ieri, dopo aver capito cosa era successo, mi ha
candidamente confessato di aver ridotto l'altezza da 1 mm a zero mm per far
stare la fattura (lunga) in una sola pagina :)



title: Ricerca "sovrapposizioni"

author: Lorenzo Coronati

text:
Ho una tabella con operatore, data, ora inizio e ora fine.
Devo controllare che non sussistano sovrapposizioni, cioe'
che un operatore non compaia due volte lo stesso giorno alla
stessa ora.
Ora sto facendo tutto col codice, ma a pelle sento che forse
c'e' una soluzione sql, che mi piacerebbe molto trovare.
Qualche suggerimento?
Per chi ha bisogno dell'esempietto:
IDOpe	DInizio	HInizio	HFine
gigi	29/3	08.00	10.00
gigi	29/3	14.00	15.00	OK
gigi	29/3	09.30	12.00	ERRORE
Bai
--
Lorenzo Coronati
--
<<Nessuno sa che questa affermazione e' vera>>
(John D. Barrow)
--


title: Ricerca "sovrapposizioni"

author: Luciano

text:
Lorenzo Coronati ha scritto nel messaggio
<
38e20054...@news.libero.it
>...
>Ho una tabella con operatore, data, ora inizio e ora fine.
>Devo controllare che non sussistano sovrapposizioni, cioe'
>che un operatore non compaia due volte lo stesso giorno alla
>stessa ora.
Perche' non gestisci tutto con una bella chiave e relativa intercettazione
dell'errore?:-)
(cioe', si solo ce prova a scrive je fai: a Lello, ma 'ndo vai???:-))
Saluti.
Luciano


title: Ricerca "sovrapposizioni"

author: Antonio Biso

text:
Luciano ha scritto nel messaggio <8btqh0$du2$
1...@news.mclink.it
>...

Lucianè... invece di fa tanto il ganzo, leggi tutto il messaggio per
benino...
Non è solo un problema di scrittura di due record con gli stessi valori nei
campi (caso che andrebbe bene per la tua "soluzione") ma anche di intervalli
contenuti in altri, e questo con le chiavi non lo fai!!!!!
gigi 29/3 08.00 10.00
gigi 29/3 14.00 15.00 OK
gigi 29/3 09.30 12.00 ERRORE
Allora, preparati una query che ordina per nome operatore, data, ora inizio,
ora fine.
Poi te la apri da codice con un recordset. Quindi cominci a scorrerlo:
giocando sulle variabili old_nome, new_nome, old_data, new_data e così via,
quando trovi due record che hanno stesso nome, stessa data ma l'orario
inizio o l'orario fine è compreso nel precedente orario inizio orario fine,
allora hai trovato un record errato e a quel punto potresti accodare in una
tabella di BLOB tutta la famiglia di quel record errato in modo da poi
gestirtelo con calma alla fine dell'elaborazione.
Antonio


title: Ricerca "sovrapposizioni"

text:
Scrisse "Luciano" <
mc5...@mclink.it
>:
>Perche' non gestisci tutto con una bella chiave e relativa intercettazione
>dell'errore?:-)
>(cioe', si solo ce prova a scrive je fai: a Lello, ma 'ndo vai???:-))
Unciarivo.
Come devo da fa?
Me sa che nun se po' fa na chiave come dici te...
Lore', compare de Lello



title: Ricerca "sovrapposizioni"

text:
Scrisse "Antonio Biso" <
ch...@etruria.net
>:
>Non è solo un problema di scrittura di due record con gli stessi valori nei
>campi (caso che andrebbe bene per la tua "soluzione") ma anche di intervalli
>contenuti in altri, e questo con le chiavi non lo fai!!!!!
Aaaah, me pareva ;-)
>Allora, preparati una query che ordina per nome operatore, data, ora inizio,
>ora fine.
>Poi te la apri da codice con un recordset.
E' esattamente come ho fatto.
Il che significa che non sei poi cosi' scrauso <:oD
Solo che speravo si potesse fare con sql...
Vabbe', non ho poi tutto questo tempo da perdere ;-)
P.S. gia' iniziato i preparativi per Imola?
(grrr mi rodo il fegato!)



title: Ricerca "sovrapposizioni"

text:
Lorenzo Coronati ha scritto nel messaggio
<
38e32e3c...@news.libero.it
>...
>Scrisse "Antonio Biso" <
ch...@etruria.net
>:
>
>>Non č solo un problema di scrittura di due record con gli stessi valori
nei
>>campi (caso che andrebbe bene per la tua "soluzione") ma anche di
intervalli
>>contenuti in altri, e questo con le chiavi non lo fai!!!!!
>Aaaah, me pareva ;-)
Tu dai retta a Luciano?
>
>>Allora, preparati una query che ordina per nome operatore, data, ora
inizio,
>>ora fine.
>>Poi te la apri da codice con un recordset.
>E' esattamente come ho fatto.
>Il che significa che non sei poi cosi' scrauso <:oD
Tu dai retta a Luciano?
>P.S. gia' iniziato i preparativi per Imola?
>(grrr mi rodo il fegato!)
Sě, abbastanza. Sono stato ieri dal delegato regionale, gran cap fig,
endrocc, direttore di gara nazionale e componente comitato esecutivo CSAI e
mi ha detto che i pass arriveranno da lui lunedi.
Non c'č bisogno di andare a fare le prove libere della formula 3000 giovedi
pomeriggio (meglio) e appuntamento venerdi 7:30 in autodromo.
Spero solo di trovare per dormire...
Nel frattempo sabato e domenica questi antipasto a Vallelunga con Formula
3000, Campus, Arcoblaeno e 3 (una palla, io preferisco le auto a ruote
coperte...)
Antonio


title: Ricerca "sovrapposizioni"

text:
Antonio Biso ha scritto nel messaggio
<8bv8uj$f8l$
1...@lacerta.tiscalinet.it
>...
>Lucianè... invece di fa tanto il ganzo, leggi tutto il messaggio per
>benino...
Hai ragione, allora mi tocca suggerirgli una soluzione molto piu' assai
meglio de la tua, che e' lunga, tediosa e lenta: cioe' scrausetta!:-)
La prima query (Q_ultima_uscita) trova l'ultima uscita
SELECT Last(T_timbrature.uscita) AS UltimoDiuscita
FROM T_timbrature
GROUP BY T_timbrature.nome
HAVING (((T_timbrature.nome)="gigi"))
La seconda accoda solo se la nuova entrata e' posteriore all'ultima uscita
INSERT INTO T_timbrature ( nome, entrata, uscita )
SELECT "gigi" AS chi, #2:30:00 PM# AS nuovaentrata, #7:00:00 PM# AS
nuovauscita
FROM Q_ultima_uscita
WHERE (#2:30:00 PM#)>[ultimodiuscita]
Non funziona se Gigi non ha mai timbrato, ma si puo' provare a gestirlo on
un IIF nella seconda query o fare un controllo sulla prima query e se non
restituisce niente lanciare la seconda senza la condizione WHERE.
Saluti (pure a Biso, va'!)
Luciano


title: Ricerca "sovrapposizioni"

text:
Scrisse "Luciano" <
mc5...@mclink.it
>:
>Hai ragione, allora mi tocca suggerirgli una soluzione molto piu' assai
>meglio de la tua, che e' lunga, tediosa e lenta: cioe' scrausetta!:-)
Pan per focaccia, eh? :-D
>La prima query (Q_ultima_uscita) trova l'ultima uscita
>La seconda accoda solo se la nuova entrata e' posteriore all'ultima uscita
OK ho capito.
Questo va bene per un controllo interattivo durante
l'immissione.
A me pero' serve un controllo batch su tabelle gia'
popolate, per cui rimane la strada vba.
Thank you the stess.



title: Ricerca "sovrapposizioni"

author: ema

text:
Mio cuggino mi ha detto che Lorenzo Coronati <
lore...@tin.it
> scrisse:
> Ora sto facendo tutto col codice, ma a pelle sento che forse
> c'e' una soluzione sql, che mi piacerebbe molto trovare.
> Qualche suggerimento?
>
> Per chi ha bisogno dell'esempietto:
> IDOpe	DInizio	HInizio	HFine
> gigi	29/3	08.00	10.00
> gigi	29/3	14.00	15.00	OK
> gigi	29/3	09.30	12.00	ERRORE
>
Per quel che son riuscito a concepire, e` meglio un po' di VBA:
Apri un RS che contiene un solo operatore/giorno (con 2 cicli FOR li
scorri poi tutti), ordinata per Hinizio (presumo che Hfine sia sempre
maggiore).
Fai scorrere i record verificando che un Hinizio non sia mai compreso tra
gli Hinizio ed Hfine precedenti.
Mi sembra abbastanza comodo anche se vuoi lanciare eventuali funzioni di
correzione dell'errore, tipo saldare 2 fasce orarie contigue, o
eliminare la fascia doppia:
 IDOpe DInizio HInizio HFine
 gigi  29/3    08.00   12.00
 gigi  29/3    14:00   15:00
In SQL questa soluzione si complica un po', ci vorrebbero un po' di
query annidate... non escludo, pero`, che ci siano altre sol :)
bye!
--
Emanuele Cesena
http://www.penguinpowered.com/~ecesena
<
ece...@penguinpowered.com
>               Attenzione all'anti-spam XXX
Prima Legge di Brien:
	Nella vita di qualsiasi organizzazione, la sua capacita' di funzionare
	malgrado se stessa prima o poi si esaurisce.


title: Ricerca "sovrapposizioni"

text:
Lorenzo Coronati ha scritto nel messaggio
<
38e3706a...@news.libero.it
>...
>Pan per focaccia, eh? :-D
Tu dai retta ad Antonio?:-)
>Questo va bene per un controllo interattivo durante
>l'immissione.
>A me pero' serve un controllo batch su tabelle gia'
>popolate, per cui rimane la strada vba.
Beh, un recordsettino lo devi fare allora!:-)
Anche perche' immagino che i record sbagliati li vorrai scrivere da qualche
parte, no?
Fai il rst con una query che ordina per nome, data, ora e cicli su quello.
Lancia le due query che ti dicevo, accodando ad una tabella "giusti",
altrimenti ad una "sbagliati".
Ma non confrontando ogni record di Gigi con tutti gli altri suoi, come
diceva Biso, altrimenti non ti passa piu'! :-)
Saluti.
Luciano


title: Ricerca "sovrapposizioni"

text:
Luciano ha scritto nel messaggio <8c2400$iho$
1...@pegasus.tiscalinet.it
>...
>
>Beh, un recordsettino lo devi fare allora!:-)
>Anche perche' immagino che i record sbagliati li vorrai scrivere da qualche
>parte, no?
>Fai il rst con una query che ordina per nome, data, ora e cicli su quello.
>Lancia le due query che ti dicevo, accodando ad una tabella "giusti",
>altrimenti ad una "sbagliati".
Tu sei un plagiario!!!
s e r i o ma plagiario!!!
>Ma non confrontando ogni record di Gigi con tutti gli altri suoi, come
>diceva Biso, altrimenti non ti passa piu'! :-)
Maddeche?
Differenza inapprezzabile...
Antonio


title: Ricerca "sovrapposizioni"

text:
Antonio Biso ha scritto nel messaggio
<8c26dt$jgd$
1...@pegasus.tiscalinet.it
>...
>Tu sei un plagiario!!!
>s e r i o ma plagiario!!!
MADDECHEAHO'!!!
>>Ma non confrontando ogni record di Gigi con tutti gli altri suoi, come
>>diceva Biso, altrimenti non ti passa piu'! :-)
>Differenza inapprezzabile...
Perche' per te confrontare un record con un solo altro o con altri 10 o 100
mila e' la stessa cosa?:-)
Saluti.
Luciano


title: Ricerca "sovrapposizioni"

text:
Luciano ha scritto nel messaggio <8c32ce$qiu$
1...@news.mclink.it
>...

Guarda che non è questa la situazione.
Le famiglie composte da stessa data e stesso utente, potranno avere al
massimo 4 5 record. Quando cominci a confrontare non è detto che incontri
l'errore al 5 record, se lo incontri prima ti fermi su quella famiglia e
passi alla successiva. Nel caso medio quindi confronti 3 record che con i 2
tuoi stiamo lì....
Antonio


title: Ricerca "sovrapposizioni"

author: Giuseppe

text:
La soluzione via codice e' corretta, ma una migliore (nel senso di piu'
compatta) esiste ed e' implementabile in SQL senza troppe complicazioni.
(perfavore se ho travisato il problema non ammazzatemi...)
supponiamo di avere la tabella (chiave di 4 campi):
Timbrature(IDOpe, Dinizio, HInizio, HFine)
Vogliamo vedere per ogni operaio e per ciascuna data che non esistano
finestre temporali sovrapposte (anche solo parzialmente). Quindi vogliamo
verificare che la timbratura di gigi non sia sovrapposta ad
un'altra sua timbratura (nella stessa data).
Vi spiego come ragiono... poi vi propongo la query: prendo la prima
timbratura di gigi e "disegno" la sua finestra temporale. Diciamo che I
(lettera I MAIUSCOLA) e' l'inizio della finestra e F (ancora MAIUSCOLA) e'
la fine. Confronto la finestra di questa timbratura con tutte quelle
timbrature che hanno la stessa data in cui indico con i (lettera i
MINUSCOLA) l'inizio e con f (MINUSCOLA) la fine della relativa finestra.
Sono possibili solo 5 casi:

gigi        I------------F
gigi          i--------f            CASO 1
gigi     i-------f                  CASO 2
gigi                i-------f       CASO 3
gigi   i--f                         CASO 4
gigi                        i--f    CASO 5
Spero che la formattazione non sia andata persa, in ogni modo per TUTTI i
casi (e vi invito a verificarlo) vale il predicato seguente:
SOVRAPPOSTO SE e solo SE (I <= f) AND (F >= i)
(occhio a maiuscole minuscole!)
CASO 1: gigi timbra due ingressi e due uscite descrivendo due
finestre in cui una contiene completamente l'altra. SOVRAPPOSTE=True
CASO 2: le finestre sono solo parzialmente sovrapposte (a sinistra).
SOVRAPPOSTE=True
CASO 3: duale del caso 2 con sovrapposizione a destra. SOVRAPPOSTE=True
CASO 4: gigi timbra due ingressi e due uscite nel modo corretto quindi
descrive due finestre attigue (al massimo contigue) ma che non risultano
sovrapposte. SOVRAPPOSTE=False
CASO 5: il duale del caso 4. SOVRAPPOSTE=False
Manca un CASO 6 in cui le due finestre sono perfettamente coincidenti
cioe' sovrapposte con la stessa ora di inizio e la stessa ora di fine, ma
questo caso e' scongiurato sia perche' ragionevolmente impossibile (a
patto di tenere traccia dell'ora precisa al nano-secondo!) sia perche' con
i 4 attributi contemporaneamente come chiave cio' non puo' accadere mai!
Allora ecco la query (con variabili):
SELECT *
FROM Timbrature AS T1
WHERE EXISTS (SELECT *
              FROM Timbrature AS T2
              WHERE (T2.IDOpe = T1.IDOpe) AND
                    (T2.Dinizio = T1.Dinizio) AND
                    (T1.Hinizio <= T2.Hfine) AND
                    (T1.Hfine   >= T2.Hinizio))
ORDER BY HInizio;
Essa restituisce, per ogni tupla in timbrature, TUTTE le tuple che gli si
sovrappongono (con il criterio prima enunciato) afferenti allo stesso
operaio e con la stessa data.
Se tolgo (T2.IDOpe = T1.IDOpe) mi verranno visualizzate le sovrapposizioni
anche tra operai diversi, mentre se tolgo (T2.Dinizio = T1.Dinizio) la
query perde significato perche' non e' restrittivo supporre
sovrapposizioni in date diverse.
Questa query ha un problema che deriva dalla riflessivita' dell'operatore
di uguaglianza: ciascuna cosa e' uguale a se stessa... (mmmh, mi sa che
questa cosa la scrivo come signature :-)) quindi, poiche' la
query simula due cicli FOR innestati, la clausola EXISTS sara'
comunque verificata almeno una volta perche' risultera' che OGNI richiesta
e' sovrapposta a SE STESSA.
Il problema si risolve togliendo l'uguale dai confronti... :-) quindi il
criterio diventa (Criterio 2):
SOVRAPPOSTO SE e solo SE (I < f) AND (F > i)
e la query si trasforma in:
SELECT *
FROM Timbrature AS T1
WHERE EXISTS (SELECT *
              FROM Timbrature AS T2
              WHERE (T2.IDOpe = T1.IDOpe) AND
                    (T2.Dinizio = T1.Dinizio) AND
                    (T1.Hinizio < T2.Hfine) AND
                    (T1.Hfine   > T2.Hinizio))
ORDER BY HInizio;

In questo modo, pero', ammetto impliciamente che CONTESTUALMENTE ad una
timbratura di uscita possa avvenire una timbratura di ingresso che non
genera sovrapposizione... ovvero:
gigi        I---F
gigi    i---f   i---f
Timbrature("gigi", "1/1/99", "10:00", "11:00")
Timbrature("gigi", "1/1/99", "11:00", "12:00")
Timbrature("gigi", "1/1/99", "12:00", "13:00")
restituisce SOVRAPPOSTE=False in base al Criterio 2 (ma non in base al
criterio 1) e quindi e' una sequenza corretta per la seconda query.
In questo modo la query innestata che simula il ciclo FOR interno NON
risente piu' del problema "sovrapposto a me stesso".
In questa applicazione (timbrature di cartellini) appare corretto il
criterio 2 perche' non e' restrittivo supporre l'esistenza di un operaio
che di diverte a "giocare" con la macchinetta delle timbrature generando
uscite contestuali all'ingresso successivo.
Spero di non aver travisato il pb. in tal caso chiedo scusa per un post
cosi' lungo (e noioso...)
ciao
Giuseppe



title: Ricerca "sovrapposizioni"

author: AntoGal

text:
Giuseppe <
cer...@cdc700.cdc.polimi.it
> scrisse...
> Spero di non aver travisato il pb. in tal caso chiedo scusa per un post
> cosi' lungo (e noioso...)
Non ho letto attentamente perchè il problema non mi tocca, ma complimenti
per l'esposizione, forse un po' troppo accademica, ma decisamente piacevole
da leggere.
--
Ciao, AntoGal
*************************************************
Home Page (area programmatori di VolFtp)
http://volftp.mondadori.com/italiani/galletta/
per scaricare un gioco di DAMA ITALIANA
*************************************************


title: Ricerca "sovrapposizioni"

text:
Scrisse Giuseppe <
cer...@cdc700.cdc.polimi.it
>:
>La soluzione via codice e' corretta, ma una migliore (nel senso di piu'
>compatta) esiste ed e' implementabile in SQL senza troppe complicazioni.
Il tuo ragionamento non fa una piega ed e' proprio
quello che avevo in mente ma che per mancanza di
basi non riesco a mettere in pratica. :-(
Il problema e' che non funziona.
Su 4224 record in tabella, me ne restituisce 4221.
Purtroppo, per lo stesso motivo di cui sopra, non
so trovare l'inghippo. Non voglio farti perdere tempo,
anche perche' il problema lo sto comunque gestendo
via codice, pero' mi piacerebbe venirne a capo.
Se vuoi ti posso mandare un po' di record, per fare
delle prove.
Grazie della disponibilita' e mi associo ad Antonello
nei complimenti per l'esposizione :-)
P.S. relaying mail al tuo server is not allowed ?!?!?



title: Ricerca "sovrapposizioni"

text:
On Wed, 5 Apr 2000, Lorenzo Coronati wrote:
> Su 4224 record in tabella, me ne restituisce 4221.
> [...]
> Se vuoi ti posso mandare un po' di record, per fare
> delle prove.
> Grazie della disponibilita' e mi associo ad Antonello
> nei complimenti per l'esposizione :-)
>
> Lorenzo Coronati
>
Ciao Lorenzo,
in che senso te ne restituisce 4221 su 4224? Individua solo 3
sovrapposizioni? oppure ne individua 4221?
Mandami pure i record... (mdb, txt o come ti fa piu' comodo) saro' gfelice
di aiutarti.
Ciao
Giuseppe
P.S. il pb. del reply to deriva dal mio server. l'indirizzo corretto e'
cer...@cdc700.cdc.polimi.it
 (in cui il server corretto e' cdc700 ma certe
volte esso viene sostituito con cdc7XX-Y che e' il nome della macchina su
cui mi trovo in quel momento)


title: manuale access 2000???

author: Virgilio Roberto

text:
salve a tutti

ho deciso di imparare access e magari un giorno di
far parte di voi(se ci riesco)

chi mi sa' indicare un manuale di access
2000....per principianti?

grazie


title: manuale access 2000???

author: Rob

text:
""Virgilio Roberto"" <
rvir...@libero.it
> ha scritto nel messaggio
news:000a01c05f1c$ee4e3640$0da12397@it...

Anche tu dovresti leggerti il msg [INFO] .... di Federico Luciani nel quale
fra le numerose cose utili e importanti raccomanda di non postare in formato
HTML, poichè non tutti dispongono di un newsreader in grado di leggere
questo formato.
Cosa sto dicendo?
Se usi OutlookExpress: menu Formato|TestoNormale. Ti accorgi subito della
differenza xchè non puoi formattare il testo.
Regolette a parte, io ho acquistato, fra gli altri il volumotto "MS Access
2000 - Guida all'Uso" - Microsoft Press - Mondadori, Autore: John L.Viescas
(£.110.000 per circa un migliaio di pagine). . Secondo me è un librozzo ben
fatto ed è adatto x chi comincia e vuole continuare xchè tratta tutti gli
argomenti e ti iniza alla programmazione. Ha anche un CD con alcuni esempi
dal quale puoi trarre spunto.
In certi casi mi sono copiato il codice pari pari!
Buona lettura!
Rob.


title: manuale access 2000???

author: Roberto dal portatile

text:
"Rob" <dg.rob"NOSPAM"@
tiscalinet.it
> ha scritto nel messaggio
news:90l15b$8ao$1...@lacerta.tiscalinet.it...
>
> ""Virgilio Roberto"" <
rvir...@libero.it
> ha scritto nel messaggio
> news:000a01c05f1c$ee4e3640$0da12397@it...

> Anche tu dovresti leggerti il msg [INFO] .... di Federico Luciani nel
quale
> fra le numerose cose utili e importanti raccomanda di non postare in
formato
> HTML, poichè non tutti dispongono di un newsreader in grado di leggere
> questo formato.
> Cosa sto dicendo?
> Se usi OutlookExpress: menu Formato|TestoNormale. Ti accorgi subito della
> differenza xchè non puoi formattare il testo.
>
> Regolette a parte, io ho acquistato, fra gli altri il volumotto "MS Access
> 2000 - Guida all'Uso" - Microsoft Press - Mondadori, Autore: John
L.Viescas
> (£.110.000 per circa un migliaio di pagine). . Secondo me è un librozzo
ben
> fatto ed è adatto x chi comincia e vuole continuare xchè tratta tutti gli
> argomenti e ti iniza alla programmazione. Ha anche un CD con alcuni esempi
> dal quale puoi trarre spunto.
> In certi casi mi sono copiato il codice pari pari!
> Buona lettura!
> Rob.
>
>
Sottoscrivo
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://members.xoom.it/it_db_access/
---------------------------------------------


title: manuale access 2000???

author: Roberto Roberto

text: grazie


title: manuale access 2000???

author: Fabrizio Bratzu

text:
Caro Rob, mi chiamo Fabrizio e ho letto il tuo messaggio sul manuale acquistato dove è
presente un CD con alcuni esempi.
Potresti cortesemente mandarmi gli esempi contenuti nel Cd via e-mail?
Siccome sono anch'io alle prime armi, avrei bisogno di un database pronto e la precisa
descrizione di come è stato costruito.
Ci tengo troppo ad imparare bene Access.Il Database NorthWind non mi è chiaro in certi
aspetti e la descrizione della sua organizzazione non mi soddisfa.
Se riuscissi ad avere quegli esempi non saprei veramente come ringraziarti.
Tanti Saluti.
Fabrizio Bratzu
e-mail:
fabrizi...@tiscalinet.it
--
Fabrizio Bratzu
e-mail:
fabrizi...@infinito.it
Sito Web:
http://web.tiscalinet.it/fabriziohomepage
"Rob" <dg.rob"NOSPAM"@
tiscalinet.it
> ha scritto nel messaggio
news:90l15b$8ao$1...@lacerta.tiscalinet.it...
>
> ""Virgilio Roberto"" <
rvir...@libero.it
> ha scritto nel messaggio
> news:000a01c05f1c$ee4e3640$0da12397@it...




title: manuale access 2000???

text:
Messaggio di risposta inviato da Robertino:
Purtroppo nun mi è possibile inviarti gli esempi che mi chiedi per i
seguenti motivi:
1)    Un CD = 650 MB! Mi costerebbe un occhio!  $-(
 A 'sto punto tu mi diresti: Mandami solo qualche db contenuto in esso!
quindi...
2)    Ti ritroveresti in una situazione peggiore di quella da te
sperimentata con il db Northwind poichè i db di esempio sono spiegati
all'interno del manuale stesso.
Praticamente funziona così: ogni argomento trattato nel manuale fa
riferimento a qualche parte di uno dei db contenuti nel CD allegato.
Morale: Manuale e CD viaggiano in coppia!
3)    Infine e non meno importante, è ormai usanza comune in tutte le
produzioni sw allegate a manuali e simili, vincolare l'utente ad un utilizzo
personale. E' vietata la distribuzione di copie.
Insomma, per concludere, sembra proprio che se vuoi imparare access o ti
accontenti dell'help in linea e degli esempi Northwind (sempre e comunque
indispensabili) o ti toccherà comprare qualche buon manualetto!
Credi a me, non sono soldi buttati!
P.S. Gradirei che i messaggi venissero postati in NG in modo tale che tutti
i lettori possano fruirne. Fammi 'sta cortesia: inserisci la tua domanda e
la mia risposta nel thread del messaggio a cui ti riferisci.
Ciao, Rob.
--
Fabrizio Bratzu
e-mail:
fabrizi...@infinito.it
Sito Web:
http://web.tiscalinet.it/fabriziohomepage
""Roberto Roberto"" <
rvir...@supereva.it
> ha scritto nel messaggio
news:002501c05ff2$bb504c20$0ea02397@it...
grazie


title: manuale access 2000???

text:
"Fabrizio Bratzu" <
fabrizi...@tiscalinet.it
> ha scritto nel messaggio
news:915bji$p81$2...@lacerta.tiscalinet.it...

Ti ringarzio!
:-)
Rob.


title: Dimensione max report

author: Ezio

text:
Rilancio questa richiesta prima di andare in ferie:
Le dimensioni max del "corpo" di un report è di circa 55,5 cm.
E' possibile con qualche trucco o da codice aumentare questa dimensione?
grazie a tutti e ...
buone ferie !!!


title: Dimensione max report

author: Simone Calligaris

text:
"Ezio" <
med...@lombardiacom.it
> ha scritto nel messaggio
news:351a1563.01080...@posting.google.com...
> Rilancio questa richiesta prima di andare in ferie:
> Le dimensioni max del "corpo" di un report è di circa 55,5 cm.
> E' possibile con qualche trucco o da codice aumentare questa dimensione?
Se cerchi sul Sito Comune, dovresti trovare un DB di RoDAgo che affronta in
maniera molto sofisticata queste problematiche.
Ciao, Simone


title: Dimensione max report

author: MegaMax

text:
> Se cerchi sul Sito Comune, dovresti trovare un DB di RoDAgo che affronta
in
> maniera molto sofisticata queste problematiche.
non lo trovo.... qual'č?
Max


title: Dimensione max report

author: Federico Luciani

text:

"Report dinamici per rappresentazioni a campi incrociati"
--
Federico
----------------------------------
Rimuovi paperino. per e-mail
----------------------------------
Tutte le richieste che arrivano
in privato, vengono cestinate.
----------------------------------
Sito Comune di it.comp.appl.access
http://www.sitocomune.com
mailto:
webm...@sitocomune.com
----------------------------------


title: somma se controllo = Sì

author: Alessia

text:
Buona sera a tutti, uso A2000, ho un problemino veloce che ora nn riesco a
risolvere, devo sommare [EntrataLire] se il  controllo [Lire] č uguale a sě.
Grazie Alessia
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: somma se controllo = Sì

author: Enrico Virginio

text:
"Alessia" <
les...@hotmail.com
> wrote in message
news:dccd968db0ac59499b6...@mygate.mailgate.org...
> Buona sera a tutti, uso A2000, ho un problemino veloce che ora nn riesco a
> risolvere, devo sommare [EntrataLire] se il  controllo [Lire] č uguale a sě.
> Grazie Alessia
mah..detto cosě č un'attimino superficiale...comunque:
If Me.Lire.Value = True then
....fai quello che devi fare....
ciao



title: somma se controllo = Sì

text:
"Alessia " <
les...@hotmail.com
> ha scritto nel messaggio
news:dccd968db0ac59499b6...@mygate.mailgate.org...
> Buona sera a tutti, uso A2000, ho un problemino veloce che ora nn riesco a
> risolvere, devo sommare [EntrataLire] se il  controllo [Lire] č uguale a
sě.
> Grazie Alessia
>
Spero che si voglia dire "True"
Prova ad usare la funzione DSUM("CAMPO";"TABELLA ORIGINE";"CAMPO=Vero")
--
@Alex
*--------------------------------------------------------------------------*
Alessandro B.
Sito Comune      :
http://www.sitocomune.com
Sito Personale   :
http://digilander.iol.it/ik2zok/
*--------------------------------------------------------------------------*


title: somma se controllo = Sì

author: SimonenomiS

text:
"Alessia " <
les...@hotmail.com
> ha scritto nel messaggio
news:dccd968db0ac59499b6...@mygate.mailgate.org...
> Buona sera a tutti, uso A2000, ho un problemino veloce che ora nn riesco a
> risolvere, devo sommare [EntrataLire] se il  controllo [Lire] č uguale a
sě.
> Grazie Alessia
   TotEntrataLire: -Sum([EntrataLire]*([Lire]="Si"))
    ' se Lire č un campo booleano (SI/NO) allora
    ' puoi mettere -1 al posto di 'Si'
    Ciao.
--------------------------
http://digilander.iol.it/SimonenomiS/Software.html