GeoGet

Complete geocaching solutions

User Tools

Site Tools


user:skript:ggsexpr

GgsExpr

GgsExpr je plugin do GgStat.exe a umožňuje získávat z databáze různé hodnoty z tagů a zpracovávat výsledky SQL dotazů do databáze a vytvářet z nich výstup do statistik. Plugin je náhradou za starší GgsExprTag, ale protože výrazně posouvá jeho využití mimo TAGy, vynechal jsem tuto indikaci z jeho jména.

Autor

Pokud se Vám doplněk líbí, kliknutím na tlačítko Donate můžete přispět na jeho vývoj.

Nekamarádíte se s PayPalem? Napište mi email a domluvíme se na jiném způsobu, třeba převodu na účet.

Automatická instalace

Nainstalovat do GeoGetu
Instalaci doplňku spustíte kliknutím na tlačítko vlevo. Následně budete v prostředí GeoGetu provedeni instalačním procesem. Pro zajištění této funkce je třeba mít na počítači již nainstalovaný a spuštěný program GeoGet .
Kliknuli jste na tlačítko a nic se nestalo? Máte opravdu spuštěný GeoGet ? Je to potřeba! Nebo možná máte zastaralý webový prohlížeč. Nevadí, instalaci doplňku můžete jednoduše vyvolat i prostým zkopírováním (označit text → klik pravým tlačítkem → kopírovat) následujícího odkazu do schránky: https://www.geoget.cz/doku.php/user:skript:ggsexpr?download

Diskuze

Stejně jako u ostatních pluginů pro GgStat neexistuje ani pro tento samostatné vlákno a vše je zatím ve společném tématu.

Šablony, příklady

Šablonou budeme nazývat část Template souboru, která obsahuje volání pluginu a příkazy pro něj. Zkopírováním takové šablony do svého template pak může jíný uživatel dosáhnout snadno stejného výsledku.

:!: Šablona většinou obsahuje pouze výkonné příkazy. Pokud není uvedeno jinak, celý obsah šablony proto musí být umístěn v souboru Template až za příkazem START (nebo je za tímto příkazem příkaz pro vložení šablony ze samostatného souboru).
:!: Popis příkazů použitelných v šabloně a způsob jejího vytvoření je v HTML souboru, který je součástí instalace.

Využijme tady tento prostor pro výměnu šablon. Prosím každého, kdo vytvoří něco, co by se mohlo líbít a hodit ostatním, aby sem příslušnou šablonu doplnili nebo mi ji poslal, abych ji mohl doplnit já.

Od GgStatu verze 1.1.28 je začlenění šablony do Template souboru velmi jednoduché. Stačí šablonu zkopírovat někam na disk (nejlépe do datového adresář Geogetu, podadresář script\GgStat) a do Template souboru doplnit řádek

INCLUDE_TEMPLATE .\script\GgStat\jmeno_souboru_se_sablonou

Doplnění řádku do tabulky zajímavých čísel

Autor: Gord, Gord

Šablona sečte hodnoty v jednom TAGu u všech keší, vytvoří z nich řádek pro tabulku zajímavých čísel a tabulku pak vloží do statistiky.

Tabulka vybraných keší

Autor: Gord, Gord

Ukázková šablona vytvoří pomocí SQL dotazu ve statistice tabulku 10 nalezených keší, jejichž ID končí znakem '1'. Ne, že by tato funkce měla nějaké rozumné využití, ale demonstruje tvorbu tabulek pomocí pluginu. Jistě nebude problém si šablonu upravit tak, aby výsledkem byla tabulka, jakou si uživatel bude přát.

Tabulka atributů nalezených keší

Autor: Gord, Gord

Další šablona vytvoří pomocí SQL dotazu ve statistice tabulku atributů na nalezených keších.

:!: Pozor, pokud nebude ve statistice zobrazena ikona, pravděpodobně se jedná o chybně nastavený atribut. Najeďte myší nad nezobrazenou ikonu, zobrazí se pořadí ikony a jméno atributu. Pak vyhledejte keše s takto nastaveným atributem a opravte jej nebo smažte. Vyhledaní je nejlépe pomocí filtru, záložka Tagy, Tag attribute s příslušnou hodnotou.
:!: Aby Vaše PQ obsahovalo informace o atributech je nezbytně nutné nastavit formát GPX na verzi 1.0.1. To provedete na stránce http://www.geocaching.com/account/ManagePreferences.aspx úplně dole.

Přehled atributů na nalezených keších

Ikony všech nalezených keší

Autor: Gord, Gord

Šablona Template_IconList demonstruje náhradu pluginu GgsIconList použitím tohoto pluginu a zpracováním SQL dotazu. Oproti GgsIconList je zde ale možné výstup modifikovat (každý podle své potřeby), na příklad podbarvit keše, který mají nastaven nějaký TAG nebo třeba mají terén 5, doplnit k ikoně rámeček u keší s obtížností 5 a podobně.

Šablona Template_IconListColor vznikla úpravou předchozí. Šablona podbarvzuje barevně xFT (z Tagu FTF), keše s terénem 5 a roky nálezu. Kolem keší s obtížností 5 dělá rámeček. Pokud je otagováno skriptem SvetloTma, tak navíc zvýrazní nálezy za tmy tmavší barvou. Dále je upraven seznam ikon tak, aby klikání na ikony bylo funkční i když je statistika nahraná přímo na profilu v geocaching.com. Šablonu upravil pehan.

ukázka z šablony Template_IconList ukázka z šablony Template_IconListColor

Graf nálezů na vlastní keši

Autor: kiReGPS, Diskuze: geocaching.cz

Šablona vytváří do statistiky graf četnosti nálezů na vybrané vlastní keši po měsících od jejího založení. Ukazuje použití Google Image Chart API pro vytvoření vlastního grafu z dat získaných pomocí SQL dotazů z databáze GeoGetu. Google Chart API je využíváno GgStatem pro sloupcové a koláčové grafy. Šablona demonstruje celou řadu technik - přípravu hodnot datových řad do dočasné tabulky, nastavení měřítek a popisů os a sestavení výsledného grafu. Najdeme tu i přebírání definic barevného schématu a šířky statistiky z GgStatu do šablony GgsExpr. Kromě grafu vypisuje šablona i některé statistické informace o nálezech - celkové, maximální měsíční a maximální roční počty. Parametrem šablony je kód keše, nastavený v proměnné %MyCacheID%. Použití tedy bude pomocí následujících příkazů v Template souboru:

SETVAR MyCacheID GCxxxxx
INCLUDE_TEMPLATE .\script\GgStat\Template_MyOwnCacheGraph.cfg

Šablona automaticky nastavuje měřítko i krok popisů na svislé ose. Pokud by krok nevyhovoval, lze ho nastavit ručně parametrem AxFoundStep. Příkazy jsou pak následující:

SETVAR AxFoundStep 10
SETVAR MyCacheID GCxxxxx
INCLUDE_TEMPLATE .\script\GgStat\Template_MyOwnCacheGraph.cfg

Přímo v textu šablony lze ještě nastavit některé další parametry (výška grafu, barva DNF, krok popisu měsíců, průhlednost sloupců), většina nastavení je však přebíraná z GgStatu.

Ukázka vytvořeného grafu:

Graf nálezů na vlastní keši během jejího života

Čísla a graf FTF nálezů

Autor: kiReGPS, Diskuze: geocaching.cz

Šablona grafu vloží graf FTF lovů po letech s vyčíslením FTF indexu. Barevné definice se přebírají z hlavní šablony GgStatu. Další parametry jsou uvnitř šablony (rozměry grafu, počet zobrazených let, šířky sloupců a kroky na svislých osách). Graf do statistiky zařadíme klasicky:

INCLUDE_TEMPLATE .\script\GgStat\Template_MyFTFGraph.cfg

Krok značek a popisů na svislých osách lze zvnějšku šablony určit obsahem proměnných AxFoundStep, AxIndexStep:

SETVAR AxFoundStep 100
SETVAR AxIndexStep 1
INCLUDE_TEMPLATE .\script\GgStat\Template_MyFTFGraph.cfg

Ukázka vytvořeného grafu:

Graf FTF nálezů a indexů

Šablona výpočtu a Šablona tabulky čísel počítají a zobrazují čísla o FTF, STF a TTF lovech. Rozdělení na dvě části je z důvodu, že čísla lze používat i v textu. Já volám výpočet na začátku a tabulku vkládám až do sekce FTF.

Do hlavní šablony statistiky zařadíme obě části pomocí:

INCLUDE_TEMPLATE .\script\GgStat\Template_MyFTFNumbers.cfg
INCLUDE_TEMPLATE .\script\GgStat\Template_MyFTFNumbersTable.cfg

Šablona výpočtu nastavuje následující proměnné, které lze použít kamkoliv do textu:

  • %MyFTFCount% - celkový počet FTF nálezů
  • %MySTFCount% - celkový počet STF nálezů
  • %MyTTFCount% - celkový počet TTF nálezů
  • %FTFIndex% - celkový FTF index
  • %FTFInterval% - průměrný interval mezi FTF nálezy v kalendářních dnech
  • %FTFIntervalCachingDays% - průměrný interval mezi FTF nálezy v kešovacích dnech
  • %NextFTFMilestone% - příští stovkový FTF milník
  • %NextFTFMilestoneDate% - očekávané datum příštího stovkového FTF milníku
  • %NextFTFMilestoneWeekDay% - den v týdnu očekávaného data FTF milníku
  • %BestFTFNum1% - nejvyšší počet FTF za den
  • %BestFTFDay1% - datum, kdy byl dosažen
  • %BestFTFNum2% - druhý nejvyšší počet FTF za den
  • %BestFTFDay2% - datum, kdy byl dosažen
  • %BestFTFNum3% - třetí nejvyšší počet FTF za den
  • %BestFTFDay3% - datum, kdy byl dosažen
  • %BestFTFMonthNum% - nejvyšší počet FTF za měsíc
  • %BestFTFMonth% - měsíc, kdy byl dosažen
  • %BestFTFYearNum% - nejvyšší počet FTF za rok
  • %BestFTFYear% - rok, kdy byl dosažen

Příští milníky

Autor: kiReGPS

Šablona Template_NextMilestones vypočítá příští stovkový a tisicovkový milník a odhadne jejich termín včetně dne v týdnu. Zároveň se počítají i odhady odlovů do konce aktuálního roku. Šablona nastavuje dále uvedené proměnné, které pak použijeme kamkoliv do textu profilu:

  • %NextMilestone% - číslo příštího stovkového milníku
  • %NextBigMilestone% - číslo příštího tisícovkového milníku
  • %NextMilestonDays% - počet kalendářních dní do stovkového milníku
  • %NextBigMilestonDays% - počet kalendářních dní do tisícovkového milníku
  • %NextMilestonCachingDays% - počet kešovacích dní do stovkového milníku
  • %NextBigMilestonCachingDays% - počet kešovacích dní do tisícovkového milníku
  • %DaysToEndOfYear% - počet dní do konce roku
  • %CachesToEndOfYear% - odhad počtu odlovů do konce roku
  • %TotalCachesOnEndOfYear% - odhad celkového počtu odlovených keší na konci roku
  • %CurrDate% - aktuální datum ve formátu d.m.rrrr
  • %CurrDateTime% - aktuální datum a čas
  • %CurrDateWeekDay% - aktuální den v týdnu
  • %NextMilestoneDate% - datum příštího stovkového milníku
  • %NextMilestoneWeekDay% - den v týdnu příštího stovkového milníku
  • %NextBigMilestoneDate% - datum příštího tisícovkového milníku
  • %NextBigMilestoneWeekDay% - den v týdnu příštího tisícovkového milníku

Šablona sama nic nezobrazuje. Jen počítá a nastavuje proměnné. Kromě textů je možné hodnoty odhadů příštích milníků přidat i do tabulky SomeNumbers. Třeba takto:

LANG_NUMBERS_NextMilestoneLabel Příští milník:
LANG_NUMBERS_NextMilestoneText Příští kulaté pořadové číslo keše je <b>%NextMilestone%</b>. Dosáhneme ho někdy kolem %NextMilestoneWeekDay% <b>%NextMilestoneDate%</b>, tedy za <b>%NextMilestonDays%</b> kalendářních dní (<b>%NextMilestonCachingDays%</b> kešovacích dní).
DEFINENUMBERS NumbersMyNextMilestone NextMilestoneLabel NextMilestoneText
APPEND_NUMBERS NumbersMyNextMilestone

SomeNumbers Zajímavá čísla
:!: Upozorňuji, že dny v týdnu u milníků jsou v šabloně vyskloňované, jak jsem v textu potřeboval. Ale to si jistě poštelujete sami…

Bodování mdCachingPoints

Autor: kiReGPS, Diskuze: geocaching.cz

Šablona Template_mdCachingPoints vypočítá vážené body za ulovené keše podle www.macdefender.org. Pro každou nalezenou kešku se násobí obtížnost krát terén krát koeficient podle typu keše a vše se hezky sečte. Šablona nastavuje proměnnou, kterou pak použijeme kamkoliv do textu profilu nebo do SomeNumbers:

  • %mdCachingPoints% - počet bodů

Zobrazení seznamu D/T kombinací s první nalezenou keší dané kombinace

Autor: -PaD-

Šablona Template_DTC_Combinations zobrazuje seznam podobný seznamu generovanému službou My Geocaching Profile.

Ukázka části tabulky

Mapy městských částí Ostravy a Brna

Autor: kiReGPS Diskuze: geocaching.cz

Než mi MaFa na fóru vysvětlil, že GgStat už je dávno připraven na nově vznikající mapy regionů a městských částí, stačil jsem prozkoumat jednu slepou uličku vývoje. Berte prosím tuto šablonu jen jako ukázku, jak lze pracovat s generátorem map. A taky jako ukázku, že je lepší pořádně číst dokumentaci.
:!: Pro správnou funkci šablon je třeba aktualizovat GgsExpr na verzi 1.3.12

Šablony pro mapu Ostravy a Brna generují mapy městských částí pomocí generátoru na geocaching.cz. Šablony umístíme klasicky do adresáře GgStatu a do hlavní šablony statistik doplníme něco jako:

HEADER Mapa městských obvodů Ostravy
INCLUDE_TEMPLATE .\script\GgStat\Template_MyMapOfOstrava.cfg
HEADER Mapa městských částí Brna
INCLUDE_TEMPLATE .\script\GgStat\Template_MyMapOfBrno.cfg

Uvnitř template můžete parametry ovlivnit velikost mapy a popisky s počty a/nebo procenty.

Nejlepší dny

Autor: kiReGPS Diskuze: geocaching.cz

U příležitosti GPS Maze narychlo (a trochu jako labutí píseň) zveřejňuji šablonu pro generování tabulky nejlepších dní. Vypisuje do tabulky dny s nejvyšším počtem nálezů, s nejvyšším počtem odlovených typů keší a s největším počtem FTF. Jsou uvedeny i ikony ulovených keší s odkazy. Vložte na požadované místo pomocí:

HEADER Nejlepší dny
INCLUDE_TEMPLATE .\script\GgStat\Template_MyBestDays.cfg

Přehled dalších šablon

PageDateDescriptionTags
distance2013/01/06 21:54distance Plugin počítající vzdálenost mezi kešemi odlovenými v jednom dnu. Data jsou použita v šabloně pro GgsExpr, která doplní tabulku zajímavých čístel o 3 …, , , , ,
GgsExpr2013/09/09 00:24GgsExpr GgsExpr je plugin do GgStat.exe a umožňuje získávat z databáze různé hodnoty z tagů a zpracovávat výsledky SQL dotazů do databáze a vytvářet z nich výs…, , , ,

Instalace

Instalace vlastního pluginu je automatická, šablony je třeba stáhnout samostatně v *.zip souboru, rozbalit nejlépe do adresáře s GgStat a doplnit potřebné příkazy pro vyvolání šablony (viz příklad výše).

Stažení

:!: Stáhnout aktuální verzi: ggsexpr-1.3.12.gip

Zvýraznění syntaxe

  • Pro program PSPad je dostupné zvýraznění syntaxe pro GgStat a GgsExpr. Více zde.

Seznam dostupných verzí

FilenameFilesizeLast modified
ggsexpr-1.3.11.gip2.3 MiB2012/03/15 00:00
ggsexpr-1.3.12.gip2.3 MiB2013/02/01 00:00
template_attrlist.zip1.2 KiB2010/10/27 00:00
template_dtc_combinations.zip2.1 KiB2012/12/02 00:00
template_iconlist.zip1.7 KiB2011/04/10 00:00
template_iconlistcolor.zip2.7 KiB2011/06/10 00:00
template_mdcachingpoints.zip694.0 B2012/08/09 00:00
template_mybestdays.zip2.2 KiB2013/09/19 00:00
template_myftfgraph.zip2.1 KiB2012/02/10 00:00
template_myftfnumbers.zip1011.0 B2012/02/10 00:00
template_myftfnumberstable.zip1.0 KiB2012/02/10 00:00
template_mymapofostrava.zip1.6 KiB2013/02/01 00:00
template_mymapofostravaandbrno.zip3.3 KiB2013/02/01 00:00
template_myowncachegraph.zip3.3 KiB2012/02/09 00:00
template_nextmilestones.zip970.0 B2012/10/13 00:00
template_somenumbers.zip625.0 B2012/01/27 00:00
template_tablecache.zip999.0 B2010/08/11 00:00

Seznam změn

1.3.12 (1.2.2013)

  • oprava chybného zpracování SQL příkazů, pokud obsahují češtinu

1.3.11 (15.3.2012) (pocet stazeni 1309)

  • oprava chybného zpracování příkazů, pokud bylo v jedné šaploně více bloků SQLSTART
  • doplnění modulu pro výpočty s datem/časem

1.3.10 (31.1.2012) (počet stažení 392)

  • do dokumentace doplněn popis sdílení proměnných s Template GgStatu a jejich použití v šabloně GgsExpr

1.3.9 (6.6.2011) (počet stažení 1379)

  • další krok k úplnému zpracování českých znaků - tentokrát nicky
  • drobné úpravy ladicích výpisů (příkaz DEBUG)

1.3.8 (27.5.2011) (počet stažení 731)

  • cesta a jméno databáze je z GgStatu předavána v INCODING
  • doplněna promenná GSS_DB obsahuje vždy aktuální datábazi tak, jak byla zadaná příkazem DB
  • zpracování rozšířeného příkazu 'DB [kodovani] databaze'
  • automatické zjišťování kódové stránky systému, konzole z registru, aby byla existence souboru databáze kontrolovaná ve správném kódování

1.3.7 (19.4.2011) (počet stažení 610)

  • změna kontroly existence databázového souboru s českými znaky

:!: Zobrazit změny ve starších verzích

Skrýt změny ve starších verzích

1.3.6 (počet stažení 561)

  • doplněn příkaz SETVARDEFAULT pro nastavení proměnné, pokud dosud není definovaná

1.2.5 9 (počet stažení 779)

  • doplněn příkaz DB pro změnu pracovní databáze, šablony tak mohou pracovat s více databázemi

1.2.4

  • první verze podporující automatickou instalaci
  • v příkazu SQL_SQL lze používat lokální proměnné

1.2.3 (2010/08/31)

  • pro nahrazovani promennych se pracuje i s viceradkovymi stringy

1.2.2 (2010/08/11)

  • novy prikaz SQL_CMD_CONTINUE umoznuje rozdelit dlouhy prikaz na vice radku
  • novy parametr ERRORMISSINGVARIABLE umoznuje pouzit promennou GgStatu ve vystupu z pluginu

1.2.1 (2010/07/31)

  • prejmenovani na GgsExpr, protoze uz nepracuje jen s TAGy
  • zpracovani SQL prikazu
  • prikaz EVAL umoznuje i zpracovani podmineneho prikazu ve zjednodusene perlovske forme: return((x>y)? x:y)
  • prikaz OUTVALUETYPE NUM/ASCII (implicitni NUM)

1.1.3 (2010/06/22)

  • oprava zpracovani vnitrnich promennych s hodnotou 0
  • oprava zpracovani operatoru LIKE
  • oprava zpracovani kategorie tagu a hodnoty, pokud obsahuji mezeru
user/skript/ggsexpr.txt · Last modified: 2013/09/09 00:00 (external edit)