There's also something that may be a workaround for you, but it would take a bit of effort. In the directory where you created the web service proxy there should be a temporary directory with a C# file in it that is the source code for the .Net assembly that PowerBuilder generated to talk to the service.
That C# file should have a section that includes:
public partial class <ClassNameHere> : System.Web.Services.Protocols.SoapHttpClientProtocol {
You can add a section to that file underneath that line that overrides one of the methods of the SoapHttpClientProtocol class that the file is implementing, invokes the ancestor method, and then modifies the response so that PB sees the charset that would let it know to treat the data as UTF-8.
protected override WebResponse GetWebResponse(System.Net.WebRequest request) { WebResponse response = base.GetWebResponse(request); response.Headers[HttpResponseHeader.ContentType] = "text/xml;charset='UTF-8'"; return response; }
You'd then have to compile the assembly manually with that change and use that new one to replace the one PB generated.