tags:

views:

28

answers:

0

I'm writing a program in Flex 3 that uses a webservice written in VB to access my company's SQL servers. After compiling the code the first thing the program does is go out to the servers and grab a bunch of data. Most times (not every time) I get this error during one of my webservice calls:

[RPC Fault faultString="SOAP Response cannot be decoded. Raw response: " faultCode="DecodingError" faultDetail="null"]
at mx.rpc.soap::Operation/http://www.adobe.com/2006/flex/mx/internal::processSOAP()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\soap\Operation.as:874]
at mx.rpc.soap::Operation/http://www.adobe.com/2006/flex/mx/internal::processFault()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\soap\Operation.as:805]
at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AbstractInvoker.as:218]
at mx.rpc::Responder/fault()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\Responder.as:53]
at mx.rpc::AsyncRequest/fault()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\rpc\AsyncRequest.as:103]
at DirectHTTPMessageResponder/errorHandler()[C:\autobuild\3.2.0\frameworks\projects\rpc\src\mx\messaging\channels\DirectHTTPChannel.as:362]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()

Sorry for the crap formatting. Anyway, I can usually tell it to continue and the program chugs right along with no noticeable problems.

I don't know a lot about how the back end of all this works, and I'm on a bit of a deadline so any clues would be appreciated!

< EDIT >
I figured out which of my SQL queries was causing the problem:

SELECT 
    UPPER(Port.PortfolioCode) AS PortfolioCode, 
    CONVERT(varchar, Audit.AuditEventTime, 101) AS AfterDate, 
    BEA.ClientStateofResidence 
FROM 
    AdvPortfolioBaseExt_Audit AS BEA LEFT JOIN 
    AdvApp.vPortfolio AS Port ON 
        BEA.PortfolioBaseID = Port.PortfolioID LEFT JOIN 
    AdvAuditEvent AS Audit ON 
        BEA.AuditEventIDOut = Audit.AuditEventID 
WHERE 
    Port.PortfolioCode IS NOT NULL AND 
    BEA.ClientStateofResidence IS NOT NULL AND 
    (CONVERT(varchar, Audit.AuditEventTime, 101) LIKE '" & LastMonth & "/%' OR 
     CONVERT(varchar, Audit.AuditEventTime, 101) LIKE '" & ThisMonth & "/%') AND 
    (CONVERT(varchar, Audit.AuditEventTime, 101) LIKE '%/" & LastYear & "' OR 
     CONVERT(varchar, Audit.AuditEventTime, 101) LIKE '%/" & ThisYear & "') 
ORDER BY 
    Port.PortfolioCode ASC, 
    Audit.AuditEventTime ASC;

LastMonth, ThisMonth, LastYear, and ThisYear are all strings that I know are passed in the proper format ("05", "06", "2010", "2010" respectively as an example of what's getting passed at the moment. Please ignore the strange naming convention, I haven't gotten around to making my variable names a bit more reader-friendly.)