Newsgroup: it.comp.appl.access
Titolo: Aiuto problema struttura.....

Ciao a tutti, mi sto dannando per risolvere un problema apparentemente
banale ma di cui non risco a trovare la logica corretta per
rappresentare il problema con un'adeguata struttura dati...
problema: gestire la consegna di merci tra diversi punti (A,B,C per
semplificare). la consegna viene eseguita tramite vettori (TIR) che
hanno percorsi preimostati e capacità di trasporto preimpostata per
ciascuna tratta...
a questo punto quello che devo ottenere è un filtro dove chiedendo di
collegare due punti (A,B) oppure (A,C) mi dia un elenco di tutti i
vettori che collegano le tratte richieste specificando la capacità
disponibile per ciascuna tratta....
al momento ho realizzato una tabella di routing (esempio...)
SOTTOROTTA   ROTTA   FROM   TO
          1                 1           A        B
          2                 2           A        B
          3                 2           B        C
          5                 3           B        C
una tabella vettori
ID MEZZO     FROM     TO     CAPACITA' IN KG
       1               A          B            1000
       1               B          C              500
       2               B          C            1300
Qualcuno ha mai affrontato un problema analogo?

 ha scritto nel messaggio 
news:1161004810.8...@m73g2000cwd.googlegroups.com...





_______________________________________________
Per come la vedo io, hai bisogno di tre tabelle.
*FROM*
IDF - contatore - PK
FROM - Testo
*TO*
IDT - contatore - PK
TO - Testo
*MEZZO*
IDF - numerico - chiave esterna
IDT - numerico - chiave esterna
CAPACITA - numerico
*Relazioni*
FROM.IDF - MEZZO-IDF (1-MOLTI)
TO.IDT - MEZZO-IDT (1-MOLTI)
(In questo mdo hai realizzato anche una relazione molti-molti fra From e 
To).
Fatto questo crei una maschera con il wizard, caricando tutti i campi delle 
tabelle in quest'ordine:
FROM, TO, MEZZO.
Il risultato dovrebbe essere una maschera con il luogo di partenza ed una 
sottomaschera con le destinazioni e i mezzi che le raggiungono.
Ciao.
eSQuel 

Scusa, ho tralasciato un campo:
*MEZZO*
IDM - contatore - PK
IDF - numerico - chiave esterna
IDT - numerico - chiave esterna
CAPACITA - numerico
 Ciao.
 eSQuel

Grazie per l'aiuto, alla fine ho optato per una tabella "ROTTE" che
contiene i seguenti campi principali... con i primi 3 campi in chiave
concatenata univoca...
ID_ROTTA
ID_DA
ID_A
MASTEROTTA (yes/no)
Definisco una master rotta che rappresenta l'intero percorso con tutte
le tappe... poi definisco le sottorotte vendibili...
La soluzione non è ottimale, richiede una configurazione piuttosto
scomoda del sistema ma per il mio problema funziona...
Ho provato ad applicare la tua soluzione ma mi costringeva a duplicare
le location tra la tabella FROM e la tabella TO... la tua soluzione
sarebbe stata perfetta se in ciascuna location si richiedeva solo lo
sarico o solo il carico...
vorrei trovare una soluzione più elegante per il problema in
generale...
si può pensare di risolvere per analogia il problema di dover gestire
una rete di trasporti pubblici, dove ciascun mezzo ha una ROTTA e una
serie di STOP. Le rotte si incrociano tra di loro tra i diversi mezzi
pubblici e le capienze dei mezzi sono note.
Da li trovare il minor percorso per giungere a destinazione (in termini
di tempo o numero stop o distanza) per una data richiesta di posti....
Ma al momento questo è solo un esercizio mentale, il mio problema è
più semplice e fortunatamente la struttura che ho trovato sembra
reggere....
Grazie ancora,
Alex
