Size of variable type B

Hi there,

I work in a system that use messages with other systems. To indicate the size of message, by default is use a variable (B2) to indicate this. It increases 18 bytes in the message. My question is simple, but I dont know: why 18?
2 binaries 8+8 = 16. These variables (type B) have something more or my application should have something I cant see?

Thank you

what platform are you using? what messaging are you referring to? Normally, a B2 field in Natural indicates a 2 byte binary field.

If you are sending the message via Natural/EntireX RPC, there are some format descriptions added to the message.

Are you referring to the increase in the size of DATSIZE when you add a 2 byte binary field? On the mainframe Natural basically allocates space in 8 byte increments; so I could see that a two byte addition could easily result in an “extra” six bytes.


Hi Douglas and Steve,

I think there is some thing more… a description or control bytes in the message (like Dougla wrote)…
In Natural I define a B2 field before my string, but in the other side, I have to put the lenght as my string lenght + 18, and not 16 (B2). So, the B2 variable may use 2 of these 18 bytes, or 16 bytes. Probably the other 16 or 2 are a “header”, or something like that.
I have to talk with the communicator team. I’m a developer, and it’s just a ‘18’ to add to size, but I’m curious and I’ve thought its a variable type property.

Thank you very much!