CALCOLO TARIFFA TRASPORTO

di il
8 risposte

CALCOLO TARIFFA TRASPORTO

Buon pomeriggio a tutti,
insieme alla software house ci segue con il nostro gestionale aziendale, stiamo scrivendo un programma in VB.Net per il calcolo dei costi di trasporto per ogni spedizione.
Noi siamo una rivendita e ci affidiamo a trasportatori esterni, dove ognuno ha il suo metodo quindi il controllo delle fatture dei trasportatori risulta essere un lavoro veramente complicato, in quanto gestiamo anche fino a 1000 spedizioni al mese.
Uno dei trasportatori con cui lavoriamo applica un calcolo molto particolare per quanto riguarda il costo della spedizione: come primo filtro abbiamo la provincia, poi l'altezza del bancale ed infine il peso, e da qui vorremmo calcolare il costo della spedizione che è composto dal numero di bancali + una percentuale accessoria.
Per comodità vi allego un esempio di listino ma quello che volevo condividere con voi è quello di trovare la strada più breve per fare questo calcolo.
Il listino tra province e tariffe avrà circa 500 righe, quindi utilizzare un ciclo potrebbe risultare macchinoso; volevo sapere cosa ne pensavate anche voi.

Grazie in anticipo a tutti quelli che risponderanno.

Saluti e buon lavoro
Allegati:
31216_86e79349b348840ff575e03a56ae4b7f.jpg
31216_86e79349b348840ff575e03a56ae4b7f.jpg

8 Risposte

  • Re: CALCOLO TARIFFA TRASPORTO

    Ciao, io avessi il tuo stesso problema proverei a fare un lavoro prima di logica poi di codice, mi spiego... assegnerei un valore ad ogni provincia, un valore ad ogni unità o frazione di essa per i restanti campi per poi aggiungere la percentuale finale, così facendo, la somma di tutto mi da il risultato...
    Devi solo stabilire dei parametri secondo me, AO o FE o RM per esempio quanto valgono?
    ogni cm in altezza quanto può valere?
    quanto vale ogni range di peso?

    stabilisci dei fattori prima altrimenti non puoi avere un calcolo finale direi...

    se ho capito bene la tua richiesta....
  • Re: CALCOLO TARIFFA TRASPORTO

    orione1976 ha scritto:


    Ciao, io avessi il tuo stesso problema proverei a fare un lavoro prima di logica poi di codice, mi spiego... assegnerei un valore ad ogni provincia, un valore ad ogni unità o frazione di essa per i restanti campi per poi aggiungere la percentuale finale, così facendo, la somma di tutto mi da il risultato...
    Devi solo stabilire dei parametri secondo me, AO o FE o RM per esempio quanto valgono?
    ogni cm in altezza quanto può valere?
    quanto vale ogni range di peso?

    stabilisci dei fattori prima altrimenti non puoi avere un calcolo finale direi...

    se ho capito bene la tua richiesta....
    Buon pomeriggio e grazie mille per il riscontro,

    quello che intendi sarebbe assegnare delle variabili? perchè il codice vettore e la provincia potrebbero essere considerate come delle chiavi primarie perchè sono valori fissi, mentre il peso e l'importo e la percentuale sono i valori che cambiano...
  • Re: CALCOLO TARIFFA TRASPORTO

    Non ho ben capito:
    tu hai una spedizione, che ha certo numero di caratteristiche, specificatamente una per ogni colonna della tabellina che hai postato.
    il problema e' cercare quale riga della tabellina corrisponde alla tua spedizione.
    e la tabellina e' composta da 500 righe e voi fate 1000 spedizioni al mese.

    ok.
    una serie di ragionamenti 'spiccioli'

    1) se metti la tabellina in un database e fai gli indici, si arrangia il db a cercare, in modo efficiente, la riga corretta
    2) 500 righe ricercate in modo sequenziale, sui computer di oggi, si traducono in qualche microsecondo. cioe' devi fare UN MILIONI di ricerche per arrivare al secondo.
    Ma diciamo anche che richieda un millisecondo, devi fare MILLE ricerche per arrivare al secondo. Quindi le spedizioni di un mese le risolvi in un secondo. Ti rimangono 29 giorni 23 ore 59 minuti e 59 secondi
    Quindi, a questi livelli, una banale ricerca sequenziale e' piu' che sufficiente
    3) per fare una ricerca piu' efficiente ti serve una struttura dati opportuna. Niente e' gratis! In questo caso una possibile struttura potrebbe essere un kd-tree.

    Nota che al punto 1) ho scritto 'se fai gli indici'. SENZA indici il db farebbe una ricerca sequenziale, e si ritorna al punto 2.
  • Re: CALCOLO TARIFFA TRASPORTO

    Chiedere alle ditte che si occupano del trasporto
    un loro webservice che fa i calcoli dei costi è impraticabile suppongo ...
  • Re: CALCOLO TARIFFA TRASPORTO

    migliorabile ha scritto:


    Non ho ben capito:
    tu hai una spedizione, che ha certo numero di caratteristiche, specificatamente una per ogni colonna della tabellina che hai postato.
    il problema e' cercare quale riga della tabellina corrisponde alla tua spedizione.
    e la tabellina e' composta da 500 righe e voi fate 1000 spedizioni al mese.

    ok.
    una serie di ragionamenti 'spiccioli'

    1) se metti la tabellina in un database e fai gli indici, si arrangia il db a cercare, in modo efficiente, la riga corretta
    2) 500 righe ricercate in modo sequenziale, sui computer di oggi, si traducono in qualche microsecondo. cioe' devi fare UN MILIONI di ricerche per arrivare al secondo.
    Ma diciamo anche che richieda un millisecondo, devi fare MILLE ricerche per arrivare al secondo. Quindi le spedizioni di un mese le risolvi in un secondo. Ti rimangono 29 giorni 23 ore 59 minuti e 59 secondi
    Quindi, a questi livelli, una banale ricerca sequenziale e' piu' che sufficiente
    3) per fare una ricerca piu' efficiente ti serve una struttura dati opportuna. Niente e' gratis! In questo caso una possibile struttura potrebbe essere un kd-tree.

    Nota che al punto 1) ho scritto 'se fai gli indici'. SENZA indici il db farebbe una ricerca sequenziale, e si ritorna al punto 2.
    Buongiorno e ringrazio per il suggerimento,

    quindi in sostanza indicizzare il vettore, la provincia, l'altezza e utilizzare una funzione if per filtrare il peso no? o un qualcosa del genere che riduca al minimo le funzioni manuali...dovrebbe bastare...
  • Re: CALCOLO TARIFFA TRASPORTO

    Io farei come ti ho detto, in piu se le variabili sono esterne puoi sempre modificarle.... fa una form nascosta con i setting dove volendo puoi cambiare i valori per regione, per peso etc.. e sarai sempre aggiornato.... è solo il primo sbattimento ma poi non lo tocchi piu.... io almeno faccio una cosa simile quando mi serve... poi vedi tu
  • Re: CALCOLO TARIFFA TRASPORTO

    Scusate, ma ... utilizzare una tabella di un database non sarebbe più semplice?
    Se non puoi utilizzare un database "classico" (SQL Server ecc.), basta che la inserisci in un file CSV, includi il CSV nel progetto VB e la carichi a ogni avvio in un array e poi la consulti con LINQ...
  • Re: CALCOLO TARIFFA TRASPORTO

    Si effettivamente sono tutte alternative valide direi, o almeno funzionanti... Anche in un DB che sia sql, mdb o csv deve comunque scrivere delle comparazioni.... vediamo se risolve
Devi accedere o registrarti per scrivere nel forum
8 risposte