As is said, wrong datatypes in conditions plus different character sets for the same kind of information.
And you don't join both fact tables on the PI columns.
Based on the stats you posted SVC_BU_ID hardly changes the number of distinct value to SVC_PKG_T.GBL_SVC_DSPCH_FACT, so this is either a bad PI (better only SVC_DSPCH_ID) or you should join on both PI columns.
As an end user you can only change the condition on orig_ord_bu_id to the right datatype, then stats on orig_ord_bu_id might help a bit.
Otherwise the main problem seems to be due to a bad datamodel/physical implementation, lots of queries will show bad performance until this is fixed :-(
As is said, wrong datatypes in conditions plus different character sets for the same kind of information.
And you don't join both fact tables on the PI columns.
Based on the stats you posted SVC_BU_ID hardly changes the number of distinct value to SVC_PKG_T.GBL_SVC_DSPCH_FACT, so this is either a bad PI (better only SVC_DSPCH_ID) or you should join on both PI columns.
As an end user you can only change the condition on orig_ord_bu_id to the right datatype, then stats on orig_ord_bu_id might help a bit.
Otherwise the main problem seems to be due to a bad datamodel/physical implementation, lots of queries will show bad performance until this is fixed :-(
Dieter