title: Nuovo 6.129 Inviare da codice VBA una e-mail con allegati usando Outlook Express

author: Franchi Bonizzoni

text:
Buona serata a TUTTI.
Sono contento di aver risolto il problema di inviare messaggi con Outlook
Express.
Ho usato il 6.129 per circa 8 mesi ma avevo il problema della data che non
memorizzava (vedi post precedente 04/10/2005 ore 10.:51).
Io uso access 2000 Sp3 ed Win Xp Sp2.
Il seguente codice VBA è stato scritto da ALESSANDRO BARALDI e funziona
BENISSIMO (GRANDE). Si apre Outlook Express come se premessimo il pulsante
in Explorer.
Sig. Baraldi ho modificato solo la parte "Optional sImmediateSend As Boolean
= True" che non funzionava benissimo (sempre sul mio pc)
Infatti ho lasciato solo :Dialogue.flags = MAPI_LOGON_UI + MAPI_DIALOG.
Se i grandi volessero ancora migliorare AVANTI si facciano sotto. Un
piccolissimo problema è che dopo l'invio di un'email il pulsante F11 non
reagisce. Appena si chiude la sceda o si cambia record rifunziona.
Esiste anche il sito di Microsoft aggiornato al 8 Settembre 2005.
http://support.microsoft.com/kb/q163216/
Ho provato ma aimè non è il mio mestiere, sono solo appassionato di
programmazione ed il mio lavoro è un altro.
Provate!!!
--------------------------------------------------------------------------------------------------------------
'Modulo MapiMailBaraldiAlessandro
Option Compare Database
Option Explicit
Type MAPIMessage
  Reserved As Long
  Subject As String
  NoteText As String
  MessageType As String
  DateReceived As String
  ConversationID As String
  flags As Long
  RecipCount As Long
  FileCount As Long
End Type
Type MapiRecip
  Reserved As Long
  RecipClass As Long
  Name As String
  Address As String
  EIDSize As Long
  EntryID As String
End Type
Type MapiFile
  Reserved As Long
  flags As Long
  Position As Long
  PathName As String
  FileName As String
  FileType As String
End Type
Declare Function MAPISendMail Lib "c:\programmi\outlook express\msoe.dll"
Alias "BMAPISendMail" (ByVal Session&, ByVal UIParam&, Message As
MAPIMessage, Recipient() As MapiRecip, File() As MapiFile, ByVal flags&,
ByVal Reserved&) As Long
Global Const SUCCESS_SUCCESS = 0
Global Const MAPI_TO = 1
Global Const MAPI_CC = 2
Global Const MAPI_CCO = 3
Global Const MAPI_LOGON_UI = &H1
Global Const MAPI_DIALOG = &H8
Public Function SendMail(sSubject As String, sTo As String, sCC As String,
sCCO As String, sAttach As String, sMessage As String, Optional
sImmediateSend As Boolean = True) As Long
  Dim MAPI_Message As MAPIMessage
  Dim I As Integer
  Dim cTo As Integer
  Dim cCC As Integer
  Dim cCCO As Integer
  Dim cAttach As Integer
  Dim Dialogue As MAPIMessage
  cTo = CountWords(sTo, ";")
  cCC = CountWords(sCC, ";")
  cCCO = CountWords(sCCO, ";")
  cAttach = CountWords(sAttach, ";")
  ReDim rTo(0 To cTo) As String
  ReDim rCC(0 To cCC) As String
  ReDim rCCO(0 To cCCO) As String
  ReDim rAttach(0 To cAttach) As String
  ParseWords rTo(), sTo, ";"
  ParseWords rCC(), sCC, ";"
  ParseWords rCCO(), sCCO, ";"
  ParseWords rAttach(), sAttach, ";"
  ReDim MAPI_Recip(0 To cTo + cCC + cCCO - 1) As MapiRecip
  For I = 0 To cTo - 1
    MAPI_Recip(I).Name = rTo(I)
    MAPI_Recip(I).RecipClass = MAPI_TO
   Next I
  For I = 0 To cCC - 1
    MAPI_Recip(cTo + I).Name = rCC(I)
    MAPI_Recip(cTo + I).RecipClass = MAPI_CC
  Next I
  For I = 0 To cCCO - 1
    MAPI_Recip(cTo + cCC + I).Name = rCCO(I)
    MAPI_Recip(cTo + cCC + I).RecipClass = MAPI_CCO
  Next I
  ReDim MAPI_File(0 To cAttach) As MapiFile
  MAPI_Message.FileCount = cAttach
  For I = 0 To cAttach - 1
    MAPI_File(I).Position = -1
    MAPI_File(I).PathName = rAttach(I)
  Next I
  MAPI_Message.Subject = sSubject
  MAPI_Message.NoteText = sMessage
  MAPI_Message.RecipCount = cTo + cCC + cCCO
  Dialogue.flags = MAPI_LOGON_UI + MAPI_DIALOG
  SendMail = MAPISendMail(0&, 0&, MAPI_Message, MAPI_Recip(), MAPI_File(),
Dialogue.flags, 0)
  If SendMail Then MsgBox " Email non creata ", 48, "MODULO MAPI"
End Function
Function CountWords(ByVal sSource As String, ByVal sDelim As String) As
Integer
  Dim iDelimPos As Integer
  Dim iCount As Integer
  If sSource = "" Then
    CountWords = 0
  Else
    iDelimPos = InStr(1, sSource, sDelim)
    Do Until iDelimPos = 0
      iCount = iCount + 1
      iDelimPos = InStr(iDelimPos + 1, sSource, sDelim)
    Loop
    CountWords = iCount + IIf(Right(sSource, 1) = sDelim, 0, 1)
  End If
End Function
Function GetWords(sSource As String, ByVal sDelim As String) As String
  Dim iDelimPos As Integer
  iDelimPos = InStr(1, sSource, sDelim)
  If (iDelimPos = 0) Then
    GetWords = Trim$(sSource)
    sSource = ""
  Else
    GetWords = Trim$(Left$(sSource, iDelimPos - 1))
    sSource = Mid$(sSource, iDelimPos + 1)
  End If
End Function
Sub ParseWords(mArray() As String, ByVal sTokens As String, ByVal sDelim As
String)
  Dim I As Integer
  For I = LBound(mArray) To UBound(mArray)
    mArray(I) = GetWords(sTokens, sDelim)
  Next I
End Sub
'Fine Modulo
---------------------------------------------------------------------------------------------
Private Sub ProvaMail()
  Dim EMail As String, aFiles As String, MSGX As String, OBJX As String,CC
as string, CCn as string
  OBJX = "A me funziona alla grande ed inserisce la data di invio Date: Tue,
4 Oct 2005 10:25:55 +0200"
  MSGX = "Ore di ricerca in internet e prove"
  EMail="dare un email"
  aFiles="C:\nome di un files"
  SendMail OBJX, EMail, CC , CCn , aFiles, MSGX, 0
  'oppure se non vi serve CC e CCn sono dimensionate i valori
  SendMail OBJX, EMail, "", "" , aFiles, MSGX, 0
End sub
Grazie Sig. Antonio Baraldi.
Buona Notte
G.Franchi


title: Concatenare l'esecuzione di 8 procedure Access 2007

text:
Ho il problema di dover concatenere l'esecuzione di 8 procedure Access e, fino ad ora, l'ho fatto con le Attività Pianificate; solo che non potendo predeterminare la durata di ogni singola procedura, devo programmare l'esecuzione della successiva con un margine congruo di sicurezza per evitare che le procedure si accavallino.
Il risultato è che il tempo totale di esecuzione è di circa 5 ore.
Adesso, per esigenze aziendali, devo trovare il modo di compattare i tempi entro due ore.
Mi servirebbe un modo per far partire la procedura successiva quando la precedente si è conclusa.
Non posso fare una unica procedura in quanto devo copiare alcune Tabelle dal Db proprietario di Navision sulle omologhe di un mio Db SQL ed il drive ODBC di Navision per Access è poco affidabile e reagisce molto male alla situazione di una unica procedura; è per questo che ho dovuto suddividere la originaria unica procedura in 8 procedure.
Avete avuto esperienza di una soluzione che mi permetta di risolvere il problema?
Grazie in anticipo


author: S. Savoldi

text:
<
gfranc...@gmail.com
> ha scritto nel messaggio
news:f8ea9a02-e711-429d...@googlegroups.com...

Non sono certo d'aver ben capito la situazione...

Comunque, hai provato a creare un programma d'avvio da cui eseguire in Shell
(attraverso MsAccess.exe) le varie procedure a catena?
Naturalmente utilizzando le API per attendere la fine dell'esecuzione dei
vari prog. avviati in Shell.

Ragionando in maniera analoga, se la soluzione non funzionasse, si potrebbe
pensare di creare una tabella con l'elenco dei programmi da avviare e un
relativo Flag <Terminato> Sì/No.
Al termine d'ognuna delle 8 procedure batch, viene posto a <Sì> il suddetto
flag per il Record corrispondente.
Nel programma d'avvio ci sarà un Timer che periodicamente controlla lo stato
del Flag per l'ultimo programma avviato; quando assume valore <Sì> potrà
passare ad avviare il successivo.


title: Associazione oggetti OLE

author: Wrugaian

text:
Ciao,
sto cercando di creare una tabella che dovrà inglobare dei fogli excel.
Come tipo dati ho scelto Oggetto OLE.
Per l'immissione e la consultazione ho creato una maschera dove ho impostato
la proprietà "tipo visualizzazione" dell'oggetto contenente il file su
ICONA, essendo mio desiderio nella maschera vedere l'icona rappresentativa
il file magari col suo nom, piuttosto che il contenuto ritagliato dello
stesso.
Malgrado l'impostazione però per i fogli excel è visibile il contenuto (per
un pdf che ho associato per esperimento, invece, è visibile l'icona
nonostante si imposti la proprietà di cui sopra su "contenuto").
C'è qualcosa che non sto considerando?


title: Associazione oggetti OLE

text:
Magari può essere utile sapere che l'inserimento dell'oggetto è per
"trascinamento" dalla cartella alla maschera.
Effettivamente facendone l'inserimento partendo direttamente dalla maschera
(tasto dx, inserisci oggetto) la visualizzazione è ad ICONA come voluto..
anche se, essendo una scelta che si fa al momento dell'inserimento del file,
non capisco l'utilità della proprietà "tipo visualizzazione"...
"Wrugaian" <wrugai...@NOSPAMemail.it> ha scritto nel messaggio
news:OTPHf.174816$65.48...@twister1.libero.it...



title: Cambio visualizzazione maschera

author: Walter

text:
Buongiorno a tutti.
Ho la versione Access 2002 SP3
Il problema a cui non riesco a trovare la soluzione č il cambio di
visualizzazione di una maschera standar, contenuta in una sottomaschera,
alla visualizzazione foglio dati e viceversa senza doverla chiudere.
Ho notato che, a maschera aperta, se ci si posiziona in uno spazio privo di
controlli e si seleziona col Tasto DX la scelta "Sottomaschera" mi offre la
possibilitŕ di cambiare visualizzazione in foglio dati e viverversa, quindi
vuol dire che la possibilitŕ di farlo da VB c'č.
Grazie.


title: Cambio visualizzazione maschera

author: Carlo Costarella

text:
"Walter" <
wto...@tin.it
> ha scritto nel messaggio
news:PbYpd.223995$b5.10...@news3.tin.it...
> Buongiorno a tutti.
> Ho la versione Access 2002 SP3
> Il problema a cui non riesco a trovare la soluzione è il cambio di
> visualizzazione di una maschera standar, contenuta in una sottomaschera,
> alla visualizzazione foglio dati e viceversa senza doverla chiudere.
> Ho notato che, a maschera aperta, se ci si posiziona in uno spazio privo
> di
> controlli e si seleziona col Tasto DX la scelta "Sottomaschera" mi offre
> la
> possibilità di cambiare visualizzazione in foglio dati e viverversa,
> quindi
> vuol dire che la possibilità di farlo da VB c'è.
> Grazie.
>
>
>
Le proprietà DefaultView e ViewsAllowed definiscono il modo con cui verrà
visualizzata la maschera.
Selezionando la sottomaschera e usando il menù "Visualizza" si possono
scegliere alternativamente le due visualizzazioni.
Fin qui tutto normale. Il punto è farlo da codice.
Personalmente non ci sono riuscito.
Potresti mettere comunque le due sottomaschere (alternando la
visualizzazione) nella maschera principale.
Ciao, Carlo


title: Cambio visualizzazione maschera

text:
"Carlo Costarella" <
carloantoni...@virgilio.it
> ha scritto nel
messaggio news:BPYpd.412998$35.18...@news4.tin.it...

Ho fatto come hai detto.
Grazie mille
Walter


title: come si allunga una tabella?

author: Giovanni

text:
una tabella contiene  100 righe , un'altra solo 80.
Se incollo una intera colonna dalla prima alla seconda , mi dice che
incollerà solo 80 record, mentre io ne vorrei incollare 100 , cioè tutti.
Come allungo quindi la seconda colonna???
Grazie e saluti  ( uso access 2000 )


title: come si allunga una tabella?

author: Paolo opg

text:
"Giovanni" <
giov...@alice.it
> wrote in news:iqj3es$kqs$1@nnrp-
beta.newsland.it
:

-.-'
hai letto *tutto* il messaggio che ti dice che incollera' solo 80 righe?
--
Paolo opg
BE AWARE that this post uses a fake reply-to address
to contact me write to:
janickg ( at ) hotmail ( dot ) com
--


title: come si allunga una tabella?

text:
>
> hai letto *tutto* il messaggio che ti dice che incollera' solo 80 righe?
dice solo : incollarli?
e basta
ho access 2000 come versione


title: Password con oggetto Access...si può?

author: Fabio

text:
Ciao,
il mio problema è il seguente.
Stò realizzando un'applicazione in VB e Access usando gli ADO e SnapShotView
per visualizzare i report.
Per proteggere il databese ho messo la protezione di access che si trova
sotto "strumenti-protezione-imposta password database" e funziona tutto bene
finchè si tratta di usare gli ADO. Il problema ce l'ho con i report in
quanto per usare i file snapshot ho dovuto creare un oggetto Access. A
questo punto però non sò con quale comando possa impostare la password dal
momento che con OpenCurrentDatabase posso solo inserire il percorso.
Ecco il codice:
Dim appAccess As Access.Application
Set appAccess = CreateObject("Access.Application")
appAccess.OpenCurrentDatabase ("C:\pippo.mdb")
Sapreste darmi una mano?
Grazie e buona serata,
Fabio
--------------------------------
Inviato via
http://usenet.libero.it


title: Password con oggetto Access...si può?

author: Roberto da casa

text:
"Fabio" <
ghigl...@libero.it
> ha scritto nel messaggio
news:81Z72Z97Z125Y1...@usenet.libero.it...

Vai sul Sito Comune e nella Sezione Generl prova a leggere la FAQ di
Federico Luciani intitolata "Aprire, da codice, un mdb protetto da
password".
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Gestione Immagini in Report

author: Re Artů

text:
Ciao a tutti
Ho il seguente problema con A97 e W98:
Ho creato un report a 2 colonne che stampa circa 10 immagini per pagina.
Utilizzo il controllo immagine di access e carico le immagini che si trovano
in un determinato percorso.
Intanto quanto un articolo non ha immagine e devo visualizzare il controllo
vuoto eseguo l'istruzione Me.Foto.Picture = "" ma rimane visualizzata
l'immagine che c'era precedentemente.
Poi se stampo report con tante pagine, o con immagini pesanti, la stampa non
esce, da errore:
Che si può fare? Usare altri controlli
Grazie
Ciao


title: Gestione Immagini in Report

author: MA

text:

> Che si puň fare? Usare altri controlli
> Grazie
> Ciao
usa Empty
MAssimiliano
--------------------------------
Inviato via
http://usenet.libero.it


title: Gestione Immagini in Report

text:
> > Intanto quanto un articolo non ha immagine e devo visualizzare il
> controllo
> > vuoto eseguo l'istruzione Me.Foto.Picture = "" ma rimane visualizzata
> > l'immagine che c'era precedentemente.
> > Poi se stampo report con tante pagine, o con immagini pesanti, la stampa
> non
> > esce, da errore:
> > Che si puň fare? Usare altri controlli
> > Grazie
> > Ciao
> usa Empty
niente da fare.
E' cosě che intendevi?
Me.Foto.Picture = empty
purtroppo non va


title: Gestione Immagini in Report

text:
"Re Artů" <
> Ciao a tutti
> Ho il seguente problema con A97 e W98:
> Ho creato un report a 2 colonne che stampa circa 10 immagini per pagina.
> Utilizzo il controllo immagine di access e carico le immagini che si
trovano
> in un determinato percorso.
> Intanto quanto un articolo non ha immagine e devo visualizzare il
controllo
> vuoto eseguo l'istruzione Me.Foto.Picture = "" ma rimane visualizzata
> l'immagine che c'era precedentemente.
Hai provato a rendere invisibile il controllo?
> Poi se stampo report con tante pagine, o con immagini pesanti, la stampa
non
> esce, da errore:
> Che si puň fare? Usare altri controlli
Le immagini sono bitmap o Jpg?
Ciao!


title: Gestione Immagini in Report

author: Bruno - S95

text:
"Re Artů" <
lucc...@tiscali.it
> ha scritto nel messaggio
news:bjsevq$msftg$1...@ID-202568.news.uni-berlin.de...

> Che si puň fare? Usare altri controlli
> Grazie
> Ciao
>
> _____________
Ciao, spero di aver capito cosa desideri.
prova cosě:
Nella Maschera delle foto.
_________________________________
Private Sub Form_AfterUpdate()
On Error Resume Next
Me![Foto].Picture = ""
Me![Foto].Picture = Me![Path]
Me.Refresh
End Sub
Private Sub Form_Current()
On Error Resume Next
Me![Foto].Picture = ""
Me![Foto].Picture = Me![Path]
Me.Refresh
End Sub
Private Sub Path_Change()
Me.Refresh
End Sub
Private Sub Path_DblClick(Cancel As Integer)
Me.Refresh
End Sub
_______________________________________
Nel valore predefinito del controllo denominato "Path" inserisci "Fare clic
per inserire una foto >>>".
_______________________________________
Per il filtro e inserimento foto usa il seguente modulo chiamato "sc_file".
_______________________________
Option Compare Database
Option Explicit
Private Declare Function GetOpenFileName Lib "comdlg32.dll" _
            Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Private Type OPENFILENAME
   lStructSize As Long
   hwndOwner As Long
   hInstance As Long
   lpstrFilter As String
   lpstrCustomFilter As String
   nMaxCustFilter As Long
   nFilterIndex As Long
   lpstrFile As String
   nMaxFile As Long
   lpstrFileTitle As String
   nMaxFileTitle As Long
   lpstrInitialDir As String
   lpstrTitle As String
   flags As Long
   nFileOffset As Integer
   nFileExtension As Integer
   lpstrDefExt As String
   lCustData As Long
   lpfnHook As Long
   lpTemplateName As String
End Type
Public Function cmdlg_file()
   Dim OpenFile As OPENFILENAME
   Dim lReturn As Long
   Dim sFilter As String
   OpenFile.lStructSize = Len(OpenFile)
   sFilter = "Immagini(*.wmf,*.bmp,*.jpg,*.tif,*.gif)" & Chr(0) &
"*.wmf;*.bmp;*.jpg;*.tif;*.gif" & Chr(0)
   OpenFile.hwndOwner = Application.hWndAccessApp
   OpenFile.lpstrFilter = sFilter
   OpenFile.nFilterIndex = 1
   OpenFile.lpstrFile = String(257, 0)
   OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1
   OpenFile.lpstrFileTitle = OpenFile.lpstrFile
   OpenFile.nMaxFileTitle = OpenFile.nMaxFile
   OpenFile.lpstrInitialDir = "C:\ e route delle foto"
   OpenFile.lpstrTitle = "Selezione"
   OpenFile.flags = 0
   lReturn = GetOpenFileName(OpenFile)
   If lReturn = 0 Then
      cmdlg_file = ""
   Else
      cmdlg_file = Left(OpenFile.lpstrFile, InStr(OpenFile.lpstrFile,
Chr$(0)) - 1)
      Forms![S:FotoOvili]!Path = cmdlg_file
   End If
End Function
_________________________________
Richiama il modulo con un pulsante ..., mettendo su evento clic
"=cmdlg_file()"
Ciao da Bruno


title: Gestione Immagini in Report

text:
> > Intanto quanto un articolo non ha immagine e devo visualizzare il
> controllo
> > vuoto eseguo l'istruzione Me.Foto.Picture = "" ma rimane visualizzata
> > l'immagine che c'era precedentemente.
>
>  Hai provato a rendere invisibile il controllo?
Ok. grazie. Per ora me la cavo cosě.
Per l'altro discorso, che sopra un certo numero con w98 il report non
appare? E' successo anche a Voi?


title: file mde

author: Ste

text:
Ciao a tutti,
come posso aprire un file mde???
grazie


title: file mde

author: Pippo

text:
> come posso aprire un file mde???
>
Normalmemte con Access.
Se intendi un'apertura in modifica,
non è possibile far nulla.


title: mdb invisibile e report capriccioso

author: Maicol

text:
Ciao a tutti. Avevo creato con access 2000 una piccola applicazione.
Recentemente l'ho ripresa per delle modifiche da un pc in cui e' installato
xp con access2002 salvandola comunque nella versione access2000.
L'applicazione viene usata in pc con nt e access2000.
Succedono 2 cose strane:
1) alcune volte aprendo l'mdb a schermo non appare niente anche se  si crea
il file ldb normalmente. (questo sia nei pc nt che nel mio xp)
2)C'e' un report che nei pc NT quando lo lancio chiude l'mdb creando poi al
tentativo di riaprirlo il problema 1, se invece lo lancio del pc XP funziona
normalmente.
Non ci sto capendo niente, potete aiutarmi ????


title: mdb invisibile e report capriccioso

author: pixel

text:
"Maicol" > Ciao a tutti. Avevo creato con access 2000 una piccola

Ma hai provato a reimportar tutto in un nuovo .mdb?
Pixel


title: mdb invisibile e report capriccioso

text:
"pixel" <
pi...@libero.it
> ha scritto nel messaggio
news:j530c.37267$Kc3.1...@twister2.libero.it...

> Grazie della risposta, ho gia' provato ma gli rimbalza.
>
>


title: mdb invisibile e report capriccioso

text:
"Maicol" <
> > Grazie della risposta, ho gia' provato ma gli rimbalza.
Cioč, usando Access 2000 hai reimportato tutto in un nuovo .mdb, risalvato e
... hai ancora problemi?


title: mdb invisibile e report capriccioso

text:
"pixel" <
pi...@libero.it
> ha scritto nel messaggio
news:LW50c.37666$Kc3.1...@twister2.libero.it...

> Scusa per il ritardo della risposta, ma sono stato fuori una settimana.
Sě ho fatto come tu mi hai scritto, ma continua a comportarsi allo stesso
modo
>
>
>


title: Modificare una relazione da codice

author: franco maggio

text:
Buongiorno a tutti,
ho un database strutturato con varie tabelle collegate fra loro. Fra queste ve ne sono due (Dipendenti e Mansione) legate fra loro in relazione uno-a-,molti (un Dipendente può avere una Mansione, una Mansione può appartenere a più Dipendenti). Ora mi è stato chiesto di modificare la relazione uno-a-molti in molti-a-molti, consentendo quindi la possibilità di assegnare più Mansioni allo stesso Dipendente.
Il progetto è già avviato da parecchio, quindi ci sono svariati records già inseriti, quindi io dovrei modificare tale relazione via codice (VBA), scrivendo una routine che effettui la modifica richiesta conservando i dati esistenti; i Dipendenti devono conservare la Mansione eventualmente già assegnatagli (non è obbligatoria) ma deve esserci anche la possibilità di aggiungerne altre.
La modifica della maschera di inserimento non mi preoccupa, dovrò aggiungere una sottomaschera per le Mansioni, ma non so come fare a modificare il BE (che ovviamente è separato dal FE).
Gli utenti usano Access 2010 o versioni successive (io sviluppo con Access 2019)
Grazie
Franco


title: Modificare una relazione da codice

author: BFS

text:

non mi è chiaro perchè devi usare vba
non puoi semplicemente crearti una tabella DipendentiMansioni con campi
IDMansione e IDDipendente messi in chiave primaria.
con una query di accodamento la popoli con iddipendente e idmansione gia
presenti nella tabella dipendenti per non perdere le relazioni esistenti.

fatto questo dalla finestra di progettazione relazioni di access
cancelli la relazione uno a molti tra dipendenti e mansioni e crei le due
dipendenti-->DipendentiMansioni
e
mansioni-->DipendentiMansioni

BFS


title: Modificare una relazione da codice

author: Ammammata

text:
BFS brought next idea :
> non puoi semplicemente crearti una tabella DipendentiMansioni con campi
> IDMansione e IDDipendente messi in chiave primaria.
> con una query di accodamento la popoli con iddipendente e idmansione gia
> presenti nella tabella dipendenti per non perdere le relazioni esistenti.
>
> fatto questo dalla finestra di progettazione relazioni di access cancelli la
> relazione uno a molti tra dipendenti e mansioni e crei le due
> dipendenti-->DipendentiMansioni
> e
> mansioni-->DipendentiMansioni

immagino che il suo UCAS abbia dato qualche direttiva in tal senso :-)
comunque la tua soluzione mi sembra semplice e pratica

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


title: Modificare una relazione da codice

text:

Grazie a tutti per la risposta, effettivamente sarebbe la soluzione più semplice, se io avessi accesso al BE, che è su server aziendale e utilizzato da più utenti.
Per questo ho pensato alla modifica del BE via codice, posso creare una nuova tabella in sql con CREATE TABLE ecc..., posso accodare i dati già presenti nella nuova tabella, però non conosco poi i comandi per modificare le relazioni, o meglio per eliminare la relazione esistente tra le tabelle Dipendenti e Mansioni e creare quelle tra le due tabelle menzionate e la nuova tabella appena creata.
Io ho già una routine che avvisa gli utenti attivi di scollegarsi per imminente manutenzione, dopo di che avvio la modifica del BE. Purtroppo ignoro i comandi adatti.
Saluti
Franco


title: Modificare una relazione da codice

text:

RISOLTO
Girovagando in Internet sono riuscito a trovare i comandi che mi servivano ad effettuare le mie operazioni. Ho dovuto fare più step ma alla fine sono arrivato al risultato atteso, mischiando SQL e VBA.
Vi elenco i passaggi, se possono servire a qualcuno, o se invece qualcuno può suggerirmi una soluzione migliore.
1 - con due mie vecchie funzioni (PercorsoDB e NomeDB) che allego in basso raggiungo il BE in qualunque posto si trovi.
2 - creo la tabella intermedia TabPersonaleMansioni
    Set DBS1 = OpenDatabase(PercorsoDB("BE") & NomeDB("BE"))
    SQL1 = "CREATE TABLE TabPersonaleMansioni (PMID COUNTER PRIMARY KEY ); "
    DBS1.Execute SQL1
3 - aggiungo le due chiavi esterne
    SQL1 = "ALTER TABLE TabPersonaleMansioni ADD COLUMN ManID INTEGER, CONSTRAINT ManID FOREIGN KEY (ManID)  REFERENCES TabMansioni;"
    DBS1.Execute SQL1
    SQL1 = "ALTER TABLE TabPersonaleMansioni ADD COLUMN PerCID CHAR(10), CONSTRAINT PerCID FOREIGN KEY (PerCID)  REFERENCES TabPersonale;"
    DBS1.Execute SQL1
4 - copio i dati dalla TabPersonale.ManID nella nuova tabella creata TabPersonaleMansioni
    Set RST2 = DBS1.OpenRecordset("TabPersonale")
    Set RST3 = DBS1.OpenRecordset("TabPersonaleMansioni")
    RST2.MoveFirst
    Do While Not RST2.EOF
        If Not IsNull(RST2.Fields("ManID")) Then
            RST3.AddNew
            RST3.Fields("PerCID") = RST2.Fields("PerCID")
            RST3.Fields("ManID") = RST2.Fields("ManID")
            RST3.Update
        End If
        RST2.MoveNext
    Loop
5 - elimino la relazione tra le tabelle TabMansioni e TabPersonale, con VBA perché non ho trovato il rispettivo comando in SQL
    Call EliminaRelazioni("TabMansioni", "TabPersonale")               'funzione di Mirko Caporali trovata in questi giorni, che allego in basso
6 - elimino l'indice della tabella
    SQL1 = "DROP INDEX ManID ON TabPersonale;"
    DBS1.Execute SQL1
7 - elimino il campo ManID dalla tabella TabPersonale
    SQL1 = "ALTER TABLE TabPersonale DROP COLUMN ManID;"
    DBS1.Execute SQL1

Di seguito le tre funzioni

Function PercorsoDB(strQuale As String) As String
'restituisce il percorso del DB utilizzato
'strQuale = stabilisce se trovare il percorso del file Beck End o del file Front End
'valori ammessi per strQuale:
'BE = Beck End o server
'FE = Front End o client
'usa la libreria DAO
On Error GoTo Errore
    Dim DBS1 As DAO.Database
    Dim N As Integer
    Set DBS1 = CurrentDb
    Select Case strQuale
    Case "BE"   'file beck end
        For N = 0 To DBS1.TableDefs.count - 1
            If DBS1.TableDefs(N).Connect <> "" Then
                PercorsoDB = Mid(DBS1.TableDefs(N).Connect, 11)
                Exit For
            End If
        Next N
        Do While Right(PercorsoDB, 1) <> "\"
            PercorsoDB = Left(PercorsoDB, Len(PercorsoDB) - 1)
        Loop
    Case "FE"   'file front end
        PercorsoDB = DBS1.Name
        Do While Right(PercorsoDB, 1) <> "\"
            PercorsoDB = Left(PercorsoDB, Len(PercorsoDB) - 1)
        Loop
    End Select
Uscita:
    Set DBS1 = Nothing
    Exit Function
Errore:
    MiaMsgBox "Si è verificato il seguente errore:@N° " & Err.Number & " - " & Err.description & "@"
    Resume Uscita
End Function

Function NomeDB(strQuale As String, Optional bolEstensione As Boolean = True) As String
' Restituisce il nome del DB corrente
'strQuale = stabilisce se trovare il percorso del file Beck End o del file Front End
'valori ammessi per strQuale:
'   BE = Beck End o server
'   FE = Front End o client (valore di default)
'bolEstensione = determina se il nome dev'essere con o senza l'estensione
'Valori di bolEstensione:
'   VERO = con estensione (default)
'   FALSO = senza estensione
'usa la libreria DAO
On Error GoTo Errore
    Dim DBS1 As DAO.Database
    Dim intLunghezzaPercorso As Integer
    Dim strNomeEstensione As String
    Dim strSoloNome As String
    Dim strNomeCompleto As String
    Dim N As Integer
    Set DBS1 = CurrentDb
    Select Case strQuale
    Case "BE"
        For N = 0 To DBS1.TableDefs.count - 1
            If DBS1.TableDefs(N).Connect <> "" Then
                strNomeCompleto = Mid(DBS1.TableDefs(N).Connect, 11)
                Exit For
            End If
        Next N
        intLunghezzaPercorso = Len(PercorsoDB("BE"))
        strNomeEstensione = Right(strNomeCompleto, Len(strNomeCompleto) - intLunghezzaPercorso)
        strSoloNome = strNomeEstensione
        '
        Do While Right(strSoloNome, 1) <> "."
            strSoloNome = Left(strSoloNome, Len(strSoloNome) - 1)
        Loop
        strSoloNome = Left(strSoloNome, Len(strSoloNome) - 1)
        '
        If bolEstensione = True Then
            NomeDB = strNomeEstensione
        Else
            NomeDB = strSoloNome
        End If
    Case "FE"
        intLunghezzaPercorso = Len(PercorsoDB("FE"))
        strNomeEstensione = Right(DBS1.Name, Len(DBS1.Name) - intLunghezzaPercorso)
        strSoloNome = strNomeEstensione
        '
        Do While Right(strSoloNome, 1) <> "."
            strSoloNome = Left(strSoloNome, Len(strSoloNome) - 1)
        Loop
        strSoloNome = Left(strSoloNome, Len(strSoloNome) - 1)
        '
        If bolEstensione = True Then
            NomeDB = strNomeEstensione
        Else
            NomeDB = strSoloNome
        End If
    End Select
Uscita:
    Set DBS1 = Nothing
    Exit Function
Errore:
    MiaMsgBox "Si è verificato il seguente errore:@N° " & Err.Number & " - " & Err.description & "@"
    Resume Uscita
End Function

Function EliminaRelazioni(strTabella1 As String, strTabellaMolti As String)         'di Mirko Caporali
'elimina una relazione tra due tabelle
'strTabella1 = la tabella con l'indicazione univoca del valore (lato 1)
'strTabellaMolti = la tabella con più occorrenze del valore (lato Molti)
'usa la libreria DAO
    Dim DBS1 As DAO.Database
    Dim RLT1 As DAO.Relation
    Dim strParte1 As String
    Dim strParteMolti As String
    Dim strNomeRelazione As String
    ' Individua il nome della relazione da eliminare
    Set DBS1 = CurrentDb
    For Each RLT1 In DBS1.Relations
        ' Tabella parte 1
        strParte1 = RLT1.Table
        ' Tabella parte molti
        strParteMolti = RLT1.ForeignTable
        If strParte1 = strTabella1 And strParteMolti = strTabellaMolti Then
            ' Relazione trovata
            strNomeRelazione = RLT1.Name
            ' Elimina la relazione
            DBS1.Relations.Delete strNomeRelazione
        End If
    Next RLT1
End Function

Spero che possa tornare utile a qualcuno.
Saluti
Franco


title: Gestione PWD tramite VBA

author: PAolo

text:
Esiste una maniera di accedere alla PWD impostata in un database tramite
VBA? Mi spiego: ho una routine dentro il database che dovrebbe passare la
PWD in questione ad una applicazione esterna.
Grazie


title: Gestione PWD tramite VBA

author: Federico Luciani

text:

non ho ben capito.
- se vuoi leggere la password, la risposta e' no
- se vuoi aprire, via codice,  un db protetto, allora Sito Comune
'Aprire, da codice, un mdb protetto da password'
--
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: Gestione PWD tramite VBA

text:
Diciamo così (l'esempio è scemo, ma rende l'idea!):
dentro il mio database metto una routine che scrive un file di testo, e in
questo file di testo voglio scriverci la password del database.
"Federico Luciani" <
fluc...@sitocomune.com
> ha scritto nel messaggio
news:3DC92B69...@sitocomune.com...



title: Gestione PWD tramite VBA

text:
PAolo wrote:
> Diciamo cosě (l'esempio č scemo, ma rende l'idea!):
>
> dentro il mio database metto una routine che scrive un file di testo, e in
> questo file di testo voglio scriverci la password del database.
non e' possibile leggere la password



title: Senza partire da 0 (ricomincio da tre)

author: ginko

text:
salve a tutti
- sto provando a costruire un db per gestire la mia piccola cantina di casa
circa 90-100 bottiglie.
- ho già trovato un db con varie ricette classificate come antipasti, primi
ecc.
- sto cercando un db con i vini da modificare a uso e consumo che riporti le
caratteristiche MAGARI del produttore;
se poi c'è già qualche db bello pronto solo da modificare beh!!!!!!!!!!!!
ma questo è chiedere troppo.
comunque grazie
emanuele


title: Senza partire da 0 (ricomincio da tre)

author: Raptor

text:
non credo ci voglia una vita a fare un db del genere puoi farlo
direttamente tu?? oppure mi sto sbagliando??


title: Senza partire da 0 (ricomincio da tre)

author: Giuseppe

text:
potresti creare un DB semplice semplice tabella ---> Vini query di
ricerca x nome o colore ecc. fai tu poi su internet cerchi qualche
ricettario che faccia al caso tuo cut paste nel memo di ogni vino e le
jeu son fe (scusate il francese maccaronico :-) )



title: Senza partire da 0 (ricomincio da tre)

text:
"Raptor" <
ricci...@alice.it
> ha scritto nel messaggio
news:1160388025.3...@e3g2000cwe.googlegroups.com...
> non credo ci voglia una vita a fare un db del genere puoi farlo
> direttamente tu?? oppure mi sto sbagliando??
>
no non ti stai sbagliando Raptor!
dall'analisi non dovrebbe però essere molto facile considerando che dovrei:
- creare un db con i vini, i cibi e  e le singole caratteristiche sia del
cibo che del vino
- tenere conto che ogni anno che passa il vino cambia e quindi, forse,
anche l'abbinamento con il cibo;
- considerare che quando ho termininato la disponibilità di quel vino da
abbinare ad un pasto il prg dovrebbe, secondo una scala di priorità,
consigliarmi l'abbinamento con un altro vino, tenendo conto delle persone
che ho invitato e quindi della disponibilità in cantina.
- non continuo perché altrimenti rinuncio. per questo mi sarebbe piacito
avere uno spunto da qualcuno che ha già analizzato il problema.
alla fine ... costruiro un semplice db che saprà più di prg di magazzino che
quello che vorrei veramente.
pronti, partenza, viaaaaaaaaaaa
ciao


title: Senza partire da 0 (ricomincio da tre)

text:
hai ragione giuseppe la strada va fatta passo per passo
grazie
ciao
emanuele
"Giuseppe" <
peppe...@gmail.com
> ha scritto nel messaggio
news:1160398990.4...@c28g2000cwb.googlegroups.com...



title: Errore FIle di Access (MsysDB)

author: Marco Lusuardi

text:
Ho un file di access che non riesco a ripritstinare:
Access durante il processo ri ripristino mi dice
MS JET non è in grado di trovare l'oggetto Msysdb


title: DoCmd.RunSQL

author: Ulysse

text:
Ciao ... purtroppo son tornato dalle ferie :°(
vabbe', ora devo ricominciare a darmi da fare!! ;)
prima di tutto, usando da VBA la funzione
    DoCmd.RunSQL "....."
ottengo dei messaggi tipo
"Verranno aggiunti tot record alla tabella"
come quando incollo record manualmente con il copia e incolla
....come faccio a disabilitarli???
e ancora, il comando DoCmd.RunSQL funziona solo con Jet??
se si' una alternativa ??  (non dite ADO e basta, provate a darmi un altro
indizio ^__^ )


title: DoCmd.RunSQL

author: Fabio

text:
"Ulysse" <
incad....@tin.it
> ha scritto nel messaggio
news:BjDd9.64240$pX1.2...@news2.tin.it...
> Ciao ... purtroppo son tornato dalle ferie :°(
> vabbe', ora devo ricominciare a darmi da fare!! ;)
>
> prima di tutto, usando da VBA la funzione
>     DoCmd.RunSQL "....."
> ottengo dei messaggi tipo
> "Verranno aggiunti tot record alla tabella"
> come quando incollo record manualmente con il copia e incolla
> ....come faccio a disabilitarli???
Prima dell'istruzione
docmd.setwarnings false (e dopo li reimposti a true)
Ciao, FABIO


title: DoCmd.RunSQL

author: Maurizio Borrelli

text:
> "Ulysse" [...]:
> e ancora, il comando DoCmd.RunSQL funziona solo con Jet??
    Come dice la guida:
        "Questo metodo si applica solo ai database di Microsoft Access
(mdb)."
> se si' una alternativa ??  (non dite ADO e basta, provate a darmi un altro
> indizio ^__^ )
    DAO? :-)
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------


title: DoCmd.RunSQL

text: Grazie a tutti


title: MSDE2000 Connessione ODBC

author: ALESSANDRO Baraldi

text:
Chiedo scusa per il CrossPost involontario..........!
Ho importato in un ADP un vecchio db, tutto OK.
Se mi ci collego via OLE_DB da VB funziona, se
provo con ODBC da Access mi fa le pernacchie.
Stò lavorando in Locale con MSDE su W98
non sò cosa potrebbe essere.
Non conosco bene la gestione di ADP e la
connessione nativa con XP, ma sostanzialmente
dovrei connettermi con A97.
Con SQLServer e NT faccio un ODBC_Direct
quì ho provato sia così che con DSN.
Già nella creazione guidata del DSN mi dà
errore, quindi mi viene il sospetto di una non compatibilità
del Dirver.
Ne ho detta qualcuna di troppo.
Grazie.
--
@Alex
ik2...@libero.it
http://digilander.libero.it/ik2zok


title: MSDE2000 Connessione ODBC

text:
"ALESSANDRO Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:blsoik$f4k$1...@lacerta.tiscalinet.it...

Se lo rileggo non capisco nemmeno io il problema....!!!
In sostanza il problema è tra A97 e MSDE2000.
ADP era una prova.......... funzionante.
@Alex.


title: MSDE2000 Connessione ODBC

author: Giorgio Prx

text:
"ALESSANDRO Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:blsov7$fbl$1...@lacerta.tiscalinet.it...

Ciao Alex
Prova ad aggiornare MDAC alla versione 2.8, contiene anche "Microsoft SQL
Server ODBC Driver"
http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid
=28001860
Ciao Giorgio


title: MSDE2000 Connessione ODBC

text:
"Giorgio Prx" <
giorgio...@nospamtiscalinet.it
> ha scritto nel messaggio
news:blu4qh$rje$1...@lacerta.tiscalinet.it...
[CUT]
>
> Ciao Alex
> Prova ad aggiornare MDAC alla versione 2.8, contiene anche "Microsoft SQL
> Server ODBC Driver"
>
>
http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid
> =28001860
>
> Ciao Giorgio
>
Provato, ma nulla, il DSN mi da errore di connessione.
Premetto che ho W98 A97 aggiornato SR2 e da ora MDAC 2.8
Purtroppo devo farlo andare con A97 non c'è verso di ugradare.
@Alex.


title: MSDE2000 Connessione ODBC

text:
"ALESSANDRO Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:blunon$928$1...@lacerta.tiscalinet.it...
>
>
> Provato, ma nulla, il DSN mi da errore di connessione.
> Premetto che ho W98 A97 aggiornato SR2 e da ora MDAC 2.8
>
> Purtroppo devo farlo andare con A97 non c'è verso di ugradare.
>
> @Alex.
>
Ciao Alex
Forse se posti la stringa di connessione e l'errore che ricevi posso darti
una mano.
Sicuramente è inutile dirlo ma l'unico tipo di accesso a MSDE2000 su Win98
è "Autenticazione di SqlServer" in cui devi indicare il nome dello USER e la
Password.
Ciao Giorgio


title: MSDE2000 Connessione ODBC

author: Alessandro Baraldi

text:
"Giorgio Prx" <
giorgio...@nospamtiscalinet.it
> wrote in message
news:bm0de4$tlq$
1...@lacerta.tiscalinet.it

Non ho fatto collegamento ODBC Direct via codice, ma in effetti
oggi provo.
Fino ad ora ho cercato di generare il DSN per il collegamento
con l'interfaccia di Access, da li poi avrei preso la stringa di
connesione.
Il problema è che non riuscendo a generare il DSN, si pianta proprio
il gestore di SQL_SERVER.
Oggi provo a Bypassare DSN e linkare in odo DIRECT le tabelle, poi
vediamo.
Quello che pensavo era che non andando il DSN ci fossero problemi
proprio con il DRIVER, anche perchè via OLE_DB è tutto OK....!
Boh...!
Mi aggiorno a dopo le prove.
P.S. la connection string in ogni caso che userò è questa:
strConn= "ODBC;DRIVER={SQL Server};SERVER=127.0.0.1;" _ &
"UID=NomeUtente;PWD=MiaPWD;DATABASE=NomeMioDatabase;DSN='';"
Ciao.
@Alex.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: MSDE2000 Connessione ODBC

text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
[CUT]
Penso di avere il PC con la voglia di farsi schiantare, per terra...!
Oggi con immenso stupore senza differenze da ieri è andata.
In effetti non riconosceva il LocalHost 127.0.0.1, oggi
si sono conosciuti e dopo 4 chiacchiere è andato.........!!!
Non sò che dire.
Ovvio che è andata anche la connessione ODBC_Direct...!
Grazie.
@Alex.


title: PictureBox Ocx per Access

author: Frank

text:
Dove posso trovare un OCX che abbia tutte le caratteristiche del
controllo PictureBox di Visual Basic per Microsoft Access ?
Possibilmente Free.
Grazie.


title: PictureBox Ocx per Access

text:

Il controllo PictureBox non è gestibile in modo nativo, ma se vuoi io
e Carlo Costarella abbiamo costruito un OCX un pò più potente, usando
la PictureBox che sfrutta GDI e CGD+ per caricare le ThumbNail.
http://www.frantoiogestione.com/UsaImmaginiOCX.zip
Se usi WinXP non hai problemi, con Win2K non funziona.
@Alex


title: PictureBox Ocx per Access

text:
Grazie Alex, va bene in parte. A me interessa la proprietà .Picture
del controllo PictureBox di Visual Basic, perchè deve restituire la
proprietà dell'immagine ( il numero).
Ciao.


title: PictureBox Ocx per Access

text:

Beh modifica il sorgente in VB e rendi Public anche la proprietà
Picture... è una cosa molto semplice...!
Non mi torna però l'affermazione che hai fatto relativa alla proprietà
Immagine(Picture) che cosa aspetti che restituisca...? Cosa ci fai poi
con quel numero...?
La proprietà Picture, contrariamente al controllo Immagine, espone
tramite la proprietà Picture il riferimento al puntatore dell'area
nella quale viene caricata l'immagine(detto anche Hwnd dell'immagine).
Avere quel numero in Vb è comodo, ma con Access non lo capisco, o
meglio mi sfugge...!
@Alex


title: PictureBox Ocx per Access

text:
Sto riportando un'applicazione Visual Basic che chiede l'oggetto
PictureBox.
Forse ho trovato qualcosa, ma devo provarlo.
Ti ringrazio.


title: PictureBox Ocx per Access

text:
Ciao Alex. In merito alla richiesta in oggetto, sono riuscito a
trovare un controllo free che fa le stesse cose o quasi del omonimo in
visual basic.
Ho importato in Access una procedura Visual Basic che aggunge Skin
personalizzati alle maschere.
Funziona, ma a volte si blocca la form o va in crash access su un
problema di allocazione di memoria. Volevo sottoportelo per cercare di
capire quale funzione (quasi tutte API) manda in tilt tutto.
Se si, dimmi come sostarti il tutto.
Grazie.


title: PictureBox Ocx per Access

text:

Sinceramente sono allergico all'uso di OCX, se poi non sono miei
peggio ancora...!
Personalmente non ho capito che vuoi fare e qual'è la tua esigenza
reale... OCX a parte, in quanto sei partito dal chiedere un OCX
equivalente alla PictureBox, ora parli di Skins.....
In ogni caso tutto ciò che in VB funziona non è detto lo faccia anche
in VBA, in particolar modo per tutto quello che riguarda la gestione
Grafica nella quale si deve ricorrere a ContextDevice(Hdc) non nativi
in nessun controllo, e Hwnd non nativi in nessun controllo(solo
Form)....!
Detto questo se spieghi il tuo problema chiaramente posso cercare di
capire se l'OCX che ti proposi inizialmente, che è estremamente
semplice e stabile, può soddisfarti, oppure proporre una soluzione
Access alla cosa.
@Alex


title: PictureBox Ocx per Access

text:
Volevo semplicemente creare i bordi e sfondi personalizzati delle
maschere (skin). Avevo visto questo esempio in Visual basic abbastanza
simpatico e volevo ricalcarlo in Access.
Il problema non è tanto l'OCX che sembra funzioni; è che si fa molto
uso delle API e sicuramente c'è qualche cella di memoria usata che, se
apri e  chiudi la maschera più di qualche volta, manda in crash access
oppure la maschera si apre, ma blocca qualsiasi funzione.
Questo e quanto. Grazie dell'interessamento.


title: PictureBox Ocx per Access

author: Carlo Costarella

text:
"Frank" <
francov...@tin.it
> ha scritto nel messaggio
news:1172323861.1...@8g2000cwh.googlegroups.com...
Volevo semplicemente creare i bordi e sfondi personalizzati delle
maschere (skin). Avevo visto questo esempio in Visual basic abbastanza
simpatico e volevo ricalcarlo in Access.
Il problema non č tanto l'OCX che sembra funzioni; č che si fa molto
uso delle API e sicuramente c'č qualche cella di memoria usata che, se
apri e  chiudi la maschera piů di qualche volta, manda in crash access
oppure la maschera si apre, ma blocca qualsiasi funzione.
Questo e quanto. Grazie dell'interessamento.
-----------------------------------------------------------------------
Come si chiama questo ocx e da dove lo hai scaricato?
Ciao, Carlo


title: PictureBox Ocx per Access

text:
Questo è l'indirizzo. L'ocx si chiama scrollimage.ocx
http://www.recursosvisualbasic.com.ar/


title: PictureBox Ocx per Access

text:
"Frank" <
francov...@tin.it
> ha scritto nel messaggio
news:1172774140.2...@n33g2000cwc.googlegroups.com...
Questo č l'indirizzo. L'ocx si chiama scrollimage.ocx
http://www.recursosvisualbasic.com.ar/
Sulla base delle tue indicazioni ho riprodotto l'ocx e di API nemmeno
l'ombra...
E' un semplice ocx che permette di visualizzare un'immagine in un controllo
immagine di VB, avendo a destra e in basso le barre di scorrimento...nulla
di piů.
Ho realizzato l'ocx, l'ho registrato e inserito in una maschera di
AXP...nessun problema, funziona alla grande anche dopo molte aperture e
chiusure della maschera.
Se mi fai sapere cosa ti proponi di ottenere ne possiamo parlare.
Ciao, Carlo


title: DB e date

text:
Dovrei realizzare un DB che mi permetta di salvare per ogni giorno le ore
dei dipendenti della ditta per la quale lavoro.
Sapete indicarci un DB di esempio o una strada da seguire? Il mio problema
principale sono i giorni non lavorativi: Domeniche ma anche altri.
Ciao e grazie


title: DB e date

author: mino

text:
Roby_velocity wrote:

> Ciao e grazie
per quanto riguarda i sabati e le domuģeniche usa la funzione weekday.
per i giorni festivi puoi usare una tabella apposita dove inserirai i
giorni che ti servono.
ciao
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Help su gruppi

author: MarcoS

text:
Qualcuno può indicarmi come si fa per intercettare il gruppo di lavoro a cui
appartiene un utente ?
Grazie 1000
--
Ciao Marco S.


title: Help su gruppi

author: [MaGri]

text:
"MarcoS" <
marco...@libero.it
> ha scritto nel messaggio
news:9ctqpn$k0b$1...@pinco.nettuno.it...
> Qualcuno può indicarmi come si fa per intercettare il gruppo di lavoro a
cui
> appartiene un utente ?
>
> Grazie 1000
Hai sbagliato Ng.
Cmq tasto destro su risorse di rete -> proprieta' ->scheda identificazione


title: Help su gruppi

text:

questa funzione ritorna i gruppi di appartenenza (separati dalla
virgola) per l'utente specificato.
se non gli passi l'utente prende quello corrente.
Function f_GetGroups(Optional varUser As Variant) As String
On Error GoTo esci_f_GetGroups
    Dim wrk As Workspace
    Dim usr As User
    Dim grp As Group
    Dim strGroups As String
    f_GetGroups = "Errore"
    Set wrk = DBEngine.Workspaces(0)
    wrk.Users.Refresh
    wrk.Groups.Refresh
    If IsMissing(varUser) Then varUser = CurrentUser()
    Set usr = wrk.Users(varUser)
    For Each grp In usr.Groups
        strGroups = strGroups & ", " &
grp.name
    Next grp
    f_GetGroups = Mid$(strGroups, 3)
esci_f_GetGroups:
    Set usr = Nothing
    wrk.Close
End Function
--
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: Help su gruppi

text:
[MaGri] <
mag...@tin.it
> wrote in message 9cujvm$rt2$1...@pinco.nettuno.it...
>
>
> Hai sbagliato Ng.
> Cmq tasto destro su risorse di rete -> proprieta' ->scheda identificazione
>
Io intendevo i gruppi di lavoro creati in Access nel file *.mdw
Perchè dici che ho sbagliato NG ????
--
Ciao Marco S.
http://digilander.iol.it/santimarco


title: Help su gruppi

text:
Federico Luciani <
fluc...@paperino.sitocomune.com
> wrote in message
3AF2D653...@paperino.sitocomune.com...
>
> --
> Federico
Grazie 1000 Federico
--
Ciao Marco S.


title: Help su gruppi

text:
"MarcoS" <
marco...@libero.it
> ha scritto nel messaggio
news:9cukg9$s22$1...@pinco.nettuno.it...

scusa non avevo capito bene... l'ng e' giusto ...
sorry


title: Lanciare Sincronizza"X.mdb" Da "Y.mdb"

author: daniela

text:
E' possibile Laciare Il Comando Sincronizza (Replica) da Un terzo Database
Cioe' Sono Sul DB 1 e devo sincronizzare Db2 con Db 3 che si trovano Gia' In
Locale
Come Faccio
Grazie
--
Posted from
smtp2.libero.it
 [193.70.192.52]
via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: database e web

author: giacomo illocale

text:
Ciao a tutti.......
mi sto cimentando nel tentativo di portare un db in rete......
il db in questione e' access..... ed e' su una piattaforma NT
il sito lo sto facendo con FP
la domanda e'
portando una serie di campi (del db) che sono a loro volta dei link
quando arrivano in rete (non e' possibile vederli in locale)
mi appare tutta la scritta http:\\
pincopallino.it
\casamia.html
come e' possibile far apparire solo la scritta "casamia" come un semplice
link? senza tutto il resto?
penso dipenda da access......
acnhe perche' con FP non si puo' accedere ai risultati in locale
spero di essere stato il piu' chiaro possibile..... anche se no dubito....
grazie in anticipo
ciao ^_^
Giacomo
"...noi siamo in rete ...anche se.... sconnessi...."
illo...@tin.it
www.illocale.it


title: Filtro query su data con iif non funziona

author: Panathos

text:
Buongiorno a tutti/e,
Voglio filtrare i record di una query a seconda del check su una
casella [produzione_oggi] in una maschera.
Se il check è attivo, devo filtrare soltanto la data di oggi (già
predisposta nel campo [dataoggi]; altrimenti devo fare un between fra
altri due controlli.
Il problema è che il codice qui sotto mi restituisce sempre il
recordset vuoto. Le condizioni dell'iif, se messe singolarmente,
filtrano correttamente. Eppure la sintassi del costrutto qui sotto mi
sembra corretta, qualcuno sa dirmi dove sta l'inghippo?
iif ([forms]![menu principale]![produzione_oggi] = 0;
>= [Forms]![Menu Principale]![Dalla_Data] And <=[Forms]![Menu Principale]![Alla_Data];
=[forms]![menu principale]![datainiziale])
grazie,
Panathos


author: wlady

text:
Panathos ha scritto:

se ho capito bene cosa intendi, ti consiglio di cambiare la query ogni
volta che il controllo produzione_oggi viene cambiato inserento due
semplici SELECT con le due condizioni.
ciao


text:
wlady ha scritto:
> > iif ([forms]![menu principale]![produzione_oggi] = 0;
> > >= [Forms]![Menu Principale]![Dalla_Data] And <=[Forms]![Menu Principale]![Alla_Data];
> > =[forms]![menu principale]![datainiziale])
>
> se ho capito bene cosa intendi, ti consiglio di cambiare la query ogni
> volta che il controllo produzione_oggi viene cambiato inserento due
> semplici SELECT con le due condizioni.
Scusa ma non ho capito... dov'è che devo mettere le select?
ciao,
Panathos


author: Sergio MAZZA

text:
"Panathos" <
pana...@gmail.com
> ha scritto nel messaggio news:1149612798....@y43g2000cwc.googlegroups.com...
Buongiorno a tutti/e,



grazie,
Panathos
[risposta]
Scusa ma questa query è origine dati di una maschera/report?
Ciao.
--
Sergio MAZZA


text:
Sergio MAZZA ha scritto:
> iif ([forms]![menu principale]![produzione_oggi] = 0;
> >= [Forms]![Menu Principale]![Dalla_Data] And <=[Forms]![Menu Principale]![Alla_Data];
> =[forms]![menu principale]![datainiziale])
>
> [risposta]
> Scusa ma questa query è origine dati di una maschera/report?
Di un report... perché?
ciao,
Panathos


text:
Panathos ha scritto:

intendo dire che cambierei la query associata al report in apertura
dello stesso leggendo il valore della check produzione_oggi. Altrimenti
puoi impostare una query semplice senza condizioni ed aprire il report
utilizzando il parametro WHERE del comando openreport
ciao


text:
"Panathos" <
pana...@gmail.com
> ha scritto nel messaggio news:1149696578....@j55g2000cwa.googlegroups.com...
Di un report... perché?
ciao,
Panathos
[risposta]
Perché anziché inserire la condizione nella query che è poco "governabile" (errori di input/nomi di controlli) e vincolante (non ti
permette di cambiare regola/campi), puoi utilizzare il parametro CondizioneWhere del metodo OpenReport (quello che utilizzi per
aprire il report) per passargli la condizione qualunque essa sia e per qualunque campo:
es.(nel clic del bottone che apre il report)
'---
Dim strWhere as string
iF Me![produzione_oggi] = 0 then
    strWhere = "[dalla_data] Between #" & Me![Dalla_Data] & "# And #" & Me![Alla_Data] & "#"
else
    strWhere = "[dalla_data] = #" & me![datainiziale] & "#"
end if
docmd.openreport "nomeReport",,,strWhere
'---
Sempre se ho indovinato i nomi dei campi/controlli; ma il senso è quello, vedi help (attivabile con ALT-F11, poi F1) alla voce
Metodo OpenReport...
Ciao.
--
Sergio MAZZA


text:
Sergio MAZZA ha scritto:
> Dim strWhere as string
> iF Me![produzione_oggi] = 0 then
>     strWhere = "[dalla_data] Between #" & Me![Dalla_Data] & "# And #" & Me![Alla_Data] & "#"
> else
>     strWhere = "[dalla_data] = #" & me![datainiziale] & "#"
> end if
> docmd.openreport "nomeReport",,,strWhere
Be', nel mio caso preferivo ragionare a livello di query poiché da
quella escono una serie di altre query che generano report differenti;
comunque ti ringrazio poiché non avevo ancora usato la tecnica che mi
hai suggerito.
> Sempre se ho indovinato i nomi dei campi/controlli; ma il senso è quello, vedi help (attivabile con ALT-F11, poi F1) alla voce
> Metodo OpenReport...
Grazie infinite.
ciao,
Panathos


title: collegamento a file mdb sul web

author: domarr

text:
Ciao a tutti.
Qual'è la strada + semplice e chiara per collegare un file access sul mio
desktop con il database mdb del mio sito in rete, in modo che possa
interagire con i dati in esso contenuti?
Posso trovare degli esempi chiari da quache parte?
Grazie
Michele


title: collegamento a file mdb sul web

author: Alex NSB

text:
> Qual'č la strada + semplice e chiara per collegare un file access sul
> mio desktop con il database mdb del mio sito in rete, in modo che
> possa interagire con i dati in esso contenuti?
La strada piů semplice che mi viene in mente č scaricare sul desktop il
database del sito e usarlo in locale.
Siccome "interagire" č alquanto vago come termine non saprei cos'altro
consigliare.
HTH.
Alessandro


title: collegamento a file mdb sul web

text:
"domarr" <
dom...@iol.it
> ha scritto nel messaggio
news:QwOze.7465$QV1....@twister2.libero.it...

Non esiste un modo.
Il DB in Locale è accessibile da Access stesso, il DB in remoto
solo tramite applicazioni WEB(ad esempio ASP).
La soluzione che ti suggerisce Alex NSB è una alternativa, ma
devi valutare poi se occorre reinviare il DB(Web) modificato
dov'era prima, quindi via FTP....!
Ciao
--
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.mantuanet.it/alessandro.baraldi/
---------------------------------------------------------------------------


title: aprire file DBF

text:
Non riesco ad importare un file DBF III ( creato con visual fox pro )
dentro ad access 2000 ,mi dice : errore 8961
, errore imprevisto driver interno.
Che vuol dire ?
Dovrei aprire per consultazione una tabella dbf .
grazie
e ciao
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: aprire file DBF

text:
"gabriele56" <gdtd...@dhdudnh.pp> wrote in message
news:dagomt$3u7$
1...@news.newsland.it
> Non riesco ad importare un file DBF III ( creato con visual fox pro )
> dentro ad access 2000 ,mi dice : errore 8961
> , errore imprevisto driver interno.
>
> Che vuol dire ?
> Dovrei aprire per consultazione una tabella dbf .
>
> grazie
> e ciao
LEggi questo:
http://www.donkarl.com/it/
Alla sezione 8. Comunicazione la FAQ
8.7 Importare altri formati
Ciao
@ALex
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: aprire file DBF

author: ciroteo

text:
"gabriele56" <gdtd...@dhdudnh.pp> ha scritto nel messaggio
news:dagomt$3u7$1...@news.newsland.it...

meno dottamente ti dico di provare prima ad aprirlo con excel salvare e poi
probabilmente access lo accetterà.


title: Funzione "if"

author: Antonio

text:
Dovrei utilizzare la funzione "IF" per fare la seguente
procedura:
dopo aver aggiornato il campo "articolo" della
maschera "articoli",
se la maschera (a popup) "dettaglio articoli" è aperta, la
funzione deve assegnare al valore del campo "articolo" di
quest'ultima maschera (dettaglio articoli) il valore del
campo "articolo" della maschera "articoli", nel caso non sia
aperta la maschera "dettaglio articoli" la procedura non deve
fare nulla.
Grazie a tutti
--
Postato da Virgilio Newsgroup
http://newsgroup.virgilio.it
Completo come il newsreader, ma senza il newsreader


title: Funzione "if"

author: SunRex

text:
"Antonio" <
antoniof...@virgilio.it
> ha scritto nel messaggio
news:23703666.1121351570580.JavaMail.newsgroup@sc-ng-1...
> Dovrei utilizzare la funzione "IF" per fare la seguente
> procedura:
>
> dopo aver aggiornato il campo "articolo" della
> maschera "articoli",
>
> se la maschera (a popup) "dettaglio articoli" è aperta, la
> funzione deve assegnare al valore del campo "articolo" di
> quest'ultima maschera (dettaglio articoli) il valore del
> campo "articolo" della maschera "articoli", nel caso non sia
> aperta la maschera "dettaglio articoli" la procedura non deve
> fare nulla.
>
> Grazie a tutti
> --
In un modulo
'*************************************************
Public strArticolo as String
Public Function FormIsOpen(FormName As String) As Boolean
   FormIsOpen = (SysCmd(acSysCmdGetObjectState, acForm, FormName) And
acObjStateOpen) <> False
End Function
'*************************************************
Dalla maschera in cui esegui la procedura cioè frmArticoli
'**************************************************************
Private Sub cmdAssegnaArticolo_Click()
strArticolo=Me.Articolo
    IF  FormIsOpen "frnDettaglioArticoli" Then
            Forms!frmDettaglioArticolo.txtArticolo.Value=strArticolo
    Else
        MsgBox"La maschera frmDettaglioArticolo è
chiusa!",vbInformation,"Attenzione"
    End If
End Sub
'*****************************************************************
SunRex


title: Funzione "if"

author: Marco Antonioli

text:
"Antonio" <
antoniof...@virgilio.it
> wrote in message
news:23703666.1121351570580.JavaMail.newsgroup@sc-ng-1
> Dovrei utilizzare la funzione "IF" per fare la seguente
> procedura:
>
> dopo aver aggiornato il campo "articolo" della
> maschera "articoli",
>
> se la maschera (a popup) "dettaglio articoli" è aperta, la
> funzione deve assegnare al valore del campo "articolo" di
> quest'ultima maschera (dettaglio articoli) il valore del
> campo "articolo" della maschera "articoli", nel caso non sia
> aperta la maschera "dettaglio articoli" la procedura non deve
> fare nulla.
SunRex ti ha suggerito un ottimo sistema, anche elegante.
Se vuoi essere più brutale, quando fai riferimento a una maschera
chiusa ottieni un codice di errore (2054? 2540?) che puoi gestire.
Ciao
MArco
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: Funzione "if"

author: Alessandro Cara

text:

Non la ho mai provata ma potrebbe essercene una ancora piu' "brutale"
...
on error resume next
me!codicearticolo = ""  & forms!formspopup!codicearticolo
...
--
a.cara


title: Funzione "if"

text:
"Alessandro Cara" <
al...@puntablunet.it
> wrote in message
news:P0JBe.20075$
b93....@tornado.fastwebnet.it
> Non la ho mai provata ma potrebbe essercene una ancora piu' "brutale"
> ...
> on error resume next
> me!codicearticolo = ""  & forms!formspopup!codicearticolo
> ...
> --
> a.cara
Non esiste limite al peggio !
Perchè "" & forms... e non direttamente forms... ?



title: Funzione "if"

text:
Marco Antonioli wrote:
[cut]
>
> Non esiste limite al peggio !
> Perchè "" & forms... e non direttamente forms... ?
ormai e' diventato un vizio irrinunciabile.
Hai presente quei rompiscatole di NULL che
ogni tanto saltano fuori nei momenti piu'
inaspettati? il mio vizietto li stende tutti.
Insomma e' una nz artigianale, mi viene automatico.
--
a.cara


title: Funzione "if"

author: MA

text:

E come se facessi
Pablitomf = "" & cervello
Ho capito bene?
--
_ _
Ciao
MAssimiliano Amendola
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:
www.donkarl.com/it


title: Funzione "if"

text:
MA wrote:
> Alessandro Cara wrote:
>
>>Marco Antonioli wrote:
>>[cut]
>>
>>>Non esiste limite al peggio !
>>>Perchè "" & forms... e non direttamente forms... ?
>>
>>ormai e' diventato un vizio irrinunciabile.
>>Hai presente quei rompiscatole di NULL che
>>ogni tanto saltano fuori nei momenti piu'
>>inaspettati? il mio vizietto li stende tutti.
>>Insomma e' una nz artigianale, mi viene automatico.
>
>
> E come se facessi
> Pablitomf = "" & cervello
Anche se messa cosi' manca il then (e/e').
yessss. Il cervello di pablitomf e' sempre vuoto ;<)
Tutta'altra cosa e' naturalmente Maurizio nel qual caso
va bene
  Maurizio = cervello
--
a.cara


title: Funzione "if"

text:
Alessandro Cara wrote:
> MA wrote:
>> Alessandro Cara wrote:
>>
>>> Marco Antonioli wrote:
>>> [cut]
>>>
>>>> Non esiste limite al peggio !
>>>> Perchè "" & forms... e non direttamente forms... ?
>>>
>>> ormai e' diventato un vizio irrinunciabile.
>>> Hai presente quei rompiscatole di NULL che
>>> ogni tanto saltano fuori nei momenti piu'
>>> inaspettati? il mio vizietto li stende tutti.
>>> Insomma e' una nz artigianale, mi viene automatico.
>>
>>
>> E come se facessi
>> Pablitomf = "" & cervello
>
>
> Anche se messa cosi' manca il then (e/e').
> yessss. Il cervello di pablitomf e' sempre vuoto ;<)
ROTFL
> Tutta'altra cosa e' naturalmente Maurizio nel qual caso
> va bene
>   Maurizio = cervello
Ah questi salvataggi in calcio d'angolo...



title: Query...forse inizio a capirci qlc..però AIUTOOO!!!

author: Luca

text:
.....forse inizio a capirci qlc........
ho creato una tab principale e varie query con dei "componenti" di quella
tab
ad esempio ho una tabella principale con NOMI ; COGNOMI ; CITTA poi ho
creato 3 query incrociate (non sò se è il metodo migliore, ma funziona...(se
hai un'idea migliore....))
la 1° query mi dà un'elenco di TUTTI i NOMI SENZA doppi (di seguito però
mette un riassunto, cioè quanti LUCA a MO, quanti FABIO a BO....ecc... che
non mi servono e NON uso , ma non ho capito se e come si possono
eliminare..??)
la 2° query mi dà un'elenco di TUTTI i COGNOMI SENZA doppi (di seguito però
mette un riassunto, cioè quanti ROSSI a MO, quanti VERDI a BO....ecc... che
non mi servono e NON uso , ma non ho capito se e come si possono
eliminare..??)
la 3° query mi dà un'elenco di TUTTE le CITTA SENZA doppi (di seguito però
mette un riassunto, ...............eliminare..??)
Sono poi riuscito a legare la 1° colonna (quella che veramente mi interessa)
di ogni query con un DBCOMBO in VB che mi propone ad ogni apertura TUTTO
SENZA DOPPI (perfetto!!) c'è però un problema:
Se inserisco ad es. GIACOMO nei nomi per la 1° volta, sino a che non clikko
(aggiorno) la query NOMI, GIACOMO NON appare...così anche x i COGNOMI e le
CITTA................
ora la domanda è questa: Qual'è il comando VB o VBA (spero =) che mi faccia
"aggiornare" le 3 query premento un bottone (crendo "un'evento"...si dice
così vero?)
e poi posso e come posso RISPARMIARE spazio eleiminando i riassunti delle
query di cui sopra?
molte, molte, molte onorevoli grazie
^__^ Luca
--
(se non ti dispiace, rispondi
anche con e.mail)
--------------------------------------------
molte onorevoli grazie a Voi
^____^
Luca


author: goose

text:
Luca <
anonimi....@tin.it
> wrote in message
news:5S7H6.10660$Hp1.2...@news2.tin.it...
> .....forse inizio a capirci qlc........
[cut]
> ora la domanda č questa: Qual'č il comando VB o VBA (spero =) che mi
faccia
> "aggiornare" le 3 query premento un bottone (crendo "un'evento"...si dice
> cosě vero?)
prova con:
me.refresh nell'evento "dopo aggiornamento" della combo box
> e poi posso e come posso RISPARMIARE spazio eleiminando i riassunti delle
> query di cui sopra?
[cut]
per quanto riguarda le query:
io farei una query di selezione della tabella con il singolo campo che ti
interessa (es. COGNOME).
Clicchi il pulsante sommatoria presente nella toolbar e il sistema ti
raggruppa i totali in base al campo che hai selezionato.
Alla fine non c'č nessun riassunto.
Tieni conto che cmq puoi evitare di crearti queste query inserendo una
semplice riga in sql nel record source della combo box.
> (se non ti dispiace, rispondi
> anche con e.mail)
> --------------------------------------------
> molte onorevoli grazie a Voi
> ^____^
>
> Luca
>
spero di esserti stato di aiuto
un saluto
Goose


author: Roberto dal portatile

text:
"Luca" <
anonimi....@tin.it
> ha scritto nel messaggio
news:5S7H6.10660$Hp1.2...@news2.tin.it...

Scusami ma nel tuo thread precedente che aveva come oggetto "query:
aiuto!!!!!" si parlava di tubi e dimensione tubi; si parlava di creare una
tabella con i risultati di una query. In questo messaggio si parla di dati
anagrafici di una persona. Forse è bene che ci spieghi cosa effettivamente
devi ottenere e su che oggetto del database vuoi visalizzarlo. Se non c'è
chiarezza su cosa vuoi ottenere è difficile darti un aiuto.
Inoltre, cosa intendi per "query incrociate"?
Mi dispiace ma non sono d'accordo a rispondere anche al tuo indirizzo
e-mail.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


text:
"Roberto dal portatile" <
r.ma...@libero.it
> ha scritto nel messaggio
news:SybH6.323$0t6....@news.infostrada.it...

come ho già detto stò facendo alcuni esperimenti x capirci qlc. : in
quest'ultimo ho usato l'esempio dei nomi
per ridurre e semplificarmi le prove senza "rovinare" l'originale
"TUBI"........
Forse è bene che ci spieghi cosa effettivamente
> devi ottenere e su che oggetto del database vuoi visalizzarlo. Se non c'è
> chiarezza su cosa vuoi ottenere è difficile darti un aiuto.
> Inoltre, cosa intendi per "query incrociate"?
intendevo query a creazione guidata a campi incrociati
> Mi dispiace ma non sono d'accordo a rispondere anche al tuo indirizzo
> e-mail.
..........sob......
và benissimo anche nel NG,
> ora la domanda è questa: Qual'è il comando VB o VBA (spero =) che mi
faccia
> "aggiornare" le 3 query premento un bottone (crendo "un'evento"...si dice
> così vero?)
> e poi posso e come posso RISPARMIARE spazio eleiminando i riassunti delle
> query di cui sopra?
grazie 1.000 Luca


author: Roberto da casa

text:
"Luca" <
anonimi....@tin.it
> ha scritto nel messaggio
news:UPsH6.4167$_r2....@news2.tin.it...
[SUPERCUT]
Visto che in questo momento per te la cosa importante è capire, per scopi
didattici, come sia possibile ottenere un certo risultato, ricominciamo da
capo.
Ipotizziamo che esista una tabella, chiamata Tabella1, che abbia la seguente
struttura:
ID                            Contatore e chiave primaria
Nome                       Testo
Cognome                  Testo
Città                         Testo
Ipotizziamo che il tuo scopo sia quello di avere la lista di tutti i nomi
usati nei vari record di Tabella1 e che in questa lista un determinato nome
deve comparire una sola volta.
Ipotizziamo che vuoi che la lista sia contenuta in una query basata su
Tabella1.
Tra i tipi di query possibili, cominciamo col dire che quella a campi
incrociati non fa al caso tuo.
A mio avviso puoi ottenere il risultato cercato o con una query di
raggruppamento che abbia il seguente codice SQL:
SELECT Tabella1.Nome
FROM Tabella1
GROUP BY Tabella1.Nome;
oppure con una normale query di selezione che abbia la proprietà Valori
univoci impostata a Si; questo potrebbe essere il suo codice SQL:
SELECT DISTINCT Tabella1.Nome
FROM Tabella1;
Naturalmente per ottenere la lista su Cognome o Città è sufficiente cambiare
il nome del campo nella query.



title: Cerca duplicati nel campo selezionato

author: Andrea Battistini

text:
Con l'aiuto di Alessandro Baraldi mi sono crato 2 ListBox
Nella prima chiamata ListBoxTabelle
visualizzo le tabelle presenti nel database utilizzando:
SELECT MsysObjects.Name FROM MsysObjects WHERE (((Left$([Name],4))<>"Msys")
AND ((MsysObjects.Type)=1)) ORDER BY MsysObjects.Name;
Nell'evento Dopo aggionamneto inserisco l'espressione:
Me.ListBoxCampi.RowSource = Me.ListBoxTabelle
Me.ListBoxCampi.Requery
Nella seconda chiamata ListBoxCampi
visualizzo tutti i campi dela tabella selezionata nella ListBoxTabelle
Tipo origine riga.....Elenco campi
Ora vorrei creare una terza ListBox chiamata ListBoxRecord dove poter
visualizzare i recond duplicati presenti nel campo selezionato nella seconda
ListBox.
Grazie a tutti per l'aiuto ed in particolare ad Alex
Andrea


title: Cerca duplicati nel campo selezionato

text:
"Andrea Battistini" <
andrea.b...@tele2.it
> ha scritto nel messaggio
news:mgZPg.265$Rj6...@nntpserver.swip.net...

Creati, con i wizard, una query ricerca duplicati e associala alla
listbox...
Ciao.
--
Sergio MAZZA


title: ListBox o TextBox?

author: Salvatore De Patto

text:
Vi chiedo un piccolo aiuto.
In una maschera ho la necessità formare un codice di registrazione composto
da due campi normali e da un progressivo.
Il problema che vi pongo riguarda il progressivo.
In pratica per trovare il progressivo ho messo sotto una listbox una query
che mi conta tutti i record presenti per una determinata tipologia di
prodotti. Dopodiché so che sommando 1 al risultato della query avrò il
risultato giusto.
Il tutto, anche se magari sbagliato nella forma, è giusto!
Il problema è purtroppo che essendo il risultato ottenuto in una listbox,
per utilizzarlo in alcuni calcoli io devo per forza accertarmi che quel
valore sia selezionato, altrimenti il .value della listbozx è null.
Chi mi risponde è un mito! grazie!
Salvatore De Patto


title: ListBox o TextBox?

author: Carlo Costarella

text:
"Salvatore De Patto" <
sdep...@interfree.it
> ha scritto nel messaggio
news:3e274...@news.dada.it...

Potresti provare a mettere lo stesso valore che inserisci nella listbox
anche in un controllo nascosto della form e fare riferimento a questo.
Lo stesso quando selezioni il record dalla listbox.
Mi viene comunque il dubbio di non aver centrato l'argomento.
Ciao, Carlo


title: ListBox o TextBox?

author: Maurizio Borrelli

text:
> "Salvatore De Patto" <
sdep...@interfree.it
> ha scritto nel messaggio
> news:3e274...@news.dada.it...
[...]
> In una maschera ho la necessità formare un codice di registrazione
> composto da due campi normali e da un progressivo.
> Il problema che vi pongo riguarda il progressivo.
> In pratica per trovare il progressivo ho messo sotto una listbox una query
> che mi conta tutti i record presenti per una determinata tipologia di
> prodotti. Dopodiché so che sommando 1 al risultato della query avrò il
> risultato giusto.
> Il tutto, anche se magari sbagliato nella forma, è giusto!
> Il problema è purtroppo che essendo il risultato ottenuto in una listbox,
> per utilizzarlo in alcuni calcoli io devo per forza accertarmi che quel
> valore sia selezionato, altrimenti il .value della listbozx è null.
    Scrivi: "devo per forza accertarmi che quel valore sia selezionato"... A
quale *quel* valore ti riferisci? E chi dovrebbe selezionarlo? Perche'
immagino che nella tua Casella di riepilogo siano elencati piu' valori. Qual
e' quello giusto? A parte questo, consulta la guida a proposito della
proprieta' Column delle Caselle di riepilogo. Poi... personalmente rivedrei
il tutto in modo da far fare il "lavoro" ad una funzione che restituisca il
risultato che ti interessa. Visto la tipologia del compito da svolgere e'
sicuramente la soluzione piu' opportuna.
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------


title: Campi maschera disabilitati

author: Francesco Salvagnini

text:
Ciao a tutti !!
Piattaforma windows xp e Access (mitico) 2003.
Ho una maschera la cui origine è composta da due tabelle legate tra
loro (A e B). Fin qui tutto bene. Problema: se all'origine della
maschera AGGIUNGO la tabella C e la lego alla A, i campi della
maschera non sono più modificabili, né i record si possono più
salvare. C'è una soluzione a questa limitazione? Grazie 1000!!! ; )


title: Campi maschera disabilitati

author: Antonio Biso

text:
"Francesco Salvagnini" <
animein...@gmail.com
> ha scritto nel messaggio
news:4b1121e4-b6b1-4f77...@f20g2000yqi.googlegroups.com...
Ciao a tutti !!
Piattaforma windows xp e Access (mitico) 2003.
Ho una maschera la cui origine č composta da due tabelle legate tra
loro (A e B). Fin qui tutto bene. Problema: se all'origine della
maschera AGGIUNGO la tabella C e la lego alla A, i campi della
maschera non sono piů modificabili, né i record si possono piů
salvare. C'č una soluzione a questa limitazione? Grazie 1000!!! ; )
probabilmente hai una struttura uno a molti
Antonio


title: Campi maschera disabilitati

text:
Infatti.. la relazione tra tabelle di origine della maschera era uno a
molti.
Ho risolto utilizzando la funzione DLookup su evento Corrente della
maschera.
Grazie!


title: ControlTipText visualizzarla su più righe è possibile?

text:
č possibile?
Grazie.


text:
"Simba883" <
simb...@libero.it
> ha scritto nel messaggio
news:ch0h5m$1ad$1...@lacerta.tiscalinet.it...
> è possibile?
>
> Grazie.
>
Ciao.
Certo che sì.
Da codice:
Private Sub MioControllo_MouseMove(Button As Integer, Shift As Integer, X As
Single, Y As Single)
Me.MioControllo.ControlTipText = "Prima riga" & vbCrLf & "Seconda riga"
End Sub
Direttamente nella proprietà "Testo descrizione controllo" scrivi la prima
riga poi ctrl + invio per andare a capo e scrivi la seconda riga. Oppure
posizionato sulla proprietà premi Maiuscolo + F2 e apri la finestra zoom.
Qui per andare a capo userai ctrl + Invio.
Ciao, Carlo


title: Stampa bollettini postali

author: Kaio

text:
Ciao a tutti
dovrei stampare su dei modelli di bollettino postale
del formato doppio ovvero quello in cui sono presenti due bollettini nella
stessa pagina.
i dati sono sono disponibili in una tabella temporanea
vorrei capire la strada migliore per poter stampare due record della tabella
sulla stessa pagiona
Avete qualche consiglio su come procedere?
ringrazio in anticipo per l'attenzione
Carlo Ve


title: Stampa bollettini postali

author: Pablitomf

text:
Kaio ha scritto:
> Ciao a tutti




Query con num. di record da restituire impostato a 2 e su questo la stampa?
--
Pablitomf
Chi la dura la vince ;-)
Voglia di lavorar Saltame addosso, lavora babbo mio che io non posso.
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Stampa bollettini postali

text:
Pablitomf ha scritto:
> Kaio ha scritto:
> > Ciao a tutti
> > dovrei stampare su dei modelli di bollettino postale
> > del formato doppio ovvero quello in cui sono presenti due bollettini nella
> > stessa pagina.
> > i dati sono sono disponibili in una tabella temporanea
> > vorrei capire la strada migliore per poter stampare due record della
tabella
> > sulla stessa pagiona
> > Avete qualche consiglio su come procedere?
> > ringrazio in anticipo per l'attenzione
> > Carlo Ve
> Query con num. di record da restituire impostato a 2 e su questo la stampa?
Ovviamente con campo di controllo stampa diverso tra quelli stampati e
quelli da stampare...  così ogni volta la query ti darà records da
stampare non commettendo errori di ristampa



title: Stampa bollettini postali

text:
> > > dovrei stampare su dei modelli di bollettino postale
> > > del formato doppio ovvero quello in cui sono presenti due bollettini
nella
> > > stessa pagina.
>
> > > i dati sono sono disponibili in una tabella temporanea
> > > vorrei capire la strada migliore per poter stampare due record della
> tabella
> > > sulla stessa pagiona
>
> > > Avete qualche consiglio su come procedere?
>
> > > ringrazio in anticipo per l'attenzione
> > > Carlo Ve
>
>
> > Query con num. di record da restituire impostato a 2 e su questo la
stampa?
Dovendo stampare tutti i bollettini memorizzati nella tabella temporanea
credo mi riesca  difficile applicare la qry impostata a soli 2 record
> Ovviamente con campo di controllo stampa diverso tra quelli stampati e
> quelli da stampare...  così ogni volta la query ti darà records da
> stampare non commettendo errori di ristampa
qui non riesco a seguirti
porta pazienza e prova a rispiegarmelo
Carlo Ve
 Chi la dura la vince ;-)
 Se tutti i bechi portasse un lampion, misericordia che illuminazion



title: Nuovo Software per tutti ...

author: Giovanni Albertone

text:
On 15 Mar 2000 11:24:34 GMT,
elm...@elmind.com
 wrote:
>Non perdetevi NewsScan 2 : l'unico software Italiano per il vostro Internet Business
E' arrivato il testa a punta del giorno. Oltretutto sei pure un
coglione perche' pubblicizzi su un newsgroup uno strumento per aiutare
chi vuole fare dello spamming, che i newsgroup non li legge mai o
quasi.
In aggiunta io citerei sul tuo sito che gli "Internet Business" come
li chiami tu che usano il tuo software sarebbero cornuti e mazziati,
cornuti per i soldi che danno a te (buttati) e mazziati per la
pubblicita' negativa che si farebbero usando gli indirizzi
raggranellati qua e la'.
--
Ciao,
Giovanni


title: Riposto domanda: disabilitare maschera

text:
Ciao a tutti,
ho creato un a maschera principale con delle sottomaschere collegate
alla prima, il tutto in una struttura a schede. Io vorrei che durante
pla digitazione in base alla risposta possano essere disabilitate
oppure no la digitazione.
Es.
Maschera1 - Campo1 - Campo2- ecc.....
Sottomaschera1  - Campo1 (SI/No)
Se     Sottomaschera.Campo1 = "No"
	blocco digitazione Maschera1-Sottomaschera1
Altrimenti si può continuare a digitare
Come si può fare una cosa del genere.
Grazie
KiF


title: Riposto domanda: disabilitare maschera

author: George

text:
<
kif...@tiscali.it
> ha scritto nel messaggio
news:ac3plvch232k7lsdj...@4ax.com...

Lo pui fare mettendo una check box nella maschera principale.
Nell'evento dopo aggiornamento metti del codice stile questo:
me.<sottomaschera>.enabled = (me.<checkbox> = true)
Ciao.


title: Riposto domanda: disabilitare maschera

text:
On Mon, 8 Sep 2003 16:20:58 +0200, "George"
<
giorgio.ben...@libero.it
> wrote:
>Lo pui fare mettendo una check box nella maschera principale.
>Nell'evento dopo aggiornamento metti del codice stile questo:
>
>me.<sottomaschera>.enabled = (me.<checkbox> = true)
>
>Ciao.
Grazie.
Ora mi trovo nella situazione in cui disabilito le maschere in base
allascelta effettuata dall'utente mi ritrovo a combattere con i
setfocus, c'è qualche trucco per ovviare a questi problemi.
Visto che ci sono vorrei chiudere anche se qualcuno divoi ha creato un
file excel che collegato al db access aggiornasse tale db
automaticamente. Come si può fare? Ci sono esempi su qualche sito?
Grazie
KiF
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>


title: Riposto domanda: disabilitare maschera

text:
<
kif...@tiscali.it
> ha scritto nel messaggio
news:f2brlvstqdvph47qf...@4ax.com...
> On Mon, 8 Sep 2003 16:20:58 +0200, "George"
> <
giorgio.ben...@libero.it
> wrote:
> >Lo pui fare mettendo una check box nella maschera principale.
> >Nell'evento dopo aggiornamento metti del codice stile questo:
> >
> >me.<sottomaschera>.enabled = (me.<checkbox> = true)
> >
> >Ciao.
>
> Grazie.
>
> Ora mi trovo nella situazione in cui disabilito le maschere in base
> allascelta effettuata dall'utente mi ritrovo a combattere con i
> setfocus, c'è qualche trucco per ovviare a questi problemi.
Non ho capito il problema, spiega meglio.
Credo che con SetFocus tu possa mettere il focus dove vuoi no?
> Visto che ci sono vorrei chiudere anche se qualcuno divoi ha creato un
> file excel che collegato al db access aggiornasse tale db
> automaticamente. Come si può fare? Ci sono esempi su qualche sito?
Cioè?
Avere un db in cui una tabella venga aggiornata da un foglio Excel?
Fai il foglio Excel, collega il foglio come tabella in Access e sei a posto:
se inserisci record in access aggiorni il foglio, se aggiorni il foglio
avrai le modifiche in access...
E' questo che ti serve?


title: Chi mi dà una mano con una query?

author: Bruno Campanini

text:
https://1drv.ms/u/s!AvTaMfd5-b2o1Co1Uzv6sWcoP1bv?e=FJIw5E

Bruno


title: Chi mi dà una mano con una query?

author: Ammammata

text:
Il giorno Wed 13 Jan 2021 10:08:26p, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rtnng7$8pl$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

>
https://1drv.ms/u/s!AvTaMfd5-b2o1Co1Uzv6sWcoP1bv?e=FJIw5E

mi manca acrobat.tlb, è necessaria per forza?
dopo numerosi OK arrivo comunque alla query:

SELECT TMP.F1, Sum(TMP.S1) AS S1, Sum(TMP.S2) AS S2, Sum(TMP.S3) AS S3,
Sum(TMP.S4) AS S4, Sum(TMP.S5) AS S5, [S1]+[S2]+[S3]+[S4]+[S5] AS Totali
FROM TMP
GROUP BY TMP.F1;

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


title: Chi mi dà una mano con una query?

text:
Il giorno Wed 13 Jan 2021 10:08:26p, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rtnng7$8pl$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

>
https://1drv.ms/u/s!AvTaMfd5-b2o1Co1Uzv6sWcoP1bv?e=FJIw5E

>

SELECT top 3
[%$##@_Alias].f1, Sum([%$##@_Alias].f2) AS SumOff2, Sum([%$##@_Alias].f3)
AS SumOff3, Sum([%$##@_Alias].f4) AS SumOff4, Sum([%$##@_Alias].f5) AS
SumOff5, Sum([%$##@_Alias].f6) AS SumOff6,
Sum([%$##@_Alias].f2)+Sum([%$##@_Alias].f3)+Sum([%$##@_Alias].f4)+Sum([%$##
@_Alias].f5)+Sum([%$##@_Alias].f6) AS SumTotal INTO aaa
FROM (SELECT * from 1_gen union
SELECT * from 2_feb union
SELECT * from 3_mar union
SELECT * from 4_apr union
SELECT * from 5_mag union
SELECT * from 6_giu union
SELECT * from 7_lug union
SELECT * from 8_ago union
SELECT * from 9_set union
SELECT * from 10_ott union
SELECT * from 11_nov union
SELECT * from 12_dic

)  AS [%$##@_Alias]
GROUP BY [%$##@_Alias].f1
ORDER BY
Sum([%$##@_Alias].f2)+Sum([%$##@_Alias].f3)+Sum([%$##@_Alias].f4)+Sum([%$##
@_Alias].f5)+Sum([%$##@_Alias].f6) DESC;

f1	SumOff2	SumOff3	SumOff4	SumOff5	SumOff6	SumTotal
X-18	1291	1349	1410	1155	1196	6401
X-45	1217	1269	1049	1394	1428	6357
X-75	1234	1198	1297	1170	1059	5958



title: Chi mi dà una mano con una query?

text:
Ammammata explained :
> Il giorno Wed 13 Jan 2021 10:08:26p, *Bruno Campanini* ha inviato su
> it.comp.appl.access il messaggio news:rtnng7$8pl$
1...@gioia.aioe.org
. Vediamo
> cosa ha scritto:
>
>>
https://1drv.ms/u/s!AvTaMfd5-b2o1Co1Uzv6sWcoP1bv?e=FJIw5E

>
> mi manca acrobat.tlb, è necessaria per forza?
> dopo numerosi OK arrivo comunque alla query:
Non so cosa sia acrobat.tlb... ma non serve.

> SELECT TMP.F1, Sum(TMP.S1) AS S1, Sum(TMP.S2) AS S2, Sum(TMP.S3) AS S3,
> Sum(TMP.S4) AS S4, Sum(TMP.S5) AS S5, [S1]+[S2]+[S3]+[S4]+[S5] AS Totali
> FROM TMP
> GROUP BY TMP.F1;

Questa dà il risultato esatto... ma la tabella TMP la devi creare tu,
non leggere quella che ho creato io.

Bruno


title: Chi mi dà una mano con una query?

text:
on 14-01-21, Ammammata supposed :

Questa query è di una razza che non conosco...

> f1	SumOff2	SumOff3	SumOff4	SumOff5	SumOff6	SumTotal
> X-18	1291	1349	1410	1155	1196	6401
> X-45	1217	1269	1049	1394	1428	6357
> X-75	1234	1198	1297	1170	1059	5958

... e il risultato non è esatto.

Bruno


title: Chi mi dà una mano con una query?

text:
Il giorno Thu 14 Jan 2021 04:20:53p, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rtpngj$1o5k$
1...@gioia.aioe.org
.
Vediamo cosa ha scritto:

> Questa query č di una razza che non conosco...

una parte centrale tra parentesi concatena le 12 tabelle

il risultato viene raggruppato dalla parte "fuori", ordinato dal piů grande
al piů piccolo, limitato ai primi tre record

nota che [%$##@_Alias] lo ha messo in automatico Access, io avevo messo un
nome di tabella temporanea aaa

>
>> f1     SumOff2     SumOff3     SumOff4     SumOff5     SumOff6
>> SumTotal X-18     1291     1349     1410     1155     1196     6401
>> X-45     1217     1269     1049     1394     1428     6357
>> X-75     1234     1198     1297     1170     1059     5958
>
> ... e il risultato non č esatto.
>

sicuro?

ho messo le tabelle in excel e ho lo stesso risultato...



title: Chi mi dà una mano con una query?

text:
Il giorno Thu 14 Jan 2021 04:42:56p, *Ammammata* ha inviato su
it.comp.appl.access il messaggio
news:XnsACB2AA0D32D2Eam...@127.0.0.1
. Vediamo cosa ha
scritto:

>
> ho messo le tabelle in excel e ho lo stesso risultato...
>
>

o forse non ho capito la domanda, vedi:

"IL venditore vuole premiare il Cliente che nei 12 mesi ha effettuato  una
o più ordinazioni per ciascun mese."

intendi dire che deve aver fatto ALMENO una ordinazione OGNI mese?

testo originale:
Le tabelle dei mesi dell'anno 1_GEN, 2_FEB, ... 12_DIC contengono ciascuna
100 record di 6 campi:
F1           - il codice cliente
S1... S5 - il fatturato mensile di 5 prodotti.

IL venditore vuole premiare il Cliente che nei 12 mesi ha effettuato  una o
più ordinazioni per ciascun mese.
Se rispondono alla condizione più clienti, il premio andrà a quello col
maggior fatturato.

La tabella TMP mostra il risultato compreso il totale fatturato annuale
(tale ultimo dato non è importante, si può benissimo rilevare, definita la
tabella, con una semplice query).

Io ho risolto il problema in 2 modi che non mi convincono, perché mi sembra
impossibile non si possa ottenere il risultato con un'UNICA semplice (o
complessa) query.

SENZA MODIFICARE IL CONTENUTO DELLE 12 TABELLE MENSILI



title: Chi mi dà una mano con una query?

text:
Il giorno Thu 14 Jan 2021 04:47:24p, *Ammammata* ha inviato su
it.comp.appl.access il messaggio
news:XnsACB2AACF16CD1am...@127.0.0.1
. Vediamo cosa ha
scritto:

> "IL venditore vuole premiare il Cliente che nei 12 mesi ha effettuato
> una o più ordinazioni per ciascun mese."
>
> intendi dire che deve aver fatto ALMENO una ordinazione OGNI mese?
>
>

allora concordo con te :)

mi sembrava una domanda fin troppo semplice...



title: Chi mi dà una mano con una query?

text:
Ammammata explained on 14-01-21 :
> Il giorno Thu 14 Jan 2021 04:47:24p, *Ammammata* ha inviato su
> it.comp.appl.access il messaggio
>
news:XnsACB2AACF16CD1am...@127.0.0.1
. Vediamo cosa ha
> scritto:
>
>> "IL venditore vuole premiare il Cliente che nei 12 mesi ha effettuato
>> una o più ordinazioni per ciascun mese."
>>
>> intendi dire che deve aver fatto ALMENO una ordinazione OGNI mese?
>>
>>
>
> allora concordo con te :)
>
> mi sembrava una domanda fin troppo semplice...

Sì, la difficoltà è tutta lì, ma non solo: se qualcuno ha più di un
fatturato al mese, ne vanno prese le somme dei prodotti.

Bruno


title: Chi mi dà una mano con una query?

text:
Il giorno Thu 14 Jan 2021 05:07:33p, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rtpq84$17lq$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

>>> intendi dire che deve aver fatto ALMENO una ordinazione OGNI mese?
>>>
>>>
>>
>> allora concordo con te :)
>>
>> mi sembrava una domanda fin troppo semplice...
>
> Sì, la difficoltà è tutta lì, ma non solo: se qualcuno ha più di un
> fatturato al mese, ne vanno prese le somme dei prodotti.
>

allora, l'idea è questa:

unisco le tabelle aggiungendo un campo M che vale 1 per gennaio, 2 per
febbraio, 4 per marzo, 8 per aprile, etc etc 2048 per dicembre

poi raggruppo per F1 sommando i campi f2-f6 e prendendo il MAX di M

ottengo, per X1 (esempio):

f1	MM	S2	S3	S4	S5	S6	ST
X-1	1	15	38	19	98	88	258
X-1	2	161	136	96	48	118	559
X-1	16	125	91	171	255	172	814
X-1	32	256	249	39	178	250	972
X-1	64	144	81	154	24	38	441
X-1	256	192	161	111	143	133	740
X-1	512	94	143	99	81	105	522
X-1	1024	72	54	112	165	123	526
X-1	2048	136	158	246	134	192	866

poi raggruppo ancora per F1 sommando MM, S2, S3, etc

alla fine filtro per MM = 4095, cioè ci sono tutti i mesi

ordino discendente per il totale
prendo i primi 3

il problema col mio access 2010 è che non accetta una "action query" come
origine dati di una ulteriore query

forse sbaglio qualcosa ma l'idea è giusta

in excel:

X-27 Total	4095	1043	1144	1138	985	1007	5317
X-39 Total	4095	1254	974	1084	1240	1110	5662
X-62 Total	4095	1041	960	867	980	1170	5018
X-58 Total	4094	1161	1107	1218	1109	1204	5799
X-65 Total	4091	715	736	653	607	607	3318
X-48 Total	4090	778	746	706	744	618	3592
X-33 Total	4087	710	661	723	859	860	3813
X-10 Total	4085	807	777	827	718	639	3768

TMP:

F1	S1	S2	S3	S4	S5	Totali
X-27	1043	1144	1138	985	1007	5317
X-39	1254	974	1084	1240	1110	5662
X-62	1041	960	867	980	1170	5018



title: Chi mi dà una mano con una query?

text:
Ammammata was thinking very hard :

Perché hai preso i primi tre? in base a quale criterio?
Essi possono dare un risultato corretto anche soltanto
incidentalmente.
Io ci ho speso i due giorni di Natale poi per l'Epifania ho
fatto qualche limatura.
Mandami l'intero codice, quello che premendo un pulsante, senz'altra
preparazione, produce la tabella TMP.

Ti invio altra copia con differenti dati e senza risultato.
Con ciò non voglio dire che stai bluffando, solo che conoscendo il
risultato, da un insieme di possibilità non hai potuto evitare di
scegliere quella giusta.
Se poi mi sbaglio io, mi genufleggo pubblicamente, ti copro di scuse
e ti nomino cavaliere del Graal per le query.

https://1drv.ms/u/s!AvTaMfd5-b2o1Co1Uzv6sWcoP1bv?e=o4tQAP

Bruno


title: Chi mi dà una mano con una query?

text:
Il giorno Fri 15 Jan 2021 12:34:18a, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rtqkdo$1elr$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

> Mandami l'intero codice, quello che premendo un pulsante, senz'altra
> preparazione, produce la tabella TMP.
>

premesso che il codice (in Access) contiua a darmi lo stesso problema (*),
ecco la tabella che ottengo in Excel raggruppando e sommando

questa volta ci sono 4 personaggi che hanno fatto il pieno

f1	MM	S2	S3	S4	S5	S6	ST
X-27 Total	4095	984	1177	1104	909	990	5164
X-37 Total	4095	701	1140	1044	1184	831	4900
X-46 Total	4095	1343	1370	1135	1333	1210	6391
X-74 Total	4095	1371	1265	1225	981	1685	6527
X-7 Total	4093	603	722	763	887	862	3837
X-60 Total	4087	1229	1266	1503	1225	1049	6272
X-61 Total	4087	954	1126	592	899	943	4514
X-58 Total	4071	1103	1472	1071	1068	1126	5840
X-59 Total	4071	1245	1195	1127	1015	1075	5657
X-44 Total	4063	1185	716	1028	994	1036	4959
X-3 Total	4055	1150	843	1090	825	949	4857
X-15 Total	4045	701	703	875	830	856	3965
X-26 Total	4040	427	524	533	727	712	2923
X-25 Total	4029	1316	1039	1157	1206	1347	6065
X-49 Total	4018	529	826	775	868	877	3875
X-34 Total	3983	980	1017	891	1134	740	4762
X-9 Total	3967	479	792	693	708	656	3328
X-16 Total	3966	730	1198	704	891	680	4203
X-72 Total	3963	804	692	614	713	670	3493
X-33 Total	3919	738	854	808	996	828	4224
X-1 Total	3833	775	486	570	635	932	3398
X-56 Total	3830	934	1023	1218	945	761	4881
X-13 Total	3828	845	791	745	614	670	3665
X-47 Total	3810	557	682	477	545	743	3004
X-11 Total	3798	752	634	602	541	866	3395
X-12 Total	3775	835	881	850	678	734	3978
X-20 Total	3771	641	633	742	705	770	3491
X-53 Total	3759	874	879	829	734	699	4015
X-43 Total	3727	894	730	698	490	748	3560
X-45 Total	3694	556	491	601	570	588	2806
X-23 Total	3663	586	619	566	609	594	2974
X-70 Total	3640	524	494	555	395	542	2510
X-62 Total	3583	841	1062	984	845	891	4623
X-17 Total	3573	809	824	828	688	954	4103
X-29 Total	3563	631	649	757	735	730	3502
X-18 Total	3551	806	838	1012	895	912	4463
X-65 Total	3545	617	622	1030	606	554	3429
X-19 Total	3511	521	462	808	693	625	3109
X-35 Total	3487	777	704	789	949	731	3950
X-51 Total	3434	274	600	437	622	456	2389
X-22 Total	3355	541	402	654	486	507	2590
X-36 Total	3326	587	870	625	702	833	3617
X-57 Total	3293	944	833	688	901	764	4130
X-30 Total	3263	430	463	490	463	494	2340
X-32 Total	3159	855	972	890	1045	1025	4787
X-71 Total	3070	709	684	807	731	1125	4056
X-5 Total	3063	993	867	1056	1011	1051	4978
X-28 Total	3055	860	840	682	981	451	3814
X-54 Total	3051	937	669	696	704	729	3735
X-2 Total	2973	826	857	957	817	1150	4607
X-75 Total	2957	509	532	511	293	463	2308
X-4 Total	2923	806	1069	768	1194	1057	4894
X-39 Total	2781	945	542	990	951	941	4369
X-67 Total	2747	521	538	743	580	651	3033
X-42 Total	2682	889	1082	695	697	876	4239
X-6 Total	2295	630	650	706	752	704	3442
X-55 Total	2238	546	707	415	348	671	2687

(*) vorrei provare in MS SQL ma oggi sono un po' preso, il test potrebbe
essere stasera (a casa)



title: Chi mi dà una mano con una query?

text:
Ammammata was thinking very hard :
> Il giorno Fri 15 Jan 2021 12:34:18a, *Bruno Campanini* ha inviato su
> it.comp.appl.access il messaggio news:rtqkdo$1elr$
1...@gioia.aioe.org
. Vediamo
> cosa ha scritto:
>
>> Mandami l'intero codice, quello che premendo un pulsante, senz'altra
>> preparazione, produce la tabella TMP.
>>
>
> premesso che il codice (in Access) contiua a darmi lo stesso problema (*),
> ecco la tabella che ottengo in Excel raggruppando e sommando
>
> questa volta ci sono 4 personaggi che hanno fatto il pieno
>
> f1	MM	S2	S3	S4	S5	S6	ST
> X-27 Total	4095	984	1177	1104	909	990	5164
> X-37 Total	4095	701	1140	1044	1184	831	4900
> X-46 Total	4095	1343	1370	1135	1333	1210	6391
> X-74 Total	4095	1371	1265	1225	981	1685	6527
Esatto! il risultato è corretto.

Bruno


title: Chi mi dà una mano con una query?

text:
Il giorno Fri 15 Jan 2021 10:32:16a, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rtrnev$19g3$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

> Esatto! il risultato è corretto.
>

la query che funziona a metà, a meno che qualche esperto riesce a
correggerla

le tre fasi sono annidate, si parte dal centro

/* fase 3: legge %bbb, somma i dodici mesi e invia a video
questa è la fase che non funziona per i motivi spiegati in precedenza
(non accetta una "action query" come origine dati)
il mio controllo lo ho fatto prendendo l'output della fase 2
e mettendo i dati in excel per l'ultimo raggruppamento */

SELECT
[%bbb].f1 AS fx,
sum([%bbb].MM) AS mx,
sum([%bbb].S2) AS s2x,
sum([%bbb].S3) AS s3x,
sum([%bbb].S4) AS s4x,
sum([%bbb].S5) AS s5x,
sum([%bbb].S6) AS s6x

INTO bbb

FROM (

/* fase 2: legge %aaa, raggruppa i mesi, somma i valori e mette in tabella
temporanea %bbb */

SELECT
[%aaa].f1,
max(M) AS MM,
Sum([%aaa].f2) AS S2,
Sum([%aaa].f3) AS S3,
Sum([%aaa].f4) AS S4,
Sum([%aaa].f5) AS S5,
Sum([%aaa].f6) AS S6,
Sum([%aaa].f2)+Sum([%aaa].f3)+Sum([%aaa].f4)+Sum([%aaa].f5)+Sum([%aaa].f6)
AS ST

INTO bbb

FROM (

/* fase 1: accoda i dodici mesi aggiungendo il campo M e li mette nella
tabella temporanea %aaa */

SELECT          1 as M, * from  1_gen
union SELECT    2 as M, * from  2_feb
union SELECT    4 as M, * from  3_mar
union SELECT    8 as M, * from  4_apr
union SELECT   16 as M, * from  5_mag
union SELECT   32 as M, * from  6_giu
union SELECT   64 as M, * from  7_lug
union SELECT  128 as M, * from  8_ago
union SELECT  256 as M, * from  9_set
union SELECT  512 as M, * from 10_ott
union SELECT 1024 as M, * from 11_nov
union SELECT 2048 as M, * from 12_dic

)  AS [%aaa]

GROUP BY [%aaa].f1, M

)  AS [%bbb]

WHERE [%bbb].mx = 4095

GROUP BY [%bbb].fx

ORDER BY
Sum([%bbb].s2x)+Sum([%bbb].s3x)+Sum([%bbb].s4x)+Sum([%bbb].s5x)+Sum([%bbb].
s6x) DESC;



title: Chi mi dà una mano con una query?

text:
Ammammata pretended :

Beh, complimenti!
Il risultato sei in grado di ottenerlo, anche senza un programma
integrato.
In Access ottengo il risultato, con 12 mesi da 100 record cadauno,
con un click e 125/1000 di secondo.
In Excel, sempre com 100 record per mese, impiego 12/1000 di secondo.

Quel che ho tentato e ritentato e richiesto di ottenere è il risultato
in Access con una sola query... ma pare impossibile.

Bruno


title: Chi mi dà una mano con una query?

text:
Il giorno Fri 15 Jan 2021 01:08:47p, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rts0ke$1pbm$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

> Quel che ho tentato e ritentato e richiesto di ottenere è il risultato
> in Access con una sola query... ma pare impossibile.
>

se qualche guru del niusgruppo ci desse un'occhiata... magari trova il modo
di far digerire ad access le tre query annidate

mi sembra un errore strano, SQL dovrebbe permettere questi semplici giri
dei dati: ripeto, imho c'è un errore, ma non capisco quale possa essere



title: Chi mi dà una mano con una query?

text:
After serious thinking Ammammata wrote :
> Il giorno Fri 15 Jan 2021 01:08:47p, *Bruno Campanini* ha inviato su
> it.comp.appl.access il messaggio news:rts0ke$1pbm$
1...@gioia.aioe.org
. Vediamo
> cosa ha scritto:
>
>> Quel che ho tentato e ritentato e richiesto di ottenere è il risultato
>> in Access con una sola query... ma pare impossibile.
>>
>
> se qualche guru del niusgruppo ci desse un'occhiata... magari trova il modo
> di far digerire ad access le tre query annidate
>
> mi sembra un errore strano, SQL dovrebbe permettere questi semplici giri
> dei dati: ripeto, imho c'è un errore, ma non capisco quale possa essere

Abbiamo un problema quasi analogo: tu hai tre query che vorresti tenere
ma non girano, io ne ho due che girano però vorrei farne una solo.
I guru si chiamano così perché san solo mugugnare.

Bruno


title: Chi mi dà una mano con una query?

text:
Il giorno Fri 15 Jan 2021 04:33:13p, *Bruno Campanini* ha inviato su
it.comp.appl.access il messaggio news:rtscjn$1osb$
1...@gioia.aioe.org
. Vediamo
cosa ha scritto:

> io ne ho due che girano però vorrei farne una solo

pubblica, pubblica, si impara sempre qualcosa
