The order script can be extended to do more than log like triggering another contract once the order is logged. Below is something resembling the Sail order script for creating orders:
order_script.sw
    script;

    use order::{LimitOrder, OrderSettler};

    fn main(order:LimitOrder) {
        let contract_address = 0x97...;
        let order_book = abi(OrderSettler, contract_address);
        order_book.make(order.id ,order);
    }