Forum: Object-Pascal / Delphi-Language
by Joerginger,
22. Okt 2013
Hmmm, heute steh' ich glaub ich echt auf dem Schlaucherl?
Eine function hat einen Result-Wert. Selbigen verwende ich in diesem Fall so, dass ich Result:=TXSString.create fahre und hernach einen Wert mit Result.XSToNative('bla bla') zuweise. Und genau dieses Result (eigentlich ja eine Semi-Variable) ist mein Problem?
Weil den Wert / Status von diesem Result übergebe ich doch mittels
...
Forum: Object-Pascal / Delphi-Language
by Joerginger,
22. Okt 2013
@Norman / DeddyH: genau so tut's!
Genial. Hätte ich doch auch selber draufkommen können :cyclops:
Letzte Frage zum Tage noch: Wenn ich Result als TXSString / TXSBoolean ode so (eben eine Klasse) "create" und hernach mit einem Wert versehe... Löscht (destroyed) sich da der Rückgabewert selbstständig sobald die Function den Focus verliert? Wegen SpeicherLeaks warads... Ich wüsst jetzt auf...
Forum: Object-Pascal / Delphi-Language
by Joerginger,
22. Okt 2013
@NormanNG: Das wäre genau das, was ich erreichen wollen würde.
Leider - wenn ich Deinen Code verwende - sagt mir Mr. Compiler mit dem Code E2250 "es gäbe keine überladene Funktion, die man mit diesen Argumenten aufrufen könne"... Ich befürchte es liegt am Versuch der Übergabe von TXSString?
Irgendwoanders hab ich mittlerweile ergooglet, dass es ja setter und getter für diese Quasi-Var's...
Forum: Object-Pascal / Delphi-Language
by Joerginger,
22. Okt 2013
@DeddyH: Ja, könnte man kürzen, aber leider hat beim Oxid-eShop der Artikelstamm (ohne eventuelle Indivs) 113 Felder, da wäre der Prozeduraufruf ziemlich lang...
@Mikkey: Genau sowas hätte ich mir vorgestellt! Und stimmt, eigentlich doch ganz einfache Anforderung an Delphi?
Leider tuts so doch noch nicht:
Fehler: E2197: Konstantenobjekt kann nicht als Var-Parameter weitergegeben werden....
Forum: Object-Pascal / Delphi-Language
by Joerginger,
22. Okt 2013
Vielleicht hab ich auch zu kompliziert gefragt, ist ja noch zeitig des Morgens für mich...
Wenn ich eine procedure TUWAS(sStr:string); habe, kann ich mit TUWAS('juhu'); drauf zugreifen und habe 'juhu' im Zugriff. Ich kann sStr:=''; sagen, ich kann sStr:=sStr+'di'; schreiben und erhalte 'Juhudi' etc.
Nun würde ich gern ein bekanntes Feld (z.B. 'OXID') einer bekannten Klasseninstanz (aArt)...
Forum: Object-Pascal / Delphi-Language
by Joerginger,
22. Okt 2013
Mal vorab Danke für die Wortspenden!
Introspection... gut zu wissen für weitere Projekte, aber einerseits weiss ich ja den Namen, den ich übergeben will, ich wills ja auch nicht durchiterieren, sondern einfach nur ein (bekanntes) Feld per Namen ansprechen (oder per Pointer oder what so ever). Und mit diesem Feld eben Sachen anstellen, wie z.B. ein := TXCreate oder einen Wert zuweisen. Und...