PBDate.h


max21 Unternehmensgruppe
//	Aprica2
//	copyright Pirmin Braun 1997-2007 - pirmin@pirmin.de
//	all Rights reserved;
#import "Aprica.h"
#define THURSDAY 4
@interface PBDate:NSObject
{
    int dwofy,dyforw;
    int	year,month,day,hour,minute,second;
    NSArray *monthNames;
}
+ (NSArray *)types;
+ (NSArray *)modes;
+ (PBDate *)date; //autoreleased PBDate von heute
+ (PBDate *)dateWithFreeString:(NSString *)s; //autoreleased PBDate von freeString
+ (PBDate *)dateWithDBString:(NSString *)s; //autoreleased PBDate von DBString
+ (NSString *)dbDeltaFrom:(NSString *)date1 to:(NSString *)date2;
+ (PBDate *)dateWithYear:(int)y andWeek:(int)week;
- (void)setCurrent;
- (void)setCurrentDay;
- (void)clearDate;
- (NSString *)monthName;
- (NSString *)monthNameFor:(int)i;
- (int)weekday;
- (NSString *)weekdayName;
- (NSString *)fullWeekdayName;
- (NSString *)dateAsUIString; //tt.mm.yyyy
- (NSString *)dateAsUIDTString; //tt.mm.yyyy hh:mm:ss
- (NSString *)dateAsDBString; // yyyymmtt interne Repraesentation in EOs; MySQL kompatibel
- (NSString *)dateAsDBDTString; // yyyymmtthhmmss
- (NSString *)dateFormatted:(NSString *)dateFormat; // freies CalendarFormat
- (long) dateAsLong; //yyyymmtt
- (NSCalendarDate *) dateAsNSCD;
- (NSString *)timeAsString; // hh:mm
- (NSString *)timeStringSec; // hh:mm:ss
- (NSString *)time; // hhmm
- (int) weekOfYear; // 1 <= woche <= 53
- (int) yearForWeek;
- (NSString *)weekAndYear;
- (void)prevMonday;
- (int)deltaDaysTo:(PBDate *)otherDate;
- (int)deltaWorkDaysTo:(PBDate *)otherDate;
- (NSString *)deltaHrsTo:(PBDate *)otherDate;
- (NSComparisonResult)compare:(PBDate *)otherDate;
- (void)setDBString:(NSString *)value; // yyyymmdd[hhmmss]  interne repraesentation in EOs und val von PBWOAsso
- (void)setLong:(long)value; // yyyymmdd
- (void)setNSCD:(NSCalendarDate *)value;
- (void)setWeek:(int)week andYear:(int)year; // wenn year == 0, current nehmen;
- (BOOL)setFreeString:(NSString *)value;
- (BOOL)applyOffsetString:(NSString *)offset direction:(int)direction;
- (BOOL)setFreeStringAbs:(NSString *)value; //versteht auch Zeit
- (int)day;
- (int)month;
- (int)year;
- (int)second;
- (int)minute;
- (int)hour;
- (void)decMonth;
- (void)incMonth;
- (void)addWeek:(int)value;
- (void)addMinute:(int)value;
- (void)addDay:(int)value;
- (void)addMonth:(int)value;
- (void)addYear:(int)value;
- (BOOL)isFuture;
- (BOOL)isHistory;
- (int)age;
- (void)erster;
- (void)ensureWorkday;
- (BOOL)isWorkday;
- (void)addWorkDay:(int)value;
//Fehlerwerte: -1 bzw. nil
/*" Dies ist ein lazy OSDate. Werte werden erst berechnet, wenn sie benoetigt werden. Dabei werden moeglichst Abkuerzungen genommen, sprich zwischen NSStrings konvertiert, was viel schneller ist, als immer ueber ein NSCalendarDate zu gehen. OSDate merkt sich dabei, welche Werte schon mal berechnet wurden. "*/
- (BOOL)checkDateTT:(int)t mm:(int)m jjjj:(int)j;
- (int)addCentury:(int)y;
- (NSCalendarDate *)prevMonday:(NSCalendarDate *)aDate;
- (NSCalendarDate *)mondayOf1stWeekOfYear:(int)year;	//current wenn 0
- (void)computeWandyFrom:(NSCalendarDate *)aDate;
- (int)_weekOfYearNoSpecialCase: (NSCalendarDate *)aDate;
/* deprecated
- (void)setMysqlDBString:(NSString *)value; // yyyy-mm-dd[ hh:mm:ss]
- (void)bankAddMonth:(int)v;
+ (NSArray *)delim;
- (NSString *)dateAsMysqlDBDTString; // yyyy-mm-dd hh:mm:ss f. mysql datetime;
- (void)letzter;
- (void)mitte;
+ (NSString *)freeDeltaFrom:(NSString *)date1 to:(NSString *)date2;
*/
@end
Foto