Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 22.08.2004 - 12:01 Titel: skritp in offenem Zusatnd unendlich mal proben |
|
|
"HILFE!
wie ihr an den Variablen-Namen ersehen könnt bin ich am Normieren von Dialogen:
weiss jemand wie man verhindert dass vor dem 2.Skriptdurchlauf(der 2. Probelauf sozusagen)
kompiliert werden muss?(compiliert? jedenfalls mit der Enter-Taste)
OHNE dass das Skript als Application gespeichert werden muss oder in ZB aus FileMaker
heraus gestartet werden muss:
also im offenen Zustand, wennn die Skriptbefehle weiterhin einlesbar bleiben sollen.
(sorry: mit der Fragen-Formulierung hab ich´s wohl nie mehr so ganz drauf).
"
--DiaKurz2 ###################
set VaVonExt to "xxVaVonExt"
set TEXretDiaKurz2 to DiaKurz2(VaVonExt)
on DiaKurz2(VaVonExt)
-- DDDDDDDDDDDDDDDDDDDD display DiaKurz2
set TEXDKurz2 to "xxTEXDKurz2"
set Bu1DKurz2 to "xxBu1DKurz2"
set BuDefDKurz2 to Bu1DKurz2
set DefaultAnswerDiaKurz2 to "xxTEXBUTAntwDiaKurz2 " & ¬
VaVonExt --VaVonExt
activate
set DiaKurz2 to display dialog TEXDKurz2 ¬
default answer DefaultAnswerDiaKurz2 ¬
buttons {Bu1DKurz2} ¬
default button BuDefDKurz2
set TEXretDiaKurz2 to {text returned} of DiaKurz2
TEXretDiaKurz2
end DiaKurz2
--DiaKurz2 ###########DiaKurz2############# |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 22.08.2004 - 13:27 Titel: |
|
|
Hallo Willy,
in der derzeitigen Form des Skripts geht es nicht ohne erneut zu compilieren.
Zunächst ist DiaKurz2 der Name des Handlers. Innerhalb dieses Handlers veränderst du DiaKurz2:
set DiaKurz2 to display dialog TEXDKurz2 ¬
default answer DefaultAnswerDiaKurz2 ¬
buttons {Bu1DKurz2} ¬
default button BuDefDKurz2
Die Variable DiaKurz2 enthält nach dem ersten Skriptdurchlauf folgendes:
{text returned:"xxTEXBUTAntwDiaKurz2 xxVaVonExt", button returned:"xxBu1DKurz2"}
Das bringt natürlich dein gesamtes Skript etwas durcheinander. Was hast du denn eigentlich vor? Ich steig' da im Moment echt nicht durch.  _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 23.08.2004 - 22:12 Titel: compilieren automatisieren umgehen ENTER Taste |
|
|
"Hui Snow
war schwach von mir: Entschuldige, ich habe nur meine ganz
allgemein gefasste Dialog- Formulierung gewählt,
welche ich jeweils in neuen Skripts
ab-paste um sie dann mit Ersetzen-Funktion zu konkretisieren.
Hier also meine konkrete Fragestellung und damit auch ausfor-
mulierten Variablen:"
--folgendes Skript möchte ich zur Befragung
-- einer FM-Datenbank durchspielen:
"Ich brauche also eine Methode welche das AS zwischen 2
Druchgängen wieder compiliert ohne die ENTER zu gebrauchen
Aus FM gestartet kompiliert es nämlich automatisch"
set DATEI1 to "AppleSkriptsFM.prakt"
set contcellVaTEST to "Testfrage"
--diese Info stammt im komplexen Skript
--aus FM das in einer Variablen die letzte Frage gespeichert hat
set SUCHTEXT to DiaKurz2(contcellVaTEST) ¬
of me --compiliere!=ENTER
tell application "FileMaker Pro"
--show (every record of database DATEI1 ¬
--whose cell cellXXX contains SUCHTEXT)
--wäre ebenfalls weiter oben in gesamtSkript definiert
end tell
--Hier sollte wohl ein-- COMPILATOR--oder sowas stehen
--##################
on DiaKurz2(contcellVaTEST)
set TEX1 to "~ fehlerlose Buchstabenfolge eingeben"
set TEX2 to "~ zur Res.-Einschränkung: Pausenschlag!"
set TEX3 to "~ ~ und 2. fehlerlose Buchstabenfolge etc."
set TEX4 to "• Richtige Wort-Reihenfolge selten(!) relevant!
Sonderzeichen-Verhalten mir ZZ. noch unbekannt"
set TEXDKurz2 to TEX1 ¬
& return & TEX2 & return & TEX3 & return & TEX4
set Bu1DKurz2 to "OK"
set BuDefDKurz2 to Bu1DKurz2
set DefaultAnswerDiaKurz2 to contcellVaTEST
activate
set DiaKurz2 to display dialog TEXDKurz2 ¬
default answer DefaultAnswerDiaKurz2 ¬
buttons {Bu1DKurz2} ¬
default button BuDefDKurz2
set TEXretDiaKurz2 to {text returned} of DiaKurz2
TEXretDiaKurz2
--tell application "FileMaker Pro"
--activate
--set cell VaTEST to TEXretDiaKurz2
--end tell
end DiaKurz2
"Nun nochmals die Frage: gibt es diesen COMPILATOR überhaupt?
Vielen Dank für Infos
Gruss
Willy"  |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 24.08.2004 - 08:35 Titel: |
|
|
Ich sehe immer noch keinen Grund, warum Diakurz2 als Handlername und als Variable benutzt wird. Also wird's wohl ein verhängnisvolles Versehen gewesen sein.
Hier nochmal das Prinzip des Fehlers:
Diakurz2()
on Diakurz2()
set Diakurz2 to (display dialog "Bla bla")
end Diakurz2
Beim ersten Aufruf des Scripts gibt es einen Handleraufruf und einen dazu passenden Handler. Die Variable Diakurz2 innerhalb des Handlers existiert noch nicht, da ihr bisher noch kein Wert zugewiesen wurde.
Nach dem ersten Skriptdurchlauf hat diese Variable jedoch einen Wert erhalten und existiert somit. Deshalb musst du immer wieder Kompilieren, damit diese Variable initialisiert wird.
Also gib' entweder dieser Variable oder dem Handler einen anderen Namen und die Sache läuft. _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
spirigwi •----->


Anmeldedatum: 10.07.2003 Beiträge: 1517 Wohnort: Olten-CH
|
Verfasst am: 24.08.2004 - 22:26 Titel: richtig formuliert macht compilieren unnötig |
|
|
alles klar genau das wars
DiaKurz2()
on DiaKurz2()
set DiaKurzDANKESnowMind1000Mal ¬
to (display dialog "jetzt läufts auch 1000 mal
habe diesen Fehler jahrelang herumgeschleppt
weil ich Dialoge nur noch in einer Art Snippets
vorformuliert hatte.")
end DiaKurz2 |
|
Nach oben |
|
 |
|