NAS returns error "The Stream has returned a read error

KYDutchieKYDutchie Member Posts: 345
edited 2007-08-01 in Navision Attain
Hi All,

I'm trying to get a field in the Sales Header to be updated thru the NAS.
I am using MSMQ for this, the message is really simple, it contains 3 elements, the first one is hardcoded 'UPS' then the Sales order Number between parenthesis and the amount between parenthesis. UPS(No.)(Amt).

I created a single instance code unit that is started by codeunit 1.

I have configured my NAS and it does login correctly. I can see that in the Application Event Viewer. But each time I put a message in my Queue, the NAS picks it up but then returns this "The stream has returned a read error." message and nothing happens.

But when I start that same codeunit directly in the Object Designer, it works perfectly.

Does anybody have an idea what I am doing wrong? ](*,)

Thank You,

KYDutchie
Fostering a homeless, abused child is the hardest yet most rewarding thing I have ever done.

Comments

  • todrotodro Member Posts: 117
    KYDutchie wrote:
    Hi All,

    I'm trying to get a field in the Sales Header to be updated thru the NAS.
    I am using MSMQ for this, the message is really simple, it contains 3 elements, the first one is hardcoded 'UPS' then the Sales order Number between parenthesis and the amount between parenthesis. UPS(No.)(Amt).

    I created a single instance code unit that is started by codeunit 1.

    I have configured my NAS and it does login correctly. I can see that in the Application Event Viewer. But each time I put a message in my Queue, the NAS picks it up but then returns this "The stream has returned a read error." message and nothing happens.

    But when I start that same codeunit directly in the Object Designer, it works perfectly.

    Does anybody have an idea what I am doing wrong? ](*,)

    Thank You,

    KYDutchie
    Hi,

    it looks like your user does not have enough rights to access MSMQ and I guess you are using an other user than the NAS user when you ran the single-instance codeunit as a test.

    Try to login to windows with the NAS service user (NAS stopped), then login with windows authentification in Navision, run the single-instance codeunit and retry. If it still fails, there seems to be a windows permision problem, if it works, there is a NAS.EXE related problem.
    Torsten
    MCP+I, MCSE NT, Navision MCT (2004,2005)
  • KYDutchieKYDutchie Member Posts: 345
    Hi Torsten,

    Since I am running everything locally and with the same user account, (I did set up the NAS Service to log in with my account), I don't think it is a permission error. More so because every user has full control over the queue. I am really confused what is going on. I tried to have the NAS session write messages into the application log, but it doesn't even get that far.

    Thank you

    KYDutchie
    Fostering a homeless, abused child is the hardest yet most rewarding thing I have ever done.
  • todrotodro Member Posts: 117
    KYDutchie wrote:
    Hi Torsten,

    Since I am running everything locally and with the same user account, (I did set up the NAS Service to log in with my account), I don't think it is a permission error. More so because every user has full control over the queue. I am really confused what is going on. I tried to have the NAS session write messages into the application log, but it doesn't even get that far.

    Thank you

    KYDutchie
    Hi KYDutchie,

    one thing to note: although the same user is used, you require at least a poweruser for the service as the service is run in another context (desktop).

    Is the user you are using a local admin ?

    You can run the NAS.EXE from the commandline to see whether it is related to the NAS.EXE or the fact that it fails when run as a service.
    nas.exe appservername=NASTEST,servername=Localhost,startupparameter=NAS,company=CRONUS
    
    Torsten
    MCP+I, MCSE NT, Navision MCT (2004,2005)
Sign In or Register to comment.