title: riallegare tabelle in automatico

text:
"ALESSANDRO Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:cs18pe$rj9$1...@lacerta.tiscalinet.it...

Ciao Alex, ho usato questo tuo codice:
a me sembra molto ben fatto...
Anche Roberto Massoni è d'accordo... (vedi post precedenti)
per me poi... tu rimani un faro!
'PASSWORD=barbara
'----------------------------------------------------------------------
'Per utilizzare il modulo:
'Inserire nella MACRO AUTOEXEC
'ESEGUICODICE-----> GetLink()
'per comodità la Macro 1AUTOEXEC è inserita, ma per non renderla
'eseguibile ho inserito "1"-AUTOEXEC, rinominare senza "1"
'----------------------------------------------------------------------
Option Compare Database
Option Explicit
' Autore Alex - Mantova
' e-mail:
ik2...@libero.it
'**********************************************************************
'Questo modulo è in grado di effettuare il Refresh del Collegamento
'delle tabelle tra Backend e Frontend in modo automatico.
'Per come è strutturato il Batabase(FE) e quello di BE possono essere nella
stessa
'posizione(Path), in alternativa viene proposto di individuare il Percorso
'corretto per ripristinare il Link
'
'Per rendere fisso il Collegamento in caso di BE localizzato
'in un SERVER di rete impostare la riga seguente con l'indirizzo
'del SERVER in modo RELATIVO="\\Nomeserver\Cartella\"
'*******************  RIGA DA ATTIVARE ********************************
'Public Const DbDatiPath="Percorso del Server o Fisso"
'******************* RIGA DA ELIMINARE ********************************
Public DbDatiPath As String
'**********************************************************************
Dim dbCurr As Database
Public FilePath As String
'Definizione della Variabile per l'estrazione dati Link
Type Link
    LName As String
    LPWD As String
    LDBDati As String
    LPathDB As String
End Type
'Numero di Tbl da Linkare per Progressione(Bar)
Private MaxBar As Integer
'Nome della Form con la Barra di progressione
Private Const strForm = "Link"
Private PWD_Err As Boolean
Function GetLink()
'Nel caso di Collegamento al SERVER fisso la seguente
'parte del Codice deve essere rimossa.
On Error GoTo Err_Getlink
If Not ActLink Then
'---------------------------------------------------------------------------
-------
   Dim strMsg As String
   If DbDatiPath = "" Then
Relink_Table:
      strMsg = MsgBox("Mantieni la stessa PATH del FrontEnd (Si/No) ",
vbQuestion + vbYesNo, "Attenzione...!")
      Select Case strMsg
         Case vbYes
            DbDatiPath = GetPathPart(CurrentDb.NAME)
         Case vbNo
            DbDatiPath = cmdlgFile
      End Select
      If DbDatiPath = "" Then
         MsgBox "Impossibile allegare le Tabelle...", vbExclamation, "Relink
Fallito...!"
         Exit Function
      End If
'---------------------------------------------------------------------------
--------
'
'Questa parte è da tenere
      If Not ReLinks() Then
         DoCmd.Close acForm, "Link"
         MsgBox "Relinks non effettuato...", vbCritical, "Errore..."
         Exit Function
         'CHIUDI programma
      Else
         DoCmd.Close acForm, "Link"
'---------------------------------------------------------------------------
-----------
         MsgBox "Relinks effettuato con successo !!!!", vbInformation,
"Effettuato..."
'---------------------------------------------------------------------------
-----------
      End If
'Eliminare la riga seguente nel caso di collegamento Fisso al SERVER
   End If
'---------------------------------------------------------------------------
-----------
End If
DoCmd.OpenForm "Principale"
Exit_GetLink:
   Exit Function
Err_Getlink:
   If err.Number = 3031 Then
      MsgBox "Password di connessione errata...!"
      PWD_Err = True
   End If
   Resume Relink_Table
End Function
Function ActLink() As Boolean
    Dim tdfL As TableDef
    Dim X, link_OK As Integer
    Dim PathName As String
    Set dbCurr = CurrentDb
    'Aggiorna gli oggetti contenuti nell'insieme Tabledefs
    'per riflettere lo schema corrente del database.
    dbCurr.TableDefs.Refresh
    'Restituisce una matrice contenente
    'i dati delle Tbl che hanno il contenuto
    'della proprietà Connect non nullo(le Tbl Collegate)
    'LName=Nome della Tabella
    'LPWD= ;PWD=MiaPassword (nel caso il BE sia protetto)
    'LDBDati=Nome del Database Backend
    'LPathDB=PathCorrente + Nome DB(Backend)
    For Each tdfL In dbCurr.TableDefs
        With tdfL
            If Len(.Connect) > 0 Then
                PathName = ParsePathDBL(.Connect)
                If Len(Dir(PathName)) > 0 Then
                   link_OK = link_OK + 1
                End If
                X = X + 1
            End If
        End With
    Next
    If X < 1 Then
      MsgBox "Nessuna Tbl da Allegare...!"
      ActLink = False
      Exit Function
    Else
       If link_OK < X Then
          ActLink = False
          Exit Function
       End If
    End If
ActLink = True
End Function
Function ReLinks() As Boolean
'Funzione di verifica e Refresh delle Connessioni
'delle Tabelle Collegate ad un DB di BE
    Dim i As Integer, X As Integer
    Dim strConn As String, strMsg As String
    Dim dbLink As Database
    Dim tdfLocal As TableDef
    Dim varRet As Variant
    Dim nx As Variant
    Dim TblLink() As Link
    Dim PWD As String
    On Error GoTo ReLinks_Err
    'Costanti fittizie per generare un errore
    'dedicato con l'istruzione err.raise NumErr
    'ERR_NoTblRemote nel caso non ci sia la TblRemota
    Const ERR_NoTblRemote = vbObjectError + 1000
    'ERR_NoDBRemote nel caso non ci sia il DB(BE)
    Const ERR_NoDBRemote = vbObjectError + 2000
    Set dbCurr = CurrentDb
    'Aggiorna gli oggetti contenuti nell'insieme Tabledefs
    'per riflettere lo schema corrente del database.
    dbCurr.TableDefs.Refresh
    If PWD_Err Then
      PWD = " ;PWD=" & InputBox("Inserisci la Password corretta...", "Enter
PASSWORD")
    End If
    'Restituisce una matrice contenente
    'i dati delle Tbl che hanno il contenuto
    'della proprietà Connect non nullo(le Tbl Collegate)
    'LName=Nome della Tabella
    'LPWD= ;PWD=MiaPassword (nel caso il BE sia protetto)
    'LDBDati=Nome del Database Backend
    'LPathDB=PathCorrente + Nome DB(Backend)
    For Each tdfLocal In dbCurr.TableDefs
        With tdfLocal
            If Len(.Connect) > 0 Then
                ReDim Preserve TblLink(X)
                TblLink(X).LName = .NAME
                TblLink(X).LPWD = IIf(PWD_Err, PWD, ParsePWD(.Connect))
                TblLink(X).LDBDati = ParseFileName(ParsePathDBL(.Connect))
                TblLink(X).LPathDB = DbDatiPath & TblLink(X).LDBDati
                X = X + 1
            End If
        End With
    Next
    If X < 1 Then
      MsgBox "Nessuna Tbl da Allegare...!"
      ReLinks = True
      Exit Function
    End If
    'Predispone la variabile per
    'il prossimo utilizzo
    Set tdfLocal = Nothing
    Test X
    'Inizio fase di Relink
    nx = UBound(TblLink)
    i = 0
IniLinks:
        varRet = SysCmd(acSysCmdSetStatus, "Ricollegamento tabella '" &
TblLink(i).LName & "'....")
        'Verifica che il Database Dati o Backend  esista
        If Esiste(TblLink(i).LDBDati) Then
            'Effettua un collegamento con DAO al DB remoto(BE)
            'per verificare la corrispondenza della Tbl corrente
            strConn = ";DATABASE=" & TblLink(i).LPathDB & TblLink(i).LPWD
            Set dbLink = DBEngine(0).OpenDatabase("", False, True, strConn)
            If fRemTblExist(dbLink, TblLink(i).LName) Then
                'esegue il Refresh del Link
                Set tdfLocal = dbCurr.TableDefs(TblLink(i).LName)
                With tdfLocal
                    .Connect = strConn
                    .RefreshLink
                End With
            Else
                err.Raise ERR_NoTblRemote
            End If
        Else
            err.Raise ERR_NoDBRemote
        End If
        Set dbLink = Nothing
        Call ProgressBar(i, TblLink(i).LName)
    If i <> nx Then i = i + 1: GoTo IniLinks
    ReLinks = True
    varRet = SysCmd(acSysCmdClearStatus)
ReLinks_End:
    Erase TblLink
    Set tdfLocal = Nothing
    Set dbLink = Nothing
    Set dbCurr = Nothing
    Exit Function
'Gestione errori
ReLinks_Err:
    ReLinks = False
    Select Case err.Number
        Case ERR_NoTblRemote
            'Causato se non c'è corrispondenza tra
            'le Tabelle del Frontend e del Backend
            strMsg = "Error Information..." & vbCrLf & vbCrLf
            strMsg = strMsg & "Function: ReLinks" & vbCrLf
            strMsg = strMsg & "Tabella remota : " & TblLink(i).LName & _
                              "non trovata ! " & vbCrLf & vbCrLf
        Case ERR_NoDBRemote
            'Causato se non esiste o non si trova il Database
            'di Backend contenente i dati
            strMsg = "Error Information..." & vbCrLf & vbCrLf
            strMsg = strMsg & "Function: ReLinks" & vbCrLf
            strMsg = strMsg & "Database di Backend : " & TblLink(i).LDBDati
& _
                              " non trovato ! " & vbCrLf & vbCrLf
        Case Else
            'Qualsiasi altro errore non prevedibile
            strMsg = "Error Information..." & vbCrLf & vbCrLf
            strMsg = strMsg & "Function: ReLinks" & vbCrLf
            strMsg = strMsg & "Impossibile ripristinare la connessione" &
vbCrLf
            strMsg = strMsg & "con le Tabelle dati nel Backend. " & vbCrLf &
vbCrLf
    End Select
    strMsg = strMsg & "Contattare l'assistenza..." & vbCrLf
    MsgBox strMsg, vbOKOnly + vbCritical, "Error..."
    Resume ReLinks_End
End Function
'
'
'-------------------------------- Inizio Funzioni
Personalizzate ------------------------------------
'Gruppo di funzioni specifiche per il recupero dati
'dalla stringa CurrentDB.Tabledef.connect
Function ParsePWD(strIn As String) As String
'Restituisce la Password di collegamento al Db
'contenuta nella stringa Connect della Tbl
'restituisce ";PWD=MiaPassword" se esiste
    Dim strTemp As String
    If InStr(1, strIn, "PWD") <> 0 Then
        strTemp = Right(strIn, Len(strIn) - (InStr(1, strIn, "PWD=")) + 2)
        ParsePWD = Left(strTemp, Len(strTemp) - Len(ParsePathDBL(strIn)) -
10)
    Else
        ParsePWD = ""
    End If
End Function
Function ParsePathDBL(strIn As String) As String
'Funzione specifica per questa applicazione
'Restituisce la Path completa del nome del Db di
'Backend
        ParsePathDBL = Right(strIn, Len(strIn) - (InStr(1, strIn,
"DATABASE=") + 8))
End Function
Function ParseTblName(strIn As String) As String
'Funzione specifica per questa applicazione
'Restituisce il Nome della Tbl contenuto
'nella Stringa Connect
    ParseTblName = Left$(strIn, InStr(1, strIn, ";") - 1)
End Function
'---------------------------------- Fine Funzioni
Personalizzate ------------------------------------
'
'
'------------------------------------ Inizio Funzioni
Generali --------------------------------------
Public Function GetPathPart(strPath As String) As String
    ' Comments    : Restituisce la Path di un percorso
    ' Parameters  : strPath - Stringa(Percorso completa)
    ' Returns     : GetpathPart=Path(strPath)
    ' Es.         : strPath="C:\Programmi\DataBase.mdb"
    '             : GetPathPart="C:\Programmi\"
    Dim intCounter As Integer
    For intCounter = Len(strPath) To 1 Step -1
      If Mid$(strPath, intCounter, 1) = "\" Then
        Exit For
      End If
    Next intCounter
    GetPathPart = Left$(strPath, intCounter)
End Function
Public Function ParseFileName(FileName As String) As String
'===========================================================================
===========
    'ROUTINE        : Function ParseFileName (strFileName As String ) As
String
    'SCOPO          : Estrae il nome File dal percorso completo
    'ARGOMENTI      : strFileName - il percorso completo del File
    'RESTITUISCE    : Una stringa con il nome del File
    'Es.            : strFileName="C:\Programmi\DataBase.mdb"
    '               : ParseFileName="Database.mdb"
'===========================================================================
===========
    '
    On Error GoTo Err_ParseFileName
         Dim i As Integer
         On Error Resume Next
         For i = Len(FileName) To 1 Step -1
           If Mid(FileName, i, 1) = "\" Then
             Exit For
           End If
         Next
         ParseFileName = Mid(FileName, i + 1)
Exit_ParseFileName:
        Exit Function
Err_ParseFileName:
        MsgBox err.description
        Resume Exit_ParseFileName
End Function
Public Function Esiste(ByVal strFile As String, Optional ByVal strPath As
String) As Boolean
'Verifica l'esistenza del File(strFile) nella Dir(strPath) specificata
    If DbDatiPath = "" Then DbDatiPath = cmdlgFile
    If Len(Dir(DbDatiPath & strFile)) > 0 Then
        Esiste = True
    Else
        Esiste = False
    End If
End Function
Function fRemTblExist(ByVal dbR As Database, ByVal strTbl As String) As
Boolean
'Funzione per la verifica dell'esistenza della Tbl rilevata
'nel Frontend con connessione nel Backend
    Dim tdf As TableDef
    On Error Resume Next
    Set tdf = dbR.TableDefs(strTbl)
    fRemTblExist = (err = 0)
    Set tdf = Nothing
End Function
Public Function cmdlgFile() As String
   Dim loDlg As clsCommDlg
   Dim strFileTitle As String
   Dim strFileName As String
   Dim strFileDir As String
   Set loDlg = New clsCommDlg
   With loDlg
     .Filter = "Database Access (.mdb)|*.mdb"
     .Title = "Cerca il Percorso del Db(BE) per allegare le Tabelle"
     .StartDir = "C:\Programmi"
     .ModeOpen = True
     .Action
     strFileTitle = .FileTitle
     strFileDir = .FileDir
   End With
   cmdlgFile = strFileDir
End Function
'-------------------------------------- Fine Funzioni
Generali --------------------------------------
'-------------------------------------- Funzioni per la Gestione
ProgressBar ------------------------
Function Test(NRec As Integer)
   MaxBar = NRec
   DoCmd.OpenForm strForm
   With Forms(strForm)
       ' Inizializza a 0 la barra di avanzamento
       .retStatus.Width = 0
       .Status.Caption = "0%"
       .Caption = "Attendere..."
       DoCmd.RepaintObject
   End With
End Function
Function ProgressBar(Valore As Integer, Tbl As String)
        'Ciclo di progressione Barra...
   Dim Del As Byte
   Dim nPercento As Single
   Dim nOld As Byte
   If Valore < 2 Then nOld = 0
   With Forms(strForm)
      .lblTblLink.Caption = "Sto collegando la Tabella : " & vbCrLf & Tbl
      ' Ciclo Delay
      For Del = 1 To 200
          DoEvents
      Next
      nPercento = (Valore / MaxBar)
      If Int(nPercento * 100) <> nOld Then
          ' Aggiorna la barra di avanzamento
          .retStatus.Width = CInt(Forms(strForm).Status.Width * nPercento)
          .Status.Caption = Int(nPercento * 100) & "%"
          DoCmd.RepaintObject
          nOld = Int(nPercento * 100)
      End If
   End With
End Function


title: riallegare tabelle in automatico

author: ALESSANDRO Baraldi

text:
> Ciao Alex, ho usato questo tuo codice:
> a me sembra molto ben fatto...
> Anche Roberto Massoni è d'accordo... (vedi post precedenti)
> per me poi... tu rimani un faro!
Si si proprio il mio....!!!
Beh Roberto è un Signore...!
Il codice è prolisso e farraginoso, fatto in giovane età...! ;-)
Usa questo che è poi uguale a quello di Biso:
http://www.mantuanet.it/alessandro.baraldi/FilesEsempio/TABLES/RelinkAccessTable.txt
Ti spiega come usarlo, si appoggia ad una Tabella nella quale
inserisci il Nome delle Tabella da linkare.
Nel modulo c'è anche una Funzione disabilitata che se abiliti
togliendo il carattere di Commento riempie la tabella con le LinkedTabel.
E' molto più semplice.
Ha lo svantaggio che non gestisce BE differenti, ma vedi tu se è il tuo
caso....!!!
'---------------------------------------------------------------------------
---------------
Se proprio vuoi usare quel codice, oppure hai l'esigenza reale di Linkare BE
differenti con PWD differenti allora ti torna comodo, ma non ho elementi
sufficienti per aiutarti, dovrei riprodurre la tua situazione.
Fammi sapere.
--
@Alex (Alessandro Baraldi)



title: riallegare tabelle in automatico

author: Gaetano Di Zanni

text:
"ALESSANDRO Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:cs1d6t$s8g$1...@lacerta.tiscalinet.it...

> --------------------------------------------------------------------------
-
>
http://www.sitocomune.com/
>
http://www.mantuanet.it/alessandro.baraldi/
> --------------------------------------------------------------------------
-
Alessandro grazie per l'aiuto.
Io devo collegare, in effetti, ben 5 differenti BE, ma tutti nella stessa
cartella del FE e 1 solo dei BE ha la pwd.
Per cui se tu mi dici che il  codice di Biso non gestisce BE differenti
dovrò utilizzare quello tuo.
 (devo dire che con il tuo, però, ci sono quasi, a parte il messaggio
iniziale che mi dice di non trovare i file ma basta premere ok su questo
messaggio che parte immediatamente e bene la tua routine).
Ho capito bene che il codice di A.Biso non gestisce più di 1 BE ?
Ti ringrazio ancora.


title: riallegare tabelle in automatico

text:
> Alessandro grazie per l'aiuto.
> Io devo collegare, in effetti, ben 5 differenti BE, ma tutti nella stessa
> cartella del FE e 1 solo dei BE ha la pwd.
> Per cui se tu mi dici che il  codice di Biso non gestisce BE differenti
> dovrò utilizzare quello tuo.
>  (devo dire che con il tuo, però, ci sono quasi, a parte il messaggio
> iniziale che mi dice di non trovare i file ma basta premere ok su questo
> messaggio che parte immediatamente e bene la tua routine).
> Ho capito bene che il codice di A.Biso non gestisce più di 1 BE ?
> Ti ringrazio ancora.
Si hai capito bene, ma con una piccola modifica si risolverebbe il tutto.
La tabella(locale) prevista ha solo il campo NomeTabella.
Ora se crei una Tabella con 3 campi:
NomeTabella
NomeBE
Password
Il gioco è fatto.
Dato che il demo di Antonio legge dalla Tabella(Locale) il nome delle
Tabelle
da Relinkare, è semplice estrarre anche Percorso e PWD per ogni tabella
e ricostruire l'intera stringa di connessione dedicata per ogni tabella.
Non devi aggiungere più di 3 righe al codice di Antonio per costruire la
nuova
stringa di connessione.
strConn = ";DATABASE=" & PathFE & rs!NomeBE & "; PWD=" & rs!Passvword
dove PathFE lo ricavi da currentDb.Name oppure da CurrentProject.path
Ora prendiamo uno stralcio del codice tradotto da Paolo Olzi nella versione
A97.
'---------------------------------------------------------------------------
--------------------------
Questo è tratto dall'Originale
'---------------------------------------------------------------------------
--------------------------
' inizio fase di riallegamento tabelle
        Set miodb = CurrentDb()
        Set mioset = miodb.OpenRecordset("tbl_tabelle")
        mioset.MoveFirst
        Num = 1
        ValRestituito = SysCmd(acSysCmdInitMeter, "Si stanno allegando le
tabelle", mioset.RecordCount)
        On Error GoTo gestione_errori_collega
        Do Until mioset.EOF
            ValRestituito = SysCmd(acSysCmdUpdateMeter, Num)
            Set miatable = miodb.TableDefs(mioset.Fields("NOME").Value)
            miatable.Connect = ";DATABASE=" & Nome
            miatable.RefreshLink
            Num = Num + 1
            mioset.MoveNext
        Loop
'---------------------------------------------------------------------------
--------------------------
'---------------------------------------------------------------------------
--------------------------
    Questo diventerà la modifica
'---------------------------------------------------------------------------
--------------------------
' inizio fase di riallegamento tabelle
        Set miodb = CurrentDb()
        Set mioset = miodb.OpenRecordset("tbl_tabelle")
        mioset.MoveFirst
        Num = 1
        ValRestituito = SysCmd(acSysCmdInitMeter, "Si stanno allegando le
tabelle", mioset.RecordCount)
        On Error GoTo gestione_errori_collega
        Do Until mioset.EOF
            ValRestituito = SysCmd(acSysCmdUpdateMeter, Num)
            Set miatable = miodb.TableDefs(mioset.Fields("NOME").Value)
            PathFe=GetPathPart(
miodb.name
)
            miatable.Connect = ";DATABASE=" & PathFe & mioset!NomeBE &
";PWD=" & mioset!Password
            miatable.RefreshLink
            Num = Num + 1
            mioset.MoveNext
        Loop
       ' .......................................
'---------------------------------------------------------------------------
--------------------------
    Funzione aggiuntiva per estrarre il PAth
'---------------------------------------------------------------------------
--------------------------
Public Function GetPathPart(ByVal strPath As String) As String
    Dim intCounter As Integer
    For intCounter = Len(strPath) To 1 Step -1
      If Mid$(strPath, intCounter, 1) = "\" Then
        Exit For
      End If
    Next intCounter
    GetPathPart = Left$(strPath, intCounter)
End Function
Chiaramente devi nel tuo caso specifico eliminare tutta la parte
dedicata al cmdDialog per richiamare la finestra di ricerca del BE
in quanto mi hai detto che sono nella stessa posizione relativa.
Ciao



title: riallegare tabelle in automatico

text:
"ALESSANDRO Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:cs3us3$9j0$1...@lacerta.tiscalinet.it...

> --------------------------------------------------------------------------
-
>
http://www.sitocomune.com/
>
http://www.mantuanet.it/alessandro.baraldi/
> --------------------------------------------------------------------------
-
Fantastico Alessandro, non saprò mai come ricambiare la tua enorme
disponibilità!
Sei stato chiarissimo, mi metto subito al lavoro.


title: dubbi su access e il mondo del lavoro (date la vostra opinione)

author: Arold

text:
ragazzi io cerco le seguenti stringhe in google o altri motori e il
risultato è sempre lo stesso
"cerca programmatori"
"cercasi amministratori database"
quello che esc eè sempre, che cercano ma con conoscenza oracle sql server
vb.net
 delphi
vb6 ecc.....
ma io mi dico noi programmatori access che futuro abbiamo???
Secondo voi è meglio farsi un mazzo per imparare
vb.net
 o altri linguaggi?
Forse sbagliostringa di  ricerca nei motori?
Grazie a tutti ma il timore visto che conosco bene solo Acces c'è!!!


author: Enzo

text:
Arold ha scritto:







Ti capisco... sinceramente non conosco benessimo access ma me la cavo, lo
sto studiando ma sto iniziando a studiare anche il VB6 sia x farli andare
insieme sia xchè ho lo stesso timore che hai te! chissà...; cmq il
vb.net
non so quando lo imparerò, soprattuto xchè non riesco a trovarlo piratato
:-)
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


text:
> Ti capisco... sinceramente non conosco benessimo access ma me la cavo, lo
> sto studiando ma sto iniziando a studiare anche il VB6 sia x farli andare
> insieme sia xchè ho lo stesso timore che hai te! chissà...; cmq il
vb.net
> non so quando lo imparerò, soprattuto xchè non riesco a trovarlo piratato
> :-)
>
>
se lo richiedi alla microsoft puoi avere una versione demo gratuita di 60
giorni mi pare
da provare.


author: Massimiliano Bertoglio

text:
"Enzo" <
> Ti capisco... sinceramente non conosco benessimo access ma me la cavo, lo
> sto studiando ma sto iniziando a studiare anche il VB6 sia x farli andare
> insieme sia xchè ho lo stesso timore che hai te! chissà...; cmq il
vb.net
> non so quando lo imparerò, soprattuto xchè non riesco a trovarlo piratato
Strana scelta di vita: se devi imparare qualcosa di nuovo proprio su un
prodotto morto e sepolto (VB6) ti vuoi buttare?
Al limite posso capire
VB.NET
!
Ciao ;-)


text:
"Arold" <
> ragazzi io cerco le seguenti stringhe in google o altri motori e il
> risultato è sempre lo stesso
> "cerca programmatori"
> "cercasi amministratori database"
> quello che esc eè sempre, che cercano ma con conoscenza oracle sql server
>
vb.net
 delphi
> vb6 ecc.....
> ma io mi dico noi programmatori access che futuro abbiamo???
A parte il fatto che se sei un libero professionista non vedo che ti freghi.
Cmq in questi anni per aziende ho visto molti gestionali, pacchettizzati e
non: una buon 30% utilizzavano Access (o meglio il relativo Runtime) come
Front-End ... direi un 40% VB6, e il resto Delphi e V-Fox Pro.
Probabilmente molte aziende che sviluppano in Access, negli annunci
specificano "Visual Basic" senza altri dettagli.
In rapporto al motore Back-End invece c'è poco da fare: il mercato è
orientato a MSDE/SQL Server.
Ciao.


title: Codice per modificare il tipo a campo tabella

author: lna

text:
Ciao ragazzi,
mi sapreste suggerire come posso cambiare, via codice, la
tipologia di un
campo in una tabella.
Nome Tabella : Pippo
Nome Campo
: miocampo (di tipo text)
Nuovo tipo di miocampo : date/time - short time
Vi ringrazio in anticipo.
lna
--------------------------------
Inviato via
http://usenet.iol.it


title: Casella di testo

author: Pippo Salemi

text:
Come faccio a ruotare una casella di testo.
Devo inserire in un report una casella di testo in veticale ma tra le
proprieta, impostando il testo in verticale l'orientamento del testo va
dall'alto verso il basso, io ho bisognio del contrario.
Ciao e grazie.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: access2000 + mysql: serve ???

author: Enrico Virginio

text:
Mi sono da poco immerso nel "mondo" di MYSQL visto che se ne parla tanto...
Ho convertito le tabelle da Access a MYSQL, e le ho collegate su DB tramite
ODBC: a parte che ho molti casini...ma, alla fine, a che caspita mi serve usare
MYSQL ??? dove mi č utile ??? forse con piů clients collegati ??? e perche' ???
grazie mille.
--
Posted from
ppp-241-64.25-151.libero.it
 [151.25.64.241]
via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: access2000 + mysql: serve ???

author: Vittò

text:
serve a collegare 1000 pc con funzioni Client (cosě garantito dal manuale),
funzioni di accesso Amministratore/utente , regge sino a 4 tetra Giga By e
costo licenza circa 200 Dollori.
A livello aziendale č una manna, (SQL della microsoft costa L. 19.000.000 a
processore)
Se vuoi reggere un grande volume di dati e condividerlo con piů PC č
l'ideale.
ciao Vittň


title: access2000 + mysql: serve ???

author: Setec Astronomy

text:
"Vittò" <
v.bus...@timenet.it
> ha scritto nel messaggio
news:9ui8jb$p3l$1...@fe1.cs.interbusiness.it...
> serve a collegare 1000 pc con funzioni Client (così garantito dal
manuale),
> funzioni di accesso Amministratore/utente , regge sino a 4 tetra Giga By e
> costo licenza circa 200 Dollori.
Retifica. Mysql è rilasciato sotto licenza GPL opensource gratuito.
Ti consiglio, se ti serve un database engine molto potente (con stored
procedure, trigger e integrità referenziale), interbase della borland,
disponibile dalla versione 6.0 sempre con licenza GPL opensource gratuito.
>
> A livello aziendale è una manna, (SQL della microsoft costa L. 19.000.000
a
> processore)
>
> Se vuoi reggere un grande volume di dati e condividerlo con più PC è
> l'ideale.
>
> ciao Vittò
>
>


title: access2000 + mysql: serve ???

author: Luciano (DOC)

text:
Vittň ha scritto nel messaggio <9ui8jb$p3l$
1...@fe1.cs.interbusiness.it
>...
>serve a collegare 1000 pc con funzioni Client (cosě garantito dal manuale),
>funzioni di accesso Amministratore/utente , regge sino a 4 tetra Giga By e
>costo licenza circa 200 Dollori.
Tera, non tetra...e poi 'sti byte o sono tera o sono giga!!!:-))
>A livello aziendale č una manna, (SQL della microsoft costa L. 19.000.000 a
>processore)
Mi sa che ci'hai messo uno zero di troppo....:-)
>Se vuoi reggere un grande volume di dati e condividerlo con piů PC č
>l'ideale.
Dipende....da quanto e' questo volume ma anche dalla struttura del DB.
Saluti.
Luciano


title: Collegamento BE FE

author: Roberto

text:
Ciao a tutti,
ho dato un'occhiata al sito comune e ho visto che c'è un argomento dedicato
all'AutoLink che permette di relinkare il FE con il BE ma io volevo andare
un pò oltre ossia:
ho un FE che a seconda del valore di una casella vorrei che si associasse a
un BE_1 o BE_2 .... ecc.
Come posso fare?
Grazie
Robby


title: Collegamento BE FE

author: Roberto da casa

text:
"Roberto" <
aris...@libero.it
> ha scritto nel messaggio
news:ak6ga.48771$7y3.1...@twister1.libero.it...

Vai sul Sito Comune e nella Sezione General prova a vedere se può eeserti
d'aiuto leggere la FAQ di Federico Luciani intitolata "'Swicciare' tra vari
back-end, dallo stesso front-end".
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


title: Collegamento BE FE

text:
"Roberto da casa" <
r.ma...@libero.it
> ha scritto nel messaggio
news:kwega.49291$7y3.1...@twister1.libero.it...

Sempre grato Roberto
Vado a vedere
Grazie
Robby


title: listbox  e rowsource complicata...

author: BC

text:
E' un po' complicato ma cerco di spiegarmi meglio che posso con le parole...
nel mio db esiste una tblAnagrafica  con i campi :
id
Cognome
Nome
sesso
Data_di_nascita
Unità_Operativa
Medico
a questa prima tbl è in relazione uno a molti con una seconda (tblFAX) con i
campi
id_rel (il campo della relazione con id della prima tbl)
CodiceUO
data
 esiste quindi una terza tbl (tblArchivioUO)che contiene i campi
id
IstitutoDiTrasferimento
UnOpTrasferimento
Regione
Regime
NumeroFax
A questo punto il tutto è visualizzato in una form che ha come recordsource
tblAnagrafica e in basso una struttura a schede con due linguette...
nella prima, c'è una listbox con  rowsource  la query tra tblfax e
tblArchivioUO
... per cui qui visualizzo tutte le unità operative (UO) che ho scelto per
ogni elemento dell'anagrafica.
fin qui tutto bene...
... nell'altra linguetta ed in un'altra listbox vorrei visualizzare tutte le
UO che non ho ancora scelto...
(volendo posso inviare il prg, capisco che potrei essere non chiaro...)
mi aiutate nell'ultima pia(!) intensione di visualizzazione?
grazie
BC


title: listbox  e rowsource complicata...

author: Marco Pizzamiglio

text:
BC ha scritto:






> .... per cui qui visualizzo tutte le unità operative (UO) che ho scelto per
> ogni elemento dell'anagrafica.
> fin qui tutto bene...
> .... nell'altra linguetta ed in un'altra listbox vorrei visualizzare tutte le
> UO che non ho ancora scelto...
> (volendo posso inviare il prg, capisco che potrei essere non chiaro...)
> mi aiutate nell'ultima pia(!) intensione di visualizzazione?
> grazie
> BC
Nella seconda listbox devi modificare la query. Cambia il tipo di
relazione per includere tutti i record di UO e imposta il criterio Is Null
sul campo id_rel della tabella fax, così otterrai tutti i record di UO che
non hanno un corrispondente in tblfax.
Altrimenti fai una query sulla tabella UO e imposta sotto ID il criterio
Not In (SELECT id_rel FROM tblfax), che esclude le UO che hanno un
corrispondente il tblfax.
Provale entrambe così impari i due diversi sistemi e poi scegline una,
danno lo stesso risultato.
Ciao.
-Marco-
--
namor at inwind punto it
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: listbox  e rowsource complicata...

text:
Non funziona del tutto...
BC


title: listbox  e rowsource complicata...

text:
BC ha scritto:
> Non funziona del tutto...
> BC
Posta l'SQL della query della prima casella, quella che funziona, che
vediamo com'è e come si può fare la seconda.



title: listbox  e rowsource complicata...

text:
rowsource della prima listbox, quella che funziona:
SELECT TblFax.id_rel, tblArchivioUO.id,
tblArchivioUO.IstitutoDiTrasferimento, tblArchivioUO.UnOpTrasferimento,
tblArchivioUO.Regione, tblArchivioUO.Regime, tblArchivioUO.NumeroFax,
tblArchivioUO.notizie FROM tblArchivioUO INNER JOIN TblFax ON
tblArchivioUO.id=TblFax.codiceUO WHERE
(((TblFax.id_rel)=Forms!FrmAnagrafica!Id));
la seconda dovrebbe visualizzare i record NON ancora selezionati per quel
dato Forms!FrmAnagrafica!Id
Grazie
BC


title: listbox  e rowsource complicata...

text:
BC ha scritto:



Nella seconda listbox ricopi la stessa rowsource cambiando solo il
criterio WHERE. Se nella prima mostri i record che hanno ID uguale a
quello della maschera, nella seconda ti basta mostrare quelli che ce
l'hanno diverso.
    WHERE TblFax.id_rel<>Forms!FrmAnagrafica!Id;
Facci sapere se funziona. Ciao.



title: Da sitocomune: compilare un altro modulo e rigenerarlo oppurtunamente modificato.

author: Giuseppe

text:
Ciao a tutti,
Vorrei proteggere una piccola applicazione da me creata utilizzando il n°
seriale dell'HD così come da esempio riportato sul Sitocomune, tale esempio
scriveva il N° seriale "cifrato" in una tabella.
E' possibile, invece, utilizzando l'esempio di cui in oggetto scrivere il N°
seriale in un modulo in modo da renderlo anche invisibile oltre che
"illeggibile"?
In ogni caso tale esempio come va utilizzato? forse non ho capito cosa deve
fare, ma mi dà sempre un errore del tipo "errore di conversione tra i tipi"
o qualcosa del genere (ho cestinato le prove dopo vari tentativi).
Grazie
Giuseppe


title: Far eseguire un File .Exe

author: Porello

text:
Salve a tutti
ho un problema.......ho il mio applicativo che gira sotto Win98 SE e fin qui
tutto a posto , l' altro problema e' che il cliente ha un' altro sistema
operativo installato e vorrei farlo passare all' altro S.O. tramite il mio
applicativo, quindi senza dovergli far toccare Fdisk e le partizioni perchè
sinceramente mi spaventa un po per l'integrita' del suo Pc. Ho visto sul
Sito Comune l'utility di Antogal per lanciare un exe, pero' come faccio a
fargli digitare S per entrare su Fdisk, 2 per scegliere di impostare una
partizione , 2 di nuovo  per attivare la seconda partizione, Esc per uscire
e riavviare?????, chiaramente tutto automatizzato!!!!
Ciao a tutti


title: Far eseguire un File .Exe

author: Panta

text:
"Porello" <
por...@tiscalinet.it
> ha scritto nel messaggio
news:96tt1r$h7u$1...@lacerta.tiscalinet.it...
> Salve a tutti
> ho un problema.......ho il mio applicativo che gira sotto Win98 SE e fin
qui
> tutto a posto , l' altro problema e' che il cliente ha un' altro sistema
> operativo installato e vorrei farlo passare all' altro S.O. tramite il mio
> applicativo, quindi senza dovergli far toccare Fdisk e le partizioni
perchč
> sinceramente mi spaventa un po per l'integrita' del suo Pc. Ho visto sul
> Sito Comune l'utility di Antogal per lanciare un exe, pero' come faccio a
> fargli digitare S per entrare su Fdisk, 2 per scegliere di impostare una
> partizione , 2 di nuovo  per attivare la seconda partizione, Esc per
uscire
> e riavviare?????, chiaramente tutto automatizzato!!!!
> Ciao a tutti
>
Ciao,
    tempo fą avevo fatto qualce cosa del genere per passare dal dos al
prologue con un file.bat dalla parte dos, dovrei cercarlo, se ti interessa
.....
mi accontento di una birretta.....    ,50
ciao,
    panta


title: Far eseguire un File .Exe

text:
"Panta" <
vrob...@tiscalinet.it
> ha scritto nel messaggio
news:96u95o$khm$1...@pegasus.tiscalinet.it...
> "Porello" <
por...@tiscalinet.it
> ha scritto nel messaggio
> news:96tt1r$h7u$1...@lacerta.tiscalinet.it...
> > Salve a tutti
> > ho un problema.......ho il mio applicativo che gira sotto Win98 SE e fin
> qui
> > tutto a posto , l' altro problema e' che il cliente ha un' altro sistema
> > operativo installato e vorrei farlo passare all' altro S.O. tramite il
mio
> > applicativo, quindi senza dovergli far toccare Fdisk e le partizioni
> perchè
> > sinceramente mi spaventa un po per l'integrita' del suo Pc. Ho visto sul
> > Sito Comune l'utility di Antogal per lanciare un exe, pero' come faccio
a
> > fargli digitare S per entrare su Fdisk, 2 per scegliere di impostare una
> > partizione , 2 di nuovo  per attivare la seconda partizione, Esc per
> uscire
> > e riavviare?????, chiaramente tutto automatizzato!!!!
> > Ciao a tutti
> >
> Ciao,
>     tempo fà avevo fatto qualce cosa del genere per passare dal dos al
> prologue con un file.bat dalla parte dos, dovrei cercarlo, se ti interessa
> .....
> mi accontento di una birretta.....    ,50
> ciao,
>     panta
>
> Anche 200 di birrette
CIao Pantale'


title: Campi testo

author: Mauro B.

text:
Stň cercando di gestire un evento click su campi testo nominati da I1 a I8,
il mio problema č che devo eseguire otto volte lo stesso codice.
Per ora ho risolto con un modulo unico con una matrice dim I(8) ma non sono
ancora soddisfatto.
Domanda č possibile in qualche modo assegnare ad una variabile il nome del
campo di testo concatenandola con il numero relativo, ad esempio;
dim StrProva as string
StrProva="I" & 1
ecc.
cosě ho provato, ma quando devo ritornare il valore al campo testo genera un
errore es. StrProva="valore" vorrei che il campo testo I1 contenga la
scritta valore.
Spero di essermi spiegato, ringrazio chi volesse aiutarmi.


title: Campi testo

author: Esteban

text:
"Mauro B." <
Textur...@tin.it
> wrote in message
news:18iL6.7493$Rc5.1...@news2.tin.it...

Dim StrProva as String
StrProva = Me("I" & 1)
ecc.
Ciao!
Esteban
Hosted by
www.seber.it


title: Campi testo

text:
"Esteban" <
Est...@news.it
> ha scritto nel messaggio
news:MqiL6.13040$RX4.8...@news.infostrada.it...

OK grazie proverň
ciao


title: Criteri nelle date

author: Giorgio M

text:
Salve
Ho una query di selezione
Nel campo DATA_DOC ho inserito nei critery:
Between [Forms]![mia scheda]![DATA DAL] And [Forms]![mia scheda]![DATA AL]
se nei due campi della maschera č presente una data funziona benissimo
io vorrei che se nella maschera nei campi DATA DAL e DATA AL non inserisco
niente la query mi visualizzasse tutti i record.
adesso se non inserisco nessuna data non mi restituisce nessun record.
Grazie
Ciao
Giorgio
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Criteri nelle date

author: Karl Donaubauer

text:
Giorgio M wrote:
> Ho una query di selezione
> Nel campo DATA_DOC ho inserito nei critery:
>
> Between [Forms]![mia scheda]![DATA DAL] And [Forms]![mia
> scheda]![DATA AL]
>
> se nei due campi della maschera è presente una data funziona benissimo
>
> io vorrei che se nella maschera nei campi DATA DAL e DATA AL non
> inserisco niente la query mi visualizzasse tutti i record.
>
> adesso se non inserisco nessuna data non mi restituisce nessun record.
Criterio che restituirà tutti i record
www.donkarl.com/it?FAQ3.14
--
HTH
Karl
*********
Access FAQ:
www.donkarl.com/it


title: riproposta foto su report

author: Luciano

text:
ciao
ripropongo la cosa perchè non so dove sbattere la testa.
in un db ho una maschera atleti che carica da un campo ole una foto
collegata. Naturalmente cambiando record cambia la foto.
Allo stesso scopo ho creato un report ma non riesco, dopo averle provate
quasi tutte, a caricarci anche lì la foto. nè con cornice oggetto associato
nè non associato ( e non so quante altre ne ho provate..) ho perfino
studiato un report analogo nel  db di Nwind nei Samples di Access e mi pare
di aver ricostrito gli stessi passaggi. Non mi sembrava una cosa così
complicata,sulla maschera funziona benissimo.
grazie mille


title: riproposta foto su report

author: Pablitomf (Maurizio Facciuti)

text:
"Luciano" <
lu.s...@aliceposta.it
> ha scritto nel messaggio
news:angte.42505$75.23...@news4.tin.it...

Scusa io non ho seguito i Post precedenti... ma quel'è il problema delle
immagini sui report?...
Hai un campo Path nella Tabella dove hai registrato il percorso
dell'immagine del record singolo?
Bene! E allora nella sezione corpo del report sull'evento Formattazione usi
questo codice :
Me.Tua_Immagine.Picture = Me.Tuo_Campo_Percorso_Immagine


title: riproposta foto su report

author: Roberto dalla campagna

text:
"Luciano" <
lu.s...@aliceposta.it
> ha scritto nel messaggio
news:angte.42505$75.23...@news4.tin.it...

Se non ho capito male, come origine record del report hai una tabella nella
quale c'è un campo di tipo OLE che contiene un immagine.
Se questo è vero, nel corpo del report inserisci una Cornice oggetto
associato nella cui origine controllo scrivi/selezioni il nome del campo di
tipo OLE. Di solito si imposta a Zoom la proprietà Modalità
Ridimensionamento del controllo Cornice di cui sopra.
Tutto qui.
Comunque, se non ricordo male, ti avevo sconsigliato di memorizzare delle
immagini in un campo di tipo OLE di una tabella e ti avevo segnalato delle
FAQ del Sito Comune da leggere.
--
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------


title: Access 2003 Dev Extensions ed Inno setup, quale connubio

author: Claudio

text:
salve a tutti
finalmente sono arrivato alla fine del mio pacchetto, o almeno spero
per motivi di opportunità ho usato Access2003
mi trovo adesso nel problema di dover creare il pacchetto, logica vuole
che non posso usare Developer XP, un collega mi ha prestato appunto il
developer di access2003.
Quest'ultimo mi ha lasciato mooolto deluso, infatti qui non posso
interagire con la crazione del pacchetto come potevo fare con la
versione xp. Non posso cambiare icona, non posso inserire nuove voci
nel menù di avvio.
premesso questo, cosa posso fare??
1) posso usare developer XP per la crazione di un pacchetto per un DB
di access2003, o le runtime sono diverse
2) come posso integrare le runtime con innosetup, cioè come posso
creare il pacchetto con con inno setup integrando le runtime??
grazie
a presto
Claudio


title: [OT] File Excel non si apre più.

author: Zanna

text:
Durante l'ultimo salvataggio di un file in Excel, ho deciso di impostare una
password per l'apertura e una (anche se la stessa identica) per la modifica
del file. Ho quindi dato per le due opzioni di protezione la stessa
password.
Ebbene, alla riapertura del file per aggiornamenti, dopo avere immesso la
prima password, al momento dell'immissione della seconda, Excel restituisce
il famigerato messaggio d'errore "Questo programma ha eseguito una
operazione non valida e sarą terminato...".
In dettaglio:
-------------------------------------------------------------------------
EXCEL ha provocato un errore di pagina non valida nel
modulo MSO97.DLL in 015f:30705766.
Registri:
EAX=013a0018 CS=015f EIP=30705766 EFLGS=00010206
EBX=013a000c SS=0167 ESP=00629894 EBP=00001020
ECX=00007b48 DS=0167 ESI=0062fffe FS=1357
EDX=00023c00 ES=0167 EDI=013a4ef8 GS=5e2e
Byte all'indirizzo CS:EIP:
f3 a5 8b ca 83 e1 03 f3 a4 5f 5e c3 8d 14 31 3b
Immagine dello stack:
0062b11e 00023c00 30001065 013a0018 0062b11e 00023c00 3021073c 0062b11e
013a0018 00023c00 00000000 0062b11c 0062a828 00465d4c 301c4ad3 0062b11c
-------------------------------------------------------------------------
Ho anche tentato di aprirlo in sola lettura, immettendo solo la prima
password, ma l'errore č lo stesso.
Il file č in formato Office 97, ho anche tentato di aprirlo con Office 2000,
importandolo da Access 97, ma senza risultati.
Quale soluzione? Esiste un programma "recover" di file corrotti .xls?
Grazie in anticipo!


title: Un altro utente sta tentando di modificare gli stessi dati (tabella SQL tramite ODBC, solo su record nuovi...)

author: Davide La Mantia

text:
Ciao
ho un db con tabelle collegate tramite ODBC da SQL Server.
Si verificano alcune strane anomalie, del tipo che un'istruzione DELETE vada in errore senza essere eseguita, o che ci vada una semplice SELECT, ma solo in alcuni punti del codice.
Altra anomalia, posso inserire manualmente un record in tabella ma non posso più modificarlo o eliminarlo, ricevo il messaggio in oggetto. Un problema di chiavi primarie direte, ma invece no.
Non solo le chiavi primarie ci sono, ma posso tranquillamente modificare i record già esistenti, ma non quelli che aggiungo.
Ovviamente mi sta sfuggendo qualcosa, data l'ora, quindi se qualcuno mi fa notare cosa lo ringrazio davvero!

Davide


author: Potone

text:
Il giorno giovedì 16 novembre 2017 01:21:46 UTC+1, Davide La Mantia ha scritto:
> Ciao
[CUT]
> Davide

Ciao,
per le "strane anomalie" bisognerebbe restringere un po' il campo: che tipo di tabella, che connessione, che errore/anomalia.

Riguardo l'aggiornamento dei record appena inseriti:
Dici "posso inserire manualmente" quindi la tabella è collegata e aprendola direttamente dall'interfaccia di access (o usi un form o altro?) inserisci un record, passi al successivo, torni al precedente e tentando di modificarlo la cosa fallisce?
Non è che la definizione della tabella è stata modificata in sql e non è stato aggiornato il collegamento in Access?
Esiste un campo timestamp su questa tabella?
Di che tipo è la chiave primaria?

Ciao
Mat.


text:
Il giorno giovedì 16 novembre 2017 10:55:27 UTC+1, Potone ha scritto:

Ciao
> Ciao,
> per le "strane anomalie" bisognerebbe restringere un po' il campo: che tipo di tabella, che connessione, che errore/anomalia.

Mi sembrava di averlo specificato, tabelle SQL Server connesse tramite ODBC

> Riguardo l'aggiornamento dei record appena inseriti:
> Dici "posso inserire manualmente" quindi la tabella è collegata e aprendola direttamente dall'interfaccia di access (o usi un form o altro?) inserisci un record, passi al successivo, torni al precedente e tentando di modificarlo la cosa fallisce?

Esattamente. Di contro i record esistenti sono tranquillamente modificabili

> Non è che la definizione della tabella è stata modificata in sql e non è stato aggiornato il collegamento in Access?

I collegamenti sono stati eliminati e ricreati

> Esiste un campo timestamp su questa tabella?

No

> Di che tipo è la chiave primaria?

ID int IDENTITY(1,1) NOT NULL

Tieni conto che lavoro con tabelle collegata ad Access con database SQL dal 1998, mai vista una cosa così.
Ovviamente deve trattarsi di un problema della tabella, ma onestamente non capisco la causa.

Ciao


text:
Operi esclusivamente da Form intendo bene...?
Non apporti modifiche o altro da codice su RS...?
Puoi provare a mettere un Breack su BeforeUpdate di Form e verificare la proprietà Dirty...?

Mi viene il dubbio che qualche cosa rimanga appeso... Ma è decisamente anomalo.

@Alex


author: Roberto Fabbri

text: Il problema dovrebbe essere il campo timestamp


text:
Il giorno giovedì 16 novembre 2017 13:49:22 UTC+1, Davide La Mantia ha scritto:
> Il giorno giovedì 16 novembre 2017 10:55:27 UTC+1, Potone ha scritto:
>
> Ciao
> > Ciao,
> > per le "strane anomalie" bisognerebbe restringere un po' il campo: che tipo di tabella, che connessione, che errore/anomalia.
>
> Mi sembrava di averlo specificato, tabelle SQL Server connesse tramite ODBC
>
> > Riguardo l'aggiornamento dei record appena inseriti:
> > Dici "posso inserire manualmente" quindi la tabella è collegata e aprendola direttamente dall'interfaccia di access (o usi un form o altro?) inserisci un record, passi al successivo, torni al precedente e tentando di modificarlo la cosa fallisce?
>
> Esattamente. Di contro i record esistenti sono tranquillamente modificabili
>
> > Non è che la definizione della tabella è stata modificata in sql e non è stato aggiornato il collegamento in Access?
>
> I collegamenti sono stati eliminati e ricreati
>
> > Esiste un campo timestamp su questa tabella?
>
> No
L'unica cosa che mi viene in mente è che, non essendoci il timestamp, Access cerchi di verificare la versione del record confrontando campo per campo e non riesca a farlo.
Magari c'è qualche campo di tipo "insolito" all'interno della tabella, non i soliti int, varchar ma binary, geography, datetimeoffset



text:

Ciao Alex,
il problema si verifica sia direttamente operando sulla tabella, sia tramite recordset.

NON c'è campo timestamp, in nessuna tabella dei miei molti database SQL che uso normalmente senza problemi.
non ci sono campi di tipo strano.

Ecco a voi la query che ha creato la tabella:

CREATE TABLE [dbo].[Programmazione](
	[IDProg] [int] IDENTITY(1,1) NOT NULL,
	[IDFase] [int] NULL,
	[IDOperatore] [int] NULL,
	[DataOra] [datetime] NULL,
	[TempoImpiegato] [int] NULL,
	[Terminata] [bit] NULL,
	[CodiceCapo] [nvarchar](255) NULL,
	[Quantita] [int] NULL,
	[IDColore] [int] NULL,
	[IDTaglia] [int] NULL,
	[IDPia] [int] NULL,
	[IDLista] [int] NULL,
	[Sequenza] [int] NULL,
	[InLavorazione] [int] NULL,
	[IDGruppo] [nvarchar](255) NULL,
	[Auto] [int] NULL,
	[Scarta] [bit] NULL,
	[TempoPreparazione] [int] NULL,
 CONSTRAINT [PK_Programmazione] PRIMARY KEY CLUSTERED
(
	[IDProg] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

Senza censure...

Non ci sono vincoli con altre tabelle o altre limitazioni.
La query NON è stata modificata dopo la creazione tramite questo codice.
La tabella è stata riempita con una query di accodamento da una tabella identica senza problemi (questi sono i record che risultano modificabili in access)

Tentativi eseguiti:
Compatta e ripristina
Creazione DB vuoto e reimportazione di tutti gli oggetti
Eliminazione della tabella collegata e ricollegamento

Accetto sempre suggerimenti

Ciao
Davide


text:
Il giorno giovedì 16 novembre 2017 16:28:50 UTC+1, Davide La Mantia ha scritto:
CUT
> La query NON è stata modificata dopo la creazione tramite questo codice.
CUT

Volevo dire che la tabella non è stata modificata dopo la creazione...


text:

Ciao
il problema sono i campi bit che rimangono Null (access "pretende" che siano True o False).
Aggiungi un Default constraint che metta a 0 il valore del campo durante la creazione.

Ciao
Mat.


text:
Il giorno giovedì 16 novembre 2017 16:45:43 UTC+1, Potone ha scritto:
[CUT]
Mi permetto un consiglio spassionato: l'aggiunta di un campo timestamp alle tabelle che usi collegate in Access farebbe risparmiare alle tue applicazioni svariate interrogazioni complesse per verificare le modifiche concorrenti, che si traducono in minore larghezza di banda usata sulla rete e risorse sul server libere per altri scopi.
Nel caso specifico di questo post il timestamp avrebbe ovviato anche problema dei bit Null (seppur con Access è meglio avere i bit impostati a 0).

Ciao
Mat.


text:
Salve Davide,

Davide La Mantia:
> ...
> NON c'è campo timestamp, in nessuna tabella dei miei molti database SQL che uso normalmente senza problemi.
> non ci sono campi di tipo strano.
>
> Ecco a voi la query che ha creato la tabella:
>
> CREATE TABLE [dbo].[Programmazione](
> 	[IDProg] [int] IDENTITY(1,1) NOT NULL,
> 	[IDFase] [int] NULL,
> 	[IDOperatore] [int] NULL,
> 	[DataOra] [datetime] NULL,
> 	[TempoImpiegato] [int] NULL,
> 	[Terminata] [bit] NULL,
> 	[CodiceCapo] [nvarchar](255) NULL,
> 	[Quantita] [int] NULL,
> 	[IDColore] [int] NULL,
> 	[IDTaglia] [int] NULL,
> 	[IDPia] [int] NULL,
> 	[IDLista] [int] NULL,
> 	[Sequenza] [int] NULL,
> 	[InLavorazione] [int] NULL,
> 	[IDGruppo] [nvarchar](255) NULL,
> 	[Auto] [int] NULL,
> 	[Scarta] [bit] NULL,
> 	[TempoPreparazione] [int] NULL,
>   CONSTRAINT [PK_Programmazione] PRIMARY KEY CLUSTERED
> ...

Anche per me sembra di essere la mancanza di un Timestamp che
personalmente uso in ogni tabella che viene collegata ad Access. Basta
già p.e. il campo
[Terminata] [bit] NULL
per poter dare problemi in rispetto ad essere paragonabile/aggiornabile.

Vedi il paragrafo "Supporting Concurrency Checks" nel classico articolo
di Andy Baron:

https://technet.microsoft.com/en-us/library/bb188204(v=sql.90).aspx#optaccsql_topic3

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

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


text:

Karl è il migliore, non ci sono dubbi.
Infatti è proprio il campo bit a dare problemi.

E dire che lo sapevo qualche anno fa, ma mi ero completamente dimenticato.

La memoria comincia a presentare qualche buco, sarà l'età...

Ciao
Davide


text:

Hai perfettamente ragione.
Grazie


text:

Sto valutando anche questa modifica, farò delle prove di prestazione.

Ciao


title: Riportare focus su applicazione

author: Rox

text:
Dopo una shell con focus, vorrei riportare il focus sulla mia applicazione
access
Come fare?
--
*****************************
** Harry Evans - Bolzano
** Clipper Specialist & Magician
** e-mail:
harry...@tin.it
*****************************
---------------------------------------------------------
->C.N.G.E.I. - Sezione di Bolzano
->
www.edp-progetti.it/cngei.bz
---------------------------------------------------------


title: Esportazione excel,non banale...

author: Marco del Frari

text:
Ciao a tutti,
ho un problemino. e non so neppure se è risolvibile!!
Semplificando lo schema:
----Tabella Anagrafica :   -----
ID
Nome
Cognome
-----Tabella Telefoni:   -----
ID
IDAnagrafica
Numero
E' possibile esportare un file excel contenente solo due colonne:
nella prima: il nome della persona
nella seconda: l'elenco di tutti i telefoni che quella persona possiede??
Es:
_______________________________
ROSSI     |      0430 303030
                |      0433  213432
                |      0217 123831
_______________________________
Ringrazio anticipatamente....


title: Esportazione excel,non banale...

author: Riccardo

text:
Marco del Frari <mdel...@alfacon.it@nospam> wrote in message
8vglor$9fb$1...@serv1.iunet.it...

########
Ma non ti conviene in questo modo?
ROSSI     |      0430 303030
ROSSI     |      0433  213432
ROSSI     |      0217 123831
anche perche' poi in excel avresti dei campi vuoti, se in qualche modo poi
ti ordini la tabella ti si scombina tuitto!
ciao Riccardo


title: Sovrascrivere una tabella su un database

author: pang

text:
Salve dovrei copiare diverse tabella da un database ad un altro che però ha
gia quelle tabelle presenti.
Allora tramite macro eseguo diversi copia oggetto, inserendo nel campo
database di destinazione il nome del database su cui copiare le tabelle.
Il problema è che essendo presenti già quelle tabelle access mi avverte e
ogni volta devo confermare tale sovrascrittura.
Siccome le tabelle sono una trentina e più, sta cosa rompe un po' le balle.
C'è un modo per evitare ciò
Grazie, pang.


author: Sergio MAZZA

text:

Tramite macro, trovi l'azione "Imposta avvisi"...
Ciao.
P.S. Comunque l'oggetto (di questo messaggio) che hai scritto è fuorviante.
--
Sergio MAZZA


title: Numero massimo di colonne in ComboBox

author: Filippo

text:
Salve,
come da oggetto ho il seguente problema tra Win2000 e Access2000 da un
lato e XP e Access2003 dall'altro.
In XP/A2003 mi accade che un combobox (qualsiasi combobox) non mi
accetti pi� di 20 colonne (propriet� .columncount) sia a run time che
a design time (nel primo caso mi d� un errore non intecettabile e
chiude il programma).
In Win2000 e Access 2000 non ho il problema, e carico tranquillamente
come RowSource del Combobox una query di 40 colonne.
Al di l� del fatto che potrebbe non essere un approccio corretto (mi
aspetto che qualcuno dica che 40 colonne sono troppe e ci deve essere
un errrore nella logica del programma, e potrei anche essere
d'accordo) mi chiedo per� come ci� sia possibile e, soprattutto, quale
potrebbe essere il rimedio, senza dover riscrivere tutto.
Grazie
Filippo


title: Numero massimo di colonne in ComboBox

author: MA

text:
"Filippo" <
f....@panservice.it
> ha scritto nel messaggio
news:41beb5p5ikqegamoi...@4ax.com...

Non ci sono problemi a superare il limite di 20 colonne, il problema � da
qualche altra parte


title: Numero massimo di colonne in ComboBox

text:


Non � cos�.
Se in XP/Access2003 crei una combobox con la procedura 'Creazione
automatica casella combinata' dopo che hai selezionato la query di
origine, se selezioni pi� di venti colonne appare un messaggio di
errore che dice esattamente Impossibile usare pi� di venti colonne (o
qualcosa del genere)
In W2000/Access 2000 questo non accade. Strano no?
Ciao
Filippo


title: Numero massimo di colonne in ComboBox

author: miciomao

text:
Raggruppa più campi in uno solo, ce ne sarà qualcuno sacrificabile,
qualcuno mica tutti.
es.: IND2: [CAP] & " " & [Localita] & " (" & [PROV] & ")"
Ciao
Alex


title: Numero massimo di colonne in ComboBox

text:
On Tue, 22 Sep 2009 11:05:05 -0700 (PDT), miciomao
<
audi...@tiscali.it
> wrote:
>Raggruppa pi� campi in uno solo, ce ne sar� qualcuno sacrificabile,
>qualcuno mica tutti.
>
>es.: IND2: [CAP] & " " & [Localita] & " (" & [PROV] & ")"
>
>Ciao
>Alex
Certo, potrei fare cos�, ma non riesco a capire perch� lo debba fare
se uso XP/Access2003 mentre tutto fila liscio, e da anni, su
W2000/Access2000. Lo trovo strano
Comunque grazie
Filippo


title: maschera molti a molti

author: mino

text:
Vi chiedo cortesemente aiuto per costruire una maschera.
Ho costruito un database che deve gestire una biblioteca e l'ho fatto
in questa maniera:
1) tabella Autori
2) tabella Libri
3) tabella di raccordo AutoriLibri
4) tabella Editori.
Le tabelle sono collegate secondo i requisiti indicati in questo
gruppo e molti libri su access: libri e autori hanno una relazione
molti a molti ed Editori è uno a molti con tabella Libri.
Il mio problema però nasce nella costruzione di una maschera che mi
permetta di inserire il titolo di un libro in alto
e sotto gli autori e le case editrici (perchè ho visto che un libro
può essere edito da più case editrici e scritto da più autori).Ho
fatto parecchie prove senza trovare una soluzione.Voi pensate che è
giusto fare una cosa del genere, sono necessarie più tabelle,c'è una
soluzione migliore, insomma qual'è il modo migliore per gestire questo
database dal punto di vista della/e maschere?
Ringrazio in anticipo gli esperti del gruppo per un eventuale
consiglio  chiarificatore.

       Grazie


title: maschera molti a molti

author: Beppe

text:

Se un libro può avere più editori e ovviamente un editore più libri,
devi strutturare il db con una relazione molti a molti tra libri ed
editori, come hai fatto per gli autori.
A quel punto creandoti una maschera per il libro sarà facile impostare
delle sottomaschere - una per gli editori e una per gli autori - che
ti consento di gestire l'inserimento corretto.
Buon lavoro!


title: maschera molti a molti

text:

Sono tornato adesso dal lavoro e mi applicherò a seguire questo
suggerimento al più presto.
Intanto grazie per la risposta.


title: Cambio proprieta' tramite oggetto QueryDefs

author: Enrico T.S.

text:
Utilizzando l'oggetto QueryDefs con  AccessXp
c'e' qualcuno che mi sa spiegare come cambiare
l'attributo "visibile" di una query ?
Oppure esiste un'altra via per fare cio'?
Lo strano è che esistono altri attributi (tipo Description se usata), ma
quello di visibilita' no oppure non so proprio come si chiami.
Grazie in anticipo.


author: Alessandro Baraldi

text:

QueryDefs è una collection, QueryDef è l'oggetto....
Nel tuo caso però non serve a nulla....
Application.SetHiddenAttribute acQuery, "NomeQuery", True
@Alex


title: INFO

author: Yani

text:
Salve a tutti..
Sono nuovo e vorrei sapere dove posso reperire informazioni sull'utilizzo di
access..
PS.
Non ho mai utilizzato access e quindi sono alle prime armi..
Grazie.


title: INFO

author: Antonio Biso

text:
"Yani" <
ya...@inwind.it
> ha scritto nel messaggio
news:ancere$7vo$1...@fe1.cs.interbusiness.it...

E magari non sai neanche nulla di database relazionali, tanto meno di
programmazione eh?
SIGH...
Prova a vederti i database di esempio della microsoft northwind ed esempi.
Poi spulciati pesantemente l'help.
Antonio


title: INFO

author: MIX

text:
Passa a DB HORECA della Comesoft e lascia perdere Access per il momento.
Cordialità.
Toni


title: INFO

author: Jojo

text:
"MIX" <
ton...@inwind.it
> wrote:

Sei lo stesso Toni che su it.comp.appl.horeca ha consigliato di usare
Access?


title: INFO

text:
"Jojo" <sup...@pirotti.ct> ha scritto nel messaggio
news:aabmpukvichod39op...@4ax.com...

ROTFL!!!
Antonio


title: intervallo di dati

author: Antonio

text:
Ciao a tutti
Ho la necessità di filtrare i dati di una query tramite comando con
pulsante, esattamente:
Nella query ho un campo "data"  come posso filtrare un intervallo di date ?
per esemio da 01/01/02  a 01/05/02
senza dover aprire ogni volta la query ?


title: intervallo di dati

author: massimiliano

text:
>Nella query ho un campo "data"  come posso filtrare un intervallo di date
>?
>per esemio da 01/01/02  a 01/05/02
>senza dover aprire ogni volta la
query ?
creati la maschera e inserici due controlli non associati
sull'apertura imposta tuocontrollo1 a 1/1/01 come defaultvalue
e date
(cioè la data aggiornata tuocontrollo2.
inserisci un requery su
afterupdate di tuocontrollo1 e tuocontrolo2
crea una query e come
criterio inserisci between forms!tuamaschera!tuocontrollo1 and
forms!tuamaschera!tuocontrollo2.
così facendo all'apertura della
maschera potrai vedere tutti i dati, poi se modifichi la data di inizio e/o
quella di fine lui ti restringerà il campo di ricerca.
ciao
MAssimiliano
--------------------------------
Inviato via
http://usenet.iol.it


title: PROBBLEMI SU USO DI AUTOLINK

author: Michele

text:
Ho scaricato dal sitocomune il file denominato Autolink di Alessandro
Baraldi, ma utilizzandolo ho riscontrato delle difficoltà di
funzionare sul mio database che sono:
1° inserendo la password sul file dove ci sono le tabelle dei dati che
devono essere collegate al DB principale, non mi permette
l'importazione e controllando il codice non sono riuscito ad
individuare il punto dove dovrebbe essere inserita la PASSWORD.
2° Escludendo la PASSWORD mi permette di fare il collegamento ma
indicandogli di eseguirlo nello stesso PATCH, esegue la procedura
importa le tabelle, ma mi richiede nuovamente di ripeterla.
Volevo chiedervi se sto commettendo qualche errore e se potreste darmi
la soluzione. Grazie
Michele


title: PROBBLEMI SU USO DI AUTOLINK

text:
"Michele" <
mike...@tiscali.it
> wrote in message
news:803dba50.04060...@posting.google.com

Quell'esempio in effetti ha alcuni Bags mai affrontati, ma se
il tuo DB è unico e di conseguenza la PWD è sempre quella ti conviene
alleggerire la Routine e passare alla proprietà Connect
dell'oggetto Tabledefs la stringa di connessione che magari
salvi in un File esterno o in un Registro....!
Ciao.
@ALex.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: PROBBLEMI SU USO DI AUTOLINK

text:
"Alessandro Baraldi" <
ik2...@libero.it
> wrote in message news:<
2647ad4104b630df62...@mygate.mailgate.org
>...

Ciao @Alex il database è purtroppo diviso in due,i motivi sono
dimensione troppo grande del database principale, e per avere sempre i
dati in un database esternmo PER SICUREZZA, volevo chiederti a te e al
NG, se potreste indicarmi una soluzione su come proteggere con
PASSWORD i due database.
IL principale vi sono le tabelle collegate al secondo database, con le
varie mascchere ecc...,  il secondo ci sono solo le tabelle dei dati.
Grazie
MICHELE


title: Possibilità di spostare i margini di stampa

author: Santilli Marco

text:
La stampa andrà a riempire un foglio già casellato..... per capirci ad
esempio un bollettino del contocorrente, quindi ho questo porblema che da
stampanta a stampante mi cambia il margine di inizio stampa sia superiore
che laterale
C'è un modo per dirgli i millimtri di spazio de deve lasciare in modo che
ogni opersona si fa la sua taratura senza entrare nel report perchè gli
utenti non sanno come funziona??????
Ciao e grazieeeeeeeeeee
__________________________________________________________________ Marco
Marco ICQ#: 50378902 Current ICQ status: + More ways to contact me
__________________________________________________________________


text:
"Santilli Marco" <
marco.s...@libero.it
> ha scritto nel messaggio
news:bnq7dt$8c8$1...@grillo.cs.interbusiness.it...

Dai un'occhiata nell'help alla voce: Impostare le opzioni da Visual Basic e
Metodi GetOption, SetOption
Ciao.
--
Sergio MAZZA


title: da Elio

author: Elio

text:
Come si fà a toglie la barra di stato tramite codice ?
Grazie


title: da Elio

author: cidi

text:
"Elio" <
august...@tin.it
> ha scritto nel messaggio
news:WafFb.29188$0w.14...@news2.tin.it...
> Come si fà a toglie la barra di stato tramite codice ?
> Grazie
>
Ciao Elio
In questo Ng ci sono delle regole ...una è quella di mettere un Oggetto
significativo del problema proposto. Le altre le puoi trovare sul post: come
ci si dovrebbe comportare in un newsgroup di Roberto oppure nel manifesto
del gruppo di coordinamento.
Ciao Daniele


title: da Elio

author: ALESSANDRO Baraldi

text:
"cidi" <
dadonzin...@tin.it
> ha scritto nel messaggio
news:iQfFb.21396$wM.17...@news1.tin.it...

Ecco.
Adesso ci siamo.
@ALex.


title: da Elio

text:
"Elio" <
august...@tin.it
> ha scritto nel messaggio
news:WafFb.29188$0w.14...@news2.tin.it...
> Come si fà a toglie la barra di stato tramite codice ?
> Grazie
Tu devi essere il cuGGino di Augusto!!!
Antonio


title: Nr max utenti per un DB Access

author: Ste Vise

text:
Con un DB access condiviso in un server c'è un nr max di accessi
contemporanei perchè non ci siano problemi?
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: Nr max utenti per un DB Access

author: Donato

text:
"Ste Vise" <
> Con un DB access condiviso in un server c'è un nr max di accessi
> contemporanei perchè non ci siano problemi?
Se la rete funziona a strappi problemi ne avrai anche con due!
Ma non è una regola generale: ho visto di tutto in giro, anche .mdb
condivisi tra decine di clients funzionare decentemente (cose piccole usate
prevalentemente in lettura).
Se invece mi parli di una procedura impegnativa, diciamo che con rete a 100
mb/s puoi arrivare senza problemi a sette-otto clients.
Attenzione, procedura impegnativa ma scritta bene: alcuni pacchetti
commerciali che bazzicano sono talmente pesanti da esser ingolfati perfino
in monoutenza: ma la colpa non è di jet.
Donato


title: Tabella collegata da Excel

author: Ghepardo

text:
Ciao,
non riesco a trovare l'help sul sitocomune perchč non mi funziona la
ricerca, ho problemi con il java e non voglio rischiare di sputtanarmi le
impostazioni di explorer visto che mi servono cosě come sono.
Ad ogni modo, ho una tabella collegata ad un file di excel che aggiorno ogni
settimana. Vorrei fare inmodo che l'aggiornamento di questa tabella avvenga
tramite codice?
Ho visto da google che devo usare tabledef, connect e refreshlink ma in
tutti i testi  vedo che state collegando tabella da altri db. Non č il mio
caso. Inoltre, non vedo dove gli si dice il nome della tabella che vedo
dalla finestra del database ("UTC"). A me non serve fare una tabella che
rimanga solo in memoria durante l'esecuzione del codice, č una tabella dalla
quale devo attingere per diverse cose, mi sapete aiutare?
La tabella si chiama UTC e poniamo prenda i dati dal file D:\utc.xls
Grazie a tutti,
Ciao!


title: Tabella collegata da Excel

author: Sergio MAZZA

text:

Fai un collegamento (File - Collega dati esterni - collega tabelle - tipo di
file: Excel) al foglio excel e con una query di accodamento riempi la
tabella...
Ciao.
P.S. Da codice VBA vedi help alla voce: metodo OpenQuery.
--
Sergio MAZZA


title: Abilitare la cancellazione su condizione.

author: Luke Skywalker

text:
Ciao A tutti.
Sono nuovissimo di questo NG, e quindi farò domande forse banali. Vi prego
di scusarmi.
Ho la necessità di risolvere questo problema:
Evitare la cancellazione di una riga in una Form solo dopo verifica di una
condizione ( divieto di eliminare fatture già stampate).
Come fare??
Grazie mille
Marco Bandera


author: LaLo

text:
"Luke Skywalker" <
mab...@libero.it
> ha scritto nel messaggio
news:x3H46.5913$jT6.2...@twister2.tin.it...

Se hai un test che verifica la condizione di non cancellazione allora,
sull'evento 'Su eliminazione' della maschera basta inserire:
If <Test> Then
    Cancel = True
    <Messaggio di non cancellazione> ad esempio: Msgbox "Record non
cancellabile"
End If
Ciao
LaLo


author: Riccardo

text:
Luke Skywalker <
mab...@libero.it
> wrote in message
x3H46.5913$jT6.2...@twister2.tin.it...

_________
Se hai un controllo che ti indica se la fattura è già stata stampata (es.
Casella di controllo con valori 0 -1), puoi usare
if me.controllo=0 then  ....codice per eliminare il record
se poi vuoi controllare bene i dati ed inserire un messaggio di avvertimento
ti crei un msgbox
ciao Riccardo


text:
Grazie......... anche se devo essermi spiegato male. Mi serviva il
contrario.
Evitare la cancellazione.
Grazie comunque



text:
GRAZIE



text:
Grazie!



author: Silvio Berruti

text:
"Luke Skywalker" <
mab...@libero.it
> ha scritto nel messaggio
news:FTH46.5998$jT6.2...@twister2.tin.it...
> GRAZIE
Sei pregato di rispondere dopo i messaggi precedenti.
Grazie.
--
Silvio
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access


author: Roberto dal portatile

text:
"Luke Skywalker" <
mab...@libero.it
> ha scritto nel messaggio
news:x3H46.5913$jT6.2...@twister2.tin.it...

Ipotizzando che nella maschera hai un controllo di tipo SI/NO chiamato Flag
e che lo poni a SI se la fattura è stata stampata, a fronto dell'evento "Su
eliminazione" della tua maschera genera il seguente codice VBA:
IF Me!Flag = True
    Cancel = True
    MsgBox "Questa fattura non può essere cancellata perchè già stampata"
End If
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://members.xoom.it/it_db_access/
---------------------------------------------


text:
"Luke Skywalker" <
mab...@libero.it
> ha scritto nel messaggio
news:FTH46.5997$jT6.2...@twister2.tin.it...
> Grazie!
[CUT]
>
Prego ... ma cerca di scrivere dopo il quoting.
Ciao
LaLo


text:
Con molto piacere............ ma non capisco cosa intendi per "dopo i
messaggi precedenti"
Luke
"Silvio Berruti" <
s...@libero.it
> ha scritto nel messaggio
news:n0I46.232138$hk4.10...@news.infostrada.it...



text:
"Luke Skywalker" <
mab...@libero.it
> ha scritto nel messaggio
news:CcI46.6014$jT6.2...@twister2.tin.it...
> Con molto piacere............ ma non capisco cosa intendi per "dopo i
> messaggi precedenti"
> Luke
>
Significa esattamente "dopo i messaggi precedenti", come sto facendo io
adesso e non come hai fatto tu che hai risposto anteponendo la risposta ai
messaggi a cui rispondevi.
:-P



text:
"Silvio Berruti" <
s...@libero.it
> ha scritto nel messaggio
news:VGI46.232408$hk4.10...@news.infostrada.it...
>
> "Luke Skywalker" <
mab...@libero.it
> ha scritto nel messaggio
> news:CcI46.6014$jT6.2...@twister2.tin.it...
> > Con molto piacere............ ma non capisco cosa intendi per "dopo i
> > messaggi precedenti"
> > Luke
> >
> Significa esattamente "dopo i messaggi precedenti", come sto facendo io
> adesso e non come hai fatto tu che hai risposto anteponendo la risposta ai
> messaggi a cui rispondevi.
> :-P
Messaggio Ricevuto!!!!!!!!!!!!!!!!!


text:
Luke Skywalker <
mab...@libero.it
> wrote in message
dSH46.5993$jT6.2...@twister2.tin.it...
> Grazie......... anche se devo essermi spiegato male. Mi serviva il
> contrario.
> Evitare la cancellazione.
> Grazie comunque
>
>
> > Se hai un controllo che ti indica se la fattura è già stata stampata
(es.
> > Casella di controllo con valori 0 -1), puoi usare
> >
> > if me.controllo=0 then  ....codice per eliminare il record
> >
naturalmente se il controllo è uguale a -1 , non fa nulla, quindi non
cancella
ciao Riccardo


text:
Luke Skywalker <
mab...@libero.it
> wrote in message
CcI46.6014$jT6.2...@twister2.tin.it...
> Con molto piacere............ ma non capisco cosa intendi per "dopo i
> messaggi precedenti"
> Luke
>
>
> "Silvio Berruti" <
s...@libero.it
> ha scritto nel messaggio
> news:n0I46.232138$hk4.10...@news.infostrada.it...
> >
> > "Luke Skywalker" <
mab...@libero.it
> ha scritto nel messaggio
> > news:FTH46.5998$jT6.2...@twister2.tin.it...
> > > GRAZIE
> >
> > Sei pregato di rispondere dopo i messaggi precedenti.
> >
> > Grazie.
> >
> > --
> >
_________
quello che non hai fatto fino ad ora!
Ti posizioni nel messaggio, premi Ctrl+Fine, e vai in fondo al messaggio.
Una volta posizionato in fondo, puoi iniziare a scrivere altrimenti non si
capisce a cosa stai rispondendo!
ciao Riccardo


title: Salvare record via codice

author: Giulio Severini

text:
Scusate, ma ho un problema con il codice che gestisce i CV.
In pratica sia quando aggiungo un CV sia quando lo elimino Access mi
avverte che un altro utente ha modificato il record corrente e mi
chiede cosa fare. Vorrei evitare questo.
CODICE PER AGGIUNGERE CV
Private Sub cmdAggiungiCV_Click()
Dim strAttach As Variant
Dim rif As Variant
rif = [Forms]![frmSchedaPrimoContatto]![id]
    strAttach = cmdlg_file("C:\", "All files (*.*)" & Chr(0) & "*.*" &
Chr(0))
    Me!subCurriculumLink.Value = strAttach
    ccCVAllegato = 0
    DoCmd.RunSQL "UPDATE tblUtenti SET CurriculumLink = strAttach WHERE
idUtente = " & rif
    Me!subCurriculumLink.Requery
    Me.Requery
End Sub
CODICE PER ELIMINARE CV
Private Sub cmdEliminaCurriculum_Click()
Dim strAttach As Variant
Dim rif As Variant
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("tblUtenti")
rif = [Forms]![frmSchedaPrimoContatto]![id]
If (Me!subCurriculumLink <> "VUOTO") Then
    If MsgBox("Sei sicuro di voler eliminare il CV di " &
UCase([Forms]![frmSchedaPrimoContatto]![Nome] & " " &
[Forms]![frmSchedaPrimoContatto]![Cognome]) & " ?", vbQuestion +
vbYesNo, "Eliminazione Curriculum") = vbYes Then
        rst.Edit
        DoCmd.RunSQL "UPDATE tblUtenti SET CurriculumLink = ""VUOTO""
WHERE idUtente = " & rif
        rst.Update
        rst.Close
        Me!subCurriculumLink.Requery
        Me.Requery
        MsgBox "CV eliminato", vbInformation, "Eliminazione Curriculum"
    End If
Else
    MsgBox "Nessun CV per l'utente corrente", vbInformation,
"Eliminazione Curriculum"
    Exit Sub
End If
End Sub
dove subCurriculumLink è il controllo nascosto che contiene il
percorso del CV.
Pensavo che la clausola UPDATE salvasse automaticamente il record.
In questo caso il codice che ELIMINA il CV mi genera un errore di
conversione dei dati...e Access mi chiede se intendo ignorare l'errore
ed eseguire lo stesso la query.
Dove potrebbe stare l'errore?
Grazie.


title: Salvare record via codice

author: Alessandro Cara

text:

non ci azzecca nulla con questa tua domanda (che non ho neanche letto)
Tuo problema su inserimento del tellefono:
Quando lo valorizzi idUtente?
Fai queste variazioni:
1) su form scheda primo contatto
Private Sub OpenChildForm()
DoCmd.OpenForm formname:="frmTblTelefono",openargs:=Me!idUtente
End Sub
inoltre il filtro che fai a parte puoi anche risparmiartelo se fai:
DoCmd.OpenForm
FormName:="frmTblTelefono",Openargs:=Me!idUtente,WhereCondition:="idUtente="
& me!idutente
2) su form del telefono aggiungi questo evento:
Private Sub Form_BeforeInsert(Cancel As Integer)
idUtente = OpenArgs
End Sub
ora non ho molto tempo. In serata ti guardo l'altra cosa
--
a.cara


title: Salvare record via codice

author: Gaspare

text:
>In pratica sia quando aggiungo un CV sia quando lo >elimino Access mi
>avverte che un altro utente ha modificato il record >corrente e mi
>chiede cosa fare. Vorrei evitare questo.
Ciao Giulio,
questo "significa" che da qualche parte non chiudi il recordset e quindi ad
access sembra che intervengano più utenti...
>In questo caso il codice che ELIMINA il CV mi genera >un errore di
>conversione dei dati...e Access mi chiede se intendo >ignorare l'errore
>ed eseguire lo stesso la query.
Il codice è "incasinato" di brutto...oltre a postarlo dovresti spiegare
quello che vuoi ottenere...che significa
DoCmd.RunSQL "UPDATE tblUtenti SET CurriculumLink = ""VUOTO""
WHERE idUtente = " & rif ?
Aggiorna la tabella utenti dove CurriculumLink ha il valore "VUOTO" e
idutente = valore restituito da rif...che significa?
Prima "esterna" quello che vuoi fare e poi posta il codice che non va...
Se devi cancellare perchè non usi  delete?
rs.Delete
Così perdi tempo e spendi soldi "inutilmente" -> CREDIMI
Gaspare


title: Salvare record via codice

text: Grazie tantissimissimeeeeeeeeeeeeeeeeeeee :))))))))


title: Salvare record via codice

text:
Ciao Gaspy, io non devo cancellare il record, devo solo AGGIORNARLO.
Ovvero con quei due pulsanti devo aggiornare il campo CurriculumLink
del record corrente.
Con AggiungiCV aggiorno nel senso che nel campo ci metto la stringa che
raapresenta il percorso del CV su disco, con ELIMINA CV ri-aggiorno il
campo CurriculumLink con la stringa "VUOTO".
Quindi Access giustamente si incazza perchè dice 'Oi, guarda che
qualcun'altro ha modificato il record che tu hai aperto, pirlone!! che
vogliamo fare?! lo salviamo, annulliamo!?! o ce ne andiamo al mare?'
Il bello è che io penso che la clausola UPDATE aggiorni il record
grazie alla direttiva SET e che i vari .Edit .Update dell'oggetto rst
aggiornino il recordset da soli.
Solo che non è così...boh!
Cmq ricapitolando:
1. visualizzo il record corrente
2. aggiungo un cv all'utente ---> aggiorno valore del campo
CurriculumLink della tabella tblUtenti alla stringa che contiene il
percorso del cv su disco---->aggiorno recordset
3. elimino il cv dell'utente--->aggiorno il campo CurriculumLink della
tabella tblUtenti alla stringa "VUOTO" (perchè non so come si fa a
passare una stringa vuota "")--->aggiorno recordset.
Questo è quello che dovrei fare....
Grazie :)


title: Salvare record via codice

text:
Per Alessandro Cara: ti ringrazio tantissimo, davvero!!!!! Funziona
alla perfezione!
Domandona da un miliardo di sterline inglesi: ma perchè nell'esempio
di Napoleone, invece, funzionava?
Se vuoi stasera ti passo il suo db d'esempio. Ho bisogno di capire.
E scusa se abuso della tua disponibilità ma ho bisogno di capire :)
Grazie!!!!


title: Salvare record via codice

text:
[CUT]
Hai sempre la scadenza di fine mese per il lavoro?


title: Salvare record via codice

text:
Ciao Ale, una domanda: ma se il record non esiste ancora e lo sto
aggiungendo proprio in questo momento ho un errore.
Infatti io apro la maschera AggiungiTelefono anche da
frmAggiungiUtente. In quel momento, però, ancora non esiste un record
correlato in tblUtenti - esisterà solo nel momento in cui, uscendo,
cliccherò su SI, salva i dati - perciò OpenArgs restituisce un valore
nullo.
Come posso bypassare questo problema?
Grazie!


title: Salvare record via codice

text:
Gaspare ha scritto:
> [CUT]
> Hai sempre la scadenza di fine mese per il lavoro?
NOTA: Google, per ora, ha detto basta. Posto da Newsland.
Gaspy: si, purtroppo. Stanotte ho fatto le 4.30 per capire il codice di
Napoleone e per aggiustare in modo 'decente' quello dei CV (che per'altro
funziona makle). Sveglia alle 6.30 sono rintronato perso.
--
Non avere mai pura dei momenti bui perchè, facci caso, anche le stelle
hanno bisogno della notte per brillare.
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Salvare record via codice

text:
P.S. Ho aggiunto anche una tblEmail....praticamente più email per ogni
singolo utente. Ora devo riprogettare l'invio delle email. Non più da
un pulsante ma dalle mascherine che si apromo.
Ale se ti interessa posso mandarti il database corrente con queste
aggiunte :)
EDIT: per il problema del record inesistente provo a spiegarmi un
pelino meglio.
1. voglio aggiungere un nuovo utente: apro frmAggiungiUtente. In questo
momento l'idUtente corrente è NULL
2. inserisco il primo carattere nel primo campo; in questo momento
idUtente ha il valore Me!idUtente
3. vado ad inserire i numeri telefonici; errore: pur esistendo il nuovo
record, questi non è stato ancora salvato nella tabella perciò
l'integrità referenziale mi vieta di poter inserire i dati. Stessa
cosa per le email.
4. solo dopo aver salvato il record posso aggiungere i telefoni e/o le
email, ma a questo punto non sono più in formAggiungiUtente ma in
frmSchedaPrimoContatto.
Quindi che fare? Togliere la possibilità di aggiungere numeri
telefonici e email in fase di creazione dell'utente, delegando questa
operazione alla maschera frmAggiungiUtente? O fare in modo che in fase
di creazione dell'utente l'integrità referenziale non blocchi
l'aggiunta di nuovi record?
Posto qui il codice interessante:
Private Sub cmdApriEmail_Click()
If Not IsNull(Me!id) Then
    MsgBox "IDUtente = " & Me!id, vbInformation, "Informazione di
debug"
    DoCmd.OpenForm FormName:="frmTblEmail", OpenArgs:=Me!id,
WhereCondition:="idUtente= " & Me!id
Else
    MsgBox "   Stai cercando di aggiungere un valore ad un record
inesistente" & Chr(10) & Chr(13) & Chr(10) & Chr(13) & "
            ( idUtente = NULL )  ", vbCritical, "ERRORE"
    Exit Sub
End If
End Sub
Private Sub cmdApriTelefoni_Click()
If Not IsNull(Me!id) Then
    MsgBox "IDUtente = " & Me!id, vbInformation, "Informazione di
debug"
    DoCmd.OpenForm FormName:="frmTblTelefono", OpenArgs:=Me!id,
WhereCondition:="idUtente= " & Me!id
Else
    MsgBox "   Stai cercando di aggiungere un valore ad un record
inesistente" & Chr(10) & Chr(13) & Chr(10) & Chr(13) & "
            ( idUtente = NULL )  ", vbCritical, "ERRORE"
    Exit Sub
End If
End Sub
e sull'evento Current() delle due form:
idUtente = OpenArgs
A presto!!!!


title: Salvare record via codice

text:
Giulio Severini wrote:
> Ciao Ale, una domanda: ma se il record non esiste ancora e lo sto
> aggiungendo proprio in questo momento ho un errore.
es claro
>
> Infatti io apro la maschera AggiungiTelefono anche da
> frmAggiungiUtente. In quel momento, però, ancora non esiste un record
> correlato in tblUtenti - esisterà solo nel momento in cui, uscendo,
> cliccherò su SI, salva i dati - perciò OpenArgs restituisce un valore
> nullo.
>
> Come posso bypassare questo problema?
>
> Grazie!
>
inserendo l'utente in precedenza.
Ho aperto la maschera nuovo utente e non trovo il modo
di aggiungere i dati telefonici.
cmq. se funzionasse come l'altra devi prima procedere all'inserimento
dell'utente (eseguire il salvataggio del record  corrente cfr acsaverecord)
--
a.cara


title: Salvare record via codice

text:
Giulio Severini wrote:
[cut]
>
> dove subCurriculumLink è il controllo nascosto che contiene il
> percorso del CV.
> Pensavo che la clausola UPDATE salvasse automaticamente il record.
> In questo caso il codice che ELIMINA il CV mi genera un errore di
> conversione dei dati...e Access mi chiede se intendo ignorare l'errore
> ed eseguire lo stesso la query.
>
> Dove potrebbe stare l'errore?
Private Sub cmdAggiungiCV_Click()
Dim strAttach As Variant
Dim rif As Variant
rif = [Forms]![frmSchedaPrimoContatto]![id]
     strAttach = cmdlg_file("C:\", "All files (*.*)" & Chr(0) & "*.*" &
Chr(0))
     If strAttach <> "" Then
         Me!subCurriculumLink.Value = strAttach
         DoCmd.RunSQL "UPDATE tblUtenti SET CurriculumLink ='" &
strAttach & "' WHERE idUtente = " & rif
         Me!subCurriculumLink.Requery
     End If
End Sub
------------
Variazione:
1) ho aggiunto la if per tener conto dell'annullamento del commondialog
2) strattach e' una variabile quindi la update non andava bene
    (solito problema)
Private Sub cmdEliminaCurriculum_Click()
Dim strAttach As Variant
Dim rif As Variant
rif = [Forms]![frmSchedaPrimoContatto]![id]
If (Me!subCurriculumLink <> "VUOTO") Then
     If MsgBox("Sei sicuro di voler eliminare il CV di " &
UCase([Forms]![frmSchedaPrimoContatto]![Nome] & " " &
[Forms]![frmSchedaPrimoContatto]![Cognome]) & " ?", vbQuestion +
vbYesNo, "Eliminazione Curriculum") = vbYes Then
         DoCmd.RunSQL "UPDATE tblUtenti SET CurriculumLink = '' WHERE
idUtente = " & rif
         Me!subCurriculumLink.Requery
         Me.Requery
         MsgBox "CV eliminato", vbInformation, "Eliminazione Curriculum"
         Me.cmdAnteprimaCV.HyperlinkAddress = ""
         End If
Else
     MsgBox "Nessun CV per l'utente corrente", vbInformation,
"Eliminazione Curriculum"
     Exit Sub
End If
End Sub
---
variazione:
1) ho messo a "" il CurriculumLink (si puo' fare anche CurriculumLink = null
2) ho ripulito l'hyperlinkaddress.
E la notte dormi altrimenti fai tanti di quei casini che il giorno dopo
non bastano tutte le risorse del NG (intendo dire gli operatori
umanitari) per rimetterli a posto ;<)
--
a.cara


title: Salvare record via codice

text:
Giulio Severini wrote:
> Ciao Ale, una domanda: ma se il record non esiste ancora e lo sto
> aggiungendo proprio in questo momento ho un errore.
>
[cut]
P.S. Non personalizzare i post hai un intero NG a tua disposizione
--
a.cara


title: Salvare record via codice

text:
[CUT]
> E la notte dormi
Sante parole!!!!


title: Salvare record via codice

text:
Okkei, spero di copia-incollare per bene la sintassi...Google è una
caciara!
Cmq grazie siete stati veramente gentili :)


title: Salvare record via codice

text:
Ah una cosa....all'interno della stringa SQL hai usato '' ovvero il
simbolo sotto il punto interrogativo?
Non si capisce da qui..... :D


title: Salvare record via codice

text:

si, sono 2 apici
--
a.cara


title: Salvare record via codice

text: Ale, ma perchè ora non funziona più? :(


title: Salvare record via codice

text:
Giulio Severini wrote:
> Ale, ma perchè ora non funziona più? :(
>
Giulio, per favore, le domande *private*, visto che la mia email la hai,
falle in privato. Come ho gia' scritto in altro post, nuovamente per
favore, non personalizzare le richieste.
Come detto prima, se devi fare questo, scrivi sulla mia email privata.
--
a.cara


title: Salvare record via codice

text:
Alessandro Cara wrote:
P.S.
e poi .....non funziona piu' che?
--
a.cara


title: Salvare record via codice

author: MA

text:

Si vede che vuole portare fuori il vosto amore e soprattutto la sua
defaillance.
Oh sta moda dell'outing...
--
_ _
Ciao
MAssimiliano Amendola
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:
www.donkarl.com/it


title: Salvare record via codice

text:
Ma io non voglio rompere via email, cmq okkei.... in email poi la
soluzione sul ng. Penso sia la cosa più giusta.


title: Salvare record via codice

text: Email mandata. Grazie :)


title: modifica password utenti - modifica file mdw via codice?

author: martino

text:
Il problema è il seguente: devo proteggere il mio applicativo ai
massimi livelli possibili (contiene dati sensibili) e devo implementare
la gestione utenti. Mi pare di avere capito che lo strumento più
adatto è creare un file con le info sul gruppo di lavoro (.mdw) e
così ho fatto.
Piccola osservazione: ho seguito le istruzioni trovate sul sito comune,
ma possibile che in access 2003 abbiano tolto il file  wrkgadm.exe??
Comunque ho raggiunto lo scopo utilizzando la protezione guidata.
Ora devo implementare gli algoritmi di gestione degli utenti, quindi
l'autenticazione, ma anche la scadenza delle password, la possibilità
di modificare la propria password per ogni utente, etc. Ho fatto un
piccolo mdb che funge da "launcher" per il programma principale:
contiene le info e le logiche per la gestione degli utenti, quindi
richiede username e pasword, effettua tutti i controlli secondo le
logiche che ho scritto e se tutti i controlli hanno esito positivo
lancia il programma principale impostando l'utente selezionato.
Il grosso problema che mi rimane è dare la possibilità agli utenti di
modificare la loro password (cosa che vorrei potessero fare dal
launcher), senza lasciare a loro disposizione i menu completi di
access. Quindi vorrei farlo io via codice, eseguendo anche i miei
controlli preliminari, e mi pare di aver capito che per fare questo
dovrei riuscire a modificare il file mdw su cui si basa l'applicativo
principale. Qualcuno di voi ha idea di come fare? O ha in mente qualche
altro metodo possibile?
Grazie in anticipo per la collaborazione!


author: VT @ home

text:
In Access 97 bastava fare cosě:
Workspaces(0).Users(CurrentUser()).NewPassword vecchiapassword, nuovapassword
Con le versioni successive non so se funziona, perchč da un certo punto in poi non ho piů usato la gestione utenti di
Access e ne ho implementato una secondo le mie esigenze.
HTH
Vincenzo Turturro
---------------------------------------------
il sito comune di it.comp.appl.access:
http://www.sitocomune.com/
---------------------------------------------
E quello di it.comp.as400
http://www.faq400.com/
---------------------------------------------


title: + campi o + tabelle?

author: LeoDuca

text:
Mi piacerebbe sentire il parere di chi ha più esperienza di me
(praticamente tutti in questo NG , mi par di capire :))
sulla seguente questione.
In fase di progettazione della struttura di una tabella
mi capita spesso di chiedermi: aggiungo un campo o creo più tabelle?
Mi spiego meglio con un esempio.
Anagrafica clienti, anagrafica fornitori, anagrafica rappresentanti:
creo 3 tabelle (identiche ma con nomi diversi)
o aggiungo il campo 'TipoDiRapporto' per distinguere i record.
Personalmente cerco di valutare di volta in volta la questione:
nel caso sopra supponendo che 'cliente', 'fornitore' e 'rappresentante'
siano tutte e sole le alternative possibili
posso pensare di creare tre tabelle distinte
in modo da ottenere vantaggi in termini di velocità di caricamento
delle tabelle quando apro una form, eseguo una query ecc....
Se avessi invece a che fare con i prodotti di un magazzino
preferirei aggiungere il campo 'Categoria' piuttosto
che creare una tabella per gli imballi, una per la ferramenta,
una per la cancelleria ecc... in modo da avere più flessibilità
di gestione e di aggiunta di eventuali nuove voci.
Queste possono essere alcune delle considerazioni che faccio quando
ho a che fare con tabelle di 'grandi' dimensioni.
Mi trovo però piuttosto indeciso quando ho a che fare
con tabelle di piccole dimensioni; un es.:
devo memorizzare il singolo valore 'CostoDiUnForo'.
Che faccio??? Creo una tabella solo per questo dato??
Lo inserisco nella tabella 'CostiMaterialiPerSpessore'
o nella tabella 'CostiCicliVerniciatura' lasciando incompilati
i campi non necessari e assegnando una chiave particolare?
Nella speranza di essere stato sufficientemente chiaro
ringrazio fin d'ora che mi darà il propio parere.
TIA
--
Leo_duca


title: Errore nel Docmd.SendObject?

author: livio

text:
Salve.
Ho cercato di fare eseguire ad un mio programma in
Access 2000 la seguente istruzione:
DoCmd.SendObject acSendReport, "Etichette clienti", acFormatRTF,
"Livio<
liv...@tin.it
>", , , "Reportone!", "Questo è un messaggio e-mail",
True
Il risultato, però, è stato il seguente messaggio d'errore:
"Errore di run-time '2287':
Impossibile aprire la sessione di posta elettronica"
Sapreste spiegarmi perchè non funziona?
Lo stesso programma con Windows 2000 va benissimo,
ma col 98 si blocca. Devo installare qualcosa? Come?
Grazie mille
Livio


title: Errore nel Docmd.SendObject?

text:
Controlla nel file WIN.INI che ci sia questa stringa:
[Mail]
MAPI=1
MAPIX=1


title: stampa report da maschera

author: Trombini Raffaele

text:
Ho una maschera basata su una tabella.
Nella maschera però modifico il recordset andando ad impostare da codice
ordinamenti e filtri.
Ora vorrei inserire un pulsante nella maschera che mi stampi un report con i
record che attualmente sono visualizzati.
Questi record però non provengono, ripeto, da alcuna query o alcuna tabella!
Come faccio??
Grazie per l'aiuto
Ciao
Raffaele


title: stampa report da maschera

author: Alessandro Baraldi

text:
"Trombini Raffaele" <
trombini...@libero.it
> wrote in message
news:dq8n7k$5d8$
1...@fata.cs.interbusiness.it

Sfrutta la proprietà Filter della Maschera per passare
all'apertura del Report il criterio.
Docmd.OpenReport "NomeReport",,,Me.Filter
Per capire meglio leggi l'Help è sempre un buon maestro.
Ciao
@Alex
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: stampa report da maschera

text:
"Alessandro Baraldi" <
ik2...@libero.it
> ha scritto nel messaggio
news:8a84000e3c519633c6...@mygate.mailgate.org...

A posto......grazie!!
A presto
Raffaele


title: scorrere i file di una cartella e spostarli

author: tmtube

text:
avrei necessità di importare un numero variabile di file di testo presenti
in una cartella  ma non so quanti saranno
come posso avere la lista dei file.txt presenti e scorrerli uno ad uno per
importarli e successivamente sportarli in un altra cartella?

grazie a tutti.


text:
Trovato il modo

    'ottengo l'elenco dei file di testo
    s = Dir(c:\pippo\*.txt")

    'cicla per ogni file di testo presente nella cartella pippo
    Do While s <> ""
        fai qualcosa
        s = Dir
    Loop

grazie a tutti.


title: Query in access 35000 record

author: BBB

text:
Ciao a tutti,
Ho un problema di questo tipo:
Ho un database di 35000 record e mentre è in esecuzione il modulo di vb si
blocca.
Mi sembra di aver intuito che si tratti di un problema di query innestate
che non piacciono ad Access...ho provato a realizzare la query dall'
interfaccia delle query di access e si blocca anche da lì.
Devo cambiare la query ed evitare di costruirla innestata???
Preferivo la query innestata per risparmiarmi qualche riga di codice ma
evidentemente sarò costretta a scriverle.
Qualche consiglio???
Ciao a tutti e grazie
Fabiano
--------------------------------
Inviato via
http://usenet.libero.it


title: Query in access 35000 record

author: stefano (kabisa)

text:
"BBB" <
melag...@libero.it
> ha scritto nel messaggio
news:81Z211Z182Z233Y...@usenet.libero.it...
> Ciao a tutti,
> Ho un problema di questo tipo:
>
> Ho un database di 35000 record e mentre č in esecuzione il modulo di vb si
> blocca.
> Mi sembra di aver intuito che si tratti di un problema di query innestate
> che non piacciono ad Access...ho provato a realizzare la query dall'
> interfaccia delle query di access e si blocca anche da lě.
> Devo cambiare la query ed evitare di costruirla innestata???
> Preferivo la query innestata per risparmiarmi qualche riga di codice ma
> evidentemente sarň costretta a scriverle.
> Qualche consiglio???
> Ciao a tutti e grazie
>
> Fabiano
>
>
> --------------------------------
> Inviato via
http://usenet.libero.it
Dovresti postare la query cosě si puň capire dov'č l'errore eventualmente.
Io lavoro con queri annidate anche su tabelle con molti piů record
penso che dipenda dall'indicizzazione della tabella
Dovresti controllare se usi come criterio di selezione ( o di altro tipo do
query) le chiavi della tabella
Stefano (kabisa)


title: tag

author: ^luigi^

text:
una domanda:
nella tag di un controllo campo, si possono mettere pi� riferimenti?
no eh! ???? e come potrei aggirare l'ostacolo?
nel mio caso gi� vi � un tag "X" per il calcolo dei CF, ora vorrei
metterci anche un'altro tag "obbligatorio" per far riempire a forza quel
campo.
l.
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: tag

author: Karl Donaubauer

text:
^luigi^ wrote:
> nella tag di un controllo campo, si possono mettere pi� riferimenti?
> no eh! ???? e come potrei aggirare l'ostacolo?
> nel mio caso gi� vi � un tag "X" per il calcolo dei CF, ora vorrei
> metterci anche un'altro tag "obbligatorio" per far riempire a forza quel
> campo.
Puoi usare un separatore nel Tag p.e. se MioControllo ha il Tag:
X/Y/Z
puoi leggere le parti nel codice:
Split(Me!MioControllo.Tag, "/")(0)
X
Split(Me!MioControllo.Tag, "/")(1)
Y
Split(Me!MioControllo.Tag, "/")(2)
Z
--
HTH
Karl
*********
Access FAQ:
www.donkarl.com/it


title: tag

text:
^luigi^ ha scritto:
> una domanda:
> nella tag di un controllo campo, si possono mettere pi� riferimenti?
> no eh! ???? e come potrei aggirare l'ostacolo?
> nel mio caso gi� vi � un tag "X" per il calcolo dei CF, ora vorrei
> metterci anche un'altro tag "obbligatorio" per far riempire a forza quel
> campo.
> l.
>
ct.tag = "A;b;c;D;e"
aTag = split(ct.tag,";")
in atag (che e' un array) c'e'
atag(0) = A
aTag(1) = b
....
aTag(4) = e
--
ac


title: tag

text:
Karl Donaubauer ha scritto:


> X/Y/Z

> Split(Me!MioControllo.Tag, "/")(0)
> X
> Split(Me!MioControllo.Tag, "/")(1)
> Y
> Split(Me!MioControllo.Tag, "/")(2)
> Z
scusate la mia espressione papale papale:
Premetto che a te e alex vi considero dei mostri in access e come tali,
vi esprimete in modo da far capire bene ad altri di vostro pari, ma uno
come me che � un ciuccio im materia, le vostre risposte lo lasciano ancora
pi�  somaro.
In poche parole non ho capito!   :-PP
possiamo ripetere? con i miei esempi ed in modo pi� terra terra?
grazie
i miei tag da inserire sono "X" e "obbligatorio" nel controllo campo
"cognome"
da quel poco che ho potuto capire, nel tag del  controllo campo "cognome"
dove gi� ho la X metto "X/obbligatorio" giusto?
e poi?
che significa
puoi leggere le parti nel codice:
 Split(Me!MioControllo.Tag, "/")(0)
 X
 Split(Me!MioControllo.Tag, "/")(1)
 Y
 Split(Me!MioControllo.Tag, "/")(2)
 Z
questo codice dove lo piazzo? nel modo che lo hai scritto?
grazie per la pazienza



title: tag

text:
^luigi^ ha scritto:

dove ti serve utilizzare quello che hai conservato sulla proprieta' "tag".
Fermo restando che, a occhio, ho la vaga impressione che potrebbe
esserti sufficiente un solo attributo (i.e. vuoto (empty)--> non fare
nulla, X --> fa le cose di X, O--> fai le cose di X e di obbligatorio,
se dovesse servire: N --> fai solo le cose di obbligatorio.
--
ac


title: tag

text:
^luigi^ wrote:
> Karl Donaubauer ha scritto:
>>> nella tag di un controllo campo, si possono mettere pi� riferimenti?
>>> no eh! ???? e come potrei aggirare l'ostacolo?
>>> nel mio caso gi� vi � un tag "X" per il calcolo dei CF, ora vorrei
>>> metterci anche un'altro tag "obbligatorio" per far riempire a forza
>>> quel campo.
>
>> Puoi usare un separatore nel Tag p.e. se MioControllo ha il Tag:
>
>> X/Y/Z
>
>> puoi leggere le parti nel codice:
>
>> Split(Me!MioControllo.Tag, "/")(0)
>> X
>
>> Split(Me!MioControllo.Tag, "/")(1)
>> Y
>
>> Split(Me!MioControllo.Tag, "/")(2)
>> Z
> ...
> possiamo ripetere? con i miei esempi ed in modo pi� terra terra?
> ...
Perch� non scrivi pi� esatto come finora usi il X e come dopo
vuoi usare il Tag "obbligatorio".
Forse cos� possiamo capire meglio come aiutarti.
--
cu



title: tag

text:
Karl Donaubauer ha scritto:



la x  deriva dal calcolo codice fiscale come trattato nella faq "codice
fiscale da una mia tabella dati" del 3.6.09 di questo NG e di cui
smart_1976 mi ha suggerito la soluzione che ho adottato, mentre il Tag
OBBLIGATORIO" di cui non ricordo chi me l'ha suggerito, e corrisponde al
seguente codice messo su beforeupdate del controllo campo "cognome"
o della form stessa
 '----------------------CONTROLLO CAMPI OBBLIGATORI-------------
Dim ctl As Control
For Each ctl In Me.Controls
       If ctl.Tag = "OBBLIGATORIO" Then
            With ctl
                  If .Visible And (.ControlType = acTextBox) Then
                        .BackColor = 12632256
                           If IsNull(.Value) Or .Value = "" Then
                                 .BackColor = 255
                                 MsgBox UCase(ctl.Controls(0).Caption) &
vbCrLf & _
                                          "Inserire i dati mancanti nel
Campo segnato in rosso", vbExclamation, "ATTENZIONE!"
                                 .SetFocus
                                 Set ctl = Nothing
                                 Cancel = True
                                 Exit Sub
                           End If
                  End If
            End With
      End If
Next
Set ctl = Nothing
'-----------------
