• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Macro für Logeinträge, sortiert nach Findern

aufWolke7

Geocacher
Hallo,
besteht bereits ein Macro, mit dem man sich alle Logs zu den eigenen Caches von einem bestimmten Cacher ansehen kann?
z.B. so:
Cacher XY hatt folgende deiner Caches gefunden:
01.01.08 GCLK54 "Name des caches"
Sein Log: bla,bla,bla

LG
Ute
 

Schnueffler

Geoguru
DL3BZZ schrieb:
Moin Ute,

schau u.a. mal HIER

Das bringt es ja nun nicht wirklich!!! Hier wurde eine konkrete Frage gestellt. Wenn Du keine konkrete Antwort darauf weisst, dann solltest Du einfach die Finger bei Dir behalten und nicht nur auf dem Makro-Index verweisen. :kopfwand:
 

Schnueffler

Geoguru
Schau Dir dieses macro mal an: http://gsak.net/board/index.php?showtopic=8586&view=findpost&p=76057

Vielleicht hilft Dir das weiter...
 

TIMIA

Geocacher
Hallo,

wenn ich es richtig verstanden habe, möchtest du eine Übersicht der Logs:

- Du benötigst eine Datenbank mit deinen eigenen Caches

- Du solltest diese Datenbank regelmässig mit dem Makro ADDlogs Link: http://gsak.net/board/index.php?showtopic=5009&st=20&#entry80681l aktuell halten

- Dann lass folgendes Makro über diese Datenbank in GSAK laufen und bekommst eine CSV Datei, die du dann in Excel oder ähnlicher Software einlesen kannst. Die Sortierung und Auswahl der LogTypes kannst Du Dir über die FilterFunktion deiner Excel Tabelle einstellen.

Hoffe es hilft, mir zumindestens hat es Spaß gemacht, mal selber ein kleines Makro in GSAK zu erstellen. :D

Code:
#*******************************************
# MacVersion = 1.0
# MacDescription =  MY_CACHE_LOGS
# MacAuthor = TIMIA
# MacFileName = MY_CACHE_LOGS.gsk
# **************************************
# Export My Cache LOGS in CSV Format for Excel
#****************************************

$Folder="D:\GEOCACHING\gsak\GPS_DATEN\CACHES\MY_CACHES" # hier den Wunschfolder eintragen
$FileName = "\MY_CACHE_LOGS.csv"  # hier den Wunschnamen der CSV Datei eintragen
$EraseFiles = $folder + $FileName 
FileErase File=$EraseFiles

# Tabellenspalten Überschrift
    $out = addstr(1,"clear")
    $out = addstr(1,"add","My Cache;LogType;FoundBy;Datefound;Log_TEXT"+ $_NewLine)
    $out = addstr(1,"get")

$error = AppendFile($Folder + $FileName, $out)

$Ftype = 1
$ThisRecord = 0
Goto Position=Top

Table active=logs Scope=All

While .not. $_eol
   
  $ThisRecord = $ThisRecord + 1
  $message = "MY_CACHE_LOGS is running: " + "$ThisRecord" + " of " + "$_Count"
  ShowStatus msg="$message"

    $d_lText = Replace(chr(34),"",$d_lText,true)
    $d_lText = Replace(";","",$d_lText,true)
   
    $out = addstr(1,"clear")
    $out = addstr(1,"add",$d_lParent+";"+$d_lType+";"+quote($d_lBy)+";"+DateFormat($d_lDate) +";"+quote($d_lText)+ $_NewLine)
    $out = addstr(1,"get")

    $error = AppendFile($Folder + $FileName, $out) 
  
 

  Goto Position=Next
EndWhile
Goto Position=Top
 
OP
aufWolke7

aufWolke7

Geocacher
Echt super klasse.
Das hilft mir ungemein weiter.
Wäre es unverschämt zu fragen, was ich ändern muss um nicht den GC Code sondern den Namen des Caches zu sehen ?
Gibt es irgendwo eine Anleitung wie man solche Macros selber schreiben kann?
LG
Ute
 

Schnueffler

Geoguru
Mal schnell quick'n'dirty das Makro von TIMIA abgeändert:

Code:
#*******************************************
# MacVersion = 1.1
# MacDescription = MY_CACHE_LOGS
# MacAuthor = Schnueffler
# MacFileName = MY_CACHE_LOGS.gsk
# **************************************
# Export My Cache LOGS in CSV Format for Excel
#****************************************

$Folder="D:\garmin" # hier den Wunschfolder eintragen
$FileName = "\MY_CACHE_LOGS.csv" # hier den Wunschnamen der CSV Datei eintragen
$EraseFiles = $folder + $FileName
If FileExists($EraseFiles) 
	FileErase File=$EraseFiles
endif

# Tabellenspalten Überschrift
$out = addstr(1,"clear")
$out = addstr(1,"add","My Cache;LogType;FoundBy;Datefound;Log_TEXT"+ $_NewLine)
$out = addstr(1,"get")

$error = AppendFile($Folder + $FileName, $out)

$Ftype = 1
$ThisRecord = 0
Goto Position=Top



While .not. $_eol
debug status=on
Table active=Caches

$ThisRecord = $ThisRecord + 1
$message = "MY_CACHE_LOGS is running: " + "$ThisRecord" + " of " + "$_Count"
ShowStatus msg="$message"

Table active=logs Scope=Parent

$d_lText = Replace(chr(34),"",$d_lText,true)
$d_lText = Replace(";","",$d_lText,true)

$out = addstr(1,"clear")
$out = addstr(1,"add",$d_Name+";"+$d_lType+";"+quote($d_lBy)+";"+DateFormat($d_lDate) +";"+quote($d_lText)+ $_NewLine)
$out = addstr(1,"get")

$error = AppendFile($Folder + $FileName, $out)

Table active=Caches

Goto Position=Next
EndWhile
Goto Position=Top

Jetzt sollte eigentlich der Name angezeigt werden. Habe ich aber nicht ausführlich getestet. Schau selber mal drüber und sage mir, ob alles funktioniert, wie Du es haben möchtest.
 
OP
aufWolke7

aufWolke7

Geocacher
Danke an Schnüffler für das Macro
Leider kommt es über den ersten Cache nicht hinaus und bleibt stehen.
Vielleicht mache ich etwas falsch?
Die datei erstellt es, aber ohne Inhalt.
LG
Ute
 

TIMIA

Geocacher
Dann versuche es mal hiermit :D

#*******************************************
# MacVersion = 1.2
# MacDescription = MY_CACHE_LOGS
# MacAuthor = TIMIA + Schnueffler
# MacFileName = MY_CACHE_LOGS.gsk
# **************************************
# Export My Cache LOGS in CSV Format for Excel
#****************************************

$Folder="D:\GEOCACHING\gsak\GPS_DATEN\CACHES\MY_CACHES" # hier den Wunschfolder eintragen
$FileName = "\MY_CACHE_LOGS.csv" # hier den Wunschnamen der CSV Datei eintragen
$EraseFiles = $folder + $FileName
FileErase File=$EraseFiles

# Tabellenspalten Überschrift
$out = addstr(1,"clear")
$out = addstr(1,"add","My Cache;LogType;FoundBy;Datefound;Log_TEXT"+ $_NewLine)
$out = addstr(1,"get")

$error = AppendFile($Folder + $FileName, $out)


$ThisRecord = 0


Table active=Caches
Goto Position=Top

While .not. $_eol


Table active=logs Scope=parent
Goto Position=Top

While .not. $_eol


$ThisRecord = $ThisRecord + 1
$message = "MY_CACHE_LOGS is running: " + "$ThisRecord" + " of " + "$_Count"
ShowStatus msg="$message"

$d_lText = Replace(chr(34),"",$d_lText,true)
$d_lText = Replace(";","",$d_lText,true)

$out = addstr(1,"clear")
$out = addstr(1,"add",$d_lParent+";"+$d_name+";"+$d_lType+";"+quote($d_lBy)+";"+DateFormat($d_lDate) +";"+quote($d_lText)+ $_NewLine)
$out = addstr(1,"get")

$error = AppendFile($Folder + $FileName, $out)



Goto Position=Next
EndWhile

Goto Position=Next
EndWhile
 

TIMIA

Geocacher
aufWolke7 schrieb:
Echt super klasse.
Das hilft mir ungemein weiter.
Wäre es unverschämt zu fragen, was ich ändern muss um nicht den GC Code sondern den Namen des Caches zu sehen ?
Gibt es irgendwo eine Anleitung wie man solche Macros selber schreiben kann?
LG
Ute

Also wenn Du ein bißchen Verständnis für Logik hast, hilft das Lesen von den anderen Macros und durchforsten der Hilfe von GSAK. Aber ich kann es echt schwer beurteilen, weil ich Programmieren (Basic/Cobol/RPG/PL-SQL) gelernt habe.
 
OP
aufWolke7

aufWolke7

Geocacher
Hallo,
nun läuft es.
Aber immer nur der erste Cache, der oben als erstes steht.
Ich hab mal versucht Table active=logs Scope=parent
gegen
Table active=logs Scope=All
auszutauschen.
dann durchläuft er zwar alle caches, gibt aber allen den gleichen Namen, nämlich den vom obersten cache.
Vielleicht kannst noch mal drüber schauen, wenn du Zeit hast.
Ich finde es super toll wie ihr euch meinem "Problemchen" hier annimmt und nach Lösungen sucht.
Vielen Dank dafür
LG
Ute
 

Schnueffler

Geoguru
Ich werde mir das Makro heute nachmittag/abend nochmal zu Hause anschauen, da ich aktuell kein GSAK zur Hand habe. Vielleicht ist aber bis dahin auch schon jemand schneller und hat es korrigiert.
 

TIMIA

Geocacher
Schnueffler schrieb:
Ich werde mir das Makro heute nachmittag/abend nochmal zu Hause anschauen, da ich aktuell kein GSAK zur Hand habe. Vielleicht ist aber bis dahin auch schon jemand schneller und hat es korrigiert.

Das kommt davon wenn man zu faul :eek:ps: ist runter zu scrollen um das Ergebnis zu korrigieren:
Code:
#*******************************************
# MacVersion = 1.3
# MacDescription =  MY_CACHE_LOGS
# MacAuthor = TIMIA + Schnueffler
# MacFileName = MY_CACHE_LOGS.gsk
# **************************************
# Export My Cache LOGS in CSV Format for Excel
#****************************************

$Folder="D:\GEOCACHING\gsak\GPS_DATEN\CACHES\MY_CACHES" # hier den Wunschfolder eintragen
$FileName = "\MY_CACHE_LOGS.csv"  # hier den Wunschnamen der CSV Datei eintragen
$EraseFiles = $folder + $FileName 
FileErase File=$EraseFiles

# Tabellenspalten Überschrift
    $out = addstr(1,"clear")
    $out = addstr(1,"add","My Cache;Name;LogType;FoundBy;Datefound;Log_TEXT"+ $_NewLine)
    $out = addstr(1,"get")

$error = AppendFile($Folder + $FileName, $out)

 
$ThisRecord = 0


Table active=Caches
 Goto Position=Top

While .not. $_eol


Table active=logs Scope=parent
  

While .not. $_eol

   
  $ThisRecord = $ThisRecord + 1
  $message = "MY_CACHE_LOGS is running: " + "$ThisRecord" + " of " + "$_Count"
  ShowStatus msg="$message"

    $d_lText = Replace(chr(34),"",$d_lText,true)
    $d_lText = Replace(";","",$d_lText,true)
   
    $out = addstr(1,"clear")
    $out = addstr(1,"add",$d_lParent+";"+$d_name+";"+$d_lType+";"+quote($d_lBy)+";"+DateFormat($d_lDate) +";"+quote($d_lText)+ $_NewLine)
    $out = addstr(1,"get")

    $error = AppendFile($Folder + $FileName, $out) 
  
 

  Goto Position=Next
EndWhile

Table active=Caches

  Goto Position=Next
EndWhile

  Goto Position=Top
 
OP
aufWolke7

aufWolke7

Geocacher
Man, ihr seit aber von der schnellen Sorte,nun klappt alles, wunderbar.
Ich weiß zwar nicht, für wen nun diese Rüge gedacht war, mit dem runterscrollen,
aber egal, ihr habt es geschafft mich glücklich zu machen.
Vielen.vielen Dank
LG
Ute
 

TIMIA

Geocacher
Die Rüge galt mir selber, weil ich zu faul war in der erstellten Datei mal zu scrollen, ob auch alle Caches richtig angezeigt werden.
Viel Spaß und wenn wir noch etwas programmieren sollen, dann sag einfach Bescheid
 
Oben