#IF (!0>0) #CHECK !2 _RT #IFSAME !1 STRING // strings are treated as special because they have a set of values. #IF (!0>2) #IFDEF !3 #CHECK !3 _VSWDF #STR V$ !3 #REPLACE !2 |VS!v #IF (!0>3) Global$Scalar !1 !4 !5 !6 !7 !8 !9 #ENDIF #ELSE #STR V$ 80 #REPLACE !2 |VS!v Global$Scalar !1 !3 !4 !5 !6 !7 !8 !9 #ENDIF #ELSE #STR V$ 80 #REPLACE !2 |VS!v #ENDIF #ELSE #IFSAME !1 INTEGER #REPLACE !2 |VI!D #ELSE #IFSAME !1 DATE #NUM V$ #REPLACE !2 |VD!v #ELSE #IFSAME !1 NUMBER #NUM V$ #REPLACE !2 |VN!v #ELSE #IFSAME !1 REAL #REAL V$ #REPLACE !2 |VR!v #ELSE #IFSAME !1 ADDRESS #ADDRESS V$ #REPLACE !2 |VX!v #ELSE #IFSAME !1 BIGINT #BIGINT V$ #REPLACE !2 |VH!v #ELSE #IFSAME !1 TIME #TIME V$ #REPLACE !2 |VT!v #ELSE #IFSAME !1 DATETIME #STAM V$ #REPLACE !2 |VM!v #ELSE #IFSAME !1 FLOAT #FLOAT V$ #REPLACE !2 |VF!v #ELSE #IFSAME !1 CHAR #CHAR V$ #REPLACE !2 |VY!v #ELSE #IFSAME !1 UCHAR #UCHAR V$ #REPLACE !2 |VC!v #ELSE #IFSAME !1 SHORT #SHORT V$ #REPLACE !2 |VW!v #ELSE #IFSAME !1 USHORT #USHORT V$ #REPLACE !2 |VU!v #ELSE #IFSAME !1 UINTEGER #ULONG V$ #REPLACE !2 |VV!v #ELSE #IFSAME !1 BOOLEAN #BIT V$ #REPLACE !2 |VZ!v #ELSE #IFSAME !1 UBIGINT #BIGU V$ #REPLACE !2 |VG!v #ELSE #IFSAME !1 CURRENCY #CURR V$ #REPLACE !2 |VO!v #ELSE #IFSAME !1 TIMESPAN #SPAN V$ #REPLACE !2 |VP!v #ELSE #IFSAME !1 DECIMAL #BIGN V$ #REPLACE !2 |VQ!v #ELSE #IFSAME !1 VARIANT #VRNT V$ #REPLACE !2 |VJ!v #ELSE #IFSAME !1 ROWID #ROWI V$ #REPLACE !2 |V@!v #ELSE #PUSH !h #STRG H$ !1 #IF !h #STRV V$ !h #REPLACE !2 |VK!vV!h #ELSE #ERROR DFERR_COMP_INVALID_DATATYPE (!1) #ENDIF #POP H$ #ENDIF // RowID #ENDIF // Variant #ENDIF // Decimal #ENDIF // TimeSpan #ENDIF // Currenct #ENDIF // UBigInt #ENDIF // Boolean #ENDIF // UInteger #ENDIF // UShort #ENDIF // Short #ENDIF // UChar #ENDIF // Char #ENDIF // Float #ENDIF // TimeDate #ENDIF // Time #ENDIF // BigInt #ENDIF // address #ENDIF // real #ENDIF // number #ENDIF // date #ENDIF // integer #IF (!0>2) Global$Scalar !1 !3 !4 !5 !6 !7 !8 !9 #ENDIF #ENDIF // end of string #ENDIF // if there are parameters