the parameter is for testing without form, if order is from table u need to join the table
Code:
PARAMETERS [order] Long;SELECT Product.Prod, Product.Btch, Product.Qty, (Select Sum(Qty)
From Product As T
Where T.Prod = Product.Prod And
T.Btch <= Product.Btch) AS Total,
IIf([Total] - [Order]<=0, [Qty],
iif([Order]-([Total]-[Qty])<=0,0,[Order]-([Total]-[Qty]))) AS Sale
FROM Product;
add iif for no wrong result 
to insert into 3rd table use nxt code
Code:
INSERT INTO sale ( prd, btch, sle )SELECT p.[prod], p.btch, p.sale
FROM [product query] AS p
WHERE p.sale > 0;