I just read through your question and I agree, there is a simple solution. I've created a rule, and I'm going to tell you how to have two price fields on your product and have them calculated correctly.
- Create a new Price Calculation Rule. Visit admin/commerce/config/product-pricing/rules/add and give it the name "Add Shipping Price to Product Price"
- Bring in the Product related to the line item. Add a condition "Entity has field" to the entity "commerce-line-item" and choose the field "commerce_product." This effectively loads the product for further inspection.
- Bring in the custom shipping field. Add a condition "Entity has field" to the entity "commerce-line-item:commerce-product" and choose the field that you created, mine is called "field_shipping_price."
- Confirm the new custom price field is not empty. Always a good idea to skip a calculation if the field is empty, so add a condition "Data is Empty" and choose the "amount" of the custom price field. My token looks like this: "commerce-line-item:commerce-product:field-shipping-price:amount" ... and make sure you click "NEGATE" at the bottom of the condition, we want all fields are *NOT* empty.
- Finally, add the custom price to the final price with a shipping component. Now we simply need to add one action called "Add an amount to the unit price" found under "Line Item" actions. Choose the price field's amount like you did before in the "NOT empty" condition. Mine looks like this: commerce-line-item:commerce-product:field-shipping-price:amount. Finally, choose the "component" type "shipping."
Export of this rule: http://pastebin.com/JmKjNPE4
First, you should add a product to your cart and see if you are getting an additional "shipping" component at the bottom in the "Subtotal" area. If not, then confirm your products have some amount in their new custom price field.
A few thoughts on price calculations and price components. Once you've done this, each price will include the "base price" and the new "shipping price" in one total. So I added $15 to my $30 product, the price field now outputs "$45." But what's *awesome* is that your price components know where that $15 is coming from. You can use the "Manage Display" for your Product Type's price field and choose "Formatted Amount with Components" to see all the component's that go into your product. The only real drawback to adding shipping in this manner is that the "shipping" cost is always a part of your product and you will have to "work" to display the components on your catalog and in other areas.
There are some contributed modules that help you with displaying your components in a friendlier manner than the default "table" that commerce outputs.
http://www.drupalcommerce.org/extensions/module/price for some of the modules that could help you.
Comments
This has GOT to have an easy answer. Can ANYONE please help me out with this. I'm struggling right now and don't want to leave my client hanging anymore. I keep digging in the rules. I've learned a lot, but I am getting no where. Please. I need assistance.