Need a code demo for Shipping Rate Detail Creation

Hello Experts!

Could you please give a code demo about how to create Shipping Rate Detail?

I knew how to create a Shipping Rate:

oSS.GetType().InvokeMember("nSetProgram", System.Reflection.BindingFlags.InvokeMethod, null, oSS, new object[] { TaskID });
ar_addr_bus = pvx.GetType().InvokeMember("NewObject", System.Reflection.BindingFlags.InvokeMethod, null, pvx, new object[] { "SO_ShippingRate_bus", oSS });
object result = ar_addr_bus.GetType().InvokeMember("nSetValue", System.Reflection.BindingFlags.InvokeMethod, null, ar_addr_bus, new object[] { "ShippingCode$", "ST002" });
result = ar_addr_bus.GetType().InvokeMember("nSetKey", System.Reflection.BindingFlags.InvokeMethod, null, ar_addr_bus, null);

//not worked code for detail creation
//object line = ar_addr_bus.GetType().InvokeMember("oLine", System.Reflection.BindingFlags.GetProperty, null, ar_addr_bus, null);
//result = line.GetType().InvokeMember("nAddLine", System.Reflection.BindingFlags.InvokeMethod, null, line, null);
//result = line.GetType().InvokeMember("nSetValue", BindingFlags.Public | BindingFlags.Static | BindingFlags.IgnoreCase | BindingFlags.InvokeMethod, null, line, new //object[] { "ShipWeight$", "00013" });
//result = line.GetType().InvokeMember("nWrite", System.Reflection.BindingFlags.InvokeMethod, null, line, null);
result = ar_addr_bus.GetType().InvokeMember("nWrite", System.Reflection.BindingFlags.InvokeMethod, null, ar_addr_bus, null);

But I searched the whole forum and can't find how to create the Shipping Rate Detail.

The way I used to create a line for Sales Order or Invoice didn't work for Shipping Rate.

Please kindly help!  

Thank you very much!

Billy