aprile file da sottomaschera con pulsante oppure doppioclick

Anonimo
2015-08-30T09:24:57+00:00

salve a tutti

da un vecchio post grazie all'amico Sandro Peruz, per cercare di gestire gli allegati esternamente al db, sto cercando di gestire dei file creati ed assegnarli a delle pratiche.

All'interno di una cartella ho dei file .dotm, modelli in word da compilare e salvare in formato .docx oppure pdf.

Questi modelli devono essere abbinati ad una pratica (ogni id) inseriti in diversi momenti (date)

Pertanto procedo con la creazione delle tabelle mettendole in relazione una a molti, cioè una pratica a molti modelli:

nella maschera pratiche ho inserito un pulsante dove mi apre la maschera elenco_modelli per aprire con altro comando il relativo file

Una volta compilato  e salvato il modello viene caricato ed abbinato alla pratica.

Infine con un comando oppure su doppio click su nome_file aprire il relativo file

Provo a postare i files, purtoppo da adattare al proprio pc.

http://1drv.ms/1Iv4wcr

Magari, con il vs aiuto, riuscire a scaricare il db e la relativa cartella contenenti i file (modelli) su qualsiasi pc e funzionare direttamente.

Grazie a voi tutti

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2015-09-04T17:09:45+00:00

ciao NebbiaDB,

non serve l'opzione Group by nella query.

non serve incorporare la maschera nel report.

crei una semplice query di selezione con questo sql ad esempio :

SELECT modelli.id_pratiche,

            elenco_pratiche.registro,

           [myFolder] & [nome_file] AS fullpath

FROM elenco_pratiche INNER JOIN modelli ON elenco_pratiche.id_pratiche = modelli.id_pratiche

ORDER BY modelli.id_pratiche;

concatenando il path con il folder così mostri nel report il nome completo del file.

crei un report in cui raggruppi per registro che non significa che raggruppare per pratica.

sul command button che chiamerai ad esempio cmdRpt e non comando16 sfrutti il parametro where per aprire il report esattamente sul record che stai vedendo sulla maschera.

DoCmd.OpenReport "modelli", acViewPreview, , whereCondition:="id_pratiche=" & Me.id_pratiche

se il report viene aperto senza clausola where raggruppi sempre per registro, ma vedi in sequenza tutti le pratiche con i relativi modelli.

un po' così : http://1drv.ms/1KvxOiq   Gestione_Pratiche2.2.accdb.

ciao, Sandro.

La risposta è stata utile?

0 commenti Nessun commento

46 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2015-09-04T15:09:38+00:00

    Grazie ancora...

    ho provato qualcosina si muove:

    • cercando di creare la query
    • collegando nella sm_modelli i campi master e secondari (id_pratiche)

    perà nel report vengono visualizzati tutti i report e sarebbe bello vedere ogni record in una pagina :-)

    http://1drv.ms/1Ohi2p1

    Grazie Sandro

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2015-09-04T14:41:37+00:00

    ciao NebbiaDB,

    Ciao carissimo Sandro, tutto meravigliosamente bene con i test...

    bene direi :-)

    è possibile al click del comando visualizzare sul report solo i valori del id_pratiche presente nella maschera pratiche e i relativi nella sm_modelli?

    essendo le tabella legate in relazione 1 a molti, potresti creare una query sulle tabelle modelli ed elenco pratiche e scegliere i campi che vuoi visualizzare nel tuo report, uno di questi deve essere la chiave primaria id_pratiche.

    su questa query crei il report.

    con un semplice command button posizionato nella maschera principale pratiche, apri il report su evento click e,  sfruttando la clausola where in cui posizionerai il filtro, visualizzerai nel report solo il record parent e child che vedi sulla maschera.

    Prova a vedere se con questi indicazioni riesci a procedere in autonomia.

    Grazie Sandro

    prego, Ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2015-09-04T13:59:03+00:00

    Ciao carissimo Sandro, tutto meravigliosamente bene con i test...

    sto provando ad inserire un pulsante per la stampa di un report, per fare una sorta di "frontespizio".

    ho creato il report ed ho inserito id_pratiche registro ed oggetto e poi la sm_modelli.

    è possibile al click del comando visualizzare sul report solo i valori del id_pratiche presente nella maschera pratiche e i relativi nella sm_modelli?

    Grazie Sandro

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2015-09-02T20:18:26+00:00

    ciao NebbiaDB,

    quell'istruzione non è così determinante perché ti permette di modificare le proprietà della form se il recordset è vuoto,

     in realtà viene valutata vera solo se la tabella è vuota quindi alla prima apertura del db, ma se no ci fosse con la tabella completamente vuota non inserisci nulla.

    avrei pensato a quanto segue per le nuove domande:, passare un argomento di apertura alla form m_pratiche in modo da discriminare quando la stessa viene aperta da un'altra maschera...se gli argomenti ci sono allora si tratta di un'altra maschera e procedi con il richiamare la procedura già esistente per l'aggiunta di un nuovo record, altrimenti la apri normalmente.

    Private Sub Comando0_Click()

    DoCmd.OpenForm "pratiche", acNormal, , , , , "1"

    End Sub

    Private Sub Form_Load()

    If IsNull(Me.OpenArgs) Then

        If Me.Recordset.RecordCount = 0 Then

            Me.AllowAdditions = Not Me.AllowAdditions

            Me.oggetto.Locked = Not Me.oggetto.Locked

            Me.cmdEdits.Enabled = False

        End If

    Else

        moveRecords 3

    End If

    end sub

    inizialmente avevo optato per il paramentro acFormAdd, ma così facendo il recordcount è zero e con  le proprietà disabilitate e non vedi nulla praticamente...

    per il resto ho inserito un cmdButton che annulla l'inserimento del record e di conseguenza tutte le modifiche alle restanti routine, minimali...

    il cmd Annulla gestisce solo il record nuovo.

    mi sembra sia ok... testalo  un po'  : http://1drv.ms/1VxcN90  Gestione_Pratiche2.1.accdb.

    ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento