webForumDet fria alternativet

Schema-generator

10 svar · 480 visningar · startad av P

PMedlem sedan jan. 20012 204 inlägg
#1

Så är ligger det till!
Morsan sitter och ska göra ett schema till jobbet. Hon säger att det är rejält med fixande hit och dit så du kom jag på den briljanta ideén att man kanske kunde skiva ett litet program som fixar detta.

Jag har kommit så långt så att jag sparar de anställdas namn och arbetsprocent, dvs hur många timmar de ska arbeta i veckan i en databas och att man kan välja vilka som ska arbeta.

Nu till problemet och det som är själva grejen, generering av schemat.
Morsan har mängder av krav, tex kan nämnas:

  • Man ska inte få börja tidigt eller stänga varje dag
  • Det finns tre avdelningar, man ska kunna jobba tex 70 % på den ena och 30 på den andra
  • Det ska vara inräknat 30 minuters rast varje dag
  • En person ska börja 6.00, nästa 6.30, nästa 7.30 och nästa 8.30
  • En person ska inte jobba mera än antalet timmar de ska jobba
  • På förmiddagen måste det vara 3 personer på varje avdelning och likadant på eftermiddagen
  • Det ska vara inlagt en timme friskvård varje vecka per person

Det borde väl gå att fixa om man loopar genom att runt en 10 000 gånger. Då borde man kanske få en eller ett par scheman som passar.

Funderar alltså på detta och hur man ska lösa det och kan behöva alla tips som bara går. Hade först tänkt mig att börja med så att varje anställd får de antalet arbetstimmar de ska ha.

Låter förnuftigt eller?

:birp

NickemannenMedlem sedan aug. 20003 575 inlägg
#2

Hmm, jag antar att det skall vara helt olika scheman varje vecka för olika personer. Eller varför göra om ett schema hela tiden ?
Hur fungerar omvandlingen av schemat ? (alltså vad skiljer sig från vecka till vecka)

PMedlem sedan jan. 20012 204 inlägg
#3

Det som skiljer sig från vecka till vecka är att du ena veckan kanske börjar 06.00 och andra veckan 8.00 . Då tycker ju du att det är orättvist att alltid få börja 06.00, så därför rullar man runt ;)

PMedlem sedan jan. 20012 204 inlägg
#4

/red tar bort detta efter att moderaton renholm klagar

PMedlem sedan jan. 20012 204 inlägg
#5

Hmm dimmar med:
Dim TotalHours As New TimeSpan(40, 0, 0)
Som enligt mig ska betyda att jag vill ha 40 h!

Sen tar jag och pribtar totalhous.hours och får 16.... Var tänker jag fel?

/red TotalHours gav hela antalet h

agneta_rungMedlem sedan juli 2002145 inlägg
#6

Vad vill du åstadkomma? Vad får du för värde och vad hade du förväntat dig?

Jag har iofs aldrig använt TimeSpan men jag skulle trott att TotalHours i första varvet i loopen blir 0... tsHours blir ju en "New TimeSpan(40, 0, 0)" eftersom TotalHours.Hours = 40 och k = 1 och 40/1 = 40... och sedan fortsätter den förstås att vara 0... Rätta mig om jag har fel...

PMedlem sedan jan. 20012 204 inlägg
#7

Agneta:

Nja Hours ger antalet timmar, i detta fall 16 eftersom 40-24 = 16 och 24 hoppar över och blir en dag.

TotalHours ger alla timmar.

Du har rätt, tror jag, fixade det med att låta räknaren gå nedåt från 5 till 1.

PMedlem sedan jan. 20012 204 inlägg
#8

Meddelar att utvecklingen går framåt i lysande takt!

LaspMedlem sedan juli 200012 980 inlägg
#9

Grattulerar
Ser fram emot att få se resultat.

PMedlem sedan jan. 20012 204 inlägg
#10

Det kommer senare, har problem med att datorn är för seg! (1,4 ghz)

PMedlem sedan jan. 20012 204 inlägg
#11

Ahh då var det äntligen klart, ska köra första testet ikväll. Beräknad tid ligger på 1 h.

Intresserad av kod, hör av er!

133 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)