Hi everyone,
Having a big problem to which I can't find the solution. I'm creating a database that involves stock, customers, deliveries and collections and I want to make a delivery report. I've spent a lot of time on making the main database and have only started on one report so far so I may be tackling it completely wrong from the beginning (please tell me if so!)
So, the report that I want to make includes a lot of fields, so I have based it on a large query containing 7 tables (the SQL for which is below). It looks very cumbersome, so not sure if this is the way to go, but have no idea how else to do it otherwise. Now, the problem is that the query comes up with duplicates of the same delivery and I'm not sure why. In fact, it has duplicated the same delivery 96 times. I suspect it is something to do with an incorrect join, but have no idea how to find out which, or even how to correct it! If more information is needed, I'll gladly give it.
Please, please, please can someone point me in the right direction - it would be much appreciated! Thank you in advance for your time. 
Code:
SELECT tblDelivery.DeliveryID, tblDelivery.DeliveryDate, tblDelivery.[AM/PM], tblDelivery.Notes, tblDelivery.PropertyType, tblDelivery.Bedrooms, tblDelivery.Floor, tblDelivery.Invoice, tblDelivery.[Owned/Rented], tblDelivery.NewOccupancy, tblAllocation.NumberRequested, tblClientDonorContact.ContactFirstName, tblClientDonorContact.ContactLastName, tblClientDonorContact.ContactNumber, tblClientDonorContact.AlternativeContactNumber, tblClientDonorContact.Referral, tblClientDonorContact.ReferralContact, tblClientDonorContact.ReferralTelNo, tblClientDonorContact.ReferralInfo, tblAddresses.Address1, tblAddresses.Address2, tblAddresses.Area, tblAddresses.Postcode, tblDelivery.ContactID, tblAllocation.NumberAllocated, tblDelivery.AddressID, tblStockDescription.Description, tblOccupancyEthnicity.Occupancy, tblDelivery.TakenBy, tblDelivery.LiftAvailable, tblAllocation.RequestNotes, tblAllocation.ItemID
FROM (((tblClientDonorContact
INNER JOIN tblDelivery ON tblClientDonorContact.ContactID = tblDelivery.ContactID)
INNER JOIN tblOccupancyEthnicity ON tblClientDonorContact.ContactID = tblOccupancyEthnicity.ContactID)
LEFT JOIN tblAddresses ON tblClientDonorContact.ContactID = tblAddresses.ContactID)
INNER JOIN ((tblStock INNER JOIN tblAllocation ON tblStock.ItemID = tblAllocation.ItemID)
INNER JOIN tblStockDescription ON (tblStock.ItemID = tblStockDescription.ItemID) AND (tblAllocation.ItemID = tblStockDescription.ItemID)) ON tblDelivery.DeliveryID = tblAllocation.DeliveryID
WHERE (((tblDelivery.DeliveryDate)=Tomorrow(Date())));