Solved myself.
For future use, posting solution which i found.
Because of 'CONSTANTS: possible_pricing(4) VALUE' BCG'. in the include LZ_FG_V45ATOP, getting an error from the below code,
* if i_logic_switch-pricing cn possible_pricing.
* sy-msgty = 'E'.
* sy-msgid = 'V4'.
* sy-msgno = '246'. "&1 nicht zulässig für LOGIC_SWITCH-PRICING
* sy-msgv1 = i_logic_switch-pricing.
* perform fehler_ausgeben tables return
* using 'LOGIC_SWITCH '
* '0'.
* exit.
* endif.
Copied FMs - BAPI_SALESORDER_CHANGE', SD_SALES_DOCU_MAINTAIN & SD_SALESDOCUMENT_CHANGE.
And commented above code in FM 'SD_SALES_DOCU_MAINTAIN'. Now ZBAPI_SALESORDER_CHANGE is working fine for pricing type X.
Thanks for all your above responses.