<\/HEAD>
Toto je třetí příspěvek ze série o třech částech o vytváření geoprocesních modelů v ArcGIS.<\/EM><\/P><\/P>Pokud jste četli předchozí příspěvky v této sérii, máte základy modelování zvládnuté a víte, jak přidat parametry modelu pro podporu snadného opakovaného použití a testování scénářů. V tomto příspěvku se naučíte některé techniky, jak udělat více s menším úsilím. <\/P><\/P>List Variables<\/STRONG><\/P><\/P>V posledním příspěvku<\/A> jste se naučili, jak udělat z parametru nástroje proměnnou a proměnnou proměnným parametrem modelu. Ve výchozím nastavení proměnná ukládá jednu hodnotu. Nicméně je možné uložit do proměnné více hodnot. Když to uděláte, proměnná se nazývá list variable.<\/P><\/P>
Když je list variable připojena k geoprocesnímu nástroji, tento nástroj a všechny následné procesy (všechny procesy závislé na výstupu nástroje) se automaticky spustí jednou pro každou hodnotu v seznamu. To je správně: když definujete list variable, modelové nástroje automaticky vědí, že mají zpracovat každý prvek seznamu.<\/P>
<\/P>
Používání list variables je jako spouštění geoprocesních nástrojů v dávkovém režimu – s hlavní výhodou, že musíte zadat seznam hodnot pouze jednou, abyste dosáhli zpracování více nástrojů.<\/P>
<\/P>
Zvažte níže uvedený model, který automatizuje typický pracovní postup správy dat.<\/P>
<\/P>
<\/A><\/P>
Tento model vytvoří souborovou geodatabázi, převede shapefile na geodatabázovou feature class, odstraní duplicitní prvky, definuje souřadnicový systém pro feature class a vytvoří vrstvu s vybranými prvky. Všimněte si, že model má dokonce dva parametry. Je to kompletní pracovní postup, který skvěle funguje, když je potřeba zpracovat jeden shapefile.<\/P>
<\/P>
Selhává však, když je potřeba zpracovat více shapefilů. Model by musel být spuštěn ručně víckrát, aby zpracoval všechny shapefily. >Nebylo by lepší spustit model jednou a mít vše hotovo? <\/P>
<\/P>
Vytvoření list variable to umožní. Pro vytvoření list variable v tomto příkladu:<\/P>
<\/P>
<\/P>
- Klikněte pravým tlačítkem na vstupní proměnnou nástroje Feature Class to Feature Class <\/> a klikněte na Vlastnosti, poté klikněte na "Seznam hodnot." Klikněte na OK.<\/>Dvojklikem otevřete proměnnou a zadejte každou hodnotu.<\/><\/>
Více o list variables<\/><\/> Inline variable substitution
S list variables se nástroje spustí několikrát pro zpracování každého vstupu. Ve výchozím nastavení však budou názvy výstupů nástroje stejné – což znamená, že všechny výstupy kromě posledního prvku seznamu budou přepsány. Pro překonání tohoto použijte
inline variable substitution.
Existují dva typy proměnných, které lze nahradit v procesech: modelové proměnné a systémové proměnné. Pro použití modelové proměnné pro inline variable substitution stačí zadat název proměnné obklopený procenty.
Systémová proměnná %i% se často používá k přidání unikátního sekvenčního čísla na konec názvů výstupů. Číslování položek seznamu začíná od 0 (výstup prvního prvku bude mít připojeno 0).
V tomto příkladu byste otevřeli nástroj Feature Class to Feature Class a přidali malé písmeno i obklopené procenty na konec názvu výstupní feature class (v tomto případě ASAM).

Použití systémové proměnné zajistí, že model správně zpracuje a vytvoří tři potřebné výstupy. Nicméně názvy výstupů nejsou popisné. Můžete je později přejmenovat, ale proč neautomatizovat tuto práci hned teď?
Model-Only Tools
ModelBuilder obsahuje sadu nástrojů dostupných jen pro modely spuštěné uvnitř ModelBuilderu (tj. nebudou fungovat při spuštění modelu jako nástroje). Nástroj Parse Path tool vám umožňuje rozdělit vstupní cestu na její komponenty a poté tyto části odkazovat v následných procesech.
V tomto příkladu je Parse Path tool lepší alternativou k použití systémové proměnné pro procesy modelu. Umožňuje použít názvy vstupních shapefilů ve výstupech místo kryptických čísel.
- Poznámka: Pro procesy vytvářející mezilehlá data je použití systémové proměnné dobrým řešením, pokud musí mít výstupy unikátní názvy, ale není třeba se obávat možného zmatení těchto názvů.
K přidání Parse Path tool: 
- Klikněte na nabídku Insert > Model Only Tools > Parse Path.
- Z okna modelu otevřete Parse Path tool. Pro Input Data Element vyberte Input Shapefile.
- Pro Parse Type vyberte Name a klikněte OK.
- Připojte výstup Parse Path (Value) k nástroji Feature Class to Feature Class jako Output Feature Class.

Když najedete myší nad výstupní prvek Feature Class to Feature Class, uvidíte, že tři výstupy nyní mají názvy odpovídající vstupním shapefilům. To učiní výstupy modelu okamžitě pochopitelné pro lidi, kteří s daty pracují.
Preconditions
Zaznamenali jste, že prvek Input Shapefile nyní odkazuje na dva nástroje – Parse Path a Feature Class to Feature Class – a že Parse Path není součástí hlavního pracovního postupu modelu? Když model obsahuje samostatné ale související procesy, pořadí jejich provádění je nepředvídatelné. Pořadí zpracování můžete řídit nastavením precondition.
V příkladu existuje možnost, že proces Feature Class to Feature Class poběží dříve než proces Parse Path... což znamená, že výstupy modelu budou přepsány při zpracování každého prvku seznamu.

Pro zajištění toho, aby nástroj Parse Path vždy běžel před Feature Class to Feature Class, nastavte prvek Value jako precondition pro nástroj Feature Class to Feature Class.
Pro nastavení precondition:
- Klikněte pravým tlačítkem na nástroj Feature Class to Feature Class a klikněte na Vlastnosti.
- V dialogovém okně klikněte na kartu Preconditions a zaškrtněte Value. Klikněte OK.
Kterýkoli prvek modelu může být nastaven jako precondition pro modelový nástroj a nástroje mohou mít více než jednu precondition.
Go Ahead, Model It
Tímto vizuálním mapováním pracovní postupy, automatizace časově náročných úkolů a podpora rychlého testování scénářů "co kdyby", modely jsou cenným nástrojem, který pomáhá GIS profesionálům pracovat efektivněji a spolupracovat. Se solidním porozuměním základům modelování a několika pokročilými technikami v záloze se můžete sami chytit příležitostí vytvářet modely v ArcGIS. Protože kromě toho, že jsou geoprocesními tahouny, jsou modely... zábava.<\/P>
<\/P>
Související příspěvky:<\/STRONG><\/P>ModelBuilder 101<\/A><\/LI>ModelBuilder 220: Přidat flexibilitu<\/A><\/LI><\/UL>
Pro praktický nácvik s ModelBuilderem je doporučen tento
e-learningový kurz<\/A>.<\/P><\/BODY><\/HTML>