| |
|
|
- Page 1 - |
|
Dietmar Horn | Hallo zusammen,
wahrscheinlich habe ich mal wieder eine Denkblockade:
Das Schreiben und Auslesen eines normalen dBase-Feldes klappt.
Beim Auslesen des Memofeldes scheint aber die Entschlüsselung nicht zu funktionieren.
Sieht jemand vielleicht meinen Denkfehler? KompilierenMarkierenSeparierenPASSWORD 0,"XProfanX2b"
CLS
Declare i&
Var strdat$ = $ProgDir + "dbftest.str"
var dbfdat$ = $ProgDir + "dbftest.dbf"
Var MEdit& = Create("MultiEdit",%HWnd,"",5,60,300,-200)
IfNot Fileexists(dbfdat$)
assign #1,strdat$
rewrite #1
print #1,"NAME;C;200;0"
print #1,"M1;M;10;0"
close #1
EndIf
db("Create",strdat$,dbfdat$)
db("Open",#1,dbfdat$)
db("Use",#1)
i& = db("AppendBlank")
db("Put","NAME",encode64(pwd$("Hülsmann")))
Clearlist
AddString encode64(pwd$("Notizen über RGH"))
print encode64(pwd$("Notizen über RGH"))
AddString encode64(pwd$("und sein XProfan."))
print encode64(pwd$("und sein XProfan."))
db("PutMemo","M1")
Clearlist
db("PutRec",i&)
print
print pwd$(decode64(trim$(db("Get","NAME"))))
pwd$(decode64(trim$(db("GetMemo","M1"))))
MoveListToHandle(MEdit&)
ClearList
Waitinput
db("Close",#1)
End
Saluto Dietmar |
|
|
| Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V. [...] Windows 95 bis Windows 7 Profan² 6.6 bis XProfan X2 mit XPSE Das große XProfan-Lehrbuch: [...] | 05.10.2011 ▲ |
|
|
|
|
« Dieser Beitrag wurde als Lösung gekennzeichnet. » |
|
| Habe oft Probleme gehabt und fülle jetzt die normalen dbf-Felder mit Ersatzzeichen bis zur zulässigen Feldlänge auf. Nach dem decodieren lösche ich die Ersatzeichen wieder. Beim Memofeld mache ich es wie folgt: KompilierenMarkierenSeparierenPASSWORD 0,"XProfanX2b"
CLS
Declare i&
Var strdat$ = "dbftest.str"
var dbfdat$ = "dbftest.dbf"
Var MEdit& = Create("MultiEdit",%HWnd,"",5,160,300,-200)
IfNot Fileexists(dbfdat$)
assign #1,strdat$
rewrite #1
print #1,"NAME;C;200;0"
print #1,"M1;M;100;0"
close #1
EndIf
db("Create",strdat$,dbfdat$)
db("Open",#1,dbfdat$)
db("Use",#1)
i& = db("AppendBlank")
db("Put","NAME",encode64(pwd$("Hülsmann")))
Clearlist
AddString encode64(pwd$("Notizen über RGH"))
AddString encode64(pwd$("und sein XProfan."))
MoveListToStr$(" ")
db("PutMemo","M1")
db("PutRec",i&)
print
print pwd$(decode64(trim$(db("Get","NAME"))))
print MoveListToStr$(" ")
Clearlist
@DB("GetMemo", "M1")
var LV%=CreateListBox(%hwnd,"",0,0,0,0)
WhileLoop 0,GetCount(0)-1
RTFAddLine pwd$(decode64(GetString$(0,&Loop)))
EndWhile
ClearList
Waitinput
db("Close",#1)
End
Proc RTFAddLine
Parameters Text$
Text$ = Text$ + "\n"
SendMessage(MEdit&, 177, $FFFF, $FFFF)' EM_SETSEL
SendMessage(MEdit&, 194, 0, Addr(Text$))' EM_REPLACESEL
EndProc
Saluto Thomas
PS. Keine Ahnung. Registro ging nicht. Hängte sich immer auf. |
|
|
| |
|
|
|
|
Thomas Freier |
Das Schreiben und Auslesen eines normalen dBase-Feldes klappt.
Bist du dir sicher Dietmar? NUM-, DATUM- und logische Felder auch? |
|
|
| |
|
|
|
Dietmar Horn | @Thomas: Ich wandele die zu schreibenden Daten immer schon vorher vom Programm aus passend um und schreibe sie grundsätzlich in ein CHAR-Feld. Das hat den Vorteil, daß ich mit der Tabelle auch später variabler sein kann, bei eventuellen zukünftigeren Erweiterungen und ggf. Veränderungen.
Außerdem muß ich von meinem Programm aus so oder so die Anwenderangaben auf Korrektheit überprüfen und ggf. korrigieren, damit es beim Schreiben in die Tabelle nicht knallt.
Durch diese Vorgehensweise habe ich noch nie NUM-, DATUM- und logische Felder in meinen Datenbankprogrammen gebraucht, weil das meiner Erfahrung nach viel einfacher und flexibler mit einfachen C-Feldern funktioniert.
Saluto Dietmar |
|
|
| XProfan X2Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V. [...] Windows 95 bis Windows 7 Profan² 6.6 bis XProfan X2 mit XPSE Das große XProfan-Lehrbuch: [...] | 05.10.2011 ▲ |
|
|
|
|
Dietmar Horn | Hallo Thomas,
ich habe Deinen Code leicht abgewandelt und ihn inzwischen in mein aktuelles Projekt eingebaut und es funktioniert damit alles tadellos. Danke!
Trotzdem bleibt bei mir die Frage bestehen, warum man diesen Umweg gehen muß, worauf man ja auch erst einmal kommen muß ...
Vielleicht kann Roland ja etwas dazu ausführen?
Saluto Dietmar |
|
|
| XProfan X2Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V. [...] Windows 95 bis Windows 7 Profan² 6.6 bis XProfan X2 mit XPSE Das große XProfan-Lehrbuch: [...] | 11.10.2011 ▲ |
|
|
|