Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 13 su 13

Discussione: Query a campi incrociati con due valori

  1. #11
    Penso di riuscire a batterti

    Quote Originariamente inviata da Nicola4600 Visualizza il messaggio
    IN
    ---------
    Esempio:
    ID Fattura | Imponibile 1 | Iva1 | Imponibile 2| Iva 2| Imponibile 3| Iva3| e così via

  2. #12
    Nel database allegato ho inserito i valori in tabella, così da poter vedere la tabella e lanciare la query:

    Tabella:

    ID | Imponibile | Iva | ID_Fattura
    _________________________________________________
    1 | € 10,00 | 1 | 1
    2 | € 10,00 | 1 | 1
    3 | € 20,00 | 6 | 1
    4 | € 20,00 | 6 | 1
    7 | € 16,39 | 22 | 1
    8 | € 16,39 | 22 | 1


    Risultato query atteso:

    ID_fattura | Imponibile1 | Imponibile2 | Imponibile3 | Iva1 | Iva2 | Iva3
    __________________________________________________ _____________________________
    1 | 20 | 40 | 32,78 | 1 | 6 | 22

    Ossia:

    A fronte di un imponibile totale in fattura di 92,78
    L'imponibile è così scomposto:

    imponibile 20 con codice iva 1
    imponibile 40 con codice iva 6
    imponibile 32,78 con codice iva 22
    Ultima modifica di Nicola4600; 16-04-2018 a 17:23

  3. #13
    Forse ho trovato la soluzione:

    1. Dalla tabella tblXtabColumns ho eliminato il record Cod
    2. Ho creato una query a campi incrociati per ottenere 1 record (per ciascuna Intestazione fattura) con "eventuali diverse aliquote presenti in voci fattura (chiamata CodiciIva)
    codice:
    TRANSFORM Tbl_Aliq.Cod AS IVA
    SELECT Tbl_VocFatt.ID_IntFatt AS IntFatt
    FROM Tbl_VocFatt INNER JOIN Tbl_Aliq ON Tbl_VocFatt.Iva=Tbl_Aliq.ID
    GROUP BY Tbl_VocFatt.ID_IntFatt
    PIVOT Tbl_Aliq.Cod;
    3. Ho creto una query a campi incrociati per ottenere 1 record (per ciascuna Intestazione fattura) con la somma degli imponibili "collegati" alla stessa aliquota IVA (chiamata Imponibili)
    codice:
    TRANSFORM Sum(IIf([FieldName]="Imponibile",[ImpVocParzTot])) AS TotImpon
    SELECT Tbl_VocFatt.ID_IntFatt AS IDFatt
    FROM tblXtabColumns, Tbl_Aliq INNER JOIN Tbl_VocFatt ON Tbl_Aliq.ID=Tbl_VocFatt.Iva
    GROUP BY Tbl_VocFatt.ID_IntFatt
    PIVOT [FieldName] & Tbl_Aliq.Cod;
    4. Ho creato una query di selezione tra la query CodiciIva e la query Imponibili con JOIN basato sull'ID dell'intestazione fattura (chiamata ImponibiliConIVA)
    codice:
    SELECT Imponibili.* AS Imponibile, CodiciIva.* AS IVA
    FROM Imponibili INNER JOIN CodiciIva ON Imponibili.IDFatt = CodiciIva.IntFatt;
    Ho utilizzato l'asterisco per comprendere tutti i campi essendo questi un solo campo ripetuto tante volte quante sono le aliquote e quindi potendo applicare questa selezione a prescindere dal fatto che le voci che compongono una fattura possano essere tutte con stessa aliquota oppure tutte con aliquota diversa
    Allego il database Access 2007
    File allegati File allegati
    Ultima modifica di Nicola4600; 18-04-2018 a 16:00

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 © 2018 vBulletin Solutions, Inc. All rights reserved.