1. This is truly a friendly advice and tone of this post is meant to be harsh, but not insulting.
2. It doesn't make much sense. Shouldn't there be connection between payments and waybills? Schema looks strange.
3. Do yourself a favor and invest time to learn more about relational databases and SQL.
You've made connection with attribute instead of FK connection.
Query for getting waybills looks like this:
DECLARE @startDate date, @endDate date;
SET @startDate = (SELECT StartDate FROM Cycle WHERE CycleID = @CycleID);
SET @endDate = (SELECT EndDate FROM Cycle WHERE CycleID = @CycleID);
SELECT WB.* FROM WayBill WB
INNER JOIN Customer C
ON WB.CustomerName = C.CustomerName
WHERE WB.CustomerName = @CustomerName
AND
WB.WayBillDate >= @startDate
AND
WB.WayBillDate <= @endDate
I can't make Invoices for Customer because there isn't connection between Customers and Payments!!!