Programma Magazzino

di il
19 risposte

Programma Magazzino

Salve a tutti, avrei delle domande su un database access che sto costruendo per la mia azienda. Una cosa molto semplice per ora che poi implemento proseguendo..

Devo gestire gli articoli di un magazzino, e la struttura è la seguente:
2 tabelle: Articoli e Movimenti
Attributi della tabellaArticoli
Codice_Articolo, Descrizione, Pagina_Catalogo, Quantita_Min, Quantita_Max, Totale, Note
Attributi della tabella Movimenti
Codice_Articolo, Descrizione, Quantita, Data, Nome, Note

Articoli è una tabella dove sono inseriti i singoli articoli presenti nel magazzino;
Movimenti ovviamente è una tabella dove sono registrati tutti i movimenti degli articoli, se vengono aggiunti o tolti pezzi chi quando e perchè.

Dilemma 1
Nella maschera della tabella Movimenti c'è l'attributo Quantita che è una semplice casella dove si inserisce il valore che viene prelevato o messo in magazzino; la mia idea era di creare 2 pulsanti + e - accanto in modo che sia più semplice per l'operatore inserire il numero, il problema è: come posso implementarli?

Dilemma 2
Nella tabella Articoli, c'è l'attributo Totale, vorrei che questo campo si riempisse in automatico prendendo i valori dei diversi movimenti relativi a quell'articolo nella tabella Movimenti ma non ho idea di come fare.

Dilemma 3
Nella maschera della tabella Movimenti, ho inserito la caselle di riepilogo Codice_Articolo che richiama tutti i valori dallo stesso campo presente nell'altra tabella, e quando viene selezionato un valore, di conseguenza viene aggiornata anche la casella di riepilogo dell'attributo Descrizione. Fino a qui va benissimo.. Ma se volessi la possibilità di avere anche il contrario? Cioè che selezionando un valore nella casella Descrizione, si aggiorni il valore della casella Codice_Articolo? E' fantascienza o è realizzabile?

Grazie a chiunque mi risponda e dia le sue idee per aiutarmi.

19 Risposte

  • Re: Programma Magazzino

    Hai messo la relazione Articoli uno-a-molti Movimenti?
    Che significano i campi QuantitàMin e QuantitàMax? Non so se ha senso gestirla così.
    Ovviamente il campo Totale non deve essere un campo di tabella, ma il risultato di una query.
    Il Dilemma 3 non può funzionare a livello di tabelle...credo tu abbia mal normalizzato le tue tabelle.
    Nell'insieme ci sono vari errori di organizzazione tabelle che rendono inutili alcune domande.
    Di una cosa vorrei metterti in guardia. Si tratta di un errore tipico di molti utenti che scambiano Access con Excel, pensando di fare calcoli nelle tabelle come se stessero gestendo i fogli di Excel: NO.
    Mio parere personale. Se devi gestire un DATABASE usa Access. Se devi scrivere righe e colonne PER FARE CALCOLI usa Excel.
  • Re: Programma Magazzino

    Ho messo gli attributi Codice_Articolo delle 2 tabelle in relazione tra loro e ovviamente sono 1 a molti..
    Per quanto riguarda i Quantita_Max e Quantita_Min sono i campi per gestire il numero di articoli minimo che deve essere presente in magazzino e il massimo che pensavo di gestire nel report "Ordini".

    In effetti Access non lo prendo in mano da molto e sono abituato mentalmente a Excell, per questo nella mia testa c'è l'idea di fare tutte queste cose calcolate.

    Io ho bisogno di gestire un Database che faccia calcoli possibilmente, se mi dici che posso prelevare i valori da inserire nel database automaticamente da un foglio excell ancora meglio! Ma già mi suona improbabile..

    Ogni consiglio mi è utile per capire e modificare l'idea che ho di access in modo da migliorare. Grazie mille
  • Re: Programma Magazzino

    Se hai bisogno di gestire gli Ordini, sarebbe opportuno avere una tabella Ordini. Il discorso si sposta inevitabilmente in una logica ARCHIVISTICA di Access. Esiste il database di esempio della NorthWind che rispecchierebbe il tuo scenario. Dagli un'occhiata e ti accorgerai che l'approccio è molto diverso da alcune cose che hai detto.
  • Re: Programma Magazzino

    Un bel database quello di NorthWind, decisamente troppo complesso per i miei livelli, ma posso cercare di prendere qualche spunto sperando di uscirne fuori. Devo solo avere il tempo di mettermici dietro, grazie mille per il supporto
  • Re: Programma Magazzino

    Guardandolo ho visto parecchie cose che non riesco a comprendere come siano state fatte, come ad esempio una maschera inventario che riporta tutti i campi con i vari totali che sarebbe quello di cui avrei bisogno.
  • Re: Programma Magazzino

    Attento. Quella storia dei totali è un aspetto che viene molto dopo. Prima devi essere sicuro di aver strutturato bene il database. Io ti consiglio di leggere un manuale di base, di solito affrontano proprio il database Northwind e lo analizzano passo passo.

    Leggi attentamente il regolamento del forum:
    - E' necessario avere ben solide le nozioni base di Access. Questo può farlo solo un manuale.
    - Non è nello spirito del forum fornire la cosiddetta "pappa pronta".
  • Re: Programma Magazzino

    Per carità, non sono qui a chiedere la pappa pronta, anche perchè non capirei niente in tal caso. Voglio capire perchè è l'unico modo per imparare davvero, cosi non ho bisogno di chiedere aiuto nel caso dovessi affrontare altri problemi.
    Lentamente sto componendo i pezzi del mio puzzle per risolvere questo problema, grazie del supporto
  • Re: Programma Magazzino

    Sono riuscito a fare una versione base del mio database, ora però ho bisogno di fare un qualcosa di più avanzato come i controlli sul totale.

    Nella tabella Articoli ho creato i campi Quantita_Min e Quantita_Max.

    Questi campi sono diversi per ogni articolo e mi servono per creare dei controlli:
    - quanto il totale supera Quantita_Min deve uscire un messaggio di errore
    - quando creo un report, devo calcolare quanti pezzi servono per riempire il magazzino con Quantita_Max - il totale dei pezzi.

    I totali dei pezzi io li ho creati solamente su una maschera tramite la funzione "Somma di quantità".

    Lo sò che secondo le regole di normalizzazione non si dovrebbero salvare dati che possono essere ricavati, però non trovo altri modi per creare questi controlli. Perdonate la mia ignoranza!
  • Re: Programma Magazzino

    AndryFox ha scritto:


    Sono riuscito a fare una versione base del mio database, ora però ho bisogno di fare un qualcosa di più avanzato come i controlli sul totale.

    Nella tabella Articoli ho creato i campi Quantita_Min e Quantita_Max.

    Questi campi sono diversi per ogni articolo e mi servono per creare dei controlli:
    - quanto il totale supera Quantita_Min deve uscire un messaggio di errore
    - quando creo un report, devo calcolare quanti pezzi servono per riempire il magazzino con Quantita_Max - il totale dei pezzi.

    I totali dei pezzi io li ho creati solamente su una maschera tramite la funzione "Somma di quantità".

    Lo sò che secondo le regole di normalizzazione non si dovrebbero salvare dati che possono essere ricavati, però non trovo altri modi per creare questi controlli. Perdonate la mia ignoranza!
    Vediamo....

    Allora. se non sbaglio quantità minima e massima ti servono per avere il limite di riordino e quindi è giusto che siano inserite nella tabella.

    Nelle tabelle non puoi proprio fare i campi calcolati, almeno non come sono concepiti con excell.

    Quello che puoi fare invece è manipolare i dati a tuo piacimento, o come hai fatto, tramite le maschere, oppure i report, visto che i report sono sempre delle maschere e quindi puoi fare i totali etc etc alla stessa maniera di come li fai nelle maschere, oppure,meglio ancora, fare delle specifiche query di selezioni, dove oltre che reperire i dati, inserisci anche tutti i totali di cui hai bisogno, così che, collegando il report alla query specifica il sistema ti crea tutto in automatico.

    Considera però che i report, in automatico, possono essere costruiti con tutti i tolali, medie, min e max di cui hai bisogno. Lo devi specificare in fase di creazione automatica.

    Per quanto riguarda invece il messaggio di errore, prima di addentrarci in una situazione che prevede una consocenza un pochino più tecnica di access, ti consiglio di utilizzare una funzione semplice ed efficace già integrata in access stesso:
    La formattazione condizionale.

    Applicata ad un qualsiasi controllo di testo, in base a dei criteri che tu gli indichi, hai la possibilità di modificare o far fare delle specifiche azioni ad un controllo di testo, oppure ad altri controlli di testo.

    Ad esempio se sulla casella di testo valore minimo, applichi la formattazione condizionale con la condizione che Se il valore è minore di 30 deve cambiare la scritta dal colore nero nel colore rosso, tutti i campi dei record che soddisfano questa condizione, verranno visualizzati in rosso.
  • Re: Programma Magazzino

    Grazie mille, mi sei stato d'aiuto.

    Ora avrei delle altre richieste se non vi ho già rotto abbastanza!
    Avrei bisogno di creare dei filtri:

    Praticamente vorrei creare una maschera, dove compilando dei campi mi appaiano i risultati filtrati sotto. C'è qualche buon anima che mi possa dare una mano e farmi capire come funzionano e un'idea di come si realizzino?
  • Re: Programma Magazzino

    AndryFox ha scritto:


    Grazie mille, mi sei stato d'aiuto.

    Ora avrei delle altre richieste se non vi ho già rotto abbastanza!
    Avrei bisogno di creare dei filtri:

    Praticamente vorrei creare una maschera, dove compilando dei campi mi appaiano i risultati filtrati sotto. C'è qualche buon anima che mi possa dare una mano e farmi capire come funzionano e un'idea di come si realizzino?
    Ciao.

    Praticamente devi scrivere in una casella ad esempio "topolino" e con un pulsante ricerca ti appare una nuova tabella con tutti i record che contengono la parola "topolino".

    dipende da quanto lo vuoi professionale.

    Per prima cosa c'è da dire che access ha già di suo una funzione per applicare filtri e i due principali sono filtro in base a selezione e filtro in base a maschera.

    seconda cosa puoi creare una query parametrica dove access ti chiede con una finestra modale di immettere il dato che devi cercare.

    poi.... ci sono svariate altre soluzioni che implicano l'uso di macro, oppure VBA.

    tutto dipende da come lo vuoi realizzare.
    La prima soluzione è per coloro che hanno una conoscenza molto bassa di access.
    La seconda bisogna almeno sapere come si crea una query e quindi conoscenza base.
    la terza è per utenti da livello di conoscenza medio fino ad infinito. (dipende da quanto professionale vuoi che sia questa ricerca).

    Su internet trovi tutto il necessario dai manuali più semplici a quelli più completi, se poi mastichi l'inglese trovi anche veri manuali da 2000 ed oltre pagine ma con quelli c'è da perderci la testa.

    Ti consiglio di fare una ricerca e capire più o meno come si fanno queste cose, se poi hai altre domande, noi siamo sempre qui a cercare di fugare i tuoi dubbi
  • Re: Programma Magazzino

    Grazie per i tuoi consigli, ma vorrei qualcosa di più avanzato e più o meno mi sto facendo un idea continuando a guardare esempi e altri forum.

    Io ora ho creato una query dove ci sono i campi che voglio vengano visualizzati.
    Ho creato anche una maschera a più elementi dove ci sono nell'intestazione delle caselle di riepilogo e un pulsante che dovrebbe passare i dati tramite una macro con una where alla query.

    Secondo la mia logica:
    se metto codice 1 e schiaccio il pulsante, dovrebbe passare codice 1 alla query e riportarmi tutti gli articoli corrispondenti.

    Ora vorrei capire, con il vostro aiuto, cosa sbaglio e/o cosa dimentico.. Purtroppo non si nasce imparati e per imparare io ho bisogno di una mano ogni tanto, grazie mille!
  • Re: Programma Magazzino

    Ciao.

    Di logica hai ragionato bene. Ora bisogna vedere come hai scritto il codice per farglielo fare.

    Prima di tutto però dovresti dirci quante tabelle hai inserito, che tipi collegamenti hai fatto tra di loro e che codice hai inserito nel pulsante.

    Prendere un valore da una casella, e passarlo ad una query tramite un pulsante, non è difficile, ma bisogna avere qualche conoscenza su come scrivere esattamente il codice.

    Che cosa accade? Non visualizzi i dati? Ricevi un messaggio di errore?

    La via più semplice, sopratutto per capire come funziona access, secondo me , al momento, ti conviene usare una query parametrica.
    Dai un occhio a come funzionano le query parametriche. All'inizio sono un toccasana.
  • Re: Programma Magazzino

    Tralasciamo per un pò il problema filtri

    Ho un problema che ho notato solo ora con la formattazione condizionale che mi hai consigliato giorni fa..


    Io ho i miei attributi Quantita_Min, Quantita_Max
    Nella formattazione condizionale indico che se il valore della somma di quantità presente nella casella di testo è minore di Quantita_Min lo sfondo della casella di testo deve diventare rosso, ma non funziona!

    Pensavo fosse dovuto al fatto che le tabelle sono separate dal resto tramite "Dividi database di Access", ma non funziona nemmeno se si trovano nel programma stesso.
Devi accedere o registrarti per scrivere nel forum
19 risposte