mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.appl.access
Titolo: Maschere e inserimento dati

Salve a tutti,
io ho una maschera tramite la quale visualizzo dei dati contenuti in alcune tabelle. Vorrei però
tramite un pulsante inserire in una tabella un valore che compare in un campo della maschera, il
campo "codice". Mi spiego meglio: io clicco su questo pulsante, e inserisco il valore che in quel
momento viene visualizzato all'interno del campo codice della maschera all'interno di una tabella.
Premetto che ho già provato a creare pulsanti e a smanettare con il codice VB, ma evidentemente mi
mancano i fondamentali su come gestire i dati delle maschere. Qualche idea? Grazie a tutti in
anticipo.
--
*_Yuri_*

*_Yuri_* ha scritto:

Esegui da codice una query di accodamento o di aggiornamento, a seconda
che ti serva aggiungere un nuovo record nella tabella destinazione o
aggiornarne uno esistente.
Currentdb.execute "INSERT INTO tabella (NomeCampo) " & _
                  "VALUES (" & Me.codice & ");
Namor
-- 
namor at inwind punto it
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

Newsgroup: it.comp.appl.access
Titolo: Aiuto sul controllo OCX OutlookBar 98 del sito comune

Premetto che sono un intruso visto che sviluppo solo con Access 97. Ho
scaricato dal vostro sito comune l'ocx che simula il funzionamento di
Outlook 98 ma ho un problema: come faccio a creare gli item?
Cioč: i gruppi posso tranquillamente crearli con il metodo AddNewTab, ma
quando invoco il metodo AddNewItem devo specificare un parametro di tipo
StdPicture che non so passare. Ho impostato il riferimento alla libreria
StdOle ma non so come inizializzare la classe e come caricare un'icona da un
file .ico.
Potreste darmi un aiuto?
Grazie.

mmmm... direi che è finito sul ng sbagliato! Scusatemi! Bye :))
Newsgroup: it.comp.appl.access
Titolo: Parametri insufficienti. Previsto 1.

Buongiorno!Avrei un problema:
- ho la seguente query "Scaduti":
        SELECT PCAnagec.*
        FROM PCAnagec
        WHERE (((PCAnagec.B1CDCF)=[forms]![AnalisiClienti]![ACDCFD]) AND
        PCAanagec.B1FLGI)="0"));
che FUNZIONA!
- all'interno del codice, prima la eseguo (e lavora in modo corretto), ma
poi,quando mi collego ad essa:
        Dim sca as Recordset
        Set sca=Currentdb.openrecordset("Scaduti")
il pgm mi si blocca sulla seconda riga dicendo PARAMETRI INSUFFICIENTI.
PREVISTO 1.
Che ca... vuol dire?..A me sembra tutto corretto, anche perchè ho fatto
andare il pgm in debug e la query mi trira fuori ciò che voglio, e non ha
bisogno di parametri!

 ha scritto nel messaggio
news:c2a87j$j85$1...@fata.cs.interbusiness.it...

Per quanto a te sembri tutto corretto non puoi aprire a quel modo da VBA una
query parametrica.
Per maggiori dettagli vai sul Sito Comune (link qui sotto) e nella Sezione
Queries leggi la FAQ di Federico Luciani intitolata "Aprire una query
parametrica da codice VBA".
In alternativa invece che lavorare con una query registrata lavora con una
stringa SQL dichiarata nel tuo codice VBA, ovvero:
Dim sca as Recordset
Dim strSQL As String
strSQL = "SELECT PCAnagec.* " & _
"FROM PCAnagec " & _
"WHERE (((PCAnagec.B1CDCF)=" & _
[forms]![AnalisiClienti]![ACDCFD] & _
" AND PCAanagec.B1FLGI)="0"));"
Set sca=Currentdb.openrecordset(strSQL)
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------
Newsgroup: it.comp.appl.access
Titolo: Copiare record da sottamaschera a maschera principale

Ciao a tutti i mebri del Newsgroup.
Espongo subito il mio problema:
Dovendo registerare la movimentazione di molti prodotti, ho realizzato una
maschera principale "Registrazioni", nella quale  una
casella combinata "Categoria" attiva la sottomaschera "Dettaglio Articolo" ,
mostrando tutti i record  "Articolo" della categoria selezionata.
Come posso far si che dopo aver selezionato un record Articolo in "Dettagli
Articolo", questo  venga copiato in maschera "Registrazioni" ?
Ringrazio anticipatamente.





Articolo", questo  venga copiato in maschera "Registrazioni" ?
All'interno della routine Form_Current() della "Dettaglio Articolo" 
puoi assegnare i valori ai campi della maschera principale.
[forms]![Registrazioni].ControlloTextBox1=me!PrimoCampoDaPassare
Ripetilo per tutti i campi da passare e il gioco e' fatto.
Ciao
Marco
-- 
Posted from [212.210.92.253] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Ciao
Grazie del suggerimento, anche se per via della mia ignoranza in materia
devo chiedere ulteriori informazioni.
Nella sott.ra  "Dettaglio Articolo"  ho inserito la routine:
Private Sub Form_Current()
[Forms]![Registrazioni].ControlloTextBox1=me![Descrizione]
Ma in maschera "Registrazioni" si verifica un errore di run-time '2465'.
Aprendo il modulo di classe e posizionando il puntatore sul campo
[Descrizione] appare la scritta  Me!Descrizione="Matite colorate" (esatta).
mentre fecendo lo stesso con il campo [ID Codice] non succede neanche
quello.
Dove sbaglio?
Ciao Marco


Sei sicuro di avere un textbox con nome ControlloTextBox1 sulla maschera Registrazioni?


Newsgroup: it.comp.appl.access
Titolo: Db con regioni e province

Qualcuno ha un db con regioni e relative province già pronto da inviarmi?

 Qualcuno ha un db con regioni e relative province già pronto da inviarmi?
Prova a dare un'occhiata sul sito comune di VB, ci sono alcuni DB
in ACCESS con diverse tipologie di dati, tr i quali anche quello che
cerchi, CREDO...!
@Alex.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.appl.access
Titolo: Invio e-mail che mostra pannellino invio

Da un'applicazone Access 2003 uso il seguente codice per inviare una e-mail
=================================
    Dim SendMail As clsMAPISendMail
    Set SendMail = New clsMAPISendMail
    SendMail.Clear
    SendMail.AddTo "", destinatario
    SendMail.Subject = oggetto
    SendMail.Body = messaggio
    SendMail.FileAdd (allegato)
    SendMail.SendImmediately = True
    dummy = SendMail.Send
    If dummy > 0 Then
        MsgBox SendMail.MAPIError(dummy), vbCritical Or vbOKOnly, "Errore 
nell'invio del messaggio"
        Else
        MsgBox "Messaggio inviato a " & UCase$(destinatario) & " con 
successo" & Chr(10) & "Il messaggio inviato e' disponibile nella POSTA 
INVIATA del client di posta predefinito", vbInformation Or vbOKOnly, "Invio 
del messaggio riuscito"
        End If
    Set SendMail = Nothing
================================
Funziona tutto come desiderato a parte un pannellino che mi chiede conferma 
dell'invio imminente, credo sia un pannellino che butta fuori Outlook 
Express (il client email predefinito)
In pratica ogni volta oltre a cliccare sul tasto INVIA EMAIL del gestionale, 
devo anche confermare una seconda volta l'invio a sto minghiazza di 
pannellino
Posso eliminare questa richiesta di conferma o devo tenermela a vita ?
Ciao e grazie
RobertoA

 
credi... fai qualche prova con programmi diversi (thunderbird, calypso 
giusto per citarne un paio A GRATIS)
-- 
/-\ /\/\ /\/\ /-\ /\/\ /\/\ /-\ T /-\

 ha scritto nel messaggio
news:4694ed7b$1...@newsgate.x-privat.org...

Hai impostato delle sicurezze sull'invio...?
Da me no lo fà, quindi non riesco a replicare, ma se non risolvi inserisci
un SendKeys inviando l'invio così non devi farlo a mano...
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.alessandrobaraldi.it
---------------------------------------------------------------------------

 giusto per citarne un paio A GRATIS)
Si e' proprio outlook Express, a causa di un aggiornamento Microsoft per 
aumentare la protezione relativamente a programmi che potrebbero usare OE 
come 'speditore' di messaggi a raffica
http://support.microsoft.com/kb/263084/it
Il brutto e' che sembra non disattivabile questa protezione
Ciao
RobertoA
Newsgroup: it.comp.appl.access
Titolo: Aiuto per campi calcolati!!!

Espongo un problema che sottopongo ai più esperti per avere un aiuto in
merito.
Ho una tabella nella quale vi è definito un campo "superficie";
Ho definito una maschera nella quale il campo "superficie" (attraverso
"origine controllo") è calcolato: base x altezza (dove per base e altezza
sono due caselle di testo);
Salvo, riapro la tabella e, sorpresa, nel campo superficie non vi è alcun
risultato!
Come posso riportare nel campo superficie il risultato del calcolo che
avviene sulla maschera?
Ringrazio anticipatamente.

 ha scritto nel messaggio
news:0qvqa.68739$iy5.2...@twister2.libero.it...

Usa un controllo non associato per il calcolo e poi incolli il valore nel
"controllo" "superficie" che resta associato al campo "superficie" della
tabella. Il controllo "Superficie" lo imposti a invisibile mentre lasci
visibile il nuovo controllo non associato.
Potrai gestire il tutto dopo aggiornamento dei due controlli (base e
altezza).
Da codice: Me.Superficie = me.Altezza * Me.Base
Questo comportamento è normale perchè avevi reso il controllo "Superficie"
un controllo calcolato e non associato al campo "Superficie" della tabella.
Ciao, Carlo

Newsgroup: it.comp.appl.access
Titolo: requery di un report

Devo rieseguire il requery di un report aperto in anteprima prima di
mandarlo in stampa.
Nel vba di un modulo che esegue una variazione sui campi origine del
report ho inserito:
 
      Reports(Repnomereport).Requery
 
dove in Repnomereport c'è il nome del report aperto.
 
Mi da un errore di run-time n. 2467 e mi dice che l'oggetto a cui si
fa riferimento nell'espressione è stato chiuso o eliminato.
 
Qualcuno conosce il problema?
 
Grazie in anticipo
 
Marco


Questo:
 
Public Sub AggiornaReport(rpt as Access.Report)
 
  With rpt
       If .Filter = vbNullString Then
             .FilterOn = True
             .Filter = " "
             .Filter = vbNullString
       Else
             .Filter = .Filter
             .FilterOn = True
       End If
  End With
 
End Sub
 
@Alex

Newsgroup: it.comp.appl.access
Titolo: OT: ferie e altro

A tutti quelli che si accingono ad andare in ferie: buon divertimento e/o
buon riposo
A tutti quelli che con (incredibile pazienza) aiutano noi semianalfabeti di
Access un sentito grazie
A tutti gli altri un grande saluto
A Gonzo (vero animatore dell'ultima settimana del Newsgroup) un saluto ed
una esortazione: non cambiare nick: a noi piaci cosě!
--
Isaac

OK, non lo cambio...
ma ribadisco che si tratta di un diminutivo, non di una mia particolare e
menomata situazione mentale... (miiiii che vocabbbbolariooooo)
Allora, se non vi arrabbiate continuerò con le mie domandone da quiz
televisivo... :-P
Sempre più...
        Gonzo (sempre ed inesorabilmente dal suo piccolo ed accogliente
ufficio... -2)
-- 
Posted from [212.210.223.158] by way of 
dav47.law15.hotmail.com
 [64.4.22.19] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.appl.access
Titolo: cancellare record in una tabella

salve, ho una tabella con diverse colonne, dovrei cancellare i dati in
automatico di alcune colonne, nel senso che ogni tot devo ripulire queste
colonne(e sono parecchie) sara' una domanda banale, ma io riesco solo ad
eliminare la riga intera o l'intera colonna. i record sono troppi per
poterli cancellare uno ad uno..
grazie in anticipo

 ha scritto nel messaggio
news:yfVsb.24116$hV.8...@news2.tin.it...

Usa una query di aggiornamento che aggiorni i tuoi campi a null, secondo i
tuoi criteri.
Ciao
Salvatore

 ha scritto nel messaggio
news:bp221q$qjs$1...@lacerta.tiscalinet.it...

perfetto! grazie mille

Newsgroup: it.comp.appl.access
Titolo: Maschere: il punto del tastierino....

Salve a tutti,
in un controllo di una form, devo far digitare solo numeri più i caratteri
/(diviso)
*(per)
- (meno)
+(più)
.(punto)
ho inserito su pressione del controllo un richiamo al seguente codice
copiato sul sitocomune:
   Public Function CkDgtNumber(KeyAscii As Integer) As Integer
   CkDgtNumber = 30
   If KeyAscii >= 48 And KeyAscii <= 57 Then CkDgtNumber = KeyAscii
   Select Case KeyAscii
      Case 40, 41, 42, 43, 45, 46, 47
         CkDgtNumber = KeyAscii
      Case vbKeyBack, vbKeyTab, vbKeyClear, vbKeyReturn
         CkDgtNumber = KeyAscii
      Case vbKeyEscape, vbKeyDelete, vbKeyNumlock
         CkDgtNumber = KeyAscii
    End Select
    End Function
Tutto OK.
Perchè il punto del tastierino numerico (che è un punto) mi viene
visualizzato come virgola ? (non dovrebbe essere accettato)
I casi sono due:
O non deve essere digitato perchè virgola
O deve essere digitato come punto....
anche perchè il codice Ascii della virgola è 44 che mi sono ben guardato
(verificare nel codice sopra) di inserire.
Grazie
Luca

 ha scritto nel messaggio
news:yB9hh.5205$BR1....@tornado.fastwebnet.it...

Ho aggiunto al Case:
Case 44
 CkDgtNumber=46
nada
oppure
Case 44
 KeyAscii=46
 Manco per le mele
Non posso modificare dalle impostazioni internazionali....
Il fatto è che nel controllo (formato testo) che chiamo Pippo devo inserire
per forza il punto come carattere separatore decimale in quando Pippo viene
letto in un altro controllo non associato che come origine ha =Eval([Pippo])
che non accetta la virgola come separatore decimale....
Grazie
Luca

Zappus ha scritto:

Il tastierino riflette le impostazioni internazionali.... quindi ti sei
già risposto.
La funzione EVAL è applicata ad una stringa...!
In quel caso fai il Replace della "," con il "."
oppure fallo prima insomma conversione in Stringa e Replace...!
@Alex
Newsgroup: it.comp.appl.access
Titolo: Acc2000 memoria video insufficiente....

Ciao a tutti
mi chiamo Antonio e sono nuovo su questo ng.
Ho un problema con Access2000, quando scorro velocemente una maschera o una
tabella mi si presenta un errore del tipo:"memoria video insufficiente per
aprire o aggiornare la maschera...."
Inizialmente usavo delle immagini di sfondo nelle mask, poi ho visto che
durante l'apertura e la chiusura delle suddette, avevo uno sfarfallio molto
fastidioso, cosě le ho tolte.Inizialmente sembrava funzionare, ma non č
cosě. Infatti l'errore si ripresenta ma con meno frequenza. Sono costretto a
chiudere Access notando con dispiacere che le icone e lo sfondo del Desktop
si sono rovinati tanto da dover riavviare il mio Pc.
Grazie
Antonio


A regà, 'nartro che se chiama Antonio.
Voi vede che tutti 'st'Antonio formeno un sottoNG, diventeno maggioranza e
ce dicheno che nu se pò più scrive alla domenica.
Roberto

 wrote in message
%Fed6.52041$ew1.3...@news.infostrada.it...

E magari un punto interrogativo alla fine....
Antonio

E magari un punto interrogativo alla fine....
E magari solo tre puntini per indicare la sospensione...
-- 
Letizia

 wrote in message
geeg7tk66cur9od4u...@4ax.com...

Beh, quello in più era un rafforzativo!!!
Antonio

 ha scritto nel messaggio
news:EkWd6.69692$ew1.4...@news.infostrada.it...

Niente punto interrogativo. La mia è una considerazione non una domanda.
Roberto

 wrote in message
TIae6.75560$ew1.4...@news.infostrada.it...

Tsk, tsk, nun ce provà!
La frase "vuoi vedere che.." implica una domanda, quindi col punto
interrogativo in fondo...
O mi vuoi far credere che ti stavi rivolgendo a qualche fantomatico
postatore il quale ti aveva dato adito di affermare che lui voleva vedere
qualcosa e tu lo ribadivi con "Tu vuoi vedere che..." ?
Antonio

Newsgroup: it.comp.appl.access
Titolo: Quesito su report.

Scusate,
ho già fatto questa domanda ma ho perso la risposta :D
In fase di report desidero che non appaia nulla (ma proprio niente) in un
campo numerico
quando questo é nullo "0".
Nel caso in cui ci sia un valore, allora desidero che appaia il numero
interessato.
Grazie (giuro che stavolta salvo la risposta... ;)

 ha scritto nel messaggio
news:cdill0$8oi$1...@lacerta.tiscalinet.it...

La risposta è dentro di te: F1 - help in linea alla funzione Nz()...
Ciao.
-- 
Sergio MAZZA

Newsgroup: it.comp.appl.access
Titolo: dlookup

Si può mettere tale funzione come "origine controllo" di una casella di
testo , dentro a una maschera ?
Mi da sempre errore di sintassi !!
io metto :  =Dlookup("[Nome campo]","Nometabella", etc.......
ciao
--


dlookup come tutte le altre espressioni vanno "cadenzate" con ; se inserite
nel controllo con la "," se nel codice. La sintassi invece è la stessa
ciao MAssimiliano
 
--------------------------------
Inviato via 
http://usenet.libero.it
Newsgroup: it.comp.appl.access
Titolo: automazione dati

ciao a tutti.
devo realizzare un archivio dipendenti e devo utilizzare access, che conosco 
in modo approssimativo.
ho realizzato due tabelle, la prima di nome citta costituita dai seguenti 
campi: idcitta, cap, citta, provincia e la seconda di nome personale con i 
sottoelencati campi: idpersonale, cognome, nome, data nascita, idcitta, cap, 
citta, provincia.
ho creato una maschera personale e vorrei che selezionando con un menu a 
tendina l'id citta o il nome citta mi completasse in automatico gli altri 
campi comuni.
esiste una soluzione?
grz 

 ha scritto nel messaggio 
news:4d15b223$0$10578$4faf...@reader1.news.tin.it...

Anche a Natale!
Ovviamente esiste ma hai sbagliato la normalizzazione del database.
Prima di tutto ti basta usare il solo IDCitt� nella tabella Personale e 
togliere tutto il resto che duplica i campi; poi usa le ralazioni e creane 
una tra l'IDCitt� di Personale e IDCitt� di Citt�.
La maschera personale sar� alimentata da una query che conterr� le due 
tabelle con tutti i campi di Tab Personale e tutti i campi di Tab Citt� 
tranne IDCitt� di Tab Citt� (perch� inutile e gi� presente in Tab Personale 
e in relazione).
In struttura della maschera cancella il controllo IDCitt� e al suo posto 
inserisci un casella combinata che si alimenta da una query basata su Tab 
Citt� e che provvederai a rinominare in IDCitt� collagata al campo IDCitt�. 
Tra le propriet�: Numero colonne = 4;
Larghezza colonne = 0;2;6;1 Colonna associata = 1
Cos� facendo vedrai la colonna CAP, Citt� e Provincia sempre ammesso che 
l'ordine dei campi nella query sia questo, altrimenti correggi le dimensioni 
di conseguenza; anzi sar� meglio mettere i campi in quest'ordine: IDCitta, 
Citt�, PR, CAP; per cui le dimensioni di Larghezza colonne diventano 0;6;1;2
Ora nella visualizzazione maschera ti baster� selezionare dalla tendina la 
citt� per riempire automaticamente tutti gli altri campi.
Se cancelli il campo IDCitt� per aggiungere la casella combinata, non 
dimenticare di ristabilire l'ordine di tabulazione dei controlli.
Fammi sapere.
Ciao, Carlo 

 ha scritto nel messaggio 
news:4d15b223$0$10578$4faf...@reader1.news.tin.it...

Newsgroup: it.comp.appl.access
Titolo: Stampa formulari duplex

Ciao,
Ho un piccolo grande problema
A03,WinXp
Stampante di rete
Stesso driver della stampante su tutte le macchine e stessa coda di stampa
uso il codice seguente
            Case Is = 1   'stampa formulario x controllo
                stDocName = "RBIL00"
                Application.Printer = Application.Printers(SA2 - FSPR - 
NU413 - HP5000)
                DoCmd.OpenReport stDocName, acViewPreview, , stLinkCriteria, 
acHidden
                Set rpt = Reports!RBIL00
                    With rpt.Printer
                    .Duplex = acPRDPHorizontal 'Double sided
                    End With
                DoCmd.OpenReport stDocName, acViewNormal, , stLinkCriteria
                DoCmd.Close acReport, stDocName, acSaveNo
                Set Application.Printer = Nothing
......
su alcune macchine non mi stampa in fronte-retro ma su 2 fogli separati
Dove sbaglio?
Suggerimenti
Grazie e buona serata
Fabio 

 Fabio
-- 
Roberto
-----------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
-----------------------------------------------

 Prego


 Fabio
-- 


 Lorenzo Coronati intitolata "6.66 Gestire la stampante predefinita".
Si perfetto, è quello che già funziona ora, Grazie
Il bello sarebbe capire perchè su alcune macchine non funziona, devo capire 
come viene impostata la stampante dalla rete se mi modifica un qualche cosa.
La stampante ha il fronte retro, come dicevo, su alcune macchine mi stampa 
il report come 2 fogli al posto di 1
Grazie buona domenica
Fabio

Newsgroup: it.comp.appl.access
Titolo: invio mail da access2003 a Outlook2007

Ciao a tutti,
ho creato un'applicazione access2003 che all'avvio controlla dei dati e se il  controllo è positivo genera un file e lo invia ad Outlook2007.
 
 
questa è la sequenza di invio file:
 
DoCmd.SendObject acReport, "controlloscad", "HTML(*.html)", "
xx...@xxx.it
", "", "", "Riepilogo scadenze assicurazioni", "", False, ""
 
Ora il problema è questo.....
Impostando il parametro a FALSE si evita che Outlook apra la finestra di invio messaggio, ma cmq mi appare un messaggio di controllo che mi avvisa l'invio del messaggio e mi invita a cliccare su "consenti" o "non consenti".
 
Potete aiutarmi a capire come evitare che questo messaggio appaia di modo che il file viene inviato automaticamente?
 
Grazie a tutti

Ti do la medesima risposta che hai ricevuto in CROSSPOST su un FORUM:
 
Il problema non è Access ed il VBA, ma Outlook e le impostazioni sulla sicurezza che hai inserito...!
In realtà questo argomento o Bug è trattato spessissimo, e l'unica soluzione che mi pare di aver visto funzionasse in modo concreto mi pare fosse il sistema di CLICK_YES... ovvero l'intercettazione della Finestra di dialogo del messaggio e l'emulazione del CLICK automatico.
 
Prova a vedere se in questo Articolo ritrovi similitudini al tuo problema:
http://www.contextmagic.com/express-clickyes/
 
Questo contiene esempi per usarlo:
http://www.vbaexpress.com/forum/showthread.php?8562-Solved-sending-email-to-Outlook-with-ClickYes
 
Oppure:
http://www.excelguru.ca/content.php?174-Send-Email-Using-ClickYes
 
 
Credo, si possa anche provare ad inviare un SENKEYS, recuperando lo stato attivo dell'applicazione SERVER, ma dovrei fare prove..., altrimenti se hai competenza con le API puoi realizzare da solo con qualche riga di codice:
 
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" 
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private
 Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal
 hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 
As String) As Long
Private Declare Function SendMessageLong& Lib 
"user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, 
ByVal wParam As Long, ByVal lParam As Long)
Private Const WM_LBUTTONDOWN = &H201
Private Const WM_LBUTTONUP = &H202
 
Function ClickYes() As Long
   Dim hWndMain As Long
   Dim hWndDialog As Long
 
   hWndMain  = FindWindow("#32770", "Microsoft Outlook")
   hWndDialog  = FindWindowEx(hWndMain , 0, "Button", "Yes")
   ClickYes = hWndDialog
End Function
 
SendMessageLong ClickYes, WM_LBUTTONDOWN, 0&, 0&
 
@Alex

Perfetto ho risolto:
 
Call Shell("""C:\Programmi\Express ClickYes\ClickYes.exe"", -activate")
 
DoCmd.SendObject acReport, "controlloscad", "HTML(*.html)", "xx...@xxxx.xx", "", "", "Riepilogo scadenze assicurazioni", "", False, ""
 
Call Shell("""C:\Programmi\Express ClickYes\ClickYes.exe"", -stop")
 
grazie mi sei stato di grande aiuto
Newsgroup: it.comp.appl.access
Titolo: Non riesco ad importare file di testo!

E' capitato anche a voi?
Nella selezione del tipo da dati da importare si può selezionare solo
"Tabella Access" oppure " ODBC" ....tutti gli altri niente da fare....
Lo avrò reinstallato in 1000 volte ma quel bastardo di Access niente,
non ne vuole sapere....
Se ne sapete qualcosa, mi fate un favorone!

 non ne vuole sapere....
Ma hai controllato se nell'installazione, fra i filtri di importazione dati,
hai spuntato anche i file di testo?
Ciao, Sib
--
------------------------------------------------------
il sito comune di it.comp.database.access:
http://members.xoom.it/it_db_access
------------------------------------------------------
4000 anni fa', il saggio egizio Ptahhotep scrisse:
"... perche' non esistono saggi per nascita."
------------------------------------------------------
Saturiamo ECHELON:
bomba saddam attentato medio oriente


si, l'ho fatto...ma lui niente....
non ne vuole sapere...
mah...
Grazie comunque
Marco
Newsgroup: it.comp.appl.access
Titolo: Aggiunta record tabelle in relazione

Ho un database composto da 3 tabelle in relazione fra loro:
1 tbl_Nmi 
2 tbl_Descrizioni  
3 tbl_Manutenzioni
Le relezioni:
tbl_Nomi relazione 1 a molti  sul campo IDNome della tbl_Descrizioni
tbl_Descrizioni relazione 1 a molti sul campo IDDescrizione della
tbl_Manutenzioni
Ho creato poi una maschera con campi "non associati" dove inserisco
tutte le info relative alla 3 tabelle che devono essere salvati alla
pressione di un pulsante.
Uso la connessione DAO (per me é più semplice) in questo modo:
apro il database
apro le tre tabelle con 3 recordset diversi
con l'istruzione rst_Nomi!Nome_volgare = stringa nella variabile dei
campi "non associati" 
ecc.
Al salvataggio ricevo il seguente msg di errore: "Impossibile
aggiungere o modificare il record. Nella tabella tbl_Nomi é necessario
un record correlato".
Ho capito che con il sistema che adopero é impossibile effettuare il
salvataggio perché le tabelle sono in relazione. Esiste un sistema per
risolvere il problema? C'é qualcuno che, PAZIENTEMENTE, é disposto a
darmi delle info in merito?
Grazie a quanti risponderanno. Gianni


Ciao,
sembra essere un problema di "integrità referenziale" nei join tra le
tabelle.
Però se hai prevista l'integrità ci sarà un motivo...
Ciao
Alberto


Hai ragione, il problema é proprio quello. Prima di creare la maschera
per l'inserimento ed il controllo dei dati, avevo impostato
l'integrità referenziale.
Ciao e grazie 1000
Gianni


Forse ho capito male...l'integrità referenziale è "il problema" ?
E quindi ora la togli per poter fare l'inserimento?
Saluti

 ha
scritto:

Forse sbaglio, ma é così. Ho tolto l'integrità referenziale ed ho
risolto. D'altra parte l'integrità ref. dovrebbe servire (se ho capito
bene) ad modifiche non volute sui records delle varie tabelle
collegate. Utilizzando la maschera per l'inserimento questo pericolo
non c'é.
Se non é così, mi potresti aiutare a capire come funziona invece ?
Grazie. Gianni

Il 22/11/10 20.31, Gianni Catucci ha scritto:

Non solo per le modifiche ma anche e soprattutto per l'inserimento dei 
dati...tipo inserire un record nella tbl_Manutenzioni in assenza del 
record padre nella tbl_Descrizioni, considerando che inserisci tutto in
un colpo solo.
Certo puoi governare la coerenza di quanto inserisci col codice sotto il 
pulsante per salvare, ma IMO mi sembra + complicato e rischioso.

risolto.
Non è necessario togliere l'integrità referenziale (che - come
qualcuno ti ha detto -  "se ce l'hai messa un motivo c'è"), basta solo
aggiornare in modo corretto i recordset : cioè prima immetti il record
master e poi i record collegati.
... in pratica aggiorni prima tbl_Nomi, poi tbl_Descrizioni e infine
tbl_Manutenzioni ...
Ciao

 ha scritto:

Bene, se le cose stanno così, torno alla integrità referenziale (che
appunto come qualcuno ha detto, garantisce maggiormente) e provo con
l'aggiornamento secondo quanto suggerito da Alberto.
Ancora grazie a tutti. Ciao
Newsgroup: it.comp.appl.access
Titolo: invio di email con allegato un pdf

Salve gente, dovrei risolvere il problema in oggetto, il pdf in questione 
dovrebbe venir fuori da un report.
Ricapitolando:
Ho una maschera che produce un preventivo, in questa maschera ho un'ID 
cliente che punta ad una tabella clienti che ha a sua volta l'indirizzo 
e-mail, nella maschera ho anche un pulsante che mi produce su clik un report 
di stampa.
In pratica mi piacerebbe poter mandare il preventivo direttamente dalla 
maschera via mail ma preferirei inviare un pdf per poter far archiviare al 
cliente (nel caso che lo voglia) il file.
quindi....... avete dei consigli?
Nel computer ho già installato pdf creator.
Saluti Andrea 

Potevi fare a meno del PDF Creator che pergiunta ti apre il Dialogo
di selezione Folder di destinazione(cosa da non far fare all'utente),
sul sito
di Lebans trovi una News che permette di stampare direttamente in PDF.
PDF a parte poi non puoi usare SendObject(almeno mi pare), quindi ti
rimangono
poche alternative, se hai installato Outlook puoi appoggiarti a MAPI
oppure
CDO trovi molti demo di come inviare allegati, anche in questo NG con
un minimo
di ricerca.
@Alex

 di ricerca.
Provo......
Grazie
Saluti Andrea

Newsgroup: it.comp.appl.access
Titolo: chiavi in formato testo

Ho ricevuto una eredità .... un dbase 2.0 di un inventario per i nostri
pc(dell'ospedale)
Ora ho notato che il 90% delle chiavi e dei campi di join sono in formato
testo ( addirittura chiavi multiple ) e tra l'altro il valore in chiave è
chiaramente duplicato . Mi spiego ... ho una casella combinata con scelta
del tipo di scheda di rete , cliccando sul valore "Etherlink III , Ethernet
PCI etc " questo è proprio la chiave che finirà nel campo di join ..... mi
pare un po' un tanto al chilo ma magari sono fuori rotta , chiedo pareri .
Io farei un campo chiave contatore o numerico e un campo testo tipo
descrizione_scheda_rete e poi lavorerei sulla chiave numerica .... o sbaglio
???
Grazie in anticipo  a todos
Marce
"L'estate sta finendo ...."

"L'estate sta finendo ...."
l'estate è finita.  è la fine di tutto.  d'ora in poi buio e freddo.
--
non studio non lavoro non guardo la tv
non vado al cinema non faccio sport
----------------------------------------
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access


Grazie LBo
Marce

Newsgroup: it.comp.appl.access
Titolo: formattazione data

ciao a tutti
 
vorrei ottenere questo risultato:
 
02/11/16 "data in cifre"
 
ho provato cosi
Format(MiaData, "dd /mm /yy")
 
Grazie


MiaData cos'è?
Se è un controllo di una maschera ti conviene: 
Format(CLng(MiaData),"dd/mm/yy")
 
Se lo esponi come valore #02/11/2016# devi usare il formato americano: 
Format(#11/02/2016#,"dd/mm/yy")
 
oppure
 
Format(Dateserial(2016,11,2),"dd/mm/yy")
 
 


grazie
Newsgroup: it.comp.appl.access
Titolo: differenza fra due stringhe

Salve a tutti,
date due stringhe
STRINGA 1
STRINGA 2
vorrei, tramite la pressione di un pulsante,
ottenere la differenza fra le due, considerando che 
STRINGA 2 contiene sempre la parte iniziale di STRINGA 1
ESEMPIO:
STRINGA 1 = facciamounaprova
STRINGA 2 = facciamo
RISULTATO = unaprova
la lunghezza di STRINGA 2 è variabile
Grazie a tutti.
Nicola

Potresti usare la funzione replace:
replace(STRINGA1,STRINGA2,"")
ciao
Silvio

 RISULTATO = unaprova
risultato = mid(stringa1,len(stringa2)+1)
Antonio

 ha scritto nel messaggio
news:1146215237.4...@y43g2000cwc.googlegroups.com...

Non ha detto la versione di access.
Replace è dal 2000 in poi.
Antonio

 Antonio
Ciao Antonio, ho visto solo ora che hai fatto ritorno tra i presenti.
Ben risentito.
@Alex

 ha scritto nel messaggio
news:1146215879....@g10g2000cwb.googlegroups.com...

E' una fuitina purtroppo...
Gli ho chiesto se mi avvicinivano dalla basilicata a casa, civitavecchia e
hanno capito tutto... domani mattina devo farmi 5 giorni di Libia... GROAN
Antonio

Sicuro che sia questa una soluzione?
STRINGA2 poteva esere anche "una" per cui il risultato dovrebbe essere
"facciamoprova", se non ho capito male il problema.
Nelle versioni precedenti al 2000 c'è la funzione INSTR?
Silvio

Il Fri, 28 Apr 2006 09:12:12 GMT, "Antonio Biso"
<ch...@NOSPAMetruria.net> ha scritto:

PERFETTO!
quello che mi serviva!
grazie!!!!!!
ciao
Nicola

 ha scritto:

STRINGA 2 non conterrà mai una cosa diversa dall'inizio di stringa1
quindi è ok
grazie
ciao

Non avevo letto bene... non avevo considerato che STRINGA 2 contiene
sempre la parte iniziale di STRINGA 1.
Scusate :)
Silvio

 ha scritto nel messaggio
news:1146217814.8...@i39g2000cwa.googlegroups.com...

Silvio, quando rispondi, lascia una parte del quoting precedente, altrimenti
non si capisce a cosa rispondi
Antonio

Beh sei più vicino in Libia alla Basilicata che a Civitavecchia...,
magari ti sei
spiegato male tu..., ma loro hanno capito benissimo..!!!
;-)
Buon lavoro.
@Alex


Qualche altro emiro????
-- 
_ _
Ciao
MAssimiliano Amendola            
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:  
www.donkarl.com/it

Antonio Biso ha scritto:

Hai ragione, ma google non lo fa in automatico: per far apparire il
quoting devo fare una procedura un po' più complessa.
Silvio
Newsgroup: it.comp.appl.access
Titolo: stringa ADO

Salve a tutti,
sono nei guai con ADO:
    rscc.Open "DELETE _CESPITI.* " & _
              "FROM _CESPITI " & _
              "WHERE (_CESPITI.IDFabbricato)=""" & id & """ ",
CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Il comando mi restituisce il seguente errore:
 Errore di sintassi nell'espressione della query
 '(_CESPITI.IDFabbricato)="x"'
dove "x" č il contenuto della variabile "id".
Centra qualcosa l'underscore davanti al nome della tabella?
Con gli altri comandi SQL nessun problema. Mi dą errore solo con DELETE.
Grazie per qualsiasi aiuto.

Rettifica: se la query non è parametrica funziona anche con DELETE.
Es.:
     rscc.Open "DELETE _CESPITI.* " & _
               "FROM _CESPITI ", CurrentProject.Connection, adOpenKeyset,
adLockOptimistic
funziona perfettamente

 Grazie per qualsiasi aiuto.
Ma id non sarà numerico?
Ciao.
-- 
Sergio MAZZA 


No, è una stringa

 Grazie per qualsiasi aiuto.
Fa sapere,
Ciao,
Massimo 

 Centra qualcosa l'underscore davanti al nome della tabella?
sě, nella Clausola FROM non ha da problemi ma nella WHERE sě
prova cosě,
----
    rscc.Open "DELETE _CESPITI.* " & _
              "FROM _CESPITI " & _
              "WHERE [_CESPITI].IDFabbricato=""" & id & """ ",
CurrentProject.Connection, adOpenKeyset, adLockOptimistic
----
e poi, perchč istanziare un recordset per fare una delete ?
prova cosě
----
CurrentProject.Connection.Execute _
    "DELETE _CESPITI.* " & _
    "FROM _CESPITI " & _
    "WHERE [_CESPITI].IDFabbricato=""" & Id & """ "
----
o meglio ancora, onde prevenire un eventuale chr(34) in ID
----
CurrentProject.Connection.Execute _
    "DELETE _CESPITI.* " & _
    "FROM _CESPITI " & _
    "WHERE [_CESPITI].IDFabbricato='" & Replace(Id,"'","''") & "' "
-----
Ciao
-- 
Giorgio Rancati
[Office Access MVP]

 -----
poi... visto che la tabella č una sola č inutile identificare il campo con
NomeTabella.NomeCampo.
Puoi semplificare cosě
----
 CurrentProject.Connection.Execute _
     "DELETE * " & _
     "FROM _CESPITI " & _
     "WHERE IDFabbricato='" & Replace(Id,"'","''") & "' "
----
Ciao



Grazie Giorgio, cosě fila tutto liscio.

Newsgroup: it.comp.appl.access
Titolo: Cambiare Origine Record di un REPORT chiuso ?

e' possibile farlo ?
Mi potete aiutare ? eventualmente come posso fare?
GRAZIE ADRIANO

 GRAZIE ADRIANO
--
RoDAgo

 ha scritto nel messaggio
news:96u7p2$l6t$1...@lacerta.tiscalinet.it...


Newsgroup: it.comp.appl.access
Titolo: agenda in access

Volevo sapere se e' possibile implementare in Access una agenda. 
Si puo' reperire da qualche cosa?
Grazie mille

 Grazie mille
anni fa l'avevamo fatto per una reception con Access 2. Non ho più l'mdb, ma
comunque se fossi in te userei outlook

 Si puo' reperire da qualche cosa?
io l'ho fatta...devo inserire l'esempio su sito comune...appena ho 1/2
secondo faccio la mail con il contenuto e l'esempio per il sito comune
ciao

 Grazie mille
Prova con le autocomposizioni db di Access.
Maurizio
Newsgroup: it.comp.appl.access
Titolo: Annullare azione TAB

Salve a tutti,
Sull'evento uscita di un controllo ho la seguente procedura:
Private Sub NumeroBolla_Exit(Cancel As Integer)
If NumeroBolla.Text = "" Then
AVVISO = MsgBox("Inserire numero di bolla!!", vbCritical, "AVVISO")
End If
End Sub
Devo fare in modo che dopo che l'utente clicca su OK rimanga lo stato
attivo sullo stesso controllo. Invece il focus passa al controllo
successivo anche se inserisco dopo END IF l'istruzione
nomecontrollo.setfocus
Grazie per l'aiuto
Massimo Pallavicini
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

Massimo Pallavicini ha scritto:


                       Me.numerobolla.setfocus
End If
End Sub

 Massimo Pallavicini ha scritto:


Continua a non funzionare..... 


 End Sub
Io aggiungerei anche
If NmeroBolla.Text = ""
con
If Len(NumeroBolla.Text) < 1 Or IsNull(NumeroBolla.Text) Then
Ciao
Morgan


 Morgan

Il problema non si sposta. 
Io credo che per risolverlo bisogna annullare l'azione di spostamento tra
un campo e l'altro......


 Massimo Pallavicini
Ciao Massimo,
il parametro Cancel serve proprio per interrompere l'evento.
----
 Private Sub NumeroBolla_Exit(Cancel As Integer)
    If NumeroBolla.Text = "" Then
    AVVISO = MsgBox("Inserire numero di bolla!!", vbCritical, "AVVISO")
    Cancel=True
    End If
 End Sub
----
Ciao
-- 
Giorgio Rancati
[Office Access MVP]

 Ciao
Grazie Giorgio!!! 
Adesso funziona perfettamente.
Ciao


 ha scritto nel 
messaggio news:44d31b50$0$1009$5fc...@news.tiscali.it...

Che vergona :(
Morgan 

 Morgan
Vergogna ????
nessuno nasce imparato!
 :-)


 ha scritto nel 
messaggio news:44d3283b$0$985$5fc...@news.tiscali.it...

So io che mi vergogno.Ci avrei dovuto pensare
anche se per queste cose di solito uso un approccio diverso.
Morgan

Newsgroup: it.comp.appl.access
Titolo: Somma con campo vuoto

Salve a tutti,
ho un piccolo problemino con una query:
devo eseguire la somma di più campi contenuti nella query, può capitare
che uno o più campi abbiano valore nullo; in questo caso la somma mi
restituisce valore nullo.
Come posso fare per ottenere il solo valore dovuto alla somma delle
caselle con valore non nullo?
Ringrazio anticipatamente per qualsiasi suggerimento
Saluti
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 caselle con valore non nullo?
sum(nz(nomecampo))
cia'
Max

 Max
Grazie
Ciao

Newsgroup: it.comp.appl.access
Titolo: schermata di LOGIN

Salve a tutti!
Ho fatto un DB attivando la protezione tramite gruppi e account di lavoro 
col il file System.mdw, volevo chiedere se c'č un comando, o meglio ancora 
se č possibile associarlo ad un'immaginetta creata ad hoc magari con un 
collegamento ipertestuale, il quale senza chiudere il programma mi faccia 
tornare alla schermata di Login per porre temporaneamente in pausa il 
programma, in modo da inserire nuovamente la password per il successivo 
riutilizzo.
Grazie anticipatamente 

 Grazie anticipatamente
Intanto spero tu abbia fatto una COPIA del SYSTEM.MDW e che magari tu stia
lavorando
con un File chiamato in un modo diverso... se non l'hai fatto... auguri...!
Questo Demo si avvicina a quello che chiedi...!
http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=274
Effettua il LOGOFF del Client..., puoi modificarlo ed invece di farlo
CHIUDERE gli apri la
Form del LOGIN, è abbastanza semplice.
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.alessandrobaraldi.it
---------------------------------------------------------------------------

Newsgroup: it.comp.appl.access
Titolo: Parametri Report

Buon giorno. Qualcuno ha idea di come si definiscono i parametri nei Report? In
realtà io voglio eliminarlo! Mi succede che inspiegabilmente in un report su
cui sto lavorando, che ha sempre funzionato, avrò fatto qualcosa, senza volere,
e ora quando lo lancio mi chiede l'immissione di un parametro con la classica
finestrella, e sembrerebbe un parametro a livello di report e non di tabella.
Help!!
Lamberto  
-----------------------------------------
Messaggio inviato con Excite Newsgroup.
http://www.excite.it/newsgroup

 ha scritto nel messaggio
news:dajbk0$5ll$1...@news-intl.excite.it...

Ciao Lambie,
forse ti è rimasto un ordinamento o un raggruppamento su un campo che hai
tolto dalla query di origine del report, prova a controllare.
Ciao
Cinzia


Per elimarlo devi verificare dove sta l'errore; probabilmente hai cambiato nome ad un controllo o nome di campo...
Ciao.
-- 
Sergio MAZZA 

Allora, io avevo creato una linea a livello di Intestazione Pagina, e poi 
l'ho cancellata.. è l'unica cosa che mi viene in mente.. possibile che si 
rimasto qualcosa di "sporco"? 
Lambie 

AHH! Ho usato l'analizzatore... mi dice che trova un oggetto "Report1" di 
tipo | ... che nn riesce a inserire nel documento... che schifezza 
sarà ?? Combinazione sembra proprio la barretta che io avevo inserito e 
poi cancellato... 
Lamberto
Newsgroup: it.comp.appl.access
Titolo: superato numero di blocchi per la condivisione del file ????

Ciao a tutti
stampando i dati di un archivio abbastanza carico mi appare questo errore
che cavolo č?
Ciao, AEOM

$Q%4.21...@news1.tin.it...

Ho risolto modificando la relativa key nel registri ma qualcuno mi puň
siegare la motivazione tecnica dell'errore?
grazie,
AEOM

 che cavolo č?
Che versione di Access?
Quanto "carico" l'archivio?
Che chiave di registro hai modificato?
Ciao.

 ha scritto nel messaggio
news:cP_M9.37929$TC5.1...@twister1.libero.it...

l'ho testato sia su Access97 che sull'XP,
fai una rutine che apre un recordset di 10000 record, e che ad uno a uno
modifica un campo
ad un certo punto ti dice che hai superato il numero massimo di lock di
record, pur non usando le transazioni.
la chiave da modificare č la maxnumlock nella sezione jet del registry.
non riesco a trovare una spiegazione tecnica del motivo.
ciao, AEOM

 la chiave da modificare č la maxnumlock nella sezione jet del registry.
Hai testato la faccenda solo su un PC?
Ciao.

 ha scritto nel messaggio
news:kMiN9.40952$Ou4.1...@twister2.libero.it...

su qualsiasi pc
http://archive.dbforums.com/showthread.php?threadid=377388
non sono l'unico e ho trovato altri casi simili
bo!
AEOM
Newsgroup: it.comp.appl.access
Titolo: Setwarnings

C'è una impostazione da menu che ha la stessa funzione di Docmd.Setwarnings 
True ?
 
Ciao
Sandrobi
 
 

 Docmd.Setwarnings True ?
 
Ci sono opzioni parziali. Vedi:
 
Eliminare i messaggi d'avviso
http://www.donkarl.com/it?FAQ2.4
 
 
-- 
Ciao
Karl
*********
Access FAQ:  
http://www.donkarl.com/it

Newsgroup: it.comp.appl.access
Titolo: settimana

Ciao,
ho un problemino con le date:
inserendo una data in un campo, avrei bisogno di avere restituito in un
altro campo il numero della serrimana corrispondente a data inserita.
es. inserendo nel campo [dataestesa] il valore "14/04/2005", nel campo
[numsett] deve comparire "15", poiché la data inserita fà parte della 15a
settimana sel 2005.
Praticamente, devo ottenere lo stesso risultato che si otterrebbe con la
funzione NUM.SETTIMANA di Excel.
Ho guardato sull'help in linea, ma mi dice che dovrei utilizzare come
riferimento di formattazione "ss", che più sotto riporta come formattazione
per i secondi, che ho scoperto essere prevalente su quello della settimana.
Qualcuno mi sà dire qual è il carattere da utilizzare per ottenere il numero
della settimana?
Grazie,
Fabio.

 Fabio.
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
---------------------------------------------------- 

 italiana di Access i caratteri da usare sono "ii".
Grazie mille:
sto usando Access2002 SP3.
Per i posteri:
esattanemente la formuletta é:
format([nomecampo];'ii')
quindi fare attenzione ad usare l'apice singolo per delimitare i caratteri 
del foromato e non le virgolette.
Grazie ancora! Siete una risorsa insostituibile!!
Fabio 

 Ciao Fabio
Ciao omonimo,
ti ringrazio per l'aiuto, ma la soluzione esatta ho scoperto essere
=format([nomecampo];'ii')
(vedi eventualmente la mia risposta al post di Roberto da Casa)
Grazie ancora.
iltuoomonimo. 

 Fabio
-- 

Newsgroup: it.comp.appl.access
Titolo: cancellare records con query in JOIN

mi sono incartato in un problema che non ha soluzione?
Voglio eliminare records (da una tabella BOLLE) se essi non hanno nessun
DETTAGLIOBOLLE.
Ho provato con ACCESS, ma non riesco ad ottenere il risultato; vedo il
risultato(se eseguo ņa query mentre edito la struttura), ma quando eseguo la
query essa non funge; mi chiede INDICA LA TABELLA DA CUI ELIMINARE !
Ma all'interno della struttura della query, non posso selezionare l'opzione
DA, solo quella DOVE.
Capisco che eliminare col JOIN dia problemi, ma come risolvo?
grazie in anticipo
Ivan 

 Ivan
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------

 ha scritto nel messaggio
news:rdafe.1346172$35.50...@news4.tin.it...

Ciao Ivan,
visto che sei scappato via :-)
ti riposto la risposta data su it.sql
Per indicare la tabella da cui eliminare le righe bisogna usare la sintassi
DELETE NomeTabella.*
quindi potresti fare ...
----------
DELETE Bolle.*
FROM Bolle
WHERE Id NOT In (Select IdTestata From Dettaglio)
----------
Access perde molto in prestazioni quando c'č una subquery nella clausola
Where quindi conviene (come hai fatto tu) mettere in join le due tabelle
---------------
DELETE DISTINCTROW Bolle.*
FROM Bolle LEFT JOIN Dettaglio ON Bolle.Id = Dettaglio.IdTestata
WHERE Dettaglio.IdTestata Is Null
----------------
DISTINCTROW serve (in una relazione uno a molti) a non duplicare le righe
della tabella Bolle, se lo ometti  riceverai il messaggio *Impossibile
eliminare dalle tabelle specificate*
E' possibile omettere DISTINCTROW solo in una relazione uno a uno in cui i
campi che collegano le tabelle sono anche indici univoci di esse.
Ciao Giorgio


SCUSA PER IL RITARDO,
la tua soluzione è buona e la uso in uscita dalla compilazione di una bolla 
che non abbia dettagli sottostanti
grazie   Ivan 

 Ciao Giorgio
SCUSA PER IL RITARDO,
ho applicato i tuoi consigli (OTTIMI !), e ho anche capito quale approccio 
devo tenere.
Tutto semplice per eliminare records da una sola tablla, ma su JOIN non ci 
arrivavo!
grazie ancora  Ivan 

 [pensavo non fosse il NG giusto ;\]
volevo solo fare una battuta :-)
effettivamente č cosě, perň ogni tanto diamo risposte anche a quesiti su
access (se attinenti al linguaggio SQL)
Ciao Giorgio