What I would love to have is a column in purchase table that is automatically populated with the client's region based on the client's name columns in both tables.
This you would not do as it duplicates information and violates a basic rule of normalization. At first, I thought you had reviewed this based on the current tables layout, but now am thinking maybe not. Suggest you review normalization if you have not done so.
The other question is whether I can have a column with a calculation
This you also do not do, except for special circumstances. For both questions, the answer is that queries/forms/reports are used to display, assemble data in a relatable way, and perform calculations that should not be stored. If you need to pass a calculation to another system that cannot extract a calculation by referencing a query, then there are other ways. A table of temp values might be one, or a csv file that the other application can read might be another.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.