Not sure if I fully understand your requirement or how you want to relate your Begin / End fields the date you want to display.
To check for weekend, you could use weekday() function:
Week day. Returns an integer between 0-6.
weekday( '1971-10-30' ) returns 5.
If the date format used does not correspond to the one set in your operating system, QlikView will not be able to make a correct interpretation. See above under day(date).
I believe you need to load the holidays for your country from an external source, QV does not know any holidays by default. You can join a holiday table to your calendar and then do the check.