Get not matching record as null while joining two queries
Seems to me like you just need to move the filter you are using in the second query as a CASE expression:

SELECT  UDA.production_date_T, 
        COUNT(WO.order_state) cntplan,
        SUM(CASE WHEN WO.order_state = 'BOOKED' THEN 1 ELSE 0 END) ACTUAL
FROM dbo.WORK_ORDER WO 
INNER JOIN dbo.UDA_Order UDA 
    ON UDA.object_key = WO.order_key 
GROUP BY UDA.production_date_T
;