If you carefully look at the documentation for Reduce you should see that it has
Reduce[expression,thingToSolveFor,domain]
In your Reduce above it thinks
0<= VL*Ishp+(1-ksag)*Vs* Sqrt[4*VL^2-3*VL^2*Cos[fai]^2+Ishp^2*ZL^2+ 2*Ishp*VL*ZL*Cos[fai]]/ZL
is your expression and
VL*Ishp+(1-ksag)*Vs* Sqrt[4*VL^2-3*VL^2*Cos[fai]^2+Ishp^2*ZL^2+2*Ishp*VL*ZL*Cos[fai]]/ZL<= VL^2/ZL*Cos[fai]
is the thing you want to solve for and
Ishp
is the domain.
Change your code to put your two expressions inside {} like this
Reduce[{0<= VL*Ishp+(1-ksag)*Vs* Sqrt[4*VL^2-3*VL^2*Cos[fai]^2+Ishp^2*ZL^2+ 2*Ishp*VL*ZL*Cos[fai]]/ZL ,
VL*Ishp+(1-ksag)*Vs* Sqrt[4*VL^2-3*VL^2*Cos[fai]^2+Ishp^2*ZL^2+ 2*Ishp*VL*ZL*Cos[fai]]/ZL<= VL^2/ZL*Cos[fai]},
Ishp]
and you avoid this error.