Jag håller på med ett bokningssystem och har nu kommit till bokningen. Det är alltid knepigt att behandla tidsperioder i bokningssystem. Mitt råd är att bestämma vad som är den kortaste tidsperioden en bokning kan ske! I ditt fall verkar det vara ett dygn. Om en bokning varar i fem dygn, så skapa fem bokningar, med artikel, projekt och datum som primärnyckel. Antar att det du kallar projektartikel är bokningen. Den ska således ha en nyckelterm till. Sedan skapar du ett akternativt index på bokningen med artikel och datum nyckel. Då kan du direkt se om en artikel är bokad en viss dag.Bokningssystem med datum problem
Jag har dessa tabeller:
artikel
id
antal
projekthuvud
id
projektnr
startdatum
slutdatum
projektartikel
projekt
artikel
antal
pris
Det jag vill göra nu är att jag vill kolla om man i det nya projektet har bokat mer än vad man har i sitt artikelsystem.
Alltså om man skapar ett projekt med artikelnr 1. Då ska man kolla igenom alla projekt som den artikel finns med i. Sen kolla då om det finns något projekt som pågår eller kommer pågå under det nya projektets datum. Det kan vara projekt som börjar innan och slutar mitt i eller det kan vara sådana som börjar mitt i och slutar efter eller börjar innan och slutar efter det nya projektet.
Någon som har ett tips på hur man skulle kunna göra det?Sv: Bokningssystem med datum problem
De bokningssystem jag har skrivit, bygger på ovanstående princip, och de har gått som tåget.
Jag tycker det är tveksamt att ha start- och slut-datum i projekthuvudet, informationen kommer ju att finnas i bokningarna. Och hur gör du om man skulle få för sig att ett projekt skulle hålla på i fler än en tidperiod.
/Fim W