![]() |
Pascal-Script
Hallo zusammen,
hat jemand Erfahrung mit dieser Komponentensammlung gemacht und wenn ja, welche bitte? ![]() Ich überlege nämlich, diese in einem Projekt einzusetzen, werde aber aus den verfügbaren Informationen (Newsgroup, Homepage) nicht ganz schlau, ob es dann kann, was ich haben möchte. In einem privaten "Proof-of-Concept"-Projekt möchte ich versuchen, folgendes zu realisieren: - eine Datenbankanwendung - in der die Datenmasken frei vom User / Admin konfiguriert werden können - in denen dann mittels Pascal-Script benötigte Funktionalitäten hinterlegt werden können Momentan bin ich soweit, dass die angezeigten Eingabemasken komplett in der Datenbank hinterlegt sind und "on-the-fly" im Programm bei Bedarf generiert werden. Dazu habe ich mir einen Formular-Editor gebaut, der die auf dem Formular platzierten Komponenten (Label, DBEdit, etc.) mit den wichtigsten Properties in die DB abspeichern kann. Meine "Programmhülle" generiert daraus dann wieder das Formular. Neben Standardaktionen wie "Neuer Datensatz", "Datensatz löschen", etc. die heute bereits automatisch dazu generiert werden, könnten Anwender ja jetzt auch weitere fachliche Funktionalitäten benötigen. Was ich bisher von Pascal-Script mitbekommen habe ist, dass man damit offenbar auf alle im Programm verwendeten Komponenten zugreifen kann. Deshalb hatte ich mir in Bezug auf Pascal-Script folgendes gedacht bzw. gewünscht: - Formular wird wie o.g. definiert - für eine Komponente des Formulars definiere ich z.B. ein "OnClick"-Ergebnis mit der Funktion "psBerechneSumme" - diese Funktion wird mit Pascal-Script erstellt und kompiliert (wobei mir hier auch eines noch nicht ganz klar ist: Es wird davon geredet, das Script im Programmablauf zu kompilieren - allerdings habe ich auch gelesen, dass man die Scripte "vorkompilieren" und dann als PlugIns laden kann) - meine "Programmhülle" startet, lädt das PlugIn "psBerechneSumme" - Bei Klick auf den Button wird diese ausgeführt Geht das so, oder habe ich da in Bezug auf Pascal-Script etwas falsch verstanden? Gruß Igotcha |
Re: Pascal-Script
Hi,
für mein Projekt (siehe Sig) benutzte ich auch Pascal Script und bin sehr zu frieden damit. Einziger nachteil den du ja schon mitbekommen hast, ist die Schwache Dokumentation. Hilfe bekommst du aber in den Ihrer Newsgroup oder hier im Forum ;) Ich versuche mal ein paar von deinen Fragen aufzubereiten. Also du kannst Delphi-Objekte in Pascal-Script importieren und ganz normal benutzen. Man braucht nichts spezielles dafür zu machen. Um Komponenten zu importieren steht auch ein Tool zur Verfügung (Importer) der eine komplette Unit in Pascal Script importiert. Eigene Objekte können aber nicht in Pascal Script definiert werden (aber das wirst du auch nicht brauchen). Sehr wohl können aber neue Objekte mit Create erstellt werden Die Konfiguration des User-Interfaces sollte funktionieren. Macht ja zum Beispiel Inno Setup ( ![]() Auch kannst du eigene Events in Pascal-Script definieren,d ie dann den entsprechenden Events zugewiesen wird. Du kannst natürlich auch aus dem Delphi-Quellcode direkt Pascal Script Funktionen aufrufen und auf die Variablen zugreifen/setzen. Zum Verständnis: Es gibt einen Compiler und eine Runtime Engine. Mit dem Compiler wird der Pascal Script kompiliert und in Byte-Code umgewandelt. Die Runtime Engine verarbeitet nur diesen ByteCode. Compiler und Runtime arbeiten vollständig unabhängig voneinander. Du kannst also mit dem Compiler ein Skript vorkompilieren als Datei speichern und später über die Runtime Engine abarbeiten lassen. Es sollte also deine gewünschten Funktionen unterstützen (soweit ich das kenne) und hoffe das mein beitrag hilfreich ist :) |
Re: Pascal-Script
Das hört sich doch genau nach dem an, was ich haben möchte :-)
Dann werde ich mich am Wochenende mal dransetzen und die ersten Schritte wagen ;-) Gruß Igotcha |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz