static int hb_wom( int iYear, int iMonth, int iDay ) { int iWom; HB_TRACE( HB_TR_DEBUG, ( "hb_wom(%d, %d, %d)", iYear, iMonth, iDay ) ); iWom = iDay + hb_dateDOW( iYear, iMonth, 1 ) - 1; if( iWom > 0 ) return ( iWom - hb_dateDOW( iYear, iMonth, iDay ) ) / 7 + 1; else return 0; }
static int hb_woy( long lDate, HB_BOOL fISO ) { int iYear, iMonth, iDay; HB_TRACE( HB_TR_DEBUG, ( "hb_woy(%ld, %d)", lDate, ( int ) fISO ) ); hb_dateDecode( lDate, &iYear, &iMonth, &iDay ); if( fISO ) hb_dateDecode( lDate + 3 - ( hb_dateDOW( iYear, iMonth, iDay ) + 5 ) % 7, &iYear, &iMonth, &iDay ); return ( hb_doy( iYear, iMonth, iDay ) - 1 ) / 7 + 1; }