fbpx

Puntualità consegne

Un indicatore per valutare il servizio fornito al cliente è dato dalla puntualità delle consegne che indica la precisione a livello temporale della logistica. Per misurare la puntualità di consegna si confrontano due date: la data di consegna confermata presa dall’ordine e la data del documento di trasporto.
Per la nostra elaborazione partiamo da una tabella spedizioni in cui inseriamo le seguenti informazioni ricavate dagli ordini e dai DDT:
CLIENTE, ORDINE, CODICE, DATA CONSEGNA, DATA BOLLA

Per prima cosa calcoliamo la differenza tra le due date:

SELECT spedizioni.ORDINE, spedizioni.CODICE, spedizioni.DACO, spedizioni.DABO, IIf([DABO]=0,IIf([DACO]>=DATE(),0,DATE()-[DACO]),[DABO]-[DACO]) AS GG, IIf([GG]<-5,"ANTICIPO",IIf([GG]<5,"PUNTUALE","RITARDO")) AS CHK
FROM spedizioni
WHERE (((spedizioni.DACO)<=#1/31/2008#));

A questo punto incrociamo la query puntualità con la tabelle delle classi di puntualità cosi definita:

ORD Classe inf sup
1 <=-30 -9000 -30
2 ]-30;-7] -29 7
3 ]-7;-4] -6 -4
4 ]-4;0] -3 0
5 ]0;4] 1 4
6 ]4;7] 5 7
7 ]7;14] 8 14
8 ]14;30] 15 30
9 ]30;60] 31 60
10 ]60;180] 61 180
11 >=180 181 9000
SELECT Puntualità.CLIENTE, Puntualità.CODICE, classi.Classe
FROM Puntualità, classi
WHERE (((Puntualità.GG) BETWEEN [classi]![inf] AND [classi]![sup]));

Ora raggruppiamo per classie e clienti la query precedente:

SELECT classi.ORD, classi.Classe, classi.Cliente, COUNT(CP00.CODICE) AS [N RIGHE]
FROM CP00 INNER JOIN classi ON CP00.Classe = classi.Classe
GROUP BY classi.ORD, classi.Classe;

In questo modo abbiamo ottenuto una statistica per classi di puntualità e cliente, sulla base della prima query è possibile costruire una statistica per mese in questo modo con tre query a cascata (pm00, pm01, puntualità mensile):

pm00

SELECT CLng(Format([DACO],"yyyy")) AS ANNO, CLng(Format([DACO],"m")) AS MES, IIf([CHK]="ANTICIPO","PUNTUALE",[CHK]) AS CK, Puntualità.CODICE
FROM Puntualità;

pm01

TRANSFORM COUNT(pm00.CODICE) AS ConteggioDiCODICE
SELECT pm00.ANNO, ([MES]) AS MESE, COUNT(pm00.CODICE) AS TOT
FROM pm00
GROUP BY pm00.ANNO, ([MES])
PIVOT pm00.CK;

Puntualità mensile

SELECT pm01.MESE, [PUNTUALE]/[TOT] AS PUN, [RITARDO]/[TOT] AS RIT
FROM pm01;

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Articoli collegati

Novità Excel 2016

Excel 2016 presenta diverse novità che vanno nella direzione di renderlo sempre più un potente strumento per l’analisi dei dati. Vediamone alcune. Sei nuovi tipi

leggi

Retail audit

Scarica la guida per informatizzare il tuo negozio e guadagnare di più In considerazione del fatto che il settore Retail sta vivendo una situazione competitiva

leggi

— il nuovo servizio per i piccoli commercianti —

Bottega Digitale

[]