1s 8.3 vyskakovací zpráva pro uživatele. Oznámení o stavu procesu

V programech na platformě 1C:Enterprise může být zpráva zobrazena uživateli různými způsoby.

1. Metoda ShowWarning.

ShowWarning(< ОписаниеОповещенияОЗавершении> , < ТекстПредупреждения> , < Таймаут> , < Заголовок> )

Při použití tohoto návrhu se uprostřed rozhraní programu objeví varovné okno.

Možnosti:

PopisKompletní upozornění(volitelný)
Typ: PopisUpozornění. Obsahuje popis procedury, která bude volána po zavření okna výstrahy s následujícími parametry: Další parametry - hodnota, která byla zadána při vytváření objektu Popis výstrahy. Pokud parametr není zadán, nebude po dokončení volána žádná procedura.

TextWarning(Požadované)
Typ: Řetězec; FormattedString. Varovný text.

Časový limit (volitelné)
Typ: Číslo. Časový interval v sekundách, během kterého bude systém čekat na odpověď uživatele. Po uplynutí intervalu se varovné okno zavře. Pokud parametr není uveden, je čekací doba neomezená. Pokud je parametr záporný, bude vyvolána výjimka. Výchozí hodnota: 0.

Název (volitelné)
Typ: Řetězec. Obsahuje název varovného okna. Popis: Zobrazí varovné okno, ale nečeká na jeho zavření.

Dostupnost: Tenký klient, webový klient, tlustý klient, mobilní aplikace (klient).

Poznámka: Pokud musí být jakýkoli kód proveden poté, co uživatel zavře varovné okno, musí být umístěn do samostatné procedury modulu a popsán v parametru.

2. Varování metody.

Uprostřed rozhraní programu se zobrazí varovné okno. Pokud však vlastnost konfigurace Způsob použitíModality je nastavena na Nepoužívat , pak metoda nefunguje.

Dostupnost: tenký klient, webový klient, mobilního klienta, tlustý klient, mobilní aplikace (klient).

3. Metoda ZobrazitUserAlert.

ZobrazitUserAlert(< Текст> , < ДействиеПриНажатии> , < Пояснение> , < Картинка> , < СтатусОповещенияПользователя> , < КлючУникальности> )

Při použití této metody se v pravém dolním rohu rozhraní zobrazí zpráva.

Dostupnost: Tenký klient, webový klient, tlustý klient.

4. Metoda zprávy.

Ohlásit(< ТекстСообщения> , < Статус> )

Dostupnost: Tenký klient, webový klient, mobilní klient, server, tlustý klient, externí připojení, mobilní aplikace (klient), mobilní aplikace (server).

5. Objekt Zpráva uživateli.

Navrženo pro ukládání parametrů zpráv, které je třeba zobrazit uživateli. Pokud zpráva ještě nebyla zobrazena uživateli (může se to stát při práci na straně serveru, v pozadí práce, externí připojení nebo webové služby), můžete získat nashromážděné zprávy pomocí této metody Přijímat zprávy pro uživatele.

Vlastnosti: ID cíle(TargetID); DataKey; Pole; DataPath(DataPath); Text.

Metody: Zpráva; SetData(SetData).

Zpráva se zobrazí ve spodní části rozhraní v řádku.

Zpráva = New MessageToUser(); Zpráva. Text = "Nedostatek nomenklatury"; Zpráva. Pole = "Nomenklatura. Množství"; Zpráva. SetData(DataObject) ; Zpráva. Ohlásit() ;

Vývoj je navržen tak, aby informoval uživatele, a to jak selektivně, tak všechny, můžete také jednoduše psát zprávy nebo vést korespondenci mezi uživateli.

Vývoj je registr informací a změna modulu spravované nebo běžné aplikace.
Chcete-li spustit výstrahu, musíte přidat záznam do registru informací, uživatelé budou dostávat upozornění během stanoveného období mezi začátkem a koncem času upozornění.

ŘÍZENÁ APLIKACE

PRAVIDELNÁ APLIKACE

Zobrazí se okno s upozorněním v uživatelském programu blokuje celé rozhraní a uživatelé pracující v tento moment programu upozornění neunikne a podle toho si ho přečte.

ŘÍZENÁ APLIKACE

PRAVIDELNÁ APLIKACE

Registrovat seznam

V seznamu oznámení můžete vidět, kdo oznámení obdržel a kdo si jej přečetl.

ŘÍZENÁ APLIKACE

PRAVIDELNÁ APLIKACE

Chcete-li implementovat vývoj ve vaší konfiguraci, musíte:

  1. Nastavte možnost úpravy konfigurace.
  2. Porovnejte s konfigurací dodanou v této publikaci. V závislosti na primárním režimu spouštění aplikace bude přidán registr informací „Upozornění uživatelů“ a položka v modulu běžné nebo spravované aplikace.

    Položka běžného nebo spravovaného aplikačního modulu se liší:

    ŘÍZENÁ APLIKACE

Procedure When the System Starts() //Úprava standardní konfigurace pro upozornění uživatelů programu (odeslání zprávy libovolnému uživateli) //Vhodné pro všechny konfigurace ConnectWaitingHandler("modNotificationProcessingHandler", 60); Konec procedury // Když se systém spustí () // Úprava standardní konfigurace pro upozornění uživatelů programu (odeslání zprávy libovolnému uživateli) // Vhodné pro všechny konfigurace // Volání obsluhy čekání pokračuje, dokud se formulář nezavře // nebo dokud se metoda formuláře nezavolá Procedure modNotificationProcessingHandler( ) Export Message to User = GetForm("Information Register.User Alerts.Form.ControlSubmissionForm").GetNotificationProcessingMessages(); If Not MessageToUser = Undefined Then Form = GetForm("InformationRegister.User Alerts.Form.AlertControl"); If Not Form.Open() Then FillPropertyValues(Form,MessageToUser,"ViewOnly"); Form.Open(); Else Form.Activate(); endIf; endIf; Konec procedury REGULAR APPLICATION Procedure When System Starts() //Úprava standardní konfigurace pro upozornění uživatelů programu (odeslání zprávy libovolnému uživateli) //Vhodné pro všechny konfigurace ConnectWaitingHandler("modNotificationProcessingHandler", 60); Konec procedury // Když se systém spustí () // Úprava standardní konfigurace pro upozornění uživatelů programu (odeslání zprávy libovolnému uživateli) // Vhodné pro všechny konfigurace // Volání obsluhy čekání pokračuje, dokud se formulář nezavře // nebo dokud se metoda formuláře nezavolá Procedure modNotificationProcessingHandler( ) Export Message to User = Information Registers.User Alerts.GetNotificationProcessingMessages(); If Not MessageToUser = Undefined Then Form = GetForm("InformationRegister.User Alerts.Form.AlertUsual"); If Not Form.Open() Then FillPropertyValues(Form,MessageToUser,"ViewOnly"); Form.OpenModal(); Else Form.Activate(); endIf; endIf; EndProcedure

Realizace vývoje je zdarma a dokončena do 10 minut.

Bezplatná technická podpora po dobu 30 dnů.
V

Vývoj je určen pro platformu 8.3, různé standardní i nestandardní konfigurace, v režimech tenkého, tlustého klienta a webového klienta.

Je možná nezávislá úprava, kód je otevřený pro úpravy.

Důvody ke koupi

Velmi pohodlná možnost upozornění a upozornění uživatelů 1C technické práce, úpravy konfigurací, aktualizace, schopnost korespondovat mezi uživateli 1C v rámci 1. programu.

Výhody

1) 100% doručení výstrah všem uživatelům, na rozdíl od analogů.
2) Možnost posílat obrázky.
3) Zobrazit aktivitu uživatele v seznamu zpráv (kdo byl doručen, kdo četl).
4) Možnost napsat odpověď osobě, která upozornění odeslala.
5) Neovlivňuje ostatní objekty při aktualizaci konfigurací s nainstalovanou možností úprav.

Záruka vrácení peněz

Infostart LLC vám garantuje 100% vrácení peněz, pokud program nebude odpovídat deklarované funkčnosti z popisu. Peníze mohou být vráceny v plné výši, pokud o to požádáte do 14 dnů od data přijetí peněz na náš účet.

Program se osvědčil natolik, že můžeme poskytnout takovou záruku s naprostou důvěrou. Chceme, aby všichni naši zákazníci byli s nákupem spokojeni.

Během lekce jsme: vytvořili podklad, vytvořili zpracování, vytvořili formulář.

Nyní vám řekneme 5 způsobů zpráv od 1C "Ahoj, světe!"

Ne každý zná alespoň dvě metody :)

Jak a kam napsat text programu?

Přejděte na záložku okna s formulářem „Modul“. Ujistíte se, že tam již nějaký text máte („Postup…“).

Pokud tam není žádný text, pak:

  • V tlustém klientovi jste nesprávně přidali formulář ke zpracování, opakujte od začátku
  • V tenký klient Zapomněli jste přidat tlačítko, zkuste to znovu od začátku.

Uvnitř textu je řádek:

// Vložte obsah handleru

Vaším úkolem je tento řádek vymazat a na jeho místo zadat text programu. Poté zpracování uložte a otevřete v podnikovém režimu.

Když kliknete na Provést, budou nyní provedeny vámi zadané akce.

Nyní přejděme k samotným metodám!

Zpráva v 1C, metoda 1 - nejjednodušší

Takže byste měli místo textu "// Vložit obsah obslužné rutiny." napsat text programu.

Zpráva("Ahoj světe!");

Vlastně to je vše :)

Zpráva v režimu Enterprise v tlustém klientovi bude ve spodní části okna 1C, v tenkém klientovi - vpravo v okně zpracování.

Jedná se o nejjednodušší metodu, velmi hojně využívanou programátory.

Zpráva v 1C, metoda 2 - také jednoduchá

Alert("Ahoj světe!");

Vlastně to je vše :)

Zpráva v režimu Enterprise v obou možnostech klienta se zobrazí ve vyskakovacím okně.

Zpráva v 1C, metoda 3 - objevila se pouze v 1C verze 8.2

ShowUserAlert("Ahoj světe!","Ahoj opravdu!");

Tato metoda se objevila pouze v 1C verzi 8.2. Toto je vyskakovací okno v pravém dolním rohu obrazovky, které časem zmizí.

Zpráva v 1C, metoda 4 - programátor

Throw Exception "Ahoj, světe!";

Při spouštění jakéhokoli programu může dojít k chybě. Někdy lze tuto chybu vypočítat předem (například musíte vypočítat a = b/c a v době provádění programu se zjistí, že c se rovná 0).

V tomto případě existuje způsob, jak chybu nahlásit pomocí této metody.

Zpráva v 1C, metoda 5 - technologicky vyspělá, pouze pro standardní konfiguraci

General Purpose.ReportError("Ahoj, světe!");

Programátor 1C musí znát nejen ty programovací metody, které jsou v platformě 1C, ale také ty, které jsou v typické konfigurace.

Začátečníci, když se snaží přidat jakoukoli standardní konfiguraci, začnou znovu objevovat kolo.

Zde je dokonalý příklad. Tato funkce je přítomna v mnoha standardních konfiguracích (pouze tlustý klient!). Zdálo by se, že výsledek se rovná působení metody 1.
Nicméně ne - v některých konfiguracích (například softstartér) jsou chybová hlášení duplikována v protokolu. Také kdy další nastavení zpráva vypadá úplně jinak.

Nyní se tedy můžete cítit jako skutečný programátor!

To je přesně to, co je programování 1C. Skutečné programování je samozřejmě mnohem složitější a vyžaduje mnoho znalostí, ale nyní máte obecnou představu.

Hodně štěstí!

P.S. V pdf verze Lekce obsahuje snímky obrazovky, které vám usnadní vytváření vlastních zkušeností.

P.P.S. Lekce obsahuje 5 videí s ukázkami tvorby základu pro programování, tvorby zpracování, programování v tlustém a tenkém klientovi.

Implementováno ve verzi 8.3.10.2168.

Vylepšili jsme mechanismus upozornění pro uživatele. Nyní je stejně pohodlné použití jak v tenkém, tak ve webovém klientovi. Změnili jsme se vzhled upozornění a přidal k nim řadu nových funkcí.

Zobrazit více upozornění

Ve staré implementaci se na obrazovce vždy zobrazovalo pouze jedno upozornění. Nové upozornění se překrývalo s předchozím. Pokud by se tedy zobrazilo několik výstrah za sebou, byla vysoká pravděpodobnost, že uživatel nestihne přečíst předchozí výstrahu, protože by byla pokryta následující.

Nyní lze ve většině případů zobrazit současně až tři výstrahy:

To platí pro tenkého klienta, tlustého klienta a webového klienta spuštěného v prohlížečích internet Explorer A Google Chrome . Prohlížeče Safari A Mozilla Firefox vám umožní zobrazit neomezený počet upozornění a prohlížeč Microsoft Edge zobrazuje jedno poslední upozornění, ale obsahuje Centrum akcí, do kterého se duplikují všechna upozornění.

Zobrazování upozornění, když je okno aplikace neaktivní

Dříve se ve webovém klientovi upozornění zobrazovala pouze v aktivním okně prohlížeče. Pokud uživatel přešel do jiného okna nebo jiné aplikace, upozornění se mu nezobrazilo. Nyní se při používání webového klienta zobrazují upozornění na obrazovce, i když je okno aplikace minimalizované nebo neaktivní.

Když je metoda volána poprvé ZobrazitUserAlert() ve webovém klientovi Google Chrome, Mozilla Firefox A Safari Prohlížeč požádá uživatele o povolení používat oznámení. Uživatel může povolit jejich výstup pro tato aplikace nebo zakázat.

Pokud uživatel zakáže zobrazování oznámení, bude použit nový typ oznámení, ale budou se vykreslovat v okně prohlížeče.

Centrum výstrah

Aby oznámení navždy nezmizela, zavedli jsme výstražné centrum. A pro samotná upozornění jsme implementovali novou vlastnost - Stav upozornění uživatele. Může mít dva významy: Informace A Důležité.

Upozornění se stavem Informace se zobrazí na obrazovce a po 10 sekundách zmizí (v prohlížeči Microsoft Edge– po 4 sekundách). Upozornění se stavem Důležité chovají se úplně stejně, ale jsou uloženy v centru výstrah.

Centrum výstrah je přístupné z panelu nástrojů. Skutečnost, že existují nová důležitá upozornění, je označena oranžovou tečkou vedle její ikony.

Centrum výstrah zobrazuje důležité výstrahy, na které uživatel dosud nereagoval uzavřením nebo provedením akce související s výstrahou. Upozornění jsou uvedena v pořadí, v jakém se zobrazují, s nejnovějšími nahoře. Tímto způsobem, i když uživatel opustí počítač, neunikne mu důležitá upozornění.

Upozornění lze ze seznamu odstranit pomocí tlačítka smazat. Pokud je s upozorněním spojena nějaká akce, po kliknutí na text upozornění také zmizí. tým Vymazat upozornění odstraní všechna upozornění ze seznamu. Pokud však byly s výstrahami spojeny akce, neprovedou se.

Po stisknutí proveďte akce

Ve staré implementaci bylo jedinou akcí, kterou jste mohli provést po kliknutí na upozornění, kliknout na navigační odkaz. Byl předán metodě jako druhý parametr.

<Текст>, <НавигационнаяСсылка>, …

Nyní jsme rozšířili možnosti upozornění a ve druhém parametru můžete předat nejen řetězec s navigačním odkazem, ale také popis upozornění.

ZobrazitUserAlert(<Текст>, <ДействиеПриНажатии>, …

Popis výstrahy uvádí postup, který by měl být proveden po kliknutí na výstrahu.

Vzhled

V tenkém klientovi ve volbě rozhraní Taxi styl oznámení se bude co nejvíce blížit stylu oznámení prohlížeče Google Chrome použitím Oznámení API.


Pokud je použita možnost rozhraní Verze 8.2, pak styl upozornění a chování zůstanou stejné.

Ve webovém klientovi je vzhled upozornění určen použitým prohlížečem. Celkově budou výstrahy vypadat stejně jako v tenkém klientovi, ale každý prohlížeč má své vlastní vlastnosti. Můžete například porovnat, jak se budou zobrazovat stejná upozornění internet Explorer A Mozilla Firefox.


Kromě toho existují další funkce. Například v prohlížeči internet Explorer Podporovány jsou pouze výstrahy zobrazené v okně aplikace. A v prohlížeči Safari parametr Obrázek není podporován a výstrahy se zobrazují v horní části obrazovky.

Článek navazuje na sérii článků „První kroky ve vývoji na 1C“.

V něm se podíváme na způsoby informování uživatele, které jsou přítomny v platformě 1C:Enterprise 8, a také zaměříme vaši pozornost na některé funkce fungování těchto mechanismů, tyto funkce souvisejí s režimem použití modality .

Použitelnost

Článek pojednává o funkčnosti:

  • Rozhraní ve verzi „Version 8.2“ pro konfiguraci vyvinutou na platformě 1C:Enterprise 8.2.19.130
  • Rozhraní taxi pro konfiguraci vyvinuté na platformě 1C:Enterprise 8.3.4.496 až 8.3.9+
  • Rozhraní taxi pro konfiguraci vyvinutou na platformě 1C:Enterprise 8.3.10-8.3.11

Jak zobrazit zprávu uživateli v 1C

Zobrazování zpráv v uživatelském režimu řeší řadu problémů:

  • odraz průběhu aktuálního procesu (zobrazení fáze provádění procesu; zobrazení vypočtených hodnot získaných během provozu algoritmu);
  • zobrazování chyb uživateli za účelem případné opravy;
  • vydávání doporučení;

Typy zpráv:

  • Terminátory, které zastaví provádění programu a nedovolí mu pokračovat, dokud si uživatel nepřečte tuto zprávu a neprovede určité akce. Uživateli se například na obrazovce zobrazí otázka, na kterou bude nutné odpovědět Ano nebo Ne. Dokud uživatel neodpoví, program se nespustí další akce;
  • úvodní zprávy, které se uživateli jednoduše zobrazí a umožní další práci (tj. používané v režimu upozornění).

Ukončovací zprávy by měly být chybové zprávy a úvodní zprávy: doporučení, zprávy o aktuální fázi procesu a zobrazení vypočítaných hodnot (debug print).

Úvodní zprávy mají uživateli poskytnout nějaké informace.

Je nutné, aby se s ním uživatel seznámil a případně provedl některé akce popsané v této zprávě.

Je velmi důležité, aby uživatel tyto zprávy skutečně četl, takže by měly obsahovat pouze důležité informace.

Testovací a ladicí zprávy by neměly být uživateli vydávány, protože dříve nebo později začne ignorovat absolutně všechny zprávy.

V pojetí spravovaného rozhraní se poněkud změnil přístup k vydávání zprávy. Nyní je svázán s formou, ve které vznikl. Už ji nelze zavřít, aby byl text zcela neviditelný.

Nelze odepnout okno zprávy z formuláře.

Syntaxe funkce:

Ohlásit (<Текст сообщения>, <Статус>)

Tito. prvním parametrem je samotný text.

Druhý parametr (stav zprávy) je volitelný. Můžete zadat hodnoty pro stav: Normální, Důležité, Velmi důležité atd.

Z daná hodnota závisí na tom, která ikona bude umístěna vedle zprávy. To však funguje pouze v normálním rozhraní.

V konceptu spravovaného rozhraní je ikona vždy ve tvaru vykřičník, nelze jej předefinovat.

Faktem je, že pokud je zpráva vygenerována v době zápisu prvku adresáře, může nastat následující situace.

Uživatel klikne na tlačítko Uložit a zavřít, v tomto případě se zpráva zobrazí v odpovídajícím okně (vpravo od formuláře).

Formulář se však okamžitě zavře a uživatel neuvidí, že se mu zobrazily nějaké informace.

Proto se v konceptu řízené aplikace doporučuje zobrazovat úvodní zprávy pomocí tzv. alertů. Příklad nesprávného použití funkce Ohlásit znázorněno na obrázku.

Nicméně funkce Ohlásit lze použít k zobrazení informací o určitých chybách, například v době zaúčtování dokladu.

V tomto případě může být systém informován, že formulář není třeba zavírat a ukázat uživateli, jaké chyby se vyskytují při zaúčtování dokladu.

Funkce Ohlásit plně podporováno v platformě 8.3. Dá se použít a bude fungovat (jak ve verzi souboru, tak ve verzi klient-server).

Ale je třeba také poznamenat, že funkce Ohlásit Existuje další vývoj - jedná se o třídu zpráv pro uživatele, která umožňuje kromě zobrazení zprávy ji kontextově svázat s libovolnými prvky formuláře.

Například chybová zpráva může být svázána s prvkem formuláře, což je pro uživatele velmi jasné. K tomuto problému se vrátíme o něco později. Funkce Ohlásit je tam zajímavá vlastnost.

Programový kód na platformě 8.3 lze tedy spustit jak na straně klienta, tak na straně serveru.

V tomto případě je za interakci s uživatelem zodpovědný kód klientského programu, tzn. Na straně klienta se otevírají formuláře a zobrazují se sestavy.

Různé dialogové dokumenty se také zobrazují pouze na klientovi. Na serveru je nelze spustit, protože server nemá možnost interakce s uživateli.

Ale funkce Ohlásit lze spustit jak na straně klienta, tak na straně serveru. V tomto případě použití metody Ohlásit na Serveru vůbec neznamená, že se zpráva zobrazí na Serveru, prostě je není kde zobrazit.

To znamená, že pokud touto metodou zobrazíme zprávu v proceduře serveru, nashromáždí se v nějaké vyrovnávací paměti a na obrazovce se zobrazí pouze tehdy, když procedura serveru skončí a vrátí se klientovi.

V tomto okamžiku si systém vyžádá data z vyrovnávací paměti a zobrazí je na obrazovce.

Stejná funkce platí pro třídu Zpráva uživateli. Obrázek ukazuje příklad použití metody Ohlásit na straně serveru.

V důsledku použití metody Ohlásit na straně serveru se zprávy zobrazovaly na obrazovce na straně klienta.

Je zapotřebí výstražný mechanismus, který uživatele informuje, že se „něco“ v ​​systému stalo a že „něco“ vyžaduje pozornost uživatele. Upozornění jsou generována dvěma scénáři:

  1. Samotnou platformou při interaktivním nahrávání nebo změně objektu
  2. Vývojář při volání metody v kódu .

Samotné upozornění je malé okno, které se zpravidla zobrazuje v pravém dolním rohu a informuje o provedené akci. Během několika sekund postupně mizí a mizí. Zároveň pokud na upozornění najedete kurzorem myši, nezmizí a můžete si ho pozorně přečíst.

Kromě toho lze k oznámením přistupovat v odpovídající oblasti informačního panelu (tlačítko „Historie“ v levé dolní části formuláře žádosti v možnosti rozhraní „Verze 8.2“).

Chcete-li vytvořit vlastní výstrahy, musíte použít metodu globálního kontextu ZobrazitUserAlert(). Jeho syntaxe před verzí 8.3.10 je uvedena níže:

Zobrazit upozornění uživatele (<Текст>, <НавигационнаяССылка>, <Пояснение>, <Картинка>)

První parametr obsahuje text, který se zobrazí v oznámení.

Poté můžete jako druhý parametr předat prvku určitý navigační odkaz informační základna(prvek, který odpovídá textu naší zprávy). Když uživatel klikne na upozornění, bude následovat odkaz.

Pomocí třetího parametru můžete předat vysvětlení zprávy, tzn. nějaký rozšířený popis.

Můžete také přiřadit obrázek, který zobrazuje stav oznámení.

Je třeba poznamenat, že všechny tyto parametry jsou volitelné. Níže je uveden příklad použití tato metoda(v konfigurátoru a v uživatelském režimu ve volbě rozhraní „Verze 8.2“).

Ve verzi platformy 8.3.10.216 pro rozhraní „Taxi“ byl výrazně vylepšen notifikační mechanismus s cílem zlepšit použitelnost tenkého i webového klienta. Z tohoto důvodu se také změnily parametry předávané metodě ZobrazitUserAlert(). Nyní syntaxe vypadá takto:

ZobrazitUserAlert(<Текст>, <ДействиеПриНажатии>, <Пояснение>, <Картинка>, <СтатусОповещенияПользователя>, <КлючУникальности>)

Je vidět, že druhý parametr, dříve tzv Navigační odkaz, dostal nové jméno ActionWhen Clicked. Je to dáno tím, že nově je možné odeslat nejen řetězec s navigačním odkazem, ale také popis upozornění. To je znázorněno na níže uvedeném snímku obrazovky:

Jak je vidět z příkladu, nyní máme možnost programově zpracovat kliknutí na okno s upozorněním, podle logiky, která je nezbytná.

Další parametr Stav upozornění uživatele se objevil poprvé. Označuje stav výstrahy (Informace nebo Důležité).

V případě volby Důležité platí, že pokud uživatel na zprávu nereagoval, lze ji po jejím skrytí z obrazovky přečíst prostřednictvím Oznamovacího centra (více o ní níže). V případě volby Informace se upozornění smaže, aniž by bylo uloženo v tomto centru. Přepišme kód z našeho příkladu, jak je uvedeno níže:

Po provedení příkazu získáme přibližně tento pohled na okno aplikace:

V nástrojové liště se objevilo tlačítko s ikonou zvonku, které vyvolává výše zmíněné Notifikační centrum. Shromažďuje nová důležitá upozornění, na která uživatel dosud nereagoval.

Pokud jsou v centru nějaká upozornění, objeví se vedle nich malá oranžová tečka, která upoutá pozornost uživatele. Uživatel může otevřít Centrum oznámení, přečíst si text a v případě potřeby provést nějaké akce.

Z Centra se upozornění vymaže kliknutím na tlačítko smazat, ale pokud je s upozorněním spojena nějaká akce, tak jakmile uživatel klikne na text zprávy, také zmizí.

A nakonec byl přidán poslední parametr Klíč jedinečnosti. Můžete jej použít k vyhledání upozornění zobrazeného na obrazovce a jeho změně. Pokud neexistuje žádné upozornění s tímto parametrem, zobrazí se nové upozornění.

Jak vidíte, možnosti, které poskytuje odpovídající metoda, se ještě rozšířily! To ale nejsou všechny změny v oznamovacím mechanismu.

Jak jste si již mohli všimnout, jejich vzhled se změnil. Upozornění nyní vypadají moderněji a ergonomičtěji, ale nelze je přesouvat po obrazovce ani měnit jejich velikost. Upozorňujeme, že v našem příkladu se text oznámení jednoduše nevešel celý do samotného okna a uživatel si jej může přečíst celý pouze otevřením Centra oznámení. Proto byste do textu upozornění neměli psát velké množství textu.

Mezi nové funkce patří také současné zobrazení až tří upozornění na obrazovce.

Tím naše seznámení se softwarovým generováním výstrah končí. Pamatujte však, že výstrahy generuje nejen vývojář programově, ale také samotná platforma v době interaktivního nahrávání nebo změny objektu. A tato skutečnost často způsobuje nedorozumění především mezi začínajícími uživateli: proč jsou potřebná tato servisní upozornění, která mimochodem nelze vypnout?

Představme si tuto jednoduchou situaci: uživatel si pro pohodlí nastavil filtr v nějakém seznamu. Řekněme, že to udělal ve formě seznamu v adresáři Nomenclature. Pak jsem se po nějaké době rozhodl představit nový prvek s názvem „Chair“, který neodpovídá dříve nainstalovanému filtru. Zadá to, zapíše a...? A on to na seznamu nevidí. Co udělá průměrný uživatel? Samozřejmě do něj vstoupí podruhé, ale už ho neuvidí. Poté může následovat třetí, čtvrtý, pátý čas. Když ho omrzí zadávat pořád dokola to samé, nakonec se vás zeptá: kam to všechno spěje?

To je přesně důvod, proč platforma zobrazuje tato servisní upozornění a informuje uživatele, že jejich akce byla dokončena. V našem příkladu se uživateli v době interaktivního nahrávání zobrazí následující upozornění:

Zprávy o ukončení

Ukončovací zprávy jsou takové zprávy, které neumožní práci, dokud uživatel neprovede určité akce, tzn. dokud zprávu nezpracuje.

O možnosti použití ukončovacích zpráv na platformě 8.3 budeme hovořit o něco později (v Nedávno Snaží se je nepoužívat, takže uvažovaný příklad je relevantnější pro platformu 8.2).

Existují dva způsoby vydávání zpráv o ukončení Varování A Otázka. Varování se liší od Otázka protože má jediné tlačítko OK.

Otázka může specifikovat různé sady možností odpovědi ( Spíš ne, AnoNeZrušit, OK, OK Cancel, RepeatCancel, ZrušitOpakovatPřeskočit), které se zadávají pomocí parametru.

Zobrazme nějaké varování pomocí řádku (například v modulu spravované aplikace):

Varování („Základna bude nyní otevřena“);

Chcete-li otevřít modul spravované aplikace, vyberte objekt ve stromu konfigurace Konfigurace, vyvolejte kontextovou nabídku a vyberte položku Otevřete modul spravované aplikace.

V tomto případě se po spuštění aplikace zobrazí okno, které je modální. Modální okno překrývá všechna okna, která v aplikaci existují. Dokud toto okno nezpracujeme, nejsou možné žádné další akce.

Funkce funguje podobným způsobem Otázka.

Syntax:
Otázka(<ТекстВопроса>,<Кнопки>,<Таймаут>,<КнопкаПоУмолчанию>,<Заголовок>,
<КнопкаТаймаута>);

Jsou vyžadovány pouze první dva parametry. U druhého parametru je datový typ složený ( Režim dialogu Otázka nebo ListValues). Třetí parametr ( <Таймаут> ) charakterizuje časový interval v sekundách, během kterého bude systém čekat na odezvu uživatele.

Po uplynutí intervalu se okno s otázkou zavře. Podobný parametr( <Таймаут> ) je také k dispozici pro funkci Varování.

Jako příklad použití funkce Otázka Můžete použít následující kód napsaný v modulu spravované aplikace:

Vezměte prosím na vědomí, že tyto metody ( Varování A Otázka) nejsou na Serveru dostupné. A to je logické, protože metody rozhraní nelze spustit na serveru, kde není žádný uživatel.

Vlastnosti použití modální okna na platformě 8.3

Na platformě 8.3 existují provozní režimy s modalitou a bez modality. Výchozí nastavení je Nepoužívat režim modality.

V tomto případě je použití ukončovacích zpráv nemožné. Pokud je nutné použít ukončovací zprávy (funkce Varování A Otázka) měli byste změnit hodnotu vlastnosti konfigurace na Použití.

Modální okno je zobrazeno úplně nahoře a bloky spolupracují s ostatními okny, dokud nejsou dokončeny akce s modálním oknem. Navíc se exekuce zastaví programový kód v místě, kde se toto okno nazývá. Spouštění kódu bude pokračovat až po zavření modálního okna.

Za prvé vznikají problémy s používáním modálních oken mobilní aplikace. Za druhé, v prohlížeči je modalita oken implementována pomocí samostatných vyskakovacích oken.

Vyskakovací okna jsou ve výchozím nastavení prohlížeče často zakázána. Uživatel musí být nucen nastavit oprávnění pro tato okna.

Prohlížeče pro tabletové počítače a u telefonů ve většině případů vyskakovací okna vůbec nepodporují.

Chcete-li nahradit funkce Otázka A Varování byly vyvinuty nové metody: ShowQuestion, ShowWarning.

Tyto metody umožňují volat okno, ale nezastavují provádění programového kódu. Technicky je toho dosaženo vytvořením pseudookna uvnitř nadřazeného okna. Pseudookno nepřekrývá nadřazené okno. Po otevření takového okna pokračuje kód v provádění.

Příjem a zpracování hodnot zadaných uživatelem se provádí v samostatné proceduře, která se volá při zavření dialogového okna.

Syntaxe funkce ShowWarning:

ShowWarning(<ОписаниеОповещенияОЗавершении>, <ТекстПредупреждения>, <Таймаут>, <Заголовок>)

Parametr <ОписаниеОповещенияОЗавершении> (volitelný)

Datový typ: PopisUpozornění.

Obsahuje popis procedury, která bude volána po zavření varovného okna.

Syntaxe funkce ShowQuestion:

ShowQuestion(<ОписаниеОповещенияОЗавершении>, <ТекстВопроса>, <Кнопки>, <Таймаут>, <КнопкаПоУмолчанию>, <Заголовок>, <КнопкаТаймаута>)

První tři parametry jsou povinné.

Níže je uveden příklad použití funkce.

Třída MessageToUser

Základní pohodlí třídy zpráv Zpráva uživateli je, že se jedná o kontextovou zprávu (na rozdíl od metod Varování A Otázka).

Zprávy mohou být svázány s konkrétním prvkem obrazovky. Tento objekt je také dostupný na Serveru.

Je třeba poznamenat, že za prvé, tento objekt je třeba vytvořit. Například: Zpráva = New MessageToUser;

Tím vytvoříme instanci tohoto objektu.

Za druhé, musíte zadat text zprávy v samostatné vlastnosti.

Za třetí, v majetku Pole můžete určit, který prvek formuláře tato zpráva musí být svázané.

Pozornost! Chcete-li se vázat na požadované pole formuláře, věnujte pozornost inicializaci vlastností PathToData A Datový klíč. Pro dokument, když umístíte kód do objektového modulu, můžete napsat:

Message.DataPath = “Objekt”;
Message.DataKey = ThisObject.Link;

Chcete-li otevřít modul dokumentu, přejděte v okně pro úpravy objektu (dokumentu) na kartu jiný zmáčknout tlačítko Objektový modul.

Pro experiment umístíme kód do objektového modulu dokumentu.

Níže je uveden výsledek získaný v uživatelském režimu pro platformu 8.3.

Je třeba poznamenat, že výstup zpráv pomocí nového systémového objektu Zpráva uživateli v obecném případě nekončí. Tito. systém uživateli umožní pokračovat v dalších akcích, aniž by reagoval na zobrazené zprávy.

Ale za prvé, tyto zprávy jsou docela nápadné. Za druhé, zprávy se uživateli obvykle zobrazují v době zaznamenávání prvků adresářů nebo zaúčtování dokladů, tj. při provádění některých kontrol. A pokud byly zjištěny chyby, uživateli se zobrazí stejné zprávy.

V souladu s tím je při zjištění chyb transakce zrušena, tzn. zápis prvku adresáře je zakázán nebo je zakázáno odeslání dokumentu.

Dochází tak k jakési emulaci ukončovací zprávy. Protože je akce zrušena, dokud uživatel nezareaguje na zadanou zprávu, nebude možné akci dokončit, například zaúčtováním dokladu.

Ale na druhou stranu je možné dokument zavřít, aniž byste jej provedli, aniž byste na zprávu jakkoli reagovali. Proto tyto zprávy pro uživatele nejsou ukončeny.

Oznámení o stavu procesu

Existuje speciální funkce, pomocí které můžete zobrazit přibližný průběh procesu.

Syntax: Stát(<ТекстСообщения>, <Прогресс>, <Пояснение>, <Картинка>)
Možnosti:<ТекстСообщения>A<Пояснение>– volitelný, typ – Čára.
Text se zobrazí na speciálním stavovém řádku.
<Прогресс>Parametr je také volitelný, ale vizuální.
Typ: Číslo. Hodnota indikátoru pokroku (od 1 do 100).
<Картинка>také volitelný parametr.
Při zpracování jakékoli události se periodická volání funkce jako:

V tomto případě se štítky mohou změnit a hodnoty parametru Progress se mohou změnit.

Funkci lze volat z jedné procedury (funkce) nebo z několika. Tímto způsobem můžete sledovat stav provádění procesu.

Pokud se chcete blíže podívat na mechanismus upozornění, zastavte se hned teď a přečtěte si náš nový článek Zobrazení průběhu dlouhotrvajících operací v 8.3.10. Vysvětluje, již ne na úrovni začátečníka, všechny jemnosti a úskalí fungování tohoto mechanismu.

Dokončujeme náš úvod do způsobů, jak informovat uživatele. Doufáme, že rozumíte tomu, v jakých situacích by se měla ta či ona metoda použít.

Ještě jednou bych vás rád upozornil na skutečnost, že pokud vaše konfigurace (verze 8.3.3+) zahrnuje práci s webovým klientem, pak:

  • na konfigurační úrovni musí být nastavení modality nastaveno na „Nepoužívat“
  • Kód musí používat metody asynchronního modelu interakce s uživatelem. Takové metody začínají slovy Ukázat nebo Začít.

Více o odmítnutí použití modálních oken na platformě 1C:Enterprise 8.3 si můžete přečíst v posledním článku série. A pokračujeme dál a konečně začínáme studovat dlouho očekávané rozhraní Taxi, které již bylo v našich materiálech zmíněno více než jednou.