středa 22. prosince 2010

Verzování bez Team Serveru

Nedávno jsem chystal vývojové prostředí AX2009 využívající Team Foundation Server, ale použití Team Serveru (aka ID Server) by mi nic nepřineslo a jen by mi věci zkomplikovalo.

Jak tedy donutit AX2009, aby se spokojila se správou verzí bez Team Serveru?
Odpověď je jednoduchá:
SysVersionControlSystem.requireTeamServer() musí vracet false.
Sám jsem čekal něco komplikovanějšího… :-)

úterý 21. prosince 2010

AX2009 a TFS2010

Jak jistě víte, AX2009 může používat k ukládání zdrojových kódů Team Foundation Server. Co když ale máte TFS2010, který není podporovaný AX2009?
Nastěstí je řešení celkem jednoduché - budete potřebovat:
  1. Team Explorer 2008 - AX využívá jeho knihovny (a nejspíš ho budete používat i přímo).
    Ještě není vyhráno, protože Team Explorer 2008 nespolupracuje s TFS2010. Za druhé tedy potřebujete:
  2. VSTS 2008 SP1 Forward Compatibility Update for TFS2010 - díky němu se Team Explorer 2008 dokáže připojit k TFS2010.
    Jak napovídá i název, na Team Explorer musí být aplikován:
  3. Service Pack 1 (Visual Studio 2008).
    Zde se můžete dostat ještě do jednoho problému - pokud máte Visual Studio 2008 SP1 a doinstalujete Team Explorer, musíte přeinstalovat SP1. Teprv pak je možné aplikovat Forward Compatibility Update.

čtvrtek 9. prosince 2010

Verzování dokumentů v TortoiseSVN

Verzování zdrojových kódů se díky integraci do IDE (velmi) pomalu zabydluje i ve světě Dynamics AX, ale často se zapomíná na ostatní data. Přitom znát historii třeba funkčního designu, mít možnost porovnat změny mezi verzemi atd. je stejně tak potřebné jako v případě kódu.
Navíc jde i o zdrojový kód mimo AX, třeba SQL, XSLT, HTML a tak podobně.

Některé týmy používají nějakou podobu document managementu s verzováním, typicky v rámci SharePointu. Ale i toto řešení má své nedostatky, zejména komplikovanost práce s takovými soubory, a tak zůstává řada dokumentů mimo tyto systémy.

Kontextové menu TortoiseSVN
Dnes chci ukázat, že používat verzovací systém může být snadné a bezbolestné. A to tak, že můžete snadno verzovat úplně všechny soubory, u kterých to má nějaký smysl.
Nebudu tedy zabíhat do žádných detailů - pokud TortoiseSVN nebo podobný nástroj používáte, asi se toho mnoho nedozvíte.

Ikony souborů
Nejpřirozenější systém je takový, který vám umožní pracovat s verzovanými soubory z velké části tak, jak se soubory pracujete dnes, ale přidá další vrstvu pro práci s verzemi. Přesně to vám umožní TortoiseSVN, což jeden z mnoha klientů pro verzovací systém Subversion (existují také například Subversion pluginy pro Visual Studio, doma používám AnkhSVN).

Nejviditelnější věc na TortoiseSVN jsou dodatečné symboly na ikonách ve správci souborů (viz obrázek vpravo). Ty se samozřejmě nezobrazují všude, ale jen v adresářích, v kterých je verzování aktivní (hodně zjednodušeně řečeno).

Do takové složky je možné soubory přidávat, měnit, mazat atd. jako by zde žádný verzovací systém nebyl (řada lidí žije v představě, že používání verzování znamená provádět checkout před každou editací a proto se mu brání, tak to raději zdůrazňuji).

Ukládání do repozitáře
Jakmile jste se změnami spokojeni, uložíte (v jediném kroku) veškeré modifikované soubory do úložiště verzí (repozitáře) - a hotovo, soubory jsou uloženy a můžete dále pracovat s vědomím, že se k dané verzi kdykoli vrátíte, bude-li třeba.

Kontextové menu TortoiseSVN nabízí sice spoustu možností, ale zmiňme jen pár základních:
  • Update = načtení souborů z repozitáře
  • Commit = uložení do repozitáře
  • Show log = zobrazení hostorie
  • Rename = přejmenování souboru se zachováním historie
Historie verzí
Show log zobrazí okno se všemi verzemi zvoleného souboru nebo adresáře, obsah každé verze (přidané, smazané soubory atd.), komentáře k verzím a podobně. Můžete zde také vybrat verze k porovnání, přímo otevřít historickou verzi a tak dále. Při porovnání nejste omezeni na čistě textové porovnání, třeba Word a Excel jsou také podporované!

Instalace
Instalační soubor můžete stáhnout zde. Při výběru verze (32/64 bit) vezměte v potaz nejen verzi operačního systému, ale i správce souborů. Máte-li Windows 64bit a chcete používat TortoiseSVN jak ve Windows Exploreru (64bit), tak Total Commanderu (32bit), potřebujete nainstalovat obě varianty TortoiseSVN.

Po instalaci musíte vytvořit repozitář. Subversion opět nabízí spoustu možností, které budu okázale ingorovat. :-) Vytvořte adresář (ideálně na nějakém bezpečném serverovém disku, v horším případě lokálně), z kontextové nabídky na adresáři zvolte TortoiseSVN > Create repository here a potvrďte. Do tohoto adresáře v podstatě nemusíte vstupovat, takže volte spíš lokaci, kde vám nebude překážet.

Dále vyberte místo, kde budete chtít pracovat se svými verzovanými soubory. Zvolte SVN Checkout a zadejte cestu k repozitáři (jako file://ServerName/path/to/repos/ nebo file:///C:/repo). Těchto pracovních adresářů můžete mít kolik chcete a můžete si nějaký vytvořit kdykoli, kdy potřebujete svá data a máte dokážete číst z adresáře s repozitářem (serverový disk přístupný přes VPN je skvělá volba).

Nastavení

Nastavení můžete měnit v TortoiseSVN > Settings.

Z obsáhlého kontextového menu si můžete vybrat často používané položky a umístit je hned přímo do hlavní kontextové nabídky, tedy tam, kde je defaultně SVN Update atd. Mně například dost chyběl příkaz Add.
(General > Context menu)

V Icons Overlays můžete nastavit, na jakých druzích disků (síťové, přenostné atd.) se mají zobrazovat stavové ikonky TortoiseSVN. Chcete-li vidět ikony i v jiných aplikacích, než jen ve Widnows Exploreru (typicky v jiném souborovém manageru), odšktněte zde Show overlays and context menu only in explorer.
Pokud používáte konkrétně Total Commander, musíte mít v jeho konfiguraci zaškrtnuté Show overlay icons (Configuration > Options > Icons).

Užitečné je také nastavit, jaké soubory má Subversion ignorovat (v General > Global ignore pattern), například soubory začínající "~" (mj. pracovní soubory MS Office).

středa 8. prosince 2010

AX Business Intelligence Team blog

Dynamics AX Business Intelligence Team blog byl spuštěn před pár dny a obsahuje (v tuto chvíli) dvacet videí o používání SQL Server Reporting Services v Dynamics AX. Každé video má jen pár minut a na základní seznámení nejsou vůbec špatná.