mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
Wyciągnięcie dnia i miesiąca z daty dokumentu https://forum.mix-soft.pl/viewtopic.php?f=2&t=1417 |
Strona 1 z 1 |
Autor: | zz [ 2009-11-19, 11:55 ] |
Tytuł: | Wyciągnięcie dnia i miesiąca z daty dokumentu |
Witam. Problem jak w temacie (muszę ograniczyć możliwość wystawiania dokumentów do kilku dni wstecz). Jak wyciągnąć dzień i miesiąc z daty (bieżącej i wystawianego dokumentu)? |
Autor: | wrob [ 2009-11-19, 15:07 ] |
Tytuł: | |
A w jakim programie? :) |
Autor: | zz [ 2009-11-19, 15:08 ] |
Tytuł: | |
HMF 2010 sorry, nie napisałem |
Autor: | rafal [ 2009-11-19, 21:26 ] |
Tytuł: | |
Kod: //"procsp.sc","Procedury dokumentu sprzedaży","\Procedury\",0,1.0.0,SYSTEM dispatch msg,xMessages xMessages = xFactory.NewObject("XMessage") int Sub OnBeforeInsert(long lId) dispatch xDk = xFactory.NewObject("BDokumentSp") xDk.Load((using "id=%l", lId)) date dateDok date dateDzis dateDzis.Today() dateDok.FromStr(xDk.DataWystawienia) if dateDok.DaysUntil(dateDzis) >= 3 then msg = xMessages.AddNew() msg.tresc = "Data dokumentu odbiega w czasie więcej niż 3 dni." msg.status = 0x01 ShowINFOs("Kontrola poprawności danych dokumentu", "Dane dokumentu mogą być niepoprawne.", 255, 0, xMessages) OnBeforeInsert = -6000 else OnBeforeInsert = 0 endif EndSub Przy próbie wystawienia dokumentu powinien pojawić się komunikat: [center] [/center] |
Autor: | zz [ 2009-11-23, 09:09 ] |
Tytuł: | |
Wielkie dzięki. Ale precyzując pytanie: potrzebuję tego mechanizmu, żeby zablokować wystawianie dokumentów po 5-tym dniu miesiąca z datą z poprzedniego miesiąca. Czyli np. 20-go można byłoby wystawić dokument z datą 5-go, ale 6-go żeby już nie można było wystawić dok. z poprzedniego miesiąca. |
Autor: | krzysiek [ 2009-11-23, 09:34 ] |
Tytuł: | |
Doprecyzowanie ok ale ten przykład... ? chcesz by 5-go w miesiącu X mozna było wystawić dokument z datą w miesiącu X-1 a 6-go juz nie. W tym co wkleił RAFAŁ masz całą gotową procedurę, wystarczy zmienić tylko warunek w niej tak by pasował do tego co chcesz. |
Autor: | zz [ 2009-11-24, 09:52 ] |
Tytuł: | |
OK, mam sposób na sprawdzenie ilości dni wstecz (tak jak błędnie napisałem w temacie). Ale jak mam sprawdzić miesiąc? Próbuję analogicznie jak DaysUntil (czyli MonthsUntil) i nic |
Autor: | wrob [ 2009-11-24, 12:02 ] |
Tytuł: | |
MontUntil - to nie ma - ale pokombinuj mozesz zawsze rozbic date jako string i pobrac z niej miesiac (czy tez rok) - a dalej to juz kwestia techniki :) |
Autor: | Notos [ 2009-11-24, 13:06 ] |
Tytuł: | |
Można zrobić na dwóch datach SetLastDayOfMonth() i później Compare() |
Autor: | Jarek75 [ 2009-11-27, 10:25 ] |
Tytuł: | |
W helpie chyba rzeczywiście brakuje tej informacji. Spróbuj GetYear(), GetMonth(), GetDay(). Nie wiem tylko, czy trzeba użyć rekordu Date czy DateExt. |
Autor: | rafal [ 2010-04-29, 15:46 ] |
Tytuł: | |
Kod: ClearINFOs() |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |