it should. You would have to see if there were any characters in the line that was not suppressed. As a suggestion, you can also just repeat the x:=replace(...) command and see if that helps
an explanation of the formula.
the carriage return linefeed is actually 2 characters, 1 for the carriage return and 1 for the linefeed, respectively they are ASCII characters 13 and 10, so first I declare a local variable (which will disappear at the end of the formula) and assign it the value of ASCII characters that make up the carriage return linefeed.
Next I create and assign a local variable to hold the output from the stored proc.
I then replace all the occurrances of 2 carriage return/linefeed combinations that are next to each other (signifyng a blank line). This should replace all the blank lines with just 1 crlf.
So if a line looks like LINE1crlf crlfLINE3, the replace won't work(you won't get LINE1crlfLINE3)as the line doesn't match the search pattern, but LINE1 crlfcrlfLINE3 does match the pattern and you should see LINE1crlfLINE3.
Last, just because I'm not sure and wanted to cover all bases, I have the formula display the new value of x. I might have displayed this anyhow, but I just wanted t be sure.
HTH