Aggiornamento sottomaschera da va varie caselle combinate in maschera

di il
27 risposte

Aggiornamento sottomaschera da va varie caselle combinate in maschera

Salve, vorrei un aiuto per riuscire ad aggiornare i dati di una sottomaschera in tempo reale mentre seleziono tre caselle combinate. Parlimao di un database per un inventario. Avrei bisogno che nella maschera dove carico il nuovo movimento di magazzino, scegliendo prima il modello, poi la marca ed infine il colore, la sottomaschera mi restituisse man mano le giacenze. Ipotizzando di avere:

Modelli: A, B e C

Marca: Pippo e Pluto

Colori: rosso, bianco e nero

se seleziono nella prima casella combinata il modello A, la sottomaschera mi deve restituire una riga con la giacenza di tutti i prodotti A

Appena seleziono nella seconda casella la marca Pluto, la sottomaschera mi dovrebbe restituire solo i prodotti del modella A e di marca Pluto.

Spero di essere stato chiaro. Grazie dell'aiuto

27 Risposte

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    A parte che l'argomento è stato trattato più volte…

    Tu cosa hai fatto?

    Che tabelle e relazioni usi?

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    Perdonami, ma ho cercato nei vari post, ma non ho trovato una soluzione al mio dubbio. Io ho 4 tabelle Modelli, Marca, Colori e Prodotti. Ma tabella prodotti è in relazione Uno a Molti con le altre 3 tabelle.

    Ogni volta che entra o esce un prodotto dal magazzino, creo una riga nella tabella prodotti tramite una maschera, legandola alle altre 3. Avrei bisogno, man mano che riempio i campi della maschera (caselle combinate con i dati provenienti dalle 3 tabelle) che la sottomaschera mi filtri il magazzino dandomi il saldo dei movimenti dei vari prodotti che rispecchiamo le selezioni che sto facendo nella maschera. Inizialmente vedrò tutti i prodotti, poi solo quelli del modello che ho specificato, poi quelli del modello e della marca che ho specificato ed infine solo una riga del modello , della marca e del colore specificati nella maschera principale.

    Ho tentato aggiornando la sottomaschera ma mi da errore perchè dopo aver inserito solo il modello mi dice che non ha una specifica per la marca.

    Spero di averti chiarito. Grazie

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - jumpjumper ha scritto:


    Ogni volta che entra o esce un prodotto dal magazzino, creo una riga nella tabella prodotti

    Ecco, appunto. Sarebbe come se ogni volta che entri al supermercato ti inseriscono come cliente…

    Crea la tabella movimenti o caricoscarico. Quella inserisce una riga ogni carico o scarico.

    Il prodotto lo prendi dalla lista prodotti, idem per misure colori, modello bla bla…

    Articolo, modello, bla bla lo puoi selezionare da una combobox, ovviamente caricoscarico inserisce l'id.

    05/08/2023 - jumpjumper ha scritto:


    tabella prodotti è in relazione Uno a Molti

    Cioè di rosso hai solo un articolo? Io avrei fatto m a m.

    Tab_art_mod, ecc…

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - jumpjumper ha scritto:


    Salve, vorrei un aiuto per riuscire ad aggiornare i dati di una sottomaschera in tempo reale mentre seleziono tre caselle combinate. Parlimao di un database per un inventario. Avrei bisogno che nella maschera dove carico il nuovo movimento di magazzino, scegliendo prima il modello, poi la marca ed infine il colore, la sottomaschera mi restituisse man mano le giacenze. Ipotizzando di avere:

    Modelli: A, B e C

    Marca: Pippo e Pluto

    Colori: rosso, bianco e nero

    se seleziono nella prima casella combinata il modello A, la sottomaschera mi deve restituire una riga con la giacenza di tutti i prodotti A

    Appena seleziono nella seconda casella la marca Pluto, la sottomaschera mi dovrebbe restituire solo i prodotti del modella A e di marca Pluto.

    Spero di essere stato chiaro. Grazie dell'aiuto

    Per la giacenza: una query che somma i carichi e sottrae gli scarichi, raggruppata per articolo e ordinata per marca, modello, colore.

    Se vuoi solo marca a aggiungi where marca=a

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    Un attimo cerchiamo di capire bene quello che vuoi realizzare, perchè nel post iniziale e nella risposta hai detto due cose diverse. O almeno a me sembrano due cose diverse.

    Nel post iniziale sembra che tu voglia che la casella combinata successiva ti faccia vedere solo i valori relativi alla categoria scelta nella precedente combo.

    ad esempio:
    Prima combo.

    -Alimentari
    -Prodotti per la pulizia.

    se scegli alimentari la seconda combo ti deve mostrare solo i prodotti alimentari escludendo quelli per la pulizia

    Tipo:

    -pasta
    -sughi pronti.

    se scegli pasta la terza combo ti deve mostrare solo i campi relativi alla pasta escludendo i sughi pronti

    tipo

    -Spaghetti
    -tagliatelle.

    Se vuoi fare solo questo è relativamente semplice, perchè nella combo box successiva, nella fonte dati vai ad inserire una query che ti filtri i dati in base al valore id della cambo precedente.

    Se invece vuoi aggiungere anche la visualizzazione delle giacenze ed aggiungere anche un nuovo movimento, la cosa si fa un pochino più complicata. 

    Se poi metti in mezzo anche le sottomaschere, la cosa è decisamente complicata.

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - fratac ha scritto:


    Se invece vuoi aggiungere anche la visualizzazione delle giacenze ed aggiungere anche un nuovo movimento, la cosa si fa un pochino più complicata. 

    Se poi metti in mezzo anche le sottomaschere, la cosa è decisamente complicata.

    Grazie della risposta, ma la situazione è decisamente complicata

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - sihsandrea ha scritto:


    Per la giacenza: una query che somma i carichi e sottrae gli scarichi, raggruppata per articolo e ordinata per marca, modello, colore.

    Se vuoi solo marca a aggiungi where marca=a

    Grazie dell'aiuto. Ho nominato male le tabelle, ma il concetto è quello che mi hai espresso tu. La tabella che ho chiamato prodotti in realtà è un carico/scarico.
    Il mio obiettivo sarebbe di utilizzare una maschera per lo scarico dove visualizzare le giacenze di magazzino dei vari prodotti man mano che restringo le scelte

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - jumpjumper ha scritto:


    Il mio obiettivo sarebbe di utilizzare una maschera per lo scarico dove visualizzare le giacenze di magazzino dei vari prodotti man mano che restringo le scelte

    Sei sicuro che non ti occorra solo la giacenza dell'ultimo prodotto?

    Presumo che, come detto la scelta sarà Alimentari – > pasta – > fusilli.

    Quindi andrai solo a movimentare solo la quantità dei fusilli.

    Mi suona male fare la giacenza di tutti i prodotti alimentari presenti in magazzino, quando ne andrai a movimentare uno per volta.

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    No, no hai ragione mi servirà la giacenza solo dell'ultimo, ma mi piacerebbe che dopo che ho selezionato la pasta mi vengano date le giacenze di tutte le paste e appena seleziono i fusilli, solo la giacenza dei fusilli, così da vedere le giacenze dei prodotti “simili”

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    Ok, una query parametrica…

    Select bla bla…

    Where ((marca=pippo and filtromarca=true) or (filtromarca=false))

    And ((modello=xyz and filtromodello=true) or (filtromodello=false))

    And…

    Idem per le altre combo di scelta.

    Man mano che setti le voci della combo aggiorni la query e si restringe il campo giacenza (sempre ricavato da carico/scarico).

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - jumpjumper ha scritto:


    Grazie della risposta, ma la situazione è decisamente complicata

    Forse hai sbagliato termine e volevi dire che la situazione e' decisamente semplice

    Se la tua tabella PRODOTTI e' quella che usi per tenere le informazioni del carico/scarico, e' esclusivamente questa che dovrai interrogare per conoscere la giacenza attuale di un certo prodotto

    In questa tabella, oltre al tipo di prodotto ed oltre al tipo di movimento (che potrebbe anche essere sottinteso dal segno della quantita movimentata, ad esempio + per carico, - per scarico) ovviamente dovrai tenere anche indicazione del Modello, Marca, Colore 

    Sulla form principale, supponiamo tu abbia quattro combobox per la ricerca, Prodotto, Modello, Marca, Colore, basta inserire una funzione sul'evento AfterModify  =rinfresca_subform_dettagli() che dovra' contenere il codice per leggere quali sono le combobox attualmente valorizzate (potrebbe essere che Marca e Colore non sono valorizzate ed allora restituira' tutte le movimentazioni del Prodotto e Modello scelto), e seleziona le righe dalla tabella Prodotti che corrispondono alla richiesta (Prodotto e Modello come indicato nella form principale), questo per avere il dettaglio movimentazione di tutte le righe Prodotti

    Se vuoi solo il valore giacenza, basta che le righe le raggruppi per Prodotto, Modello e visualizzi la sum(Quantita)

    Personalmente terrei la duplice visualizzazione, sia il dettaglio che la somma finale, puo' essere sempre comodo vedere come mai ti mostra -50 sulla giacenza, e dal dettaglio potresti veederlo chiaramente

    Aggiungo che se sul dettaglio, e quindi su ogni riga della tabella Prodotti (che non si capisce perche' chiami cosi visto che dentro ci sono le righe movimenti di magazzino) avessi anche indicazione del tipo/numero/data documento che ha eseguito la movimentazione, avresti anche indicazioni ben piu' utili che la semplice quantita movimentata, e con un doppio-click potresti aprire direttamente la schermata col dettaglio del movimento

    Aggiungo2, se decidi di aggiungere tipo/numero/data documento usato per movimentare il magazzino, potresti anche usare movimenti di TIPO diverso come Carico/Scarico ma anche Inventario, ed alora bisogna ragionare diversamente, perche' la giacenza attuale non sara' la somma delle quantita su ogni riga ma la somma aritmetica delle quantita su ogni riga a partire dall'ultimo inventario in poi + il valore ultimo inventario

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - amorosik ha scritto:


    usare movimenti di TIPO diverso come Carico/Scarico ma anche Inventario, ed alora bisogna ragionare diversamente, perche' la giacenza attuale non sara' la somma delle quantita su ogni riga ma la somma aritmetica delle quantita su ogni riga a partire dall'ultimo inventario in poi + il valore ultimo inventario

    Mumble mumble….

    Per fare l'inventario alla vecchia maniera:

    Stampi la lista degli articoli con subarticoli (taglia, colore ecc) qualunque sia la giacenza.

    Fisicamente si spunta voce x voce mettendo la spunta su quelle giuste e la quantità reale dove differisce (o la differenza o la quantità da rettificare).

    Con la lista corretta, come fosse un carico o scarico, con causale “rettifiche da inventario”, inserisci la quantità da togliere o aggiungere.

    Essendo sempre carico/scarico avrai sempre e comunque la giacenza esatta senza togliere “inventario” che non è ne un carico ne uno scarico ma una giacenza ad una data.

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    Grazie amorosik, hai centrato perfettamente il problema. Il nome della tabella prodotti è ovviamente sbagliato e l'ho cambiato in “movimenti”. Questa tabella ha già dei campi tipo data, n.movimento e note, ma non le ho specificate per non incasinare ancor di più il post.

    Mi potresti aiutare con il codice ipotizzando che la maschera si chiami MainForm, la sottomaschera SubForm e le 3 combo siano Prodotto, Modello e Marca.

    Io devo inserirlo su AfterModify di ognuna delle combo?

    05/08/2023 - amorosik ha scritto:


    Aggiungo2, se decidi di aggiungere tipo/numero/data documento usato per movimentare il magazzino, potresti anche usare movimenti di TIPO diverso come Carico/Scarico ma anche Inventario, ed alora bisogna ragionare diversamente, perche' la giacenza attuale non sara' la somma delle quantita su ogni riga ma la somma aritmetica delle quantita su ogni riga a partire dall'ultimo inventario in poi + il valore ultimo inventario

    Per semplicità pensavo di evitarlo inserendo la giacenza iniziale come primo movimento.

    Grazie

  • Re: Aggiornamento sottomaschera da va varie caselle combinate in maschera

    05/08/2023 - sihsandrea ha scritto:


    Ok, una query parametrica…

    Select bla bla…

    Where ((marca=pippo and filtromarca=true) or (filtromarca=false))

    Grazie sihsandrea, 

    non ho purtroppo idea di come realizzare una query parametrica, ma vorrei provarci. Riusciresti a mandarmi un esempio e a dirmi dove inserire il codice?
    Grazie

Devi accedere o registrarti per scrivere nel forum
27 risposte