Novinky pro vývojáře září 2011 - leden 2012

vydání: 20120118 - verze: 14

SDK - Instalace manifestu

Na úvodní obrazovku doplňku SDK jsme přidali tlačítko pro ruční instalaci manifestu. Po spuštění se otevře okno pro výběr souboru manifestu. Po jeho zadání se spustí instalace zvoleného manifestu. Instalace je shodná s instalací při spuštění Varia a nalezení změněného manifestu ve složce Setup\Upravy. Pokud je manifest již nainstalován, instalace se neprovede. Chcete-li v tomto případě instalaci vynutit, můžete si pomoci tím, že upravíte soubor manifestu.

Otevření detailu záznamu poklepáním ze zobrazení

Pro agendu můžete vytvořit vlastní zobrazení. Zobrazení může zobrazovat záznamy z jiné agendy. U standardních agend je zpravidla v tabulce agendy k dispozici prvek, který umožňuje otevření detailu záznamu (například modrá hodnota ve sloupci Kontakt v agendě Vydané doklady). U zakázkových nebo doplňkových agend prvek s poklepáním není k dispozici.

Pomocí nastavení polí v zobrazení lze nyní nastavit událost na poklepání.

Postup

  • Otevřete danou agendu a zvolte zobrazení, které má umožňovat otevření záznamu
  • V doplňku SDK na kartě Zobrazení vyberete stejné zobrazení
  • Otevřete detail zobrazení a přejdete na kartu Mapování polí
  • Ve sloupci Pole vyberte pole, které obsahuje identifikátor záznamu jiné agendy
  • Pro toto pole vyberte Prvek formuláře
  • Ve sloupci Při události DblClick zadejte funkci pro otevření záznamu
  • =OtevritZaznam("Název agendy")
  • Ve sloupci Formát zvolte hodnotu @[Blue]

 

Tím docílíte, že poklepáním na prvku se otevře záznam dané agendy.

Deklarace nové funkce OtevritZaznam:

Function OtevritZaznam(Optional ByVal Agenda As String, Optional ByVal Kniha As String, Optional ByVal Zaznam As String)

Nastavení alternativního výchozího skinu

Při spuštění Varia se načte skin úvodní obrazovky uložený v souboru ..\Moduly\Vario\Skins\Vario.skin.xml. Vývojáři nyní mohou vytvořit vlastní skin a nastavit jej jako výchozí.

Postup

  • Vytvořit vlastní skin. Uložit jej do souboru NejakySkin.skin.xml
  • Soubor skinu uložit do složky <Složka dat>\Setup\Upravy\Moduly\Vario\Skins\

 

Do stejné složky uložit manifest, který zapíše do tabulky Firmy.Moznosti_varia_profil následující záznam:

Klic Nazev_hodnoty Hodnota
VARIO\Vario Výchozí skin NejakySkin.skin.xml

Při spuštění Varia se jako výchozí skin použije NejakySkin.skin.xml místo výchozího Vario.skin.xml.

Poznámka: Pokud si uživatel skin upravil, změna výchozího skinu se u něj neprojeví. Při spuštění Varia se otevře jeho přizpůsobený skin.

Parametr UI ve funkcích pro práci se soubory

Ve třídě Pomucky (VarioLib.Dll) byly rozšířeny funkce pro práci se soubory a složkami o volitelný parametr UI.

Sub FileCopyExtended(ByVal Source As String, ByVal Destination As String, Optional ByVal UI As Boolean)
Sub KillExtended(ByVal PathName As String, Optional ByVal UI As Boolean)
Sub MkDirExtended(ByVal Slozka As String, Optional ByVal UI As Boolean)
Sub RmDirExtended(ByVal PathName As String, Optional ByVal UI As Boolean)

Pokud zadáte UI = True bude uživatel při selhání funkce dotázán, zda se má opakovat pokus. Opakování je vhodné nabídnout například v případě, že nelze odstranit složku, protože uživatel má otevřený soubor z dané složky. Soubor může zavřít a opakovat pokus o odstranění.

Nová událost PredOtevrenimTiskovehoFormulare

Touto změnou reagujeme na častý požadavek kontroly dat před tiskem. Před tiskem je vyvolána nová událost PredOtevrenimTiskovehoFormulare (třída VarioEvents ve Vario.mda). V této události je možné reagovat na tisk záznamů a eventuálně zcela zrušit tisk tiskového formuláře.

Public Event PredOtevrenimTiskovehoFormulare(TiskovyFormular As TiskovyFormular, PodminkaWhere As String, Cancel As Boolean)

Nová událost PredZmenouStavuPolozkyDokladu

Ve třídě VarioEvents (Vario.mda) je nová událost PredZmenouStavuPolozkyDokladu.

Public Event PredZmenouStavuPolozkyDokladu(FormularPolozkyDokladu As Object, PolozkyDokladuProdukty As Object, ByVal Akce As Byte, ByVal PozadovanyStav As Long, ByRef Cancel As Boolean)

Událost se vyvolává nad detailem dokladu (z místní nabídky Stav nebo tlačítka Stav vše).

Parametry

  • FormularPolozkyDokladu - reference na podformulář položek
  • PolozkyDokladuProdukty - reference na kolekci PDP, platí pouze pro částečné plnění
  • Akce - 1 bude se nastavovat stav všech položek, 2 nastavuje se stav aktuální položky, 3 nastavuje se částečné plnění.
  • PozadovanyStav - bitová maska obsahující stavy, které se budou nastavovat
  • Cancel - nastavení na True zruší příkaz nastavení stavu

Událost při vytvoření mzdové složky pro doplňky

Z dialogového okna Měsíční mzda se nově vyvolává obecná událost při výpočtu mzdové složky. Tato událost umožňuje doplňkům zachytit a upravit výpočet podle potřeby (například při řešení specifického požadavku na výpočet sazby výkonové odměny, práce přesčas apod.).

Po výpočtu se vyvolá ObecnaUdalost (VarioEvents).

Public Event ObecnaUdalost(Nazev As String, Data As Variant, Cancel As Boolean)

  • Nazev = "Mzda_mesicni::Vypocet"
  • Data = reference na formulář Měsíční mzda
  • Cancel se nepoužívá

Nová událost PoOtevreniDialogu

Do třídy VarioEvents byla přidána nová událost PoOtevreniDialogu.

Public Event PoOtevreniDialogu(formular As Object)

Událost je nyní vyvolávána formulářem Katalog a sklad.