Post
#1
|
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk |
Mam za zadanie oprogramować ala "kalendarz" w którym jedna z funkcjonalności to możliwość tworzenia wpisów występujących cyklicznie.
Przykładowo dodajemy "Spotkania klasowe dnia 2010-09-02 18:00" -> "Powtórz co miesiąc" co spowoduje, że wydarzenie wystąpi w takich datach jak 2010-10-02 18:00, 2010-11-02 18:00 itd Jak to zapisać w bazie to bym wiedział (nawet korzystając ze standardu http://en.wikipedia.org/wiki/Iso8601#Durations ) Tylko teraz jak sprytnie pobrać zdarzenia uwzględniąjąc ich cykliczność. Rozwiązaniem byłoby generowanie zdarzeń naprzód ale chciałbym tego uniknąć. Ten post edytował wookieb 2.09.2010, 12:37:48 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
Jak tam to działa to nie wiem, ale sądzę, że mają datę bazową i spośród wszystkich cyklicznych, w locie przeliczają, które pasują do wybranego okresu. Komórki i tak ograniczają się do wyświetlania jednego miesiąca, więc nawet kilkaset wpisów dynamicznych (mało kto tyle wrzuci) do obróbki nie będzie problemem. Dorzuci się w razie czego w cache i po sprawie, żeby w trakcie jednej sesji nie liczyć przy łażeniu tam i z powrotem po miesiącach za każdym razem. Poza tym zwróć uwagę na jedno... Zdarzenia cykliczne są edytowalne tylko w zakresie głównego, bazowego wpisu. Jego edycja modyfikuje wszystkie. Nie da się edytować któregoś tam bez skutków ubocznych. Wyjście z kalendarza bowiem "zresetuje" ustawienia tego pojedynczego jeśli nie zapiszesz go do bazy. Co gorsza możesz zapisać, ale co zrobi po powrocie baza jeśli cache usunięto?Będzie pamiętała ten zachowany wyjątek, ale i stworzy na nowo pasujące do cyklu, co tworzy wyjątek i wpis z jakiego powstał obok siebie, co też jest niedopuszczalne. One muszą być z jakimś wyprzedzeniem generowane i zapisywane jako osobne siłą rzeczy. I tak źle i tak niedobrze. Bo chyba nie będziesz przechowywał informacji 'wszystkie pasują do wzorca cyklu, ale X oraz Y nie i mają one czas ustawiony na...'
|
|
|
|
wookieb Rekordy w datach cyklicznych 2.09.2010, 12:36:18
thek Nie wiem czy to by Ci odpowiadało, ale dla dat cyk... 2.09.2010, 13:00:31
wookieb To o czym mówisz jest jasne i jest to tylko potwie... 2.09.2010, 13:10:58
phpion Ja cykliczność realizuję z użyciem klasy bosjqmCro... 2.09.2010, 14:23:33 ![]() ![]() |
|
Aktualny czas: 10.06.2026 - 11:11 |