Re: Data conversion with MA7P using .NET application

2003-06-04 Thread Capodicci, Dan (COMFIN, ITSS)
Hi Elena

We are using it and ran into the same problems. We are setting the channels to convert 
the data for us and my guess is that may be where the problem is. The data coming out 
of our front end, .Net app seemed to be causing an error which related to it not 
getting correctly converted. The quick fix that I came up with was to have the .Net 
app pass the CCSID parm of 500 which is the CCSID of our mainframe qmanager. This 
rectified the problem immediately. 

Hope it helps.
Dan

-Original Message-
From: Elena Nanos [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 11:23 AM
To: [EMAIL PROTECTED]
Subject: Data conversion with MA7P using .NET application


Hello,
we are using Support pack MA7P - WebSphere MQ classes for Microsoft .NET,
which allows MQ  to be invoked from Microsoft .NET applications.

We ran into a problem with data conversion.  The data coming from mainframe
going to distributed, is not being converted to ASCII.

Is any one else using this support pack and can share the experience with
us?

Thank you.

Elena Nanos
Sr. Software and System Architect
IBM Certified Solution Expert in CICS WEB Enablement and MQSeries
Zurich NA

*** PLEASE NOTE ***
This E-Mail/telefax message and any documents accompanying this
transmission may contain privileged and/or confidential information and is
intended solely for the addressee(s) named above.  If you are not the
intended addressee/recipient, you are hereby notified that any use of,
disclosure, copying, distribution, or reliance on the contents of this
E-Mail/telefax information is strictly prohibited and may result in legal
action against you. Please reply to the sender advising of the error in
transmission and immediately delete/destroy the message and any
accompanying documents.  Thank you.

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive


Re: Data conversion with MA7P using .NET application

2003-06-04 Thread Elena Nanos
Hello Dan,
thank you very much for that useful tip.

Elena.


Capodicci, Dan (COMFIN, ITSS) [EMAIL PROTECTED]@AKH-Wien.AC.AT on
06/03/2003 11:18:40 AM

Please respond to MQSeries List [EMAIL PROTECTED]

Sent by:MQSeries List [EMAIL PROTECTED]


To:[EMAIL PROTECTED]
cc:

Subject:Re: Data conversion with MA7P using .NET application


Hi Elena

We are using it and ran into the same problems. We are setting the channels
to convert the data for us and my guess is that may be where the problem
is. The data coming out of our front end, .Net app seemed to be causing an
error which related to it not getting correctly converted. The quick fix
that I came up with was to have the .Net app pass the CCSID parm of 500
which is the CCSID of our mainframe qmanager. This rectified the problem
immediately.

Hope it helps.
Dan

-Original Message-
From: Elena Nanos [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 11:23 AM
To: [EMAIL PROTECTED]
Subject: Data conversion with MA7P using .NET application


Hello,
we are using Support pack MA7P - WebSphere MQ classes for Microsoft .NET,
which allows MQ  to be invoked from Microsoft .NET applications.

We ran into a problem with data conversion.  The data coming from mainframe
going to distributed, is not being converted to ASCII.

Is any one else using this support pack and can share the experience with
us?

Thank you.

Elena Nanos
Sr. Software and System Architect
IBM Certified Solution Expert in CICS WEB Enablement and MQSeries
Zurich NA

*** PLEASE NOTE ***
This E-Mail/telefax message and any documents accompanying this
transmission may contain privileged and/or confidential information and is
intended solely for the addressee(s) named above.  If you are not the
intended addressee/recipient, you are hereby notified that any use of,
disclosure, copying, distribution, or reliance on the contents of this
E-Mail/telefax information is strictly prohibited and may result in legal
action against you. Please reply to the sender advising of the error in
transmission and immediately delete/destroy the message and any
accompanying documents.  Thank you.

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
 Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive


Re: Data conversion with MA7P using .NET application

2003-06-04 Thread Glen Larson
Dan,

MQ convertion works fine when done by the application, plus we have some
blobs to traverse the network.  Channel convertion is not an option.  As
far as messing with the CCSID, we're using standard NT, AIX , and MVS queue
managers.  The application group is converting to the .NET and we have been
using the standard to convert at the receiving application without
problem.   This should support the standard API.

glen


Capodicci, Dan (COMFIN, ITSS) [EMAIL PROTECTED]@AKH-Wien.AC.AT on
06/03/2003 01:08:42 PM

Please respond to MQSeries List [EMAIL PROTECTED]

Sent by:MQSeries List [EMAIL PROTECTED]


To:[EMAIL PROTECTED]
cc:

Subject:Re: Data conversion with MA7P using .NET application


Hi Glen

I can't say whether this is a bug or not (or as I like to refer to them,
undocumented enhancements) although I haven't encountered this issue in
the past with VB and ActiveX apps that do pretty much the same as is being
done in this .Net app. What lead me to putting the CCSID parm change in was
that I was receiving a 2110 MQRC_FORMAT_ERROR on the data passing through
the channels and the conversion was not taking place. My problem was from
the front end up to the mainframe which is why I had the CCSID changed to
500. We have a request/reply scenario so once the requesting data got to
the mainframe correctly, I had no further problems from there. I am not
having a problem with the conversion on the way down but I am doing it in
the channels (I now this is generally not the preferred method but I have
found it much easier to work with this way!) The only difference that I
would think between the 2 methods here is that the channel method converts
it to the CCSID for the receiving qmanager, in my case 437 so I do not need
to have the CCSID parm set in the return message.

In your case, are you having the mainframe app set the CCSID in the MQMD?!?
It sounds as though you are failing on the MQGET with convert, are you
getting an error thrown, such as a 2110?!? If so, you might try having the
mainframe program setting the CCSID parm to that of the receiving qmanager
and see if that helps.

Hope it helps!!
Dan

-Original Message-
From: Glen Larson [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 1:10 PM
To: [EMAIL PROTECTED]
Subject: Re: Data conversion with MA7P using .NET application


Dan,

the problem is this is a shared channel.

we do not want to use channel conversion.

So is this a bug in the .NET,  or is there some parm the application needs
to use.

glen larson
zurich north america


Capodicci, Dan (COMFIN, ITSS) [EMAIL PROTECTED]@AKH-Wien.AC.AT on
06/03/2003 11:18:40 AM

Please respond to MQSeries List [EMAIL PROTECTED]

Sent by:MQSeries List [EMAIL PROTECTED]


To:[EMAIL PROTECTED]
cc:

Subject:Re: Data conversion with MA7P using .NET application


Hi Elena

We are using it and ran into the same problems. We are setting the channels
to convert the data for us and my guess is that may be where the problem
is. The data coming out of our front end, .Net app seemed to be causing an
error which related to it not getting correctly converted. The quick fix
that I came up with was to have the .Net app pass the CCSID parm of 500
which is the CCSID of our mainframe qmanager. This rectified the problem
immediately.

Hope it helps.
Dan

-Original Message-
From: Elena Nanos [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 11:23 AM
To: [EMAIL PROTECTED]
Subject: Data conversion with MA7P using .NET application


Hello,
we are using Support pack MA7P - WebSphere MQ classes for Microsoft .NET,
which allows MQ  to be invoked from Microsoft .NET applications.

We ran into a problem with data conversion.  The data coming from mainframe
going to distributed, is not being converted to ASCII.

Is any one else using this support pack and can share the experience with
us?

Thank you.

Elena Nanos
Sr. Software and System Architect
IBM Certified Solution Expert in CICS WEB Enablement and MQSeries
Zurich NA

*** PLEASE NOTE ***
This E-Mail/telefax message and any documents accompanying this
transmission may contain privileged and/or confidential information and is
intended solely for the addressee(s) named above.  If you are not the
intended addressee/recipient, you are hereby notified that any use of,
disclosure, copying, distribution, or reliance on the contents of this
E-Mail/telefax information is strictly prohibited and may result in legal
action against you. Please reply to the sender advising of the error in
transmission and immediately delete/destroy the message and any
accompanying documents.  Thank you.

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http

Re: Data conversion with MA7P using .NET application

2003-06-04 Thread GIES, STEVE
Elena -

This is a known bug in the current .NET support pac.  What is happening is
that by default the MQQueue class attempts to get the message with a 1 byte
buffer.  This of course fails (unless you just happen to be passing a 1 or 0
byte message!!) with a truncation failure.  The class then resizes its
internal buffer and retries the MQGET call, and since the buffer is now
large enough the message is retrieved.  (BTW, the ActiveX classes do the
same thing, but they start with a 2K buffer).

The problem with the .NET classes is that after the first MQGET call the
MQMD-CCSID field has been updated with the value from the message - which is
the value from the mainframe queue manager.  When the second call is made,
this field is not reinitialized.  This tells MQ to convert the data into the
code page from the mainframe.  Since the data is already in this code page,
no conversion takes place.

One way to work around this problem is to instruct the class to use a bigger
default buffer size.  You do this on the put method.  For example, to use a
5000 byte buffer in VB.NET code the following

  myQueue.Get(myMsg, myGMO, 5000)

This does, however, require you to know what the largest size message will
be.

Steve Gies
Safeco Insurance
IT Specialist - WebSphere MQ



-Original Message-
From: Elena Nanos [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 8:23 AM
To: [EMAIL PROTECTED]
Subject: Data conversion with MA7P using .NET application


Hello,
we are using Support pack MA7P - WebSphere MQ classes for Microsoft .NET,
which allows MQ  to be invoked from Microsoft .NET applications.

We ran into a problem with data conversion.  The data coming from mainframe
going to distributed, is not being converted to ASCII.

Is any one else using this support pack and can share the experience with
us?

Thank you.

Elena Nanos
Sr. Software and System Architect
IBM Certified Solution Expert in CICS WEB Enablement and MQSeries Zurich NA

*** PLEASE NOTE ***
This E-Mail/telefax message and any documents accompanying this transmission
may contain privileged and/or confidential information and is intended
solely for the addressee(s) named above.  If you are not the intended
addressee/recipient, you are hereby notified that any use of, disclosure,
copying, distribution, or reliance on the contents of this E-Mail/telefax
information is strictly prohibited and may result in legal action against
you. Please reply to the sender advising of the error in transmission and
immediately delete/destroy the message and any accompanying documents.
Thank you.

Instructions for managing your mailing list subscription are provided in the
Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive


Re: Data conversion with MA7P using .NET application

2003-06-04 Thread Elena Nanos
Hello Steve,
thank you very much for your reply, it is nice to know that we are not
alone ...

The queues using this support pack are set to 4 Meg max message size.  Our
developer will test setting larger buffer size on a PUT.  What size do you
recommend?

Thanks again.

Elena.


GIES, STEVE [EMAIL PROTECTED]@AKH-Wien.AC.AT on 06/03/2003 01:55:38 PM

Please respond to MQSeries List [EMAIL PROTECTED]

Sent by:MQSeries List [EMAIL PROTECTED]


To:[EMAIL PROTECTED]
cc:

Subject:Re: Data conversion with MA7P using .NET application


Elena -

This is a known bug in the current .NET support pac.  What is happening is
that by default the MQQueue class attempts to get the message with a 1 byte
buffer.  This of course fails (unless you just happen to be passing a 1 or
0
byte message!!) with a truncation failure.  The class then resizes its
internal buffer and retries the MQGET call, and since the buffer is now
large enough the message is retrieved.  (BTW, the ActiveX classes do the
same thing, but they start with a 2K buffer).

The problem with the .NET classes is that after the first MQGET call the
MQMD-CCSID field has been updated with the value from the message - which
is
the value from the mainframe queue manager.  When the second call is made,
this field is not reinitialized.  This tells MQ to convert the data into
the
code page from the mainframe.  Since the data is already in this code page,
no conversion takes place.

One way to work around this problem is to instruct the class to use a
bigger
default buffer size.  You do this on the put method.  For example, to use a
5000 byte buffer in VB.NET code the following

  myQueue.Get(myMsg, myGMO, 5000)

This does, however, require you to know what the largest size message will
be.

Steve Gies
Safeco Insurance
IT Specialist - WebSphere MQ



-Original Message-
From: Elena Nanos [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 8:23 AM
To: [EMAIL PROTECTED]
Subject: Data conversion with MA7P using .NET application


Hello,
we are using Support pack MA7P - WebSphere MQ classes for Microsoft .NET,
which allows MQ  to be invoked from Microsoft .NET applications.

We ran into a problem with data conversion.  The data coming from mainframe
going to distributed, is not being converted to ASCII.

Is any one else using this support pack and can share the experience with
us?

Thank you.

Elena Nanos
Sr. Software and System Architect
IBM Certified Solution Expert in CICS WEB Enablement and MQSeries Zurich NA

*** PLEASE NOTE ***
This E-Mail/telefax message and any documents accompanying this
transmission
may contain privileged and/or confidential information and is intended
solely for the addressee(s) named above.  If you are not the intended
addressee/recipient, you are hereby notified that any use of, disclosure,
copying, distribution, or reliance on the contents of this E-Mail/telefax
information is strictly prohibited and may result in legal action against
you. Please reply to the sender advising of the error in transmission and
immediately delete/destroy the message and any accompanying documents.
Thank you.

Instructions for managing your mailing list subscription are provided in
the
Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
 Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive


Re: Data conversion with MA7P using .NET application

2003-06-04 Thread GIES, STEVE
Elena -

You would set the default buffer size on the Get method, not the Put method.
As to what size to use, that really depends on your application that is
putting messages to your queue.

- Steve

-Original Message-
From: Elena Nanos [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 2:23 PM
To: [EMAIL PROTECTED]
Subject: Re: Data conversion with MA7P using .NET application


Hello Steve,
thank you very much for your reply, it is nice to know that we are not alone
...

The queues using this support pack are set to 4 Meg max message size.  Our
developer will test setting larger buffer size on a PUT.  What size do you
recommend?

Thanks again.

Elena.


GIES, STEVE [EMAIL PROTECTED]@AKH-Wien.AC.AT on 06/03/2003 01:55:38 PM

Please respond to MQSeries List [EMAIL PROTECTED]

Sent by:MQSeries List [EMAIL PROTECTED]


To:[EMAIL PROTECTED]
cc:

Subject:Re: Data conversion with MA7P using .NET application


Elena -

This is a known bug in the current .NET support pac.  What is happening is
that by default the MQQueue class attempts to get the message with a 1 byte
buffer.  This of course fails (unless you just happen to be passing a 1 or 0
byte message!!) with a truncation failure.  The class then resizes its
internal buffer and retries the MQGET call, and since the buffer is now
large enough the message is retrieved.  (BTW, the ActiveX classes do the
same thing, but they start with a 2K buffer).

The problem with the .NET classes is that after the first MQGET call the
MQMD-CCSID field has been updated with the value from the message - which is
the value from the mainframe queue manager.  When the second call is made,
this field is not reinitialized.  This tells MQ to convert the data into the
code page from the mainframe.  Since the data is already in this code page,
no conversion takes place.

One way to work around this problem is to instruct the class to use a bigger
default buffer size.  You do this on the put method.  For example, to use a
5000 byte buffer in VB.NET code the following

  myQueue.Get(myMsg, myGMO, 5000)

This does, however, require you to know what the largest size message will
be.

Steve Gies
Safeco Insurance
IT Specialist - WebSphere MQ



-Original Message-
From: Elena Nanos [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 03, 2003 8:23 AM
To: [EMAIL PROTECTED]
Subject: Data conversion with MA7P using .NET application


Hello,
we are using Support pack MA7P - WebSphere MQ classes for Microsoft .NET,
which allows MQ  to be invoked from Microsoft .NET applications.

We ran into a problem with data conversion.  The data coming from mainframe
going to distributed, is not being converted to ASCII.

Is any one else using this support pack and can share the experience with
us?

Thank you.

Elena Nanos
Sr. Software and System Architect
IBM Certified Solution Expert in CICS WEB Enablement and MQSeries Zurich NA

*** PLEASE NOTE ***
This E-Mail/telefax message and any documents accompanying this transmission
may contain privileged and/or confidential information and is intended
solely for the addressee(s) named above.  If you are not the intended
addressee/recipient, you are hereby notified that any use of, disclosure,
copying, distribution, or reliance on the contents of this E-Mail/telefax
information is strictly prohibited and may result in legal action against
you. Please reply to the sender advising of the error in transmission and
immediately delete/destroy the message and any accompanying documents. Thank
you.

Instructions for managing your mailing list subscription are provided in the
Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in the
Listserv General Users Guide available at http://www.lsoft.com
 Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in the
Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive

Instructions for managing your mailing list subscription are provided in
the Listserv General Users Guide available at http://www.lsoft.com
Archive: http://vm.akh-wien.ac.at/MQSeries.archive