Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Eine variable (! ) PROPERTY : das unmögliche möglich machen

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> AppleScript-Forum
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
spirigwi
•----->
•----->


Anmeldedatum: 10.07.2003
Beiträge: 1517
Wohnort: Olten-CH

BeitragVerfasst am: 17.12.2004 - 01:45    Titel: Eine variable (! ) PROPERTY : das unmögliche möglich machen Antworten mit Zitat

Embarassed
da ich ständig alle AS für mein „Intranet“ scripten muss ..
....
....
(hier stand einmal viel Unsinn, sorry
_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius


Zuletzt bearbeitet von spirigwi am 23.12.2004 - 01:00, insgesamt 2-mal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
spirigwi
•----->
•----->


Anmeldedatum: 10.07.2003
Beiträge: 1517
Wohnort: Olten-CH

BeitragVerfasst am: 17.12.2004 - 02:33    Titel: nach meinen Möglichkeiten die kürzeste Fassung gehts kürzer? Antworten mit Zitat

"KURZFORM:
Bitte höflichst um folgenden Test:
Wenn der Tester zuerst ein screenshot?=Bildschirmfoto
(mit CODE_GROSS_4, nicht 3 da sonst verwirrt)
auf OSX Rolling Eyes machen könnte und einen Testlauf Rolling Eyes Rolling Eyes ?¿¿

funktionierts Question
oder nicht ? Crying or Very sad "
" CODE"

property STARTNAME : {}
-- ==================================================
my PropertysSetzer()
on PropertysSetzer()
set STARTNAME to (first item of (list disks)) as string
end PropertysSetzer
--SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
tell application "Finder"
set PFAD to STARTNAME & ":" & "Bild 1"
open file PFAD
end tell

_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius


Zuletzt bearbeitet von spirigwi am 23.12.2004 - 01:10, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Folker
•---->
•---->


Anmeldedatum: 11.12.2000
Beiträge: 649
Wohnort: Holsteinische Schweiz

BeitragVerfasst am: 20.12.2004 - 10:34    Titel: Antworten mit Zitat

Hallo Willy,

ja, kompilierbar ist das auch unter OS X. Allerdings gebe ich zu bedenken: Unter OS X spielt die oberste Ebene der HD für den Benutzer eine weitaus kleinere Rolle als unter OS 9 - nicht das diese Ebene nicht wichtig wäre, sie ist unter OS X zu wichtig! Der Benutzer unter OS X wirkt zumeist im Verzeichnis Users/MeinHeimOrdner - selbst der "Schreibtisch" ist innerhalb des Home-Verzeichnisses eingeordnet.

Die Frage, die sich mir stellt - wozu der Aufwand? Hilft nicht ein einfaches "path to startup disk" ? Es muss dann natürlich festgestellt werden, ob es sich um eine (beschreibbare!) HD handelt, oder ob der User via CD/DVD gestartet hat ...

Zum Property: Natürlich geht das so - nur bei jedem Scriptstart den Property neu zu belegen führt für meinen Geschmack einen Property ad absurdum - da ist vielleicht eine globale Variable geeigneter?
_________________
Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
spirigwi
•----->
•----->


Anmeldedatum: 10.07.2003
Beiträge: 1517
Wohnort: Olten-CH

BeitragVerfasst am: 20.12.2004 - 16:07    Titel: Programme sinnvoll auf Startdisk? Antworten mit Zitat

Very Happy Zunächst ganz herzlichen Dank für die sehr detaillierte Antwort :
Folker hat Folgendes geschrieben:
selbst der "Schreibtisch" ist innerhalb des Home-Verzeichnisses eingeordnet.

1. Kernfrage: Es geht hier um AS-Funktions files die auf Netzte verteilt sein müssen:
wie hält ihr es denn mit den Programmen die für Zentralfunktionen benutzt werden (ZB FM-client-Databasen oder client - Kalendern welche Hoste beschreiben beschreiben und deren Programmen)? sind die auch unter usern abgelegt?
Pro Gerät im Netz ist es doch sinnvoll alle Programme auf Startdisk im Ordner Programme zu legen, da ja nicht 2 Personen auf dem gleichen Gerät gleichzeitig arbeiten können, OSX hin oder her, seh ich das falsch?
und gleichzeitig wären dann auch noch OS9-Restprogramme dort(Startdisk= oberste Ebene ) unter Applications abgelegt und damit vom AS mit demselben Satz erkennbar wie für OSX-Programme nämlich:

...of folder [Programme]......da ich gesehen habe (stimmt das?) automatisch auf [Applications] übersetzt wird


2. Kernfrage
Man braucht oft lokale files im Netzt deren Inhalt vom user umgeschrieben werden aber keinen public wert haben, ZB eine Variable einer client-fileMaker database welche zur Erkennung der entspr. Hostdatensätze lediglich eine Variable ändern muss(ich führe dazu EIN-Datensatz-Dateien die ein Beziehungsfeld haben) ZB die Variable mit der Patientennummer.
Wo speichert ihr diese files? doch am besten in Ordner der höchsten Ebene, dann sind sie doch am einfachsten vom Administrator auszuwechseln sogar täglich wäre möglich um dem user neue Versionen gerade dieser files bereit zu halten und allen usern natürlich ein dieselben Versionen.

Folker hat Folgendes geschrieben:

-- wozu der Aufwand?

ein blöder Fehler ist mir unterlaufen-(zu viel gedacht):
es genügt natürlich ohne(!) Repetition (im StartNamer()):

-- ==========================
property STARTNAME : {}
----------------------------
--##############--zur besseren Durchschaubarkeit hier hin verlegt
on StartNamer()
set STARTNAME to (first item of (list disks)) as string
--dieser Pfadtteil kann natürlich auch User-Ordner beinhalten aber er muss "relativ"
--formuliert sein da ich als Netz Administratorja nur weiss in welchem Ordner
-- der Hierarchie der user pflichtmässig(!)seine Programme oder files ablegen musste
end StartNamer
-----------SCRIPT----------------
my MeinHandlerDerVonAussenGestartetWird() --nur zum testen nötig
on MeinHandlerDerVonAussenGestartetWird() --hier startet der externe Starter
my StartNamer() --der handler liegt über uns, rein didaktisch gemeint
STARTNAME
-- StartNamer() macht die Variable STARTNAME für Programme und alle FM client Databasen
-- und nicht zuletzt sämtliche AS-files(mit handlern inside) verwendbar
-- vor allem aber: für sämtliche handler die auf dieser Seite folgen gilt STARTNAME
-- ohne dass man STARTNAME in die handler Klammern schreiben muss ZB:
my FM()
end MeinHandlerDerVonAussenGestartetWird
--######################
on FM() --hier ZB wird die property sinnvoll angewendet da sie automatisch an handler übergeht
tell application "Finder"
set PFAD to STARTNAME & ":" & ¬
"Programme:FileMaker Pro 5.5:FileMaker Pro" --kein Problem gibt ja auch OSX Versionen
--ZB:if STARTNAME contains "Folker": FileMaker Pro 7?:FileMaker Pro
open file PFAD
end tell
end FM
Folker hat Folgendes geschrieben:

--"path to startup disk"



du meinst etwa so? Nachteil: man muss sich bei mir nur das Wort STARTNAME merken und
jdesmal neu definieren. geht das auch auf OS9?= absolut unabdingbar
"
tell application "Finder"
set PFAD to path to startup disk & ¬
"Programme:FileMaker Pro 5.5:FileMaker Pro" --geht schon nicht mehr, was ist falsch? motzen
open file PFAD
end tell
Folker hat Folgendes geschrieben:

-- globale Variable geeigneter?

was müsste man machen damit diese bei jedem handleraufruf neu definiert wird, also beim user herumläge?
könntest du mir das ausformulieren dann probier ichs mal auf diese Weise bevor ich in die Massenproduktion gehe.

Vielen Dank Folker im voraus, ich selbst kann das noch nicht

_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius


Zuletzt bearbeitet von spirigwi am 25.12.2004 - 20:26, insgesamt 3-mal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Folker
•---->
•---->


Anmeldedatum: 11.12.2000
Beiträge: 649
Wohnort: Holsteinische Schweiz

BeitragVerfasst am: 20.12.2004 - 17:02    Titel: Antworten mit Zitat

Hallo Willy,

sooo viele Fragen auf einmal Shocked

Jo, da ich ohne "Classic" installiert habe, mache ich mir wenig Gedanken zu OS 9 Proggis u.ä.. Unter OS X ist es tatsächlich so, dass es sehr sinnvoll ist Dateien, welche von Benutzern erstellt bzw. bearbeitet werden in das entspr. Benutzer-Verzeichnis zu sichern. Da mag es aber in spez. Situationen sicherlich sinnvoll sein, andere Ansätze zu finden.

Mehrere Benutzer können zwar i.d.R. nicht gleichzeitig am selben Rechner "arbeiten" (das ginge sogar via Terminal) aber durchaus angemeldet sein (da gibt es dann den sog. Fast User-Switch).

Für den FileMaker macht es i.d.R. eh Sinn einen Rechner dafür abzustellen. Dieser hostet die Dateien und alle User greifen über das Netz darauf zu.

Programme, klar in den Applications Ordner. Der heißt tatsächlich so, Programme ist nur die Sprachvariante - ob AS das selbsttätig umbenennt habe ich noch nie gefragt Embarassed - da ich mir alle Suffixe anzeigen lasse (Finder Einstellungen) sind meine Bezeichnungen eh' auf Englisch.

Programme haben i.d.R. ein anderes Handling unter OS X - diese sind ja sog. Packete, d.h. mit tell app "Finder" to open "Pfad:Programmname" wird das meist nicht funktionieren (was unter 9 ja vorzüglich klappt!) - tell app "Programmname" to launch/activate ist da der Freund.

on Handleraufruf
global theGvar

und in jedem Handler, wo diese globale Variable genutzt wird, muss die g. V. so "bekannt" gemacht werden.
_________________
Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
spirigwi
•----->
•----->


Anmeldedatum: 10.07.2003
Beiträge: 1517
Wohnort: Olten-CH

BeitragVerfasst am: 22.12.2004 - 23:31    Titel: Antworten mit Zitat

Folker hat Folgendes geschrieben:
sooo viele Fragen auf einmal

dann halt nur 3 Fragen zu :
Folker hat Folgendes geschrieben:
Für den FileMaker macht es i.d.R. eh Sinn einen Rechner dafür abzustellen. Dieser hostet die Dateien und alle User greifen über das Netz darauf zu. .

Frage 1 Question :
und wo legt der User sein Client-FileMaker Programm hin?
Etwa in den Ordner Programme der höchsten Ebene?
Frage 2 Question : (siehe Frage 1 Question )

Frage 3:Question Folker weisst du eigentlich dass ich dir um jeden kleinsten Tipp in dieser Sache noch so dankbar bin? hallo winke
_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Folker
•---->
•---->


Anmeldedatum: 11.12.2000
Beiträge: 649
Wohnort: Holsteinische Schweiz

BeitragVerfasst am: 23.12.2004 - 13:03    Titel: Antworten mit Zitat

Hallo Willy,

wenn alle Benutzer ein Programm nutzen sollen, ist es natürlich im Programme-Ordner des Systems, also auf der obersten Ebene, am besten aufgehoben! Aber das OS X bietet die Möglichkeit einen Ordner Programme auf im Home-Ordner des jew. Users anzulegen. Diese Programme sind nur für diesen Benutzer ausführbar. Dies ist aber nicht so wichtig, denn Programme im Programme-Ordner des Systems können in "Systemeinstellungen -> Benutzer" für Benutzer, welche nicht Admin sind, gesperrt werden. Der einzige Vorteil eines Programme-Ordners im Home-Verzeichnis ist, dass andere Benutzer nicht sehen können, welche Programme noch installiert sind.

Diese Vorgehensweise von Apples OS X spielt seine Stärken eher im Bereich des Library-Ordners aus. Das funktioniert ähnlich wie diese russischen Puppen, das System hat z.B. Fonts-, Scripts-, Scripting-Additions Ordner, aber auch der Benutzer kann sich diese einrichten. So nutzt jeder User seine eigenen Fonts, Scripts, Scripting-Additions usw.

So, zu Weihnachten noch ein Tipp für Dich Razz

Wenn Du einen Server für FMP im Netz hast und dieser die Dateien hostet gab (gibt?) es eine AppleScript-mäßige Lösung diese Dateien auf den Clients zu öffnen! Das habe ich damals mit FMP 3 und 4 getestet, ging aber auch mit FMP 5 und ich sehe keinen Grund, warum das heute nicht mehr gehen sollte! Vorraussetzung im Netzwerk: Feste ip-Adressen, da gibt es ja Nummernkreise, welche für interne (Intranet) Zwecke vorbehalten sind, z.B. 192.168.x.y

tell application "FileMaker Pro"
   activate
   -- FMP3 oder FMP5://Passwort, gefolgt von @ IP-Adresse/Dateiname
   getURL "FMP3://Passwort@192.168.200.1/Testdatei.fp3" -- 1 Datei
   -- mehrere Dateien
   getURL {"FMP3://Passwort1@192.168.200.1/Testdatei1.fp3", ¬
      "FMP3://Passwort2@192.168.200.1/Testdatei2.fp3"}
end tell


Im obigen Beispiel werden die Dateien auf dem Rechner mit der IP 192.168.200.1 gehostet (sind natürlich dort geöffnet - aber auf einem "Nur-FMP-Rechner" lässt sich das natürlich wunderbar automatisieren. Das Script kann dann von irgendeinem Rechner im Netz ausgeführt werden und öffnet die Datei(en) für den Clienten. NACHTEIL: Das Passwort steht natürlich im Klartext im Script - da muss jeder selbst entscheiden, wie hoch die Sicherheit sein muss...
_________________
Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
spirigwi
•----->
•----->


Anmeldedatum: 10.07.2003
Beiträge: 1517
Wohnort: Olten-CH

BeitragVerfasst am: 23.12.2004 - 16:30    Titel: Jetzt gabs für alle ein Weihnachtsgeschenk Folker, dank Antworten mit Zitat

Winke winke Juchuu
SNOW!!!!!!!sofort! Ein Smilie das sagt SCHMATZ!!!!
Das war vielleicht eine Antwort von diesem Folker!
Super, geht direkt unter den Weihnachtsbaum: diese Methode
hab ich seit Jahren gesucht, mich aber nie getraut=gewagt zu fragen danach.
Und da Folker sowieso meine Fragen rationiert hat: Oh no

nur noch 1 winzekleines Doppel Question -Frägelchen Question (ist erlaubt?)
Folker hat Folgendes geschrieben:
tell app "Programmname" to launch/activate ist da der Freund.

und weiter unten:
Folker hat Folgendes geschrieben:
tell application "FileMaker Pro"
activate
-- FMP3 oder FMP5://Passwort, gefolgt von @ IP-Adresse/Dateiname

Liegt denn sinnvollerweise nach dem gesagten dieses :
tell application "FileMaker Pro" -Programm(= "FileMaker Pro") also auf der höchsten Ebene des OSX client-Komputers im Ordner Programme
da es ja der user durch die AS-Lösung vor URL zuerst aufrufen muss mit Befehl: tell......?

Wenn Frage 1 = JA
die kleine Sub- Question Frage 2:

CODE:


set FM_PFAD to (first item of (list disks) as string) & ":" & ¬
"Programme:FileMaker Pro 5.5:FileMaker Pro"
tell application FM_PFAD to activate
--erzeugt auf OSX folgende Fehlermeldung:
"AppleScript Fehler "
"Die Datei "
"McStudents:Programme:FileMaker Pro 5.5:FileMaker Pro"
"wurde nicht gefunden"

--ABER:
tell application "Finder" to open file FM_PFAD
--öffnet auf OSX das FileMaker-Programm
--(mit all seinen dummen Anfangsfragen) motzen
--=unbrauchbar aber funktioniert, süss nicht wahr Weihnachts-Smiley

"1 EINZIGE FRAGE eigentlich, FOLKER:
warum ist das so auf OSX und auf OS9 laufen beide
Programmaufruf-Methoden? Question Question Question Question
"

_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
Folker
•---->
•---->


Anmeldedatum: 11.12.2000
Beiträge: 649
Wohnort: Holsteinische Schweiz

BeitragVerfasst am: 23.12.2004 - 19:39    Titel: Antworten mit Zitat

Hallo Willy,

ganz kurz bevor die allgemeine Weihnachtsruhe auch bei mir einkehrt. Ob im Programme-Ordner der obersten Ebene oder im Programme-Ordner eines Benutzers ist nahezu schon eine "Geschmacksfrage" - es sei denn, es sind viele Benutzer an 1 Rechner eingerichtet und alle sollen auf das Programm zugreifen können, dann gilt: Immer auf die oberste Ebene.

Mac OS X führt anscheinend sehr genau Buch darüber, was sich wo auf der HD befindet - sofern der Programmname richtig angegeben wurde, habe ich noch niemals die Abfrage "Wo befindet sich ..." unter OS X gesehen - und dann das Konzept der "russischen Puppen", wenn oben nix ist wird halt weiter nachgeschlagen (im Programme-Ordner des jew. Benutzer vorhanden?). Allerdings werde ich die Netzwerk-Geschichten auch erst jetzt richtig nachvollziehen können - habe gestern die ersten 2 Produktionrechner in unserer kleinen Agentur auf X umgestellt - das neue Jahr kann kommen.

Der Unterschied im OS X besteht darin, dass ein Programm keine Datei darstellt wie unter OS 9. Die X Programme sind sog. Packete, eigentlich nur ein Ordner der viele Ordner und Dateien enthält (Resources etc.) - für FMP 5.5 sieht das bei mir so aus: FileMaker Pro/contents/MacOS/FileMaker Pro

Der Finder "gaukelt" uns also nur ein in sich geschlossenes Programm vor, in Wirklichkeit ist in unserem Beispiel das Programm (mit dem icon) im Programme-Ordner nix weiter als ein Ordner, der wiederum usw.

Das der Finder da evtl. mittlerweile intelligent genug ist, diesen Umstand zu würdigen, mag sein. Ich habe aber immer möglichst den Finder "geschnitten" - als ich mit AS anfing, war der Finder noch gar nicht scriptbar - der konnte nix mit AS anfangen. Später gab es dann irgendwelche Finder-Libs, womit dann rudimentäre Scriptfähigkeit dem Finder verliehen wurde. Später habe ich dann mit dem scriptbaren Finder die ein oder andere Überraschung erleben müssen (simpelste Anfragen wurden mit einem "timeout" quittiert) und last but not least, als ich mit OS X (10.1.4) anfing, bestand das Finder AS-Verzeichnis aus lauter Einträgen, welche erst in Folgeversionen zum funktionieren gebracht wurden. Soweit meine Erfahrungen, die ich eigentlich in dem Satz "So wenig Programme wie möglich mittels AppleScript benutzen" zusammenfassen kann - ehe ich den Finder nach einem Ordnerinhalt frage nutze ich lieber 'list folder' - das mag aber jeder für sich selbst entscheiden.
_________________
Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> AppleScript-Forum Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter