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

GSAK-GPX-Export -> GCStatistics Import

S-Man42

Geomaster
Hi,

ich würde gern meine Statistiken mit GCStatistics generieren lassen, da ich dort deutlich mehr Features zur Verfügung habe als bei FindStatGen3 - vor allem der mir wichtige D/T-Durchschnitt (oder hab ich die Einstellung beim GSAK Makro nur übersehen?) Allerdings habe ich eine leicht modifizierte DB, soll heißen, meine FoundDB sieht inzwischen etwas anders aus, als die von der PQ generierten. Das trifft vor allem diverse Owner, die ihre Caches jetzt zur Adoption bereitgestellt haben und Caches, bei denen sich nachdem ich sie loggte die Werte geändert haben. Also versuche ich diese DB zu exportieren und dann bei GCStatistics zu importieren. Beim normalen "MyFounds"-PQ gibts da überhaupt keine Probleme. Will ich aber die exportierte GPX-Datei laden, werden mir von GCStatistics deutlich mehr Caches angezeigt, als ich wirklich habe (aktuell 518 statt 461). Ich weiß nicht wo der Fehler liegt. Spaßeshalber hab ich mal GCStatistics und dessen ini-Datei gelöscht und alles neu erstellt. Da gibts den Fehler aber dennoch. Außerdem hab ich mal meine GSAK-DB gelöscht und die vorher generierte Datei importiert. Da wird dann alles normal angezeigt, also GSAK importiert 461 Logs.

Kann das sein, dass GSAK irgendwas falsch exportiert, mit dem gleichen Fehler aber auch importiert? Was mich halt verwundert, ist dass GCStatistics die originale Groundspeak-MyFounds-PQ richtig liest... Hatte jemand schonmal das Problem, gibts ne Lösung? Von mir aus steige ich auch gern auf FindStatGen um, wenn mir jemand sagt, wie ich den D/T-Durchschnitt generieren lassen kann *gg*

Gruß S-Man
 

Astartus

Geowizard
Die Programmierer von FindStatGen sträuben sich etwas gegen die Durchschnittswertung für Difficulty und Terrain. Da Problem ist, dass ein D5 nicht automatisch 5x schwieriger als ein D1 er ist.
Und 5 D1er sind nicht gleich schwer wie 1 D5er. Daher ist auch die Durchschnittsangabe etwas fehlinformativ, da sie keine wirkliche Aussage hat.

ich weiß dass Kappler mal am FindStatGen Makro herumgebastelt hat, und zwei zusätzliche Sätze mit der berechneten Durchschnittswertung hinzugefügt hat.

Hier ist seine veränderte Subroutine "DiffTerr"
Code:
BEGINSUB Name=DiffTerr
	# Initialise Variables
	$rating  = 1
	$dif     = ""
	$terr    = ""
	$maxdif  = 0
	$maxterr = 0
# Änderungen Kappler 06.09.2007 - Beginn
#
# Kappler 06.09.2007 - Beginn
	$sumterr = 0
	$sumdiff = 0
	$countterr = 0
	$countdiff = 0
# Kappler 06.09.2007 - Ende
#
	WHILE $rating <=5
		# Deal with use of "," as separator
		$text = replace(",",".",numtoStr($rating),true)
		SHOWSTATUS msg="$LangStatus17 $text" Width=350
		$_sql = "Select count(Code) from Allfinds WHERE Difficulty=$rating"
		$num = Val(Sqlite("sql",$_sql))
		IF $num>$maxdif
			$maxdif = $num
		ENDIF
		$dif = $dif + "$text,$num;"
#
# Kappler 06.09.2007 - Beginn
		$sumdiff = $sumdiff + $num * $rating
		$countdiff = $countdiff + $num
# Kappler 06.09.2007 - Ende
#
    $_sql = "Select count(Code) from Allfinds WHERE Terrain=$rating"
    $num = Val(Sqlite("sql",$_sql))
		IF $num>$maxterr
			$maxterr = $num
		ENDIF
		$terr = $terr + "$text,$num;"
#		
# Kappler 06.09.2007 - Beginn
		$sumterr = $sumterr + $num * $rating
		$countterr = $countterr + $num
# Kappler 06.09.2007 - Ende
#		
	$rating=$rating + 0.5
	ENDWHILE
	# Initialise Section variables
	$colspan = 2
	# Force Diff and Terr to be next to each other, they like it that way ;)
	$column = 1
	$text=$Lang26
	GOSUB Name=SectionHead
	$result=$dif
	$maxnum=$maxdif
	$note=""
	$maxwidth = 150
	$totalpercent = $FindsWithDuplicates
	IF $PieCharts
		GOSUB Name=Table2Pi
	ELSE
		GOSUB Name=Table2Col
	ENDIF
#	
# Kappler 06.09.2007 - Beginn
	$tmpN = $sumdiff/$countdiff
	$tmpS = Replace(".",",",Str($tmpN,4,2),true)
	$out = $out + "<br><b>Ø Aufgabenschwierigkeit:</b> $tmpS" + $CR
# Kappler 06.09.2007 - Ende
#	
	# Initialise Section variables
	$colspan = 2
	$text=$Lang27
	GOSUB Name=SectionHead
	$result=$terr
	$maxnum=$maxterr
	$note=""
	$maxwidth = 150
	$totalpercent = $FindsWithDuplicates
	IF $PieCharts
		GOSUB Name=Table2Pi
	ELSE
		GOSUB Name=Table2Col
	ENDIF
#
# Kappler 06.09.2007 - Beginn
	$tmpN = $sumterr/$countterr
	$tmpS = Replace(".",",",Str($tmpN,4,2),true)
	$out = $out + "<br><b>Ø Geländeschwierigkeit:</b> $tmpS" + $CR
# Kappler 06.09.2007 - Ende
#
	IF $ShowDiffTerrChart
		GOSUB  Name=DiffTerrChart
	ENDIF
ENDSUB #DiffTerr

Und im Abschnitt der Variablendeklarationen müsstest du noch das hinzufügen
Code:
Declare Var=$sumterr Type=Numeric
	Declare Var=$sumdiff Type=Numeric
	Declare Var=$countterr Type=Numeric
	Declare Var=$countdiff Type=Numeric
 
OP
S-Man42

S-Man42

Geomaster
Danke :), bin also auf FindStatGen umgestiegen. Aber dennoch wäre mal der Fehler interessant... *grübel*

EDIT: Scheint ein Fehler in GCStatistics zu sein, habe eben das gpx File in einem anderen Programm geladen. Da werden auch 461 Finds angegeben...
 
Oben