Inserimento record in una maschera e report

di il
63 risposte

63 Risposte - Pagina 4

  • Re: Inserimento record in una maschera e report

    Va assolutamente bene credimi...ultima cosa...come faccio a far vedere solo i record e gli uffici che hanno ricevuto raccomandate in data odierna? Tramite query o filtro?
  • Re: Inserimento record in una maschera e report

    Ho riletto tutto con attenzione e secondo me è sbagliato introdurre il campo IDUfficio nella tabella Corrispondenze. Bisogna ragionare nei termini che:
    1 Ufficio--->molti Dipendenti
    1 Dipendente--->molte Corrispondenze
    Una raccomandata è già intestata a un IDDipendente il quale porta già con sè l'etichetta del proprio Ufficio, quindi non è necessario indicare IDUfficio nella tabella Corrispondenze.
  • Re: Inserimento record in una maschera e report

    Da Santos81:
    come faccio a far vedere solo i record e gli uffici che hanno ricevuto raccomandate in data odierna? Tramite query o filtro?
    Beh credo che dovrai utilizzare una combinazione di entrambe le cose:
    1- creare input per la data (vedi tu se preferisci inserire la data di un giorno o un range di date)
    1 - vincolare la query della subform oltre che all'ufficio anche alla data (o range)

    Da OsvaldoLaviosa:
    Una raccomandata è già intestata a un IDDipendente il quale porta già con sè l'etichetta del proprio Ufficio, quindi non è necessario indicare IDUfficio nella tabella Corrispondenze.
    Posso sbagliare, sono solo un libero pensatore ma mi chiedevo...In termini di normalizzazione, se è vero che la raccomandata è effettivamente indirizzata sempre ad un utente (persona fisica), sono perfettamente daccordo con te, tuttavia, se la raccomandata dovesse essere indirizzata verso un ufficio senza specificare il nome di un utente preciso?
    (negli ambienti militari è quasi sempre così ad esempio...)

    Santos81 a chi sono indirizzate le raccomandate, persone Fisiche o Uffici?

    Da Santos81:
    Fatto...posso già impostare la maschera come avevi fatto tu in figura?
    Io aspetterei con calma prima di definire la struttura... altrimenti poi ti tocca rtornare indietro e rifare tutto di nuovo e sarebbe un peccato...

    cmq se proprio vuoi replicare l'immagine:

    1. Crea una maschera più elementi basata su TBL_RAC_PERVENUTE e lascia solo i campi importanti
    2. Crea una Maschera Normale basata su TBL_UFFICI e, se ti ha creato automaticamente una subform, cancellala e sostituiscila con quella del punto 1
    3. conferma del funzionamento dei punti 1 e 2
  • Re: Inserimento record in una maschera e report

    Le raccomandate sono indirizzate agli uffici e anche se sono presenti i nomi dei dipendenti possono essere ritirate da chiunque di quel l'ufficio. Il nome del dipendente é solo legato alla codifica della stringa del badge nient'altro. Puoi spiegarmi meglio la creazione della maschera e i filtri / query?
  • Re: Inserimento record in una maschera e report

    Per me le cose stanno così, questa la struttura tabelle:

    Uffici
    IDUfficio (numerazione automatica, chiave primaria)
    NomeUfficio

    Dipendenti
    Badge (testo, chiave primaria)
    Nome
    Cognome
    IDUfficio (numerico)

    Corrispondenza
    IDCorrispondenza (numerazione automatica, chiave primaria)
    Protocollo
    DataCorrispondenza
    IDUfficio (numerico)
    IDMitDest (numerico)
    Tipo (qui descrivi se si tratta di Raccomandata, Posta ordinaria, ecc...)
    E/U (Entrata o Uscita, cioè se la Corrispondenza è destinata verso un Ufficio interno, oppure parte da un Ufficio interno per essere destinata a destinatario esterno)

    MitDest (questa è la tabella dei referenti esterni)
    IDMitDest (numerazione automatica, chiave primaria)
    MitDest
    Indirizzo
    CAP
    Comune
    ecc...

    Relazioni:
    [MitDest].[IDMitDest] uno-a-molti con [Corrispondenza].[IDMitDest]
    [Uffici].[IDUfficio] uno-a-molti con [Corrispondenza].[IDUfficio]
    [Uffici].[IDUfficio] uno-a-molti con [Dipendenti].[IDUfficio]

    A questo punto nasce il problema. Si presenta dinanzi a te il dipendente Osvaldo Laviosa avente Badge=BA17 e appartenente all'ufficio IDUfficio=8, NomeUfficio=Biblioteca.
    Tu devi consegnarli la posta di Oggi e vuoi ottimizzare questa operazione.

    Prima di darti una risposta che forse ho in mente, puoi confermare che il quadro generale e soprattutto l'esempio finale stanno così?
  • Re: Inserimento record in una maschera e report

    Tutto assolutamente perfetto!!! Puoi continuare tranquillamente tenendo presente le esigenze che ho nelle maschere
  • Re: Inserimento record in una maschera e report

    In base a questa struttura tabelle, puoi notare che Uffici appare in posizione gerarchica superiore rispetto sia a Corrispondenze, sia a Dipendenti. Da Uffici insomma partono 2 join uno-a-molti. La tua richiesta che vuole partire da Dipendenti per arrivare a Corrispondenze non si allinea in una struttura gerarchica classica a cascata che ci faciliterebbe molte cose. Allora la questione io la vedrei così:
    1. Crea una query dove importi le tabelle Corrispondenza, Uffici e Dipendenti
    2. Trascina nella griglia tutti i campi che tu ritieni opportuno vedere, ma soprattutto Badge, DataCorrispondenza, E/U
    3. In Criteri, in corrispondenza del campo Badge, scrivi:
    Like [Input Badge]
    in corrispondenza del campo DataCorrispondenza
    =Date()
    in corrispondenza del campo E/U
    Like "E" (se hai usato solo le lettere E per Entrata e U per Uscita, altrimenti dovresti scrivere Like "Entrata")
    4. Salva la query con nome CorrispondenzaEntrataOggiDaBadge

    Come ti devi comportare quando arriva da te Osvaldo Laviosa con Badge=BA17.
    1. Apri la query CorrispondenzaEntrataOggiDaBadge
    2. Ti apparirà una piccola finestra di parametro dove ti chiede "Input Badge" e lì dentro devi digitare/sparare/strisciare il valore BA17, poi clicca su OK
    3. Si aprirà la query che ti rivelerà tutta la Corrispondenza in Entrata di Oggi da consegnare all'Ufficio Biblioteca (8)
  • Re: Inserimento record in una maschera e report

    Premetto che sono daccordo con tutto ma:

    da OsvaldoLaviosa:
    Corrispondenza
    IDCorrispondenza (numerazione automatica, chiave primaria)
    Protocollo
    DataCorrispondenza
    IDUfficio (numerico)
    IDMitDest (numerico)
    Tipo (qui descrivi se si tratta di Raccomandata, Posta ordinaria, ecc...)
    E/U (Entrata o Uscita, cioè se la Corrispondenza è destinata verso un Ufficio interno, oppure parte da un Ufficio interno per essere destinata a destinatario esterno)
    visto che ogni referente, seppur appartenente al medesimo ufficio, ha un proprio codice identificativo legato al badge, io consiglierei di aggiungere un campo IDUTente oppure campo Badge e un campo per l'orario, allo scopo di far rimanere traccia, attraverso una query di aggiornamento legata alla strisciata del badge, che quel giorno, quel referente, ha ri tirato quella posta. Altrimenti potrebbe verificarsi la situazione poco piacevole che una settimana dopo il capo dell'ufficio che smista la posta dice.. <<chi ha ritirato la raccomandata nr. xxx il gg xxx... ???>>

    da Santos81:
    Puoi spiegarmi meglio la creazione della maschera e i filtri / query?
    Beh l'immagine della maschera che hai postato ieri era la subform "più elementi" che dovra essere inserita in una maschera di livello superiore che ha l'origine dalla tabella uffici. (ovviamente poi devi creare una query sull'origine dati della subform per impostare i filtri con i controlli descritti nel prossimo paragrafo)

    In tale maschera di livello1 potresti, ad esempio, mettere una combobox che trae origine dalla tbl_uffici e un textbox dove puoi indicare la data (questo potrebbe servire se hai bisogno di appurare a chi hai consegnato un araccomandata in un dato giorno... a patto che vada bene la questione della "tracciabilità dinanzi citata)

    saluti.
  • Re: Inserimento record in una maschera e report

    OsvaldoLaviosa ha scritto:



    Uffici
    IDUfficio (numerazione automatica, chiave primaria)
    NomeUfficio

    Dipendenti
    Badge (testo, chiave primaria)
    Nome
    Cognome
    IDUfficio (numerico)

    Corrispondenza
    IDCorrispondenza (numerazione automatica, chiave primaria)
    Protocollo
    DataCorrispondenza
    IDUfficio (numerico)
    IDMitDest (numerico)
    Tipo (qui descrivi se si tratta di Raccomandata, Posta ordinaria, ecc...)
    E/U (Entrata o Uscita, cioè se la Corrispondenza è destinata verso un Ufficio interno, oppure parte da un Ufficio interno per essere destinata a destinatario esterno)

    MitDest (questa è la tabella dei referenti esterni)
    IDMitDest (numerazione automatica, chiave primaria)
    MitDest
    Indirizzo
    CAP
    Comune
    ecc...

    Relazioni:
    [MitDest].[IDMitDest] uno-a-molti con [Corrispondenza].[IDMitDest]
    [Uffici].[IDUfficio] uno-a-molti con [Corrispondenza].[IDUfficio]
    [Uffici].[IDUfficio] uno-a-molti con [Dipendenti].[IDUfficio]
    Buongiorno a tutti. Purtroppo devo tornare alla carica per un vostro supporto.Di sopra ho incollato la struttura delle tabelle che ho adottato grazie al supporto di OsvaldoLaviosa. Dopo una settimana di prove e controprove ancora non riesco ad arrivare ad una situazione accettabile...confermando anche i problemi che riscontro con la consegna delle corrispondenze agli uffici. I problemi che ho sono i seguenti:
    - non riesco a registrare le corrispondenze consegnate ai dipendenti (ho bisogno di un riscontro oggettivo...data ora e corrispondenza consegnata e a chi è stata consegnata);
    Come ti devi comportare quando arriva da te Osvaldo Laviosa con Badge=BA17.
    1. Apri la query CorrispondenzaEntrataOggiDaBadge
    2. Ti apparirà una piccola finestra di parametro dove ti chiede "Input Badge" e lì dentro devi digitare/sparare/strisciare il valore BA17, poi clicca su OK
    3. Si aprirà la query che ti rivelerà tutta la Corrispondenza in Entrata di Oggi da consegnare all'Ufficio Biblioteca (8)
    facendo la query con "input badge" non risolvo granchè in quanto avrei bisogno di memorizare chi ha ritirato e cosa ha ritirato in quale giorno e ora.

    Ho provato anche la struttura di Angelo con form e subform ma non riesco a definire correttamente le query/filtri per ovviare al mio problema.

    Attendo pareri ed eventuali consigli...
  • Re: Inserimento record in una maschera e report

    confermando anche i problemi che riscontro con la consegna delle corrispondenze agli uffici. I problemi che ho sono i seguenti:
    - non riesco a registrare le corrispondenze consegnate ai dipendenti (ho bisogno di un riscontro oggettivo...data ora e corrispondenza consegnata e a chi è stata consegnata);
    ti ho già risposto nel mio ultimo post riguardo al problema di cui sopra... prima di continuare ho bisogno che tu alleghi un immagine delle relazioni che hai in uso... allargando i rettangoli delle tabelle in modo che io possa vedere i tuoi campi... provvedi però se non lo hai già fatto ad attuare quanto ti ho consigliato nell'ultimo post...
    Ho provato anche la struttura di Angelo con form e subform ma non riesco a definire correttamente le query/filtri per ovviare al mio problema.
    la finestra di cui sopra è utile e bella ma, credimi, è subordinata alla buona strutturazione del db... rinnovo la richiesta dell'immagine relazioni...

    a presto
  • Re: Inserimento record in una maschera e report

    Praticamente ho adottato tabelle e relazioni che mi aveva suggerito OsvaldoLaviosa...li puoi vedere qualche post prima. Successivamente ho letto il tuo post ma non so come applicare i funzionamenti di query, maschere e filtri...forse mi sono imbattuto in una cosa più grande di me. Cmq sia ti riassumo cosa dovrebbe fare il database: praticamente devo archiviare la corrispondenza (solo raccomandate) che riceve la mia azienda o che fa partire un ufficio della mia azienda. Ci sono n uffici con n dipendenti ognuno dei quali ha un badge (il contenuto del badge sono caratteri alfanumerici che grazie a un lettore di badge emulano un inserimento da tastiera). Ogni giorno un dipendente può portare n raccomandate da spedire e per questo avvenimento sono riuscito nella gestione e inserimento tramite maschere. Il problema sorge all'arrivo della corrispondenza: innanzitutto devo registrare/immettere le raccomandate in una tabella e inoltre mandare una mail per avvisare i referenti dell'ufficio di passare a ritirare la corrispondenza (ho aggiunto un campo collegamento iper testuale nella tabella Uffici) e già qui non riesco perché non so come gestire le maschere o report (o dalla maschera vedo tutti gli uffici o dal report non posso immettere valori ecc.). Successivamente non so come gestire la consegna per i motivi che ti dicevo nel post precedente. Io vorrei una maschera che tipo mi faccia vedere per l'ufficio A la corrispondenza del giorno da ritirare e come registrare la consegna...stessa cosa per avvisarli via mail....se non sono stato chiaro dimmi di cosa hai bisogno e lo aggiungerò. Grazie mille e scusami per l'ignoranza
  • Re: Inserimento record in una maschera e report

    Ti ringrazio per la delucidazione... ho capito di cosa hai bisogno, tuttavia se vuoi che io ti aiuti ho bisogno che tu mi faccia vedere un'immagine aggiornata delle relazioni in quanto dall'ultima volta che l'hai postata vi dovrebbero essere stati fatti dei cambiamenti... dietro mio suggerimento e dietro suggerimento di Osvaldo. se non la posti ho serie difficoltà ad aiutarti.... vedi tu.
  • Re: Inserimento record in una maschera e report



    Ecco l'immagine delle relazioni...sto riniziando tutto daccapo seguendo le impostazioni delle tabelle di Osvaldo Laviosa più i tuoi suggerimenti ma non so davvero come impostare maschere,query,report ecc ecc...mi trovo in alto mare e in un vicolo cieco...puoi darmi una mano? ti ringrazio immensamente.

    Nicola
  • Re: Inserimento record in una maschera e report

    Perfetto:

    1) Fai un click del mouse sulla tabella "Corrispondenza" e poi sulla Tab del Menù "Crea" seleziona la freccetta a destra di "Altre Maschere" e seleziona "Più Elementi" -> Chiama questa maschera frm_Corrispondenza_sub1.

    2) Scegli, ancora una volta, dal menù la scheda "Crea" e clicca una volta su "Struttura Maschera" e trascinaci dentro "frm_Corrispondenza_sub1". Sopra tale sottomaschera appena inserita, provvedi ad inserire una combobox utilizza la composizione guidata: passa i campi "IDUfficio" e "NomeUfficio" , Ordina secondo "IDUfficio", Togli il flag dal "Nascondi colonna chiave" ed infine seleziona IDUfficio come campo disponibile. Salval'etichetta come Seleziona Ufficio. Vai nelle proprietà della combo box e metti nome elemento "cb_UfficioSel" .
    Salva la maschera con il nome di frm_Corrispondenza.

    3) Sposta, ridimensiona, abbellisci e rendi visibile solo ciò che ti occorre vedere.

    4) Riapri la finestra frm_Corrispondenza vai nelle proprietà della combo box e nell'evento "Dopo Aggiornamento" crea una macro (i 3 puntini) che faccia "Riesegui Query" su "frm_Corrispondenza_sub1". Vai nella scheda formato delle proprietà della combobox e sostituisci in larghezza colonne il primo dei "2,54cm" con "0cm".

    5) fai tanti click sul quadratino in alto a sinistra della sottomaschera fino a che non ti appaiono le proprietà della sottomaschera, seleziona la scheda "Dati" e clicca sui (3 puntini) e rispondi di SI alla domanda. Clicca sul " * " e poi su "IDUfficio" assicurati che siano andati entrambi nelle colonnine. togli il flag di visualizzazione da "IDUfficio" e sotto nella riga dei criteri fai click con il destro e scegli genera. Poi vai su "elementi espressioni" a cercare nella maschera "frm_Corrispondenza" la combobox "cb_UfficioSel". e devi fare il doppio click. (se non trovi la maschera.... non scoraggiarti apri tutti i "+" prima o poi uscirà!!!). Salva e chiudi.

    ciao
  • Re: Inserimento record in una maschera e report

    Grazie mille Angelo! Proverò domani mattina. Spero di darti buone notizie.
    Grazie e a presto!
Devi accedere o registrarti per scrivere nel forum
63 risposte