Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433

    Operazioni in query di update con join

    Ciao, ho questo problema.
    ho creato una sorta di mini gestionale (piccolo e spartano) di magazzino per una attività di un amico. questo gestionale crea delle Bolle/DDT che contengono gli articoli che ci sono a disposizione nel suo magazzino.

    nel momento in cui conferma il documento XX dovrei andare a diminuire le quantità degli articoli in base alla quantità ordinata e presente nel documento.

    in pratica ho 2 tabelle:

    Tab: ARTICOLO
    ID_articolo
    QTA_disponibile
    ecc..
    ecc,,

    Tab: Documento
    ID_documento
    ID_articolo
    QTA_ordinata
    ecc
    ecc...

    il legame è dato dal campo ID_articolo.

    ora poichè nella tabella documento ci possono essere più righe articolo (ovviamente) dovrei andare scalare in un colpo unico (SE SI PUO') il campo ARTICOLO.QTA_disponibile MENO Documento.QTA_ordinata.

    ... la cosa sarebbe anche più complicata in quanto ci sarebbe una terza tabella dove memorizzo le quantità degli articoli qualora si facciano dei "prelievi" multi dal magazzino ... ma questo magri me la vedo con calma intanto devo risolvere la prima.
    Grazie ragazzi.
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  2. #2

    Re: Operazioni in query di update con join

    Originariamente inviato da Urbanus
    Ciao, ho questo problema.
    ho creato una sorta di mini gestionale (piccolo e spartano) di magazzino per una attività di un amico. questo gestionale crea delle Bolle/DDT che contengono gli articoli che ci sono a disposizione nel suo magazzino.

    nel momento in cui conferma il documento XX dovrei andare a diminuire le quantità degli articoli in base alla quantità ordinata e presente nel documento.

    in pratica ho 2 tabelle:

    Tab: ARTICOLO
    ID_articolo
    QTA_disponibile
    ecc..
    ecc,,

    Tab: Documento
    ID_documento
    ID_articolo
    QTA_ordinata
    ecc
    ecc...

    il legame è dato dal campo ID_articolo.

    ora poichè nella tabella documento ci possono essere più righe articolo (ovviamente) dovrei andare scalare in un colpo unico (SE SI PUO') il campo ARTICOLO.QTA_disponibile MENO Documento.QTA_ordinata.

    ... la cosa sarebbe anche più complicata in quanto ci sarebbe una terza tabella dove memorizzo le quantità degli articoli qualora si facciano dei "prelievi" multi dal magazzino ... ma questo magri me la vedo con calma intanto devo risolvere la prima.
    Grazie ragazzi.
    Ciao,

    UPDATE ARTICOLO
    SET ARTICOLO.QTA_disponibile = ARTICOLO.QTA_disponibile - Documento.QTA_ordinata
    FROM ARTICOLO JOIN DOCUMENTO ON ARTICOLO.ID_ARTICOLO = DOCUMENTO.ID_ARTICOLO


    Ps.
    Hai pensato di usare i trigger?
    Non si può risolvere un problema usando lo stesso modo di pensare che ha creato quel problema.
    Albert Einstein

    Siate Affamati, siate Folli, siate Onesti e siate Generosi

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    ok grazie , ora provo.
    no i trigger non ci ho pensato in effetti.

    ma posso farlo anche con delle variabili?

    nel senso che nella query e cosa che non ho specificato io devo scalare solo gli articoli in un determinato documento numero XX

    con la tua query andrei a toccarli tutti indistintamente!
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  4. #4
    Originariamente inviato da Urbanus
    ok grazie , ora provo.
    no i trigger non ci ho pensato in effetti.

    ma posso farlo anche con delle variabili?

    nel senso che nella query e cosa che non ho specificato io devo scalare solo gli articoli in un determinato documento numero XX

    con la tua query andrei a toccarli tutti indistintamente!
    SI, puoi aggiungere WHERE...
    Non si può risolvere un problema usando lo stesso modo di pensare che ha creato quel problema.
    Albert Einstein

    Siate Affamati, siate Folli, siate Onesti e siate Generosi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.