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

Pfad zu FileMaker Datenbank finden...

 
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
Andreas B
•->
•->


Anmeldedatum: 15.03.2007
Beiträge: 6
Wohnort: Nordbayern

BeitragVerfasst am: 21.04.2007 - 13:41    Titel: Pfad zu FileMaker Datenbank finden... Antworten mit Zitat

Hallo,

wahrscheinlich schon tausendmal beantwortet, aber ich hab's einfach nicht gefunden:

Ich arbeite mit verschiedenen Versionen einer FileMaker 8.x Datenbank.
Was ich nun bräuchte wäre ein Script, dass mir den aktuellen Pfad zur gerade geöffneten Datenbank ausliest.

Habt Ihr da eine Idee?
Finde einfach nichts...

Gruß

Andreas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
spirigwi
•----->
•----->


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

BeitragVerfasst am: 19.05.2007 - 19:59    Titel: Antworten mit Zitat

Andreas B, mein Lieblingsbruder trägt denselben Namen...
hat Folgendes geschrieben:
Verfasst am: 21.04.2007 - 12:41    Titel: Pfad zu FileMaker Datenbank finden...
musst wohl mit mir Vorlieb nehmen Embarassed bevor deine Frage anschimmelt.

• Wie mir das Schweigen der AS-ASSE zeigt, gibt es offenbar keinen direkten Finder-pfad-Zugang aus FileMaker.
• Weil die Pfaderei sowieso Sache des Finders ist , behelfe ich mir jeweils direkt über den Finder:
• weil ich wiederum den Ordner kenne, in welchem die FM-Files liegen, kann ich die Suchabfrage reduzieren auf 1 einzigen Ordner der Startdisk.
• Dukannst natürlich auch die ganze Startdisk absuchen und nach FileMaker-Files suchen lassen. Den File-Namen liefert dir dabei FileMaker selbst.

Idee, wie du dir behelfen könntest hat Folgendes geschrieben:
property DemoFmFileName : "AllAbrechner.APA"
set PfFold1 to ((first item of (list disks)) as string) & ":" & " ALLE_öffner:"

tell application "FileMaker Pro" to set FmFileName1 to name of window 1

tell application "Finder" -- "System Events"
   
set APAList to name of every file of folder PfFold1 whose name ends with "APA" --<--= bei mir sind sie somit lokale FM-Files
   
APAList --:-->
   {"
AllAbrechner.APA", "AllAbrLICHT.APA", "AllDruckerwahl.APA", "AlleNrALLE.APA", "AllImpoMCFMRechn.APA", "..u.s.w."}
   
if APAList contains FmFileName1 then --alternativ DemoFmFileName
      --
error 0 & APAList--<--TESTER zeigt dir ganze Listen
      
set PfFMFILE to PfFold1 & FmFileName1 --alternativ DemoFmFileName
      
activate (open folder PfFold1)
      
activate (open file PfFMFILE)
      
activate (select file PfFMFILE) --mit Pfeiltaste 1x auf+1x ab: kommt man leicht zum file
   
end if
end tell



PS: war ich kurz genug?
_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
spirigwi
•----->
•----->


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

BeitragVerfasst am: 19.05.2007 - 20:29    Titel: Antworten mit Zitat

Falls du das Skript nicht ins Apple Script-Menu legst und/oder nicht mit Tastaturkürzel(Tastenkürzel, shorcut, .. wie sie alle heissen..) starten willst, wie das vernünftige ASser machen würden, kannst du es ja in ein "Pfad-Sucher-FileMaker-File hineinlegen und zünden. Dann aber kleine Aenderung:

tell application "FileMaker Pro" to set FmFileName1 to name of ¬
   
window 1 --<--statt
tell application "FileMaker Pro" to set FmFileName1 to name of ¬
   
window 2 --<--gesuchtes wird automatisch zu window 2

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


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

BeitragVerfasst am: 19.05.2007 - 23:42    Titel: Antworten mit Zitat

Ich hoffe, niemanden zu verärgern, wenn ich Snows Forum gleichzeitig als System übergreifendes „Serverlein“ für FileMaker-ASse-nutze (OS9.2.2->CLASSIC->OSX10.3.9- OSX10.4.9)

Für Andreas: Als Beispiel, wie man auch noch FileMaker-Files "pfaden" könnte(EDIT leicht luxuriöser):
hat Folgendes geschrieben:
--AppChooseAlleöffners
tell application "Finder"
   
set STARTNAME to (first item of (list disks)) as string
   
set FoldAlleOeffner to " ALLE_öffner:"
   
set FoldAlleOeffner to STARTNAME & ":" & FoldAlleOeffner
   --
-------------------
   
set ChooseListFolder to name of every file of folder FoldAlleOeffner ¬
      
whose creator type = "FMP5" --whose name ends with "APA"
   --
------------------------choosender dialog-----------------------------
   
set ButtList to {"ABBRECHEN", "copy Pfad/Zeige im Ordner/öffne"}
   
activate current application
   
display dialog "Den Pfad zum ausgewählten File kann man sich nun" & return & ¬
      "
• öffnen lassen->Vordergrundfenster" & return & ¬
      "
• im Ordner zeigen lassen" & return & ¬
      "
• herauskopieren lassen" buttons ¬
      {
item 1 of ButtList, item 2 of ButtList} ¬
         
default answer FoldAlleOeffner & ¬
      (
choose from list ChooseListFolder with prompt ¬
         "
Falls der Ordner FilemakerFiles mit creator type = \"FMP5\" enthält, kann man einen beliebigen anwählen") & return & ¬
      "
" default button 2 ¬
      
with icon 1
   
copy the result as list to {Antwort, ButtKlick}
   
if the ButtKlick is item 1 of ButtList then error "Nichts ausgewählt"
   --
------------------------choosender dialog-----------------------------
   
set PfFMFILE to text 1 thru ((count Antwort) - 2) in Antwort
   
open file PfFMFILE -- "mcchef: ALLE_öffner:All1Pat.APA"
   
delay 1
   
activate
   
set the clipboard to "" & PfFMFILE
   
activate (open folder FoldAlleOeffner)
   
activate (open file PfFMFILE)
   
activate (select file PfFMFILE)
end tell

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


Anmeldedatum: 15.03.2007
Beiträge: 6
Wohnort: Nordbayern

BeitragVerfasst am: 20.05.2007 - 09:27    Titel: Antworten mit Zitat

Hallo spirigwi,

vielen, vielen Dank für Deine ausführliche Antwort!

Nur: nach einigem Suchen mit offenen Augen fand ich folgenden FM Status-Befehl:
Hole ( Datei Pfad ), den ich per AS aus einem Formelfeld ans Script weitergeben kann. Jeweils korrekt.
Hmm... bin jetzt echt zerknirscht, dass Du dir so viel Arbeit gemacht hast.
Dennoch habe ich aus Deinen Beispielen wieder viel gelernt!!
Also, vergelt's Gott!

Andreas
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
spirigwi
•----->
•----->


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

BeitragVerfasst am: 20.05.2007 - 14:25    Titel: Antworten mit Zitat

Andreas B hat Folgendes geschrieben:
FM Status-Befehl:
Hole ( Datei Pfad ), den ich per AS aus einem Formelfeld ans Script weitergeben kann. Jeweils korrekt.
Genau das kann ich nicht ohne Biegen und brechen, ich zeig dir die Schwierigkeit damit auf FileMaker 5.5(w.s. hast du 8 oder so, dann ist es möglicherweise gelöst)

Andreas B hat Folgendes geschrieben:
Hmm... bin jetzt echt zerknirscht, dass Du dir so viel Arbeit gemacht hast.
Das finde ich aber wirklich lieb, nur eben: mach dir ja keine Sorgen. Ich habe noch nicht einen einzigen(meist übeflüssigen) Satz in Snows Forum schreiben können, ohne nicht auch selbst eine Mega-Menge gelernt zu haben.

Darf ich mal meine Lösung für den FM Status-Befehl zeigen?
(natürlich nur sinnvoll unter Verwendung obiger "Arbeit", dann wars nämlich gar keine. Falls das Ding dann zerrissen wird von Experten: tant mieux, sagt da der Franzose gelassen und freut sich wies Rumpelstilzchen..
_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
spirigwi
•----->
•----->


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

BeitragVerfasst am: 20.05.2007 - 15:39    Titel: Antworten mit Zitat

Rotz und Wasser heulen = schwitz aber: den Begriff "Arbeit" mit AS kenne ich nicht.

Dieses Skript setzt leider voraus, dass die gewünschte Database ein Formelfeld enthält, welche "Status(AktuellDateipfad)" enthält
hat Folgendes geschrieben:
property APA1 : "AllVermittler.APA"
property cellFoStatusPfad : "FoStatusPfad" --<--Status(AktuellDateipfad)
--
----------
tell application "FileMaker Pro"
tell database "AllVermittler.APA"
set contcellFoStatusPfad to cell cellFoStatusPfad
"
Datei://mcchef/ ALLE_öffner/AllVermittler.APA" --<- Status(AktuellDateipfad)
end tell
end tell
set MeinText to contcellFoStatusPfad --<-direkt aus Formel-Resultat
set MeinText to "Datei://mcchef/ ALLE_öffner/AllVermittler.APA" -- Beispiel

set LISTDelimiters to "//"
set EinLIST to ListER(LISTDelimiters, MeinText)
set EinTEXTList to item 2 of EinLIST
set TEXTDelimiters to "/"
set EinTEXT to TextER(TEXTDelimiters, EinTEXTList) --oooo
set STeETeLISTE to {{STe:"/", ETe:":"}} --
set ErsatzText to my SuErsMitTextPaarenER(EinTEXT, STeETeLISTE)
set PfFolder to RestofPath(ErsatzText)
set PfFMFILE to ErsatzText --<-das wäre also der hart erarbeitete Finder-Pfad
--

--
--------------------------Aktions-BEREICH----------------------------
try
--
tell application "FileMaker Pro" to activate (open file ErsatzText) --< das funktioniert nur ausserhalb fileMaker! deshalb hab ich ihn auskommentiert!
tell application "Finder"
delay 1
activate
set the clipboard to "" & PfFMFILE
activate (open file PfFMFILE) -- "mcchef: ALLE_öffner:All1Pat.APA"
activate (open folder PfFolder)
activate (select file PfFMFILE) --<--mit Pfeil-AUF/Pfeil-AB mit Nase drauf gestossen

end tell
end try
--
--------------------------INFO-BEREICH----------------------------
"
Datei://mcchef/ ALLE_öffner/AllVermittler.APA"
ErsatzText --"mcchef: ALLE_öffner:AllVermittler.APA"



--
--------------------------HANDLER-BEREICH----------------------------
on ListER(LISTDelimiters, MeinText) --oooo
set AppleScript's text item delimiters to LISTDelimiters
set EinLIST to every text item of MeinText
set AppleScript's text item delimiters to ""
EinLIST
end ListER

on TextER(TEXTDelimiters, MeinList) --oooo
set AppleScript's text item delimiters to TEXTDelimiters
set EinTEXT to MeinList as text
set AppleScript's text item delimiters to ""
EinTEXT
end TextER

--
******** Paare-vergleichender HANDLER ********
on SuErsMitTextPaarenER(ZuErsetzenText, STeETeLISTE)
repeat with i from 1 to (count of STeETeLISTE)
set AktErsatzPaar to item i of STeETeLISTE
set SUText to STe of AktErsatzPaar
set ERSText to ETe of AktErsatzPaar
set ZuErsetzenText to my textReplace(ZuErsetzenText, SUText, ERSText)
end repeat
end SuErsMitTextPaarenER

on textReplace(theText, srchStrng, replStrng) ----SNOWS Original-Su/Ers HANDLER:
tell (a reference to AppleScript's text item delimiters)
set {od, contents} to {contents, {srchStrng}}
try
set {textList, contents} to {(text items of theText), {replStrng}}
set {newText, contents} to {(textList as text), od}
return item 1 of result
on error errMsg number errNbr
set contents to od
error errMsg number errNbr
end try
end tell
end textReplace

on RestofPath(path) --A.Egginger
set pathstr to (path as string)
set theReverse to (reverse of (characters of pathstr)) as string
set OffSet1 to offset of ":" in theReverse
set PfFolder to (text 1 thru -OffSet1 of pathstr)
return PfFolder
end RestofPath


Das funktioniert zwar tadellos, aber ich sehe erst jetzt wieder:
Andreas B hat Folgendes geschrieben:
aktuellen Pfad zur gerade geöffneten Datenbank ausliest.

Wie machst du das mit Status(AktuellDateipfad) betr. dieser Frage?
• würde das für jede FleMaker Datenbank ein Formelfeld mit seinem eigenen Status(AktuellDateipfad) voraussetzen? der dann wie ZB oben beschrieben gelesen wird?
• Oder kannst du einen FM-ScriptMaker...-Befehl machen mit Status(AktuellDateipfad) über einen window-Namen des window 1?
• Oder kennst du einen AS-Befehl des FileMakers, der Status(AktuellDateipfad) beinhaltet?
• Kurz: Wie könnte man mit deinem Status(AktuellDateipfad) auf sowas tell application "FileMaker Pro" to set FmFileName1 to name of ¬
window 2

zugreifen?

EDIT ! EDIT! hallo winke Winke winke verliebt der Besuch von Grossmeister Folker ist es mir wert, den EDIT -Kredit, den mir Snow gewährt hat auf Minus zu stellen, Fratze schneiden damit der letzte Beitrag ja nicht wieder vom AS-KungFuSer stammt! vielen Dank Folker, da hat sich tatsächlich einiges im Guten getan in Sachen FileMaker
Vielleicht kannst du mir meinen FM5 Schinken da oben etwas zusammen-quetschen?
_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius


Zuletzt bearbeitet von spirigwi am 21.05.2007 - 13:17, 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: 21.05.2007 - 11:21    Titel: Antworten mit Zitat

Ja Willy, ungespeichertes Formelfeld (braucht nahezu keinen Speicher) in einer Tabelle mit 1DS für Voreinstellungen. Man könnte auch bei Dateistart in ein Globalfeld schreiben lassen ...

Seit FMP 7 hat sich der FileMaker grundlegend verändert! Du kannst in einer Datei viele Tabellen unterbringen und vor allem kannst Du jetzt mehrere Fenster innerhalb einer Datei öffnen. Von Benutzerkonten, Variablen, Scriptparametern u.a. will ich erst gar nicht anfangen ...
_________________
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