I have a question regarding the ArcSDE C API, specifically the call SE_stream_set_dynamic_bind. According to the ArcSDE API documentation the function is defined as such (SE_stream_set_dynamic_bind).
LONG SE_stream_set_dynamic_bind (SE_STREAM stream, SHORT position, LONG sde_type, LONG length, const void *data, const SHORT *indicator);
Inside of our code which uses this function I have tried to call it with the following snippet of code.
LONG *data = LONG(2711);
LONG result = SE_stream_set_dynamic_bind(stream, SHORT(1), SE_INT64_TYPE, sizeof(data), data, SHORT(2));
I received a result of 0 or success when I make this call to set the dynamic bind. When I call execute on the stream I also receive a return code of 0 indicating success. However, when I call fetch on the stream I receive a -10 error code signifying a disconnection. I have used both SDETRACELOC and SDEINTERCEPT to try to trace the issue but have found no error message as to what I am doing wrong. If someone have had success using this method would you please let me know if I am using the correct input?