4.3 rdsSynchronizeResponse with Error Information

This is an example of an rdsSynchronizeResponse message for the case when an operation cannot be successfully completed on the server. In this particular case, the row on the server was changed after it was read by the client, so the update cannot be done with the existing row data.

The binary data for this example is the following.

           0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
 00000030                                            43 6F               Co
 00000040  6E 74 65 6E 74 2D 54 79 70 65 3A 20 6D 75 6C 74 ntent-Type:.mult
 00000050  69 70 61 72 74 2F 6D 69 78 65 64 3B 20 62 6F 75 ipart/mixed;.bou
 00000060  6E 64 61 72 79 3D 2B 76 61 6C 64 75 30 3A 64 3D ndary=+valdu0:d=
 00000070  28 2D 70 72 2F 76 61 6E 3F 32 3B 20 6E 75 6D 2D (-pr/van?2;.num-
 00000080  61 72 67 73 3D 37 0D 0A 0D 0A 2D 2D 2B 76 61 6C args=7....--+val
 00000090  64 75 30 3A 64 3D 28 2D 70 72 2F 76 61 6E 3F 32 du0:d=(-pr/van?2
 000000A0  0D 0A 43 6F 6E 74 65 6E 74 2D 54 79 70 65 3A 20 ..Content-Type:.
 000000B0  61 70 70 6C 69 63 61 74 69 6F 6E 2F 78 2D 76 61 application/x-va
 000000C0  72 67 0D 0A 0D 0A 0C 20 00 01 00 80 08 10 00 00 rg..............
 000000D0  00 02 00 00 00 00 00 00 00 0A 00 DA 0E 04 00 00 ................
 000000E0  00 00 00 00 00 00 00 01 00 00 00 00 01 00 00 00 ................
 000000F0  00 01 0C 20 00 01 00 80 08 10 00 00 00 01 00 00 ................
 00000100  00 00 00 00 00 0C 20 00 01 00 80 08 10 00 00 00 ................
 00000110  0B 00 00 00 00 00 00 00 03 00 38 0E 04 80 03 00 ..........8.....
 00000120  20 00 00 00 08 00 4C 00 00 00 7B 00 33 00 46 00 ......L...{.3.F.
 00000130  46 00 32 00 39 00 32 00 42 00 36 00 2D 00 42 00 F.2.9.2.B.6.-.B.
 00000140  32 00 30 00 34 00 2D 00 31 00 31 00 43 00 46 00 2.0.4.-.1.1.C.F.
 00000150  2D 00 38 00 44 00 32 00 33 00 2D 00 30 00 30 00 -.8.D.2.3.-.0.0.
 00000160  41 00 41 00 30 00 30 00 35 00 46 00 46 00 45 00 A.A.0.0.5.F.F.E.
 00000170  35 00 38 00 7D 00 00 00 03 00 00 00 00 00 03 00 5.8.}...........
            
           0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
 00000180  09 04 00 00 08 00 BA 00 00 00 52 00 6F 00 77 00 ..........R.o.w.
 00000190  20 00 63 00 61 00 6E 00 6E 00 6F 00 74 00 20 00 ..c.a.n.n.o.t...
 000001A0  62 00 65 00 20 00 6C 00 6F 00 63 00 61 00 74 00 b.e...l.o.c.a.t.
 000001B0  65 00 64 00 20 00 66 00 6F 00 72 00 20 00 75 00 e.d...f.o.r...u.
 000001C0  70 00 64 00 61 00 74 00 69 00 6E 00 67 00 2E 00 p.d.a.t.i.n.g...
 000001D0  20 00 53 00 6F 00 6D 00 65 00 20 00 76 00 61 00 ..S.o.m.e...v.a.
 000001E0  6C 00 75 00 65 00 73 00 20 00 6D 00 61 00 79 00 l.u.e.s...m.a.y.
 000001F0  20 00 68 00 61 00 76 00 65 00 20 00 62 00 65 00 ..h.a.v.e...b.e.
 00000200  65 00 6E 00 20 00 63 00 68 00 61 00 6E 00 67 00 e.n...c.h.a.n.g.
 00000210  65 00 64 00 20 00 73 00 69 00 6E 00 63 00 65 00 e.d...s.i.n.c.e.
 00000220  20 00 69 00 74 00 20 00 77 00 61 00 73 00 20 00 ..i.t...w.a.s...
 00000230  6C 00 61 00 73 00 74 00 20 00 72 00 65 00 61 00 l.a.s.t...r.e.a.
 00000240  64 00 2E 00 00 00 03 00 00 00 00 00 08 00 00 00 d...............
 00000250  00 00 01 08 00 2E 00 00 00 4D 00 69 00 63 00 72 .........M.i.c.r
 00000260  00 6F 00 73 00 6F 00 66 00 74 00 20 00 43 00 75 .o.s.o.f.t...C.u
 00000270  00 72 00 73 00 6F 00 72 00 20 00 45 00 6E 00 67 .r.s.o.r...E.n.g
 00000280  00 69 00 6E 00 65 00 0D 0A 2D 2D 2B 76 61 6C 64 .i.n.e...--+vald
 00000290  75 30 3A 64 3D 28 2D 70 72 2F 76 61 6E 3F 32 0D u0:d=(-pr/van?2.
 000002A0  0A 43 6F 6E 74 65 6E 74 2D 54 79 70 65 3A 20 61 .Content-Type:.a
 000002B0  70 70 6C 69 63 61 74 69 6F 6E 2F 78 2D 76 61 72 pplication/x-var
 000002C0  67 0D 0A 43 6F 6E 74 65 6E 74 2D 4C 65 6E 67 74 g..Content-Lengt
 000002D0  68 3A 20 32 0D 0A 0D 0A 00 00 0D 0A 2D 2D 2B 76 h:.2........--+v
 000002E0  61 6C 64 75 30 3A 64 3D 28 2D 70 72 2F 76 61 6E aldu0:d=(-pr/van
 000002F0  3F 32 0D 0A 43 6F 6E 74 65 6E 74 2D 54 79 70 65 ?2..Content-Type
 00000300  3A 20 61 70 70 6C 69 63 61 74 69 6F 6E 2F 78 2D :.application/x-
 00000310  76 61 72 67 0D 0A 0D 0A 03 20 00 01 00 80 00 04 varg............
 00000320  00 00 00 02 00 00 00 00 00 00 00 07 00 00 00 04 ................
 00000330  00 00 00 0D 0A 2D 2D 2B 76 61 6C 64 75 30 3A 64 .....--+valdu0:d
 00000340  3D 28 2D 70 72 2F 76 61 6E 3F 32 0D 0A 43 6F 6E =(-pr/van?2..Con
 00000350  74 65 6E 74 2D 54 79 70 65 3A 20 61 70 70 6C 69 tent-Type:.appli
 00000360  63 61 74 69 6F 6E 2F 78 2D 76 61 72 67 0D 0A 0D cation/x-varg...
 00000370  0A 09 00 01 0D 0A 2D 2D 2B 76 61 6C 64 75 30 3A ......--+valdu0:
 00000380  64 3D 28 2D 70 72 2F 76 61 6E 3F 32 0D 0A 43 6F d=(-pr/van?2..Co
 00000390  6E 74 65 6E 74 2D 54 79 70 65 3A 20 61 70 70 6C ntent-Type:.appl
 000003A0  69 63 61 74 69 6F 6E 2F 78 2D 76 61 72 67 0D 0A ication/x-varg..
 000003B0  43 6F 6E 74 65 6E 74 2D 4C 65 6E 67 74 68 3A 20 Content-Length:.
 000003C0  36 0D 0A 0D 0A 00 00 00 00 00 00 0D 0A 2D 2D 2B 6............--+
 000003D0  76 61 6C 64 75 30 3A 64 3D 28 2D 70 72 2F 76 61 valdu0:d=(-pr/va
 000003E0  6E 3F 32 0D 0A 43 6F 6E 74 65 6E 74 2D 54 79 70 n?2..Content-Typ
 000003F0  65 3A 20 61 70 70 6C 69 63 61 74 69 6F 6E 2F 78 e:.application/x
 00000400  2D 76 61 72 67 0D 0A 0D 0A 0A 00 DA 0E 04 00 00 -varg...........
 00000410  00 00 00 00 00 00 00 01 00 00 00 00 01 00 00 00 ................
 00000420  00 01 0D 0A 2D 2D 2B 76 61 6C 64 75 30 3A 64 3D ....--+valdu0:d=
 00000430  28 2D 70 72 2F 76 61 6E 3F 32 2D 2D 0D 0A 01 02 (-pr/van?2--....

The following table correlates the binary data to the elements of the rdsSynchronizeResponse message.

First byte

Last byte

ABNF symbol

0x3E

0x87

rdsHeaders

0x88

0x3CA

rdsParameters

0x88

0xC5

rdsParamHeader

0xC6

0x286

rdsErrorInformation

0xC6

0xC7

VT-ARRAY-VARIANT

0xC8

0xC8

ZEROBYTE

0xC9

0xCA

esaNumDims

0xCB

0xCC

esaArrayFeatures

0xCD

0xD0

SIZEOFELEMVARIANT

0xD1

0xD4

2

0xD5

0xD8

esaLowerBound

0xD9

0xDA

VT-ERROR

0xDB

0xDE

SCODE

0xDF

0xF1

EXCEPINFO

0xDF

0xE2

SCODE

0xE3

0xE7

BSTRSOURCE

0xE8

0xEC

BSTRDESCRIPTION

0xED

0xF1

BSTRHELPFILE

0xF2

0x286

rdsErrorCollection

0xF2

0xF3

VT-ARRAY-VARIANT

0xF4

0xF4

ZEROBYTE

0xF5

0xF6

esaNumDims

0xF7

0xF8

esaArrayFeatures

0xF9

0xFC

SIZEOFELEMVARIANT

0xFD

0x100

rdsNumberOfErrors

0x101

0x104

esaLowerBound

0x105

0x286

ErrorSafeArray

0x105

0x106

VT-ARRAY-VARIANT

0x107

0x107

ZEROBYTE

0x108

0x109

esaNumDims

0x10A

0x10B

esaArrayFeatures

0x10C

0x10F

SIZEOFELEMVARIANT

0x110

0x113

esaElements11

0x114

0x117

esaLowerBound

0x118

0x11D

esaHR

0x11E

0x123

esaMinor

0x124

0x175

esaClsid

0x176

0x177

esaInterfaceId

0x178

0x17D

esaDispid

0x17E

0x183

esaLCId

0x184

0x243

esaDescription

0x244

0x245

esaInterfaceId

0x246

0x24B

esaHelpId

0x24C

0x252

esaHelpFile

0x253

0x286

esaSource

0x287

0x2D7

rdsParamHeader

0x2D8

0x2D9

VT-EMPTY

0x2DA

0x317

rdsParamHeader

0x318

0x332

rdsStatusArray

0x333

0x370

rdsParamHeader

0x371

0x372

VT-DISPATCH

0x373

0x373

INTERFACEVAL

0x374

0x3C4

rdsParamHeader

0x3C5

0x3C6

VT-EMPTY

0x3C7

0x3C8

VT-EMPTY

0x3C9

0x3CA

VT-EMPTY

0x3CB

0x421

rdsReturnValue

0x3CB

0x408

rdsParamHeader

0x409

0x40A

VT-ERROR

0x40B

0x421

VARIANTERROR

0x422

0x43D

rdsCloseDelimiter