Announcement

Collapse
No announcement yet.

TOleVarData

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TOleVarData

    Hallo Gemeinde,

    ich verwende BDS 2007 auf XP (SP3) und bekomme beim Ermitteln eines Feldwertes aus einem ADO-Recordset (ADOInt) via VarToStr(Value) folgenden Fehler: E2010 Incompatible types: 'string' and 'TOleVarData'

    Rausfinden konnte ich soviel dass TOleVarData so aufgebaut ist:
    type
    TOleVarData = packed record
    case Integer of
    0: (VT: Int16;
    _Reserved1: Int16;
    _Reserved2: Int32;
    case Integer of
    VT_UI1: (bVal: Byte);
    VT_I2: (iVal: Smallint);
    VT_I4: (lVal: Longint);
    VT_R4: (fltVal: Single);
    VT_R8: (dblVal: Int64); { Double }
    VT_BOOL: (vBool: WordBool);
    VT_CY: (cyVal: TOACurrency);
    VT_DATE: (vDate: Int64); { Double, TOleDate }
    VT_BSTR: (bStrVal: IntPtr); { PWideChar, WideString }
    VT_I1: (cVal: ShortInt);
    VT_UI2: (uiVal: Word);
    VT_UI4: (ulVal: LongWord);
    VT_INT: (intVal: Integer);
    VT_I8: (int64Val: Int64);
    VT_ARRAY: (pArray: PSafeArray)
    );
    1: (Reserved1: Int64; Reserved2: Int64);
    end;

    Wie spricht man das an??

    Gruß
    Uwe

  • #2
    TOLEVarData

    wäre das erste mal, dass ich hier keine Antwort bekomme...

    Comment


    • #3
      Hallo Uwe,

      schreibe bitte noch etwas mehr über den Quelltext bei dem der Fehler auftritt. Mit dem Record alleine kann ich so auch nichts anfangen.

      Könnte es evtl. sein dass Du versuchst eine Dezimalzahl, mit Komma getrennt, einzulesen? Dieses Problem hatte ich auch schon und ersetzte die Kommas durch Punkte mit

      ValueString:=StringReplace(ValueString, '.', Komma, [rfReplaceAll]);

      Gruß

      Christoph

      Comment

      Working...
      X