CALCOLO DI UN CAMPO IN MASCHERE CONTINUE

Anonimo
2016-09-23T09:48:22+00:00

Buongiorno a tutti.

Ho un report e nel corpo ho un campo anno (diverso per ogni riga) e un campo totale (è il totale fatturato di ogni anno). Vorrei calcolare 

la percentuale di differenza fra un anno e il precedente.

Grazie

Esempio

2016  euro 10.000 +20% rispetto al 2015

2015  euro 8.000  -10%   rispetto al 2014

2014  euro 9.000  0% rispetto al 2013

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

4 risposte

Ordina per: Più utili
  1. Anonimo
    2016-09-26T11:40:49+00:00

    ciao  Christian_boy,

    non credo si riesca a recuperare la riga precendente alla currentRow con un report.

    Si può eseguire una running sum ma una differenza tra currentRow e previous direi di no.

    Onde evitare di tirare a caso le risposte ed inventare scenari che poco rispecchiano  la realtà....prova  a pubblicare una demo...mini demo del tuo  db senza dati  sensibili ma con qualche dato in modo da sperimentare un po'.

    Ciao, Sandro

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2016-09-24T17:42:02+00:00

    Buonasera a tutti.

    Mi vorrei spiegare ulteriormente.

    Prendendo lo schema di Sandro il mio report contiene i campi anno e fatturato inserendo una casella di testo

    non associata ,che chiamerò gap,  vorrei inserire una espressione nell'origine controllo che mi calcoli la percentuale

    di differenza fatturato rispetto all'anno precedente.

    E' da questa mattina che cerco e faccio prove ma non riesco a saltarci fuori. 

    Se qualcuno può aiutarmi gli sarei veramente grato.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2016-09-24T06:36:16+00:00

    Ciao Sandro

    Scusami non sono stato preciso, comunque il tuo esempio calza a pennello per un'altro problema che avevo.

    In questo caso è un report. Dietro ho una query che mi raggruppa per anno i fatturati quindi non ho l'id. La query non vorrei toccarla perchè serve per una maschera. 

    Quello che vorrei è inserire nel report un campo non associato che abbia come origine dati una espressione.

    Ho provato con il Sum ma non sono riuscito.

    grazie ancora per l'altro esempio.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2016-09-23T17:14:37+00:00

    ciao Cristian_boy,

    report o maschera?

    se la prima.

    supponendo che la tabella T_fatturato sia l'origina dati :

    id_anno anno fatturato
    1 2016 € 10.000,00
    2 2015 € 8.000,00
    3 2014 € 9.000,00
    4 2011 € 8.000,00
    5 2012 € 7.000,00

    con uno statement come segue :

    SELECT t_fatturato.id_anno, t_fatturato.anno, t_fatturato.fatturato, [fatturato]-(select top 1 fatturato from t_fatturato as T where t.anno<t_fatturato.anno order by t.anno desc ) AS differenza, Format([differenza]/[fatturato],"Percent") AS gap

    FROM t_fatturato

    ORDER BY t_fatturato.anno DESC;

    ottieni :

    id_anno anno fatturato differenza gap
    1 2016 € 10.000,00 € 2000,000 20,00%
    2 2015 € 8.000,00 -€ 1000,000 -12,50%
    3 2014 € 9.000,00 € 2000,000 22,22%
    5 2012 € 7.000,00 -€ 1000,000 -14,29%
    4 2011 € 8.000,00

    che forse può diventare l'origine dati del tuo report?

    Ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento