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 |