• The calculations in your spreadsheet appear to be incorrect, this is what I think it should look like:

    [font="Courier New"]

    Ingr Pct Ingr QtyInventory Qty Inventory Pct

    75.00 750 750 75.00

    25.00 250 250 25.00

    75.00 -75 675 75.00

    25.00 -25 225 25.00

    80.00 400 1075 76.79

    10.00 50 275 19.64

    10.00 50 50 3.57

    76.79 -76.78571429 998.2142857 76.79

    19.64 -19.64285714 255.3571429 19.64

    3.57 -3.571428571 46.42857143 3.57

    [/font]

    It's possible to model most of your required results by adding rows to the receipts table, like this:

    INSERT INTO Receipts(recKey, recTrnKey, recIngKey, recIngPct)

    SELECT 1, 1, 1, 75 UNION ALL

    SELECT 2, 1, 2, 25 UNION ALL

    SELECT 3, 2, 1, 75 UNION ALL

    SELECT 4, 2, 2, 25 UNION ALL

    SELECT 5, 3, 1, 80 UNION ALL

    SELECT 6, 3, 2, 10 UNION ALL

    SELECT 7, 3, 3, 10 UNION ALL

    SELECT 8, 4, 1, 80 UNION ALL

    SELECT 9, 4, 2, 10 UNION ALL

    SELECT 10, 4, 3, 10

    I'm guessing that since these are shipments, you don't want them here - presumably you want the solution to "fabricate" them instead?

    “Write the query the simplest way. If through testing it becomes clear that the performance is inadequate, consider alternative query forms.” - Gail Shaw

    For fast, accurate and documented assistance in answering your questions, please read this article.
    Understanding and using APPLY, (I) and (II) Paul White
    Hidden RBAR: Triangular Joins / The "Numbers" or "Tally" Table: What it is and how it replaces a loop Jeff Moden