Seite 1 von 1
function blank
Verfasst: Mi, 16. Nov 2011 1:09
von Werner_Bayern
dumme Frage...
Sehe gerade, dass ich in meinen Clipper-Sources eine Funktion blank verwende, um leere Datentype zu erzeugen (Datensatz-Felder leeren). Wo ist diese Funktion definiert, kann sie nirgends finden...
Re: function blank
Verfasst: Mi, 16. Nov 2011 5:01
von AUGE_OHR
Werner_Bayern hat geschrieben:dumme Frage...
Sehe gerade, dass ich in meinen Clipper-Sources eine Funktion blank verwende, um leere Datentype zu erzeugen (Datensatz-Felder leeren). Wo ist diese Funktion definiert, kann sie nirgends finden...
ich würde mal sagen das es eine "eigene" Function ist
mittels
DbStruct() und
FieldPut() müsste das so gehen
Code: Alles auswählen
#include "Dbstruct.ch"
PROCEDURE Main
USE Kunden
// use Recno()
BLANK( Recno() )
CLOSE Kunden
RETURN
FUNCTION BLANK(nRec)
LOCAL aStructure := DbStruct() // Datei-Struktur einlesen
LOCAL i,imax
LOCAL xValue
LOCAL lRet := .F.
GOTO(nRec)
IF DbRLock(nRec)
imax := LEN(aStructure)
FOR i := 1 TO imax
DO CASE
CASE aStructure[i][DBS_TYPE] = "C" ; xValue := ""
CASE aStructure[i][DBS_TYPE] = "M" ; xValue := ""
CASE aStructure[i][DBS_TYPE] = "N" ; xValue := 0
CASE aStructure[i][DBS_TYPE] = "L" ; xValue := .F.
CASE aStructure[i][DBS_TYPE] = "D" ; xValue := CTOD("")
ENDCASE
FieldPut(i,xValue)
NEXT
DbRUnlock(nRec)
lRet := .T.
ENDIF
RETURN lRet
Re: function blank
Verfasst: Mi, 16. Nov 2011 6:38
von Wolfgang Ciriack
Ist in den XbTools vorhanden.
Re: function blank
Verfasst: Mi, 16. Nov 2011 10:16
von Werner_Bayern
Danke, habe aber keine tools und eine eigene Funktion ist es auch nicht, evtl. undokumentiert?
Hab mir jetzt so geholfen, ist die für mich performanteste Lösung:
Code: Alles auswählen
static function blank(xVal)
local xRueck := "", cType := valtype(xVal)
do case
case cType == "C"
xRueck := ""
case cType == "N"
xRueck := 0
case cType == "D"
xRueck := ctod(" . . ")
case cType == "L"
xRueck := .f.
endcase
return xRueck