Newsgroup: it.comp.appl.access
Titolo: Creare una lista d'attesa

Mi date qualche dritta per creare una lista d'attesa di utenti suddivisi in
due categorie urgente e normale. Vorrei creare una lista in cui a mano a
mano che inserisco gli utenti (che possono essere dei 2 tipi) vengano
sbrigati secondo un tot numero a settimana (15 urgenti e 5 normali). Vorrei
cercare di arrivare ad avere un elenco suddiviso per settimane. Qualche
suggerimento? Thnaks :-)
Med

> "Med" news:apf2b1$fm5$
1...@newsreader.mailgate.org
:

    Scusami ma secondo me non si capisce bene cosa ti serva sapere
realmente... Se una piccola cosa (quale?) o un lungo discorso
sull'argomento. Chiaramente per il lungo discorso il ng non e' il luogo
adatto, anche se Roberto, per esempio, ha una grande capacita' di sintesi...
    Parli di lista di attesa. Quindi immagino che tu abbia gia' predisposto
una tabella di nome, per esempio, "ListaAttesa". E che in questa tabella ci
siano i campi che puntano alle tabelle interessate: "Utenti" e
"Qualcosaltro". E i campi "DataImmissioneInLista" e "Categoria"...
    E' cosi'?
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------

     E' cosi'?
Si la tabella è pronta, le maschere anche, mi manca la routine per generare
la lista secondo i criteri sopra. Tabella:
LISTA | LISTA NUM | NOME | DATA PRENO | TIPO | NUM PRENO | NUM SETTIMANE |
DATA ELIMIN |
LISTA = un campo in cui vorrei metterci  un progressivo generato solo al
momento della lista
LISTA NUM = è un campo contatore
NOME = il nome dell'utente
DATA PRENO = data prenotazione (viene presa al momento in cui arriva
l'utente)
TIPO = può essere solo urgente o normale
NUM PRENO = il numero di prenotazione che viene assegnato dalla generazione
NUM SETTIMANE = sarebbe il numero di settimane attese previste calcolato
dalla generazione
DATA ELIMIN = data eliminazione
La tabella è ordinata sulla data di prenotazione.

 La tabella è ordinata sulla data di prenotazione.
    Si', vabbe'... Ma in questo modo se Tizio ha prenotato dopo di me ma lo
stesso giorno potrebbe capitare che sia "servito" prima di me! O no? Non
sarebbe meglio ordinare per "NUM PRENO"?
    Ok.
    Il raggruppamento per settimane lo potresti ottenere mediante l'uso
della funzione Format (vedi guida):
        QBE:
            Format(Data; "ii")
        SQL:
            Format(Data, "ww")
    Una volta raggruppato per settimana, in un certo intervallo di date, per
mezzo del predicato
        TOP n
dell'istruzione sql SELECT puoi ottenere i primi "n" record. Per cui se fai
due query, una per gli urgenti ed una per i normali potresti unirle in una
query di unione ed ottenere i venti utenti della settimana.
    Piu' o meno ci siamo?


     Piu' o meno ci siamo?
50% :-) in effetti in un settimana ci sono 20 prestatazioni (15 urgenti 5
normali) ma durante la settimana vengono prese prenotazioni ben oltre tale
numero, ecco il motivo della lista d'attesa. L'algoritmo dovrebbe cercare di
distribuire lungo l'arco delle settimane tutte le prenotazioni assegnando
per ogni richiesta un numero di attesa e calcolando il numero di settimane
di attesa. Non sembra proprio facile.
Med

 di attesa. Non sembra proprio facile.
    Facile o difficile lo sapremo dopo aver definito bene i termini della
questione... ;-)
    Facciamo cosi'. Limitiamoci alle urgenti. Per le normali ci pensiamo
dopo. E riduciamo a 3 invece che 15, cosi' possiamo fare un esempio. Se io,
in questo istante, devo elaborare tale lista, avendo 10 prenotazioni, il
risultato dovra' essere:
        NR UT   SETT
        -- ---- ----
         1 Ut01   1  =((NR-1)\3)+1
         2 Ut02   1
         3 Ut03   1
         4 Ut04   2
         5 Ut05   2
         6 Ut06   2
         7 UT07   3
         8 UT08   3
         9 UT09   3
        10 UT10   4
    Giusto?


     Giusto?
Sě. Esattamente in questa maniera. Dove NR č il numero in lista d'attesa.

> "Med" news:aphdbj$c51$
1...@newsreader.mailgate.org
:

    Allora tutto bene dunque. Caso archiviato o che cosa?


>     Allora tutto bene dunque. Caso archiviato o che cosa?
Magari. Il punto sarebbe risolto se fossero solo gli urgenti ma inserendo
l'altra variabile (normale) le cose cambiano un po'. Grazie per avermi
dedicato un po' del tuo tempo.
Med

> "Med" $k5l$
1...@newsreader.mailgate.org
:

    Non capisco... Hai fatto una query di unione o no?
