Ich habe Probleme, die GetNextExtended (36) Operation in Btrieve arbeiten zu lassen. Hier ist der Aufruf, die den Statuscode zurückzugibt 62:Btrieve GetNextExtended Status 62
intStatus = BTRCALL(B_GETNEXTEXTENDED, _
m_byteFilePosBlk, _
m_byteRecordBuffer(0), _
lngDataBufferLen, _
ByVal strKeyBuffer, _
intKeyBufferLen, _
m_intKeyNum)
Nach einer Suche nach dem Code zu tun ich zahlreiche Website besagt, dass der Code gibt einen Fehler in dem Datenpuffer, gespeichert in m_byteRecordBuffer gefunden. Hier sind die in dieser Variablen gespeicherten Werte:
m_byteRecordBuffer(0) 16 'These two bytes indicate the total size of'
m_byteRecordBuffer(1) 0 'data buffer'
m_byteRecordBuffer(2) 67 'These two bytes indicate the characters 'UC''
m_byteRecordBuffer(3) 85
m_byteRecordBuffer(4) 0 'These two bytes indicate the maximum reject'
m_byteRecordBuffer(5) 0 'count, which if set to 0 defaults to 4,095'
m_byteRecordBuffer(6) 0 'These two bytes indicate the number of terms'
m_byteRecordBuffer(7) 0 'which has been set to zero'
m_byteRecordBuffer(8) 1 'These two bytes indicate the number of'
m_byteRecordBuffer(9) 0 'records to return'
m_byteRecordBuffer(10) 1 'These two bytes indicate the number of fields'
m_byteRecordBuffer(11) 0 'to extract'
m_byteRecordBuffer(12) 2 'These two bytes indicate the length of the'
m_byteRecordBuffer(13) 0 'field to extract'
m_byteRecordBuffer(14) 1 'These two bytes indicate the field offset'
m_byteRecordBuffer(15) 0
Ich hoffe, dass ich nur einfache bin etwas fehlt. Jede Hilfe würde sehr geschätzt werden.
Wenn Sie keine Filterbedingungen haben und nur einen Datensatz erhalten, können Sie nicht einfach den regulären GETNEXT anstelle von GETNEXTEMENDED verwenden ? Versuchen Sie im Aufzeichnungspuffer, die Position der UC-Zeichen zu vertauschen. Setzen Sie 'U' (85) in Position 2 und 'C' (67) in Position 3. – Anna
Die Begriffe wurden nur vorübergehend weggelassen, um den Debugging-Prozess zu vereinfachen. Danke für den Vorschlag, ich werde es auf jeden Fall versuchen. – jakdep