Character screening and paste into new file in columns instead of rows

QL10169_SAUJANA%SubNetwork=ONRM_ROOT_MO_R,SubNetwork=ERBS_KCRN11,MeContext=QL10169_SAUJANA_5
%External_Link_Failure
%X2_link_problem_to_one_or_several_neighbouring_eNodeBs.
QL10187_MATANG_JAYA_2%SubNetwork=ONRM_ROOT_MO_R,SubNetwork=ERBS_KUCHING,MeContext=QL10187_MATANG_JAY A_2_3
%External_Link_Failure
%X2_link_problem_to_one_or_several_neighbouring_eNodeBs.
QL10192_JLNKRUKUP%SubNetwork=ONRM_ROOT_MO_R,SubNetwork=ERBS_MRRN13,MeContext=QL10192_JLNKRUKUP_1
%External_Link_Failure
%X2_link_problem_to_one_or_several_neighbouring_eNodeBs.

Above is the example, i want to do something like below,
1.Check first character of everyline if it is not % then print in the new file.
2.Read secondline if it is " % ", then it should paste into the 2nd column of the first line which already pasted.
3.like wise till end of the line.

Like so?

awk '{printf "%s%s", /^%/?"\t":TRS, $0; TRS = ORS}   END {printf ORS}' file
awk '/~^%/ { print line; line=$1; sep = "\n"; next } { line = line sep $1; sep = "\t" } END { print line }' 2.log