Ik zou graag een lisp maken dat twee text-bestanden leest. Deze tekstbestanden zijn integers. Het programma moet vervolgens deze waarden optellen en de som in een field teruggeven.
Ik kan wel 1 text-bestand lezen en in een field teruggeven maar ik slaag er niet in om de twee bestanden op te tellen. Kan iemand mij op weg helpen?
Ter info:
ik heb;
(setq schrijfgetalID (strcat "%<\\AcObjProp Object(%<\\_ObjId " getalID ">%).TextString>%"))
"%<\\AcObjProp Object(%<\\_ObjId 2497851039040>%).TextString>%"
en:
(setq schrijfgetalID2 (strcat "%<\\AcObjProp Object(%<\\_ObjId " getalID2 ">%).TextString>%"))
"%<\\AcObjProp Object(%<\\_ObjId 2497851039840>%).TextString>%"
en zou nu graag beide optellen .
%<\AcObjProp Object(%<\_ObjId 2338838875936>%).TextString>% + %<\AcObjProp Object(%<\_ObjId 2338838875952>%).TextString>%
Als ik dit in een field zet dan komt er een field expression uit:
%<\AcExpr (%<\_FldPtr 2338641346064>% + %<\_FldPtr 2338641345168>%)>%
Is dit mogelijk? :
(strcat "%<\AcExpr (" schrijfgetalID " + " schrijfgetalID2 ")>%")
Nee, dit blijkt niet te werken. Ik krijg als resultaat: AcExpr ( + )
Blijkbaar mis ik de stap van:
%<\AcObjProp Object(%<\_ObjId 2338838875936>%).TextString>%
naar de field expression:
%<\AcExpr (%<\_FldPtr 2338641346064>%
De omzetting zoals deze gebeurd door "formula" in de field dialoog.
Citaat van: Vanilla Queen op di 06 11 2018, 23:07:22
Nee, dit blijkt niet te werken. Ik krijg als resultaat: AcExpr ( + )
Blijkbaar mis ik de stap van:
%<\AcObjProp Object(%<\_ObjId 2338838875936>%).TextString>%
naar de field expression:
%<\AcExpr (%<\_FldPtr 2338641346064>%
De omzetting zoals deze gebeurd door "formula" in de field dialoog.
Dit werkt bij mij:
(setq a "%<\\AcObjProp Object(%<\\_ObjId 2744017587024>%).TextString>%")
(setq b "%<\\AcObjProp Object(%<\\_ObjId 2744017587040>%).TextString>%")
(setq str (strcat "%<\\AcExpr (" a " + " b ")>%"))
Je hebt gelijk!
Het werkt inderdaad.
Let wel: voor AcExpr moet \\ staan en niet \
Bedankt om het opnieuw door te geven en vooral bedankt voor deze oplossing.