У вас по сути все должно плясать от машины.
Потому что (
водитель, груз, тип прицепа и прочее) - это всего лишь переменные. Еще наверняка есть рейсы. То есть у одной машины может быть куча рейсов. И только один рейс может быть открытым (не выполненным) по идее...
То есть в счет, надо будет указать машину и клиента. Все остальное будет тянуться последовательно.
1. Выбрали машину
2. Выбрали рейс.
3. Подтянулся водитель.
4. И соответственно можно уже выбрать груз который был по данному рейсу..
Я бы так делал.. Но транспортная логистика - это вообще клевая штуку

было дело.