Car Types, Commodities and Shipments

There is a very close relationship between car types, commodities and shipments. In fact, if you do not set up this relationship properly you will find that some cars are moving goods that it should not (a stock car moving oil for example), or conversely you could end up with shipments not happening at all.
Your rolling stock comes in a number of car types. This program starts by allowing you the option of using AAR-codes or a simplified car type code. You have the option of adding more car types of your own making if you want.
Goods shipped on railroads come in a number of commodities. The program starts with one commodity, Anything. You must supply the commodities you want your layout to ship. Examples in the demo include Clean Lading Only, Petroleum, Solid Chemicals, Liquid Chemicals, Live Stock, etc. Though these commodities are generic, you can add specific commodities so that specific shipments can be made. For example, you can make a unit train of coal by having a commodity Unit Coal.
Shipments are made by having a car type haul a commodity. For example, you want to make a shipment of Bunker Oil from off the layout to a fuel dealer. You will want to ship that in a tank car that can haul petroleum only. Thus, only tank cars that can carry petroleum will be selected to move that shipment.
Cars, not car types, are assigned a primary commodity they can ship. Thus you can have Tank Cars as a car type, with a fleet of 20 cars, 5 of which haul Petroleum, 10 liquid chemicals, 5 LPG, for example. Thus, it is individual cars that haul the commodity.
If no suitable car is found to fulfill a shipment, then that shipment will not happen. To ease this potential problem, the program also allows you to assign secondary commodities to any car. You can have as many secondary commodities as you want. Thus a box car may have as its primary commodity Clean Lading Only, but you may also allow the car to haul News Print, Grains, and/or Auto Parts. Should a shipment of commodity Auto Parts be selected, and no cars are available that have that commodity, as its primary commodity, then the program will instead select a car based on the secondary commodity.
You can change a car’s primary commodity at any time in the Administration form. It is in there that you also add or remove any secondary commodities
The following graphics shows the relationships between cart types, commodities and shipments
The first graphic shows that a shipment is based on a car type and the product shipped is belongs to a commodity. This is why you select the car type to haul the shipment and what commodity the shipment is when you create the shipment.

When the program creates a consist for a train, it scans the list of empty cars of the correct type where the primary commodity matches the shipment. Should no cars are available that can ship that commodity as its primary, then the program will select a list of cars of that type that can ship that commodity as its secondary.
