ich versuche verzweifelt eine CSV-Datei in eiene DBF einzulesen. Irgendwie klappt das nicht.
FUNCTION FIBUCSV_TO_DBF_TEST( datei )
// Import Daten aus einer FIBU-CSV-Datei in eine DBF
aDbf := {}
AADD(aDbf,{"F_KONTO1", "C",6,0 })
AADD(aDbf,{"F_KONTO2", "C",6,0 })
AADD(aDbf,{"F_SH", "C",1,0 })
AADD(aDbf,{"F_BET_NE", "N",8,2 })
AADD(aDbf,{"F_BET_ST", "N",8,0 })
AADD(aDbf,{"F_BET_BR", "N",8,2 })
AADD(aDbf,{"F_NAME", "C",150,0 })
DBCREATE("VWFITEST", aDbf)
MSgBox("Datei: "+datei)
select 1
use VWFITEST
select 2
DbeSetDefault( "DELDBE" )
DbeInfo( COMPONENT_DATA, DELDBE_DELIMITER_TOKEN, chr( 0 ) )
DbeInfo( COMPONENT_DATA, DELDBE_FIELD_TOKEN, ';' )
DbeInfo( COMPONENT_DATA, DELDBE_FIELD_TYPES, "CCCNNNC" )
use ( datei ) via ("DELDBE")
go top
skip // weil in der ersten Zeile die Spaltenbeschriftungen stehen...
do while .not. eof()
select 1
append blank
select 2
replace VWFITEST->F_KONTO1 with field->field7
replace VWFITEST->F_KONTO2 with field->field8
replace VWFITEST->F_SH with field->field16
replace VWFITEST->F_BET_NE with field->field4
replace VWFITEST->F_BET_ST with field->field5
replace VWFITEST->F_BET_BR with field->field4
dbskip()
enddo
DBCLOSEALL()
DbeSetDefault( "DBFNTX" )
RETURN( NIL )
// ENDFUNCTION
Es kommt folgender Fehler:
Zusatz: Die CSV-Datei hat 160 Felder. Der Fehler kommt bei use(datei) via ("DELDBE")