1s cyklu přechod k další iteraci. Přerušení cyklu. kombinování podmínek. Klávesové zkratky: správa formulářů
12. prosince 2014 v 13:13Který cyklus je rychlejší? Testování 1C
- Vysoký výkon ,
- Abnormální programování,
- Programování
Již několik let programuji 1C a pak mě napadla myšlenka - "Měl bych absolvovat nějaký výcvikový kurz, co když jsou v mých znalostech nějaké mezery, o kterých jsem předtím ani netušil?" Sotva řečeno, než uděláno. Sedím, poslouchám kurz, dostávám se k cyklickým operátorům a pak druhá myšlenka (ano, často mě nenapadají) - „Který cyklus je rychlejší“? Měli bychom to zkontrolovat.
Tak jsem našel pěti způsoby, jak můžete uspořádat cyklus pomocí 1C.
První typ cyklu, říkejme mu podmíněně "ForPo" vypadá takto:
Pro n = 0 podle počtu iterací Cyklus SomeActions(); EndCycle;
Druhý typ "Pro každého":
Pro každý prvek kolekce z kolekce Cyklus SomeActions(); EndCycle;
Třetí "Sbohem":
sbohem<>Počet iterací Cyklus SomeActions(); n = n + 1; EndCycle;
Pak jsem si vzpomněl na své assemblerské mládí – cyklus "Li":
~Začátek cyklu: Pokud n<>Počet iterací Potom SomeActions(); n = n + 1; Přejít ~StartCycle; endIf;
A nakonec "rekurze"
Procedure RecursiveLoop(n, Počet iterací) SomeActions(); Pokud n<>NumberIterations Then RecursiveLoop(n+1, NumberIterations); endIf; Konec procedury
Přirozeně není úplně správné klasifikovat rekurzi jako smyčky, ale přesto s její pomocí můžete dosáhnout podobných výsledků. Dovolte mi ihned učinit výhradu, že rekurze nebyla zahrnuta do dalšího testování. Za prvé, všechny testy byly provedeny s 1 000 000 iteracemi a rekurze nastává již při 2 000. Za druhé, rychlost rekurze je desítkykrát nižší než rychlost jiných smyček.
Poslední ústup. Jednou z podmínek bylo provedení některých akcí ve smyčce. Za prvé, prázdná smyčka se používá velmi zřídka. Za druhé se u některé kolekce používá cyklus „ForEveryone“, což znamená, že s kolekcí musí pracovat další cykly, aby testování probíhalo za stejných podmínek.
No, pojďme. Tělo smyčky bylo čteno z předem vyplněného pole.
nebo při použití smyčky „ForEach“.
TestValueReceiver = Element;
Testování bylo provedeno na platformě 8.3.5.1231 pro tři typy rozhraní ( Pravidelná aplikace, spravovaná aplikace a taxi).
Čísla jsou čas v milisekundách získaný pomocí funkce CurrentUniversalDateInMilliseconds(), kterou jsem zavolal před smyčkou a po jejím dokončení. Čísla jsou zlomková, protože jsem použil aritmetický průměr pěti měření. Proč jsem nepoužil měření výkonu? Neměl jsem žádný cíl měřit rychlost každého řádku kódu, pouze rychlost cyklů se stejným výsledkem.
Zdálo by se, že je to vše, ale - test, test!
Výsledek pro platformu 8.2.19.106
Platforma 8.2 je v průměru o 25 % rychlejší než 8.3. Nečekal jsem takový rozdíl a rozhodl jsem se to otestovat na jiném stroji. Výsledky neuvedu, ale můžete si je vygenerovat sami pomocí této konfigurace. Jen řeknu, že 8,2 bylo o 20 procent rychlejší.
Proč? Nevím, rozebrání jádra nebylo součástí mých plánů, ale přesto jsem se podíval na měření výkonu. Ukázalo se, že samotné cyklické operace jsou v 8.3 poněkud rychlejší než v 8.2. Ale na lince
TestValueReceiver = TestArray.Get(n);
to znamená, že při čtení prvku kolekce do proměnné dochází k významnému zásahu do výkonu.
Nakonec:
K čemu to všechno je? Udělal jsem pro sebe několik závěrů:
1.
Pokud je možné použít specializovaný cyklus - „Pro každého“, je lepší jej použít. Mimochodem, jeho dokončení trvá déle než u jiných smyček, ale jeho rychlost přístupu ke sběrnému prvku je mnohem vyšší.
2.
Pokud znáte počet iterací předem, použijte „ForPo“. „Zatím“ bude fungovat pomaleji.
3.
Pokud použijete smyčku „If“, ostatní programátoři vám zjevně nebudou rozumět.
21
//Funkce generuje snadno čitelnou reprezentaci hodnot. // Příklady formátování čísel ValueFormat = Format(123456.789, " NRT=10; NRT=2"); //ValueFormat = "123,456,79"ValueFormat = Format(123456,789, "HH=0; NHV=2"); //Hodnota
16
Fulltextové vyhledávání – umožní vám najít textové informace, umístěný téměř kdekoli v použité konfiguraci. V tomto případě můžete potřebná data hledat buď v celé konfiguraci jako celku, nebo zúžením...
8
"Bod v čase" je virtuální pole, které není uloženo v databázi. Obsahuje objekt Point in Time (který obsahuje datum a ODKAZ NA DOKUMENT) V 7.7 existoval koncept Umístění dokumentu a v 8.x Bod v čase Chcete-li získat...
6
Pro 8.x FindByLinks (FindDataByRef) Syntaxe: FindByLinks (Seznam odkazů) Parametry: Seznam požadovaných odkazů Typ: Pole. Pole se seznamem odkazů na objekty, jejichž odkazy je třeba najít. ...
V tomto článku se budeme zabývat takovou konstrukcí programovacího jazyka 1C jako Cykly.
Existují tři způsoby, jak uspořádat smyčky.
- Smyčky pomocí logického výrazu (spouštěné do logický výraz skutečný)
- Procházení sbírek
Podívejme se na každou z těchto metod.
Smyčky pomocí proměnné čítače smyček
Syntax:
Pro< Переменная> = < НачальноеЗначение>Podle< КонечноеЗначение>CycleEndCycle;Při tomto způsobu organizace smyček je proměnné čítače přiřazena jistota počáteční hodnota a provádí se tak dlouho, dokud je hodnota proměnné čítače menší nebo rovna zadané konečné hodnotě.
S každou iterací se hodnota čítače zvýší o jednu. Zde je nejzákladnější příklad takové smyčky:
Pro čítač = 0 až 1000 cyklů EndCycle;Na rozdíl od mnoha jiných programovacích jazyků, 1C neposkytuje možnost specifikovat krok v cyklu. V případě potřeby to lze provést přidáním požadované hodnoty do čítače uvnitř smyčky
Pro čítač = 0 až 1000 cyklů Čítač = čítač + 10 ; EndCycle ;Smyčky pomocí booleovských výrazů
Syntax:
sbohem< ЛогическоеВыражение>CycleEndCycle;Odmítnout = False ; GeneratorRandom = NewRandomNumberGenerator(1) ; Do cyklu selhání NáhodnéČíslo = GeneratorRank. NáhodnéČíslo(0, 10); If RandomNumber > 5 Then Failure = True ; EndIf; EndCycle ;
To znamená, že smyčka bude probíhat, dokud nebude vygenerováno náhodné číslo větší než pět.
Procházení sbírek
V programovacím jazyce 1C existuje něco jako kolekce. Je to sada prvků obsažených v objektu.
Můžeme zahrnout takové objekty, jako je kolekce: pole, tabulka hodnot, výběr z výsledku dotazu, metadata atd. Tento koncept je docela konvenční, ale objevuje se na každém kroku v asistentu syntaxe. Velmi často se setkáváme s úlohou, když potřebujeme postupně iterovat všechny prvky kolekce, abychom s nimi provedli nějaké akce. Proto existuje syntaktická konstrukce:
Pro každého< ЭлементКоллекции>Z< Коллекция>CycleEndCycle;Tady <ЭлементКоллекции>
je proměnná, do které jsou postupně umístěny prvky z kolekce. A uvnitř smyčky se podle toho zpracuje.
Jako příklad vám uvedu smyčku procházení řádků tabulky hodnot. Ať se to říká TableProducts a vypadá takto:
Projdeme si tuto tabulku ve smyčce a pro každý řádek zobrazíme zprávu s názvem a cenou produktu:
Pro každý řádek tabulky z produktů tabulky Název cyklu = řádek tabulky. Název; Cena = TableRow. Cena; Zpráva = New MessageToUser; Zpráva. Text = "Název produktu:"Ve skutečnosti lze totéž provést pomocí první možnosti, tedy ve smyčce pomocí čítače:
Počet řádků = TableProducts. Množství() ; Pro čítač = 0 podle počtu řádků - 1 cyklus Řádek tabulky = TableProducts[ Counter] ; Název = Řádek tabulky. Název; Cena = TableRow. Cena; Zpráva = New MessageToUser; Zpráva. Text = "Název produktu:"+ Název + "; Cena: " + Cena; Zpráva. Ohlásit() ; EndCycle ;
Jak ale vidíme, použití procházení sběrných prvků je mnohem jednodušší a pohodlnější
Pomocní operátoři
Často nastává situace, kdy je v závislosti na něčem nutné přerušit provádění smyčky nebo přejít od další iterace.
Přerušení se provádí pomocí operátoru Přerušit. V tomto případě je provádění smyčky přerušeno a řízení je přeneseno na jazykovou konstrukci, která smyčku následuje. Pokud potřebujete přejít na další iteraci, musíte použít operátor Pokračovat. Poté se řízení přenese na začátek smyčky. Ukažme si to na malém příkladu:
Pro čítač = 0 po 100 cyklu Pokud čítač = 0, pak pokračujte; EndIf; If Counter = 4 Then Abort ; EndIf; Výsledek = 1 / čítač; Zpráva = New MessageToUser; Zpráva. Text = String(Vysledek) ; Zpráva. Ohlásit() ; EndCycle ;Přeskočíme nulu, protože Nelze dělit nulou. A smyčka se pro hodnoty proměnné provede celkem pětkrát Čelit od 0 do 4
Každé řešení 1C na platformě 1C:Enterprise 8 má širokou škálu možností. Existují však univerzální techniky, které lze použít v jakékoli konfiguraci. Tímto článkem otevíráme sérii publikací, ve kterých budou metodologové 1C hovořit o univerzálních možnostech platformy 1C:Enterprise 8. Začněme jednou z nejdůležitějších metod pro zvýšení efektivity práce - popisem „horkých“ kláves (akce z klávesnice se zpravidla provádějí rychleji než akce pomocí nabídky pomocí myši). Po zvládnutí klávesových zkratek si zjednodušíte provádění často opakovaných akcí.
stůl 1
Akce |
Klávesové zkratky |
Jak program funguje |
Vytvořit nový dokument |
||
Otevřete existující dokument |
||
Otevřete kalkulačku |
Otevře kalkulačku |
|
Zobrazit vlastnosti |
Alt+Enter |
|
Otevřete okno zprávy |
||
Zavřít okno zprávy |
Ctrl + Shift + Z |
|
Otevřete výsledkovou tabulku |
Otevře výsledkovou tabulku |
|
Otevřete nápovědu |
Otevře nápovědu |
|
Vyvolejte index nápovědy |
Shift + Alt + F1 |
Vyvolá rejstřík nápovědy |
Klávesové zkratky: globální akce
Globální akce jsou akce, které můžete provádět v jakémkoli stavu programu. Je jedno co tento moment otevřít v 1C:Enterprise. Hlavní věc je, že aplikace není zaneprázdněna prováděním žádné úlohy.
Globální akce jsou akce, které lze volat kdekoli v běžící platformě 1C:Enterprise 8. Bez ohledu na to, co se v něm přesně děje běžící konfigurace, význam globálních akcí se nemění (např. stisknutí Ctrl+N vždy vyvolá dialog pro vytvoření nového dokumentu).
stůl 1
Klávesové zkratky pro globální akce
Akce |
Klávesové zkratky |
Jak program funguje |
Vytvořte nový dokument |
Otevře okno, ve kterém budete požádáni o výběr typu nového dokumentu, který má být vytvořen různé formáty- například v textu, tabulce nebo HTML |
|
Otevřete existující dokument |
Otevře standardní dialogové okno "Otevřít", dostupné přes nabídku "Soubor/Otevřít…". |
|
Aktivace vyhledávacího pole na panelu příkazů |
Umístí kurzor do tohoto pole |
|
Otevřete kalkulačku |
Otevře kalkulačku |
|
Zobrazit vlastnosti |
Alt+Enter |
V závislosti na tom, na co je kurzor umístěn, se otevře odpovídající paleta vlastností pro tento objekt nebo prvek. Užitečné při práci s tabulkami, textem, HTML atd. |
Otevřete okno zprávy |
Umožňuje otevřít dříve zavřené okno zprávy. Často se hodí, když se okno omylem zavře a potřebujete od něj zprávu. Upozornění: dokud systém znovu nic nezadá do okna zpráv, staré zprávy zůstanou zachovány, i když se okno zavře |
|
Zavřít okno zprávy |
Ctrl + Shift + Z |
Zavře okno zprávy, když již není potřeba. Pozor: kombinace je zvolena tak, aby se dala snadno stisknout jednou rukou |
Otevřete výsledkovou tabulku |
Otevře výsledkovou tabulku |
|
Otevřete nápovědu |
Otevře nápovědu |
|
Vyvolejte index nápovědy |
Shift + Alt + F1 |
Vyvolá rejstřík nápovědy |
Klávesové zkratky: obecné akce
Obecné akce- akce, které mají stejný význam v různých konfiguračních objektech, ale chování platformy 1C:Enterprise 8 se mění v závislosti na tom, kde přesně používáte tu či onu obecnou akci. Pokud se například nacházíte v okně seznamu prvků adresáře, stisknutím klávesy "Del" označíte aktuální prvek adresáře ke smazání. Nebo odstraní obsah aktuální buňky tabulkového dokumentu, pokud jej upravujete.
tabulka 2
Klávesové zkratky pro běžné akce
Akce |
Klávesové zkratky |
Jak program funguje |
Odstraní prvek pod kurzorem (aktuální prvek) nebo vybranou skupinu prvků |
||
Přidat |
Umožňuje přidat nový prvek |
|
Uloží aktivní dokument |
||
Vytiskněte aktivní dokument |
Vyvolá dialogové okno tisku pro aktivní dokument |
|
Tisk na aktuální tiskárně |
Ctrl + Shift + P |
Zahájí přímý tisk aktivního dokumentu na výchozí tiskárnu přiřazenou v systému (bez otevření dialogového okna tisku) |
Zkopírovat do schránky |
Ctrl+C |
Zkopíruje požadovaný prvek nebo vybranou skupinu prvků do schránky Windows |
Vyjmout do schránky |
Ctrl+X |
Vyjme požadovaný prvek nebo vybranou skupinu prvků do schránky Windows. Od kopírování se liší tím, že zkopírovaný prvek nebo skupina se po vstupu do vyrovnávací paměti smaže |
Vložit ze schránky |
Ctrl+V |
Vloží existující data ze schránky Windows do umístění označeného kurzorem. |
Přidat do schránky jako číslo |
Shift + Num + (*) |
Používá se pro číselné hodnoty |
Přidat do schránky |
Shift + Num + (+) |
Používá se pro číselné hodnoty. Operace sčítání s daty ve schránce |
Odečíst ze schránky |
Shift + Num + (-) |
Používá se pro číselné hodnoty. Operace odečítání s daty ve schránce |
Vybrat vše |
||
zrušení poslední akce |
Ctrl+Z |
|
Vrátit vrácenou akci zpět |
Ctrl+Y |
|
Najdi další |
||
Najít další zvýrazněné |
||
Najít předchozí |
||
Najděte předchozí výběr |
Ctrl + Shift + F3 |
|
Nahradit |
||
Ctrl + Num + (-) |
||
Vybrat vše |
Vybere všechny dostupné prvky v aktivním dokumentu |
|
Vrátit zpět poslední akci |
Ctrl+Z |
Vrátí poslední provedenou akci |
Vrátit vrácenou akci zpět |
Ctrl+Y |
Umožňuje vrátit "Ctrl + Z", jinými slovy - vrátit to, co jste udělali před stisknutím vrátit zpět poslední provedenou akci |
Otevře dialog pro nastavení parametrů vyhledávání v aktivním konfiguračním objektu a provedení tohoto vyhledávání |
||
Najdi další |
Najde další prvek, který odpovídá parametrům zadaným v nastavení vyhledávání |
|
Najít další zvýrazněné |
Najde další prvek, který odpovídá tomu, který jste vybrali (například tam, kde je umístěn kurzor) |
|
Najít předchozí |
Najde předchozí prvek, který odpovídá parametrům zadaným v nastavení vyhledávání |
|
Najděte předchozí výběr |
Ctrl + Shift + F3 |
Najde předchozí prvek odpovídající tomu, který jste vybrali |
Nahradit |
Otevře dialogové okno Najít a nahradit hodnoty (pokud je to povoleno) |
|
Sbalit (uzel stromu, skupina dokumentů tabulkového procesoru, seskupení modulů) |
Ctrl + Num + (-) |
Používá se tam, kde jsou k dispozici uzly stromu označené "+" nebo "-". |
Sbalit (uzel stromu, skupina dokumentů tabulkového procesoru, seskupení modulů) a všechny podřízené |
Ctrl + Alt + Num + (-) |
|
Sbalit (všechny uzly stromu, skupiny tabulkových dokumentů, seskupení modulů) |
Ctrl + Shift + Num + (-) |
|
Rozbalit (uzel stromu, skupina dokumentů tabulkového procesoru, seskupení modulů) |
Ctrl + Num + (+) |
|
Rozbalte (uzel stromu, skupina dokumentů tabulkového procesoru, seskupení modulů) a všechny podřízené |
Ctrl + Alt + Num + (+) |
|
Rozbalit (všechny uzly stromu, skupiny tabulkových dokumentů, seskupení modulů) |
Ctrl + Shift + Num + (+) |
|
Další strana |
Ctrl + Page Down |
Rychle procházejte aktivním dokumentem |
Předchozí stránka |
Ctrl + Page Up |
|
Povolit/zakázat obsah tuku |
Používá se tam, kde je podporováno a možné formátování textu |
|
Povolit/zakázat kurzívu |
||
Povolit/zakázat podtržení |
||
Přejít na předchozí webovou stránku/kapitolu nápovědy |
Používá se v dokumentech HTML |
|
Přejít na další webovou stránku/kapitolu nápovědy |
||
Přerušit provádění systémové zprávy složení dat |
Klávesové zkratky: správa oken
Tato část kombinuje klávesové zkratky společné pro všechna okna a formy platformy 1C:Enterprise.
Tabulka 3
Klávesové zkratky pro správu oken
Akce |
Klávesové zkratky |
Jak program funguje |
Zavřete aktivní volné okno, modální dialog nebo aplikaci |
Tato kombinace může rychle dokončit celou konfiguraci na platformě 1C:Enterprise, takže ji používejte opatrně |
|
Zavřete aktivní běžné okno |
Zavře aktuální normální okno |
|
Zavřít aktivní okno |
Zavře aktuálně aktivní okno |
|
Aktivujte další běžné okno |
Ctrl+Tab |
Umožňuje aktivovat následující okno mezi těmi otevřenými v rámci konfigurace. Opakovaným stisknutím klávesy Ctrl můžete procházet otevřená okna „vpřed“ |
Aktivovat předchozí normální okno |
Ctrl + Shift + Tab |
Umožňuje aktivovat předchozí okno mezi těmi otevřenými v rámci konfigurace. Cyklickým stisknutím a podržením klávesy Ctrl můžete procházet otevřenými okny "zpět" |
Aktivujte další část okna |
Aktivuje další část aktuálního okna |
|
Aktivovat předchozí sekci okna |
Aktivuje předchozí část aktuálního okna |
|
Vyvolejte systémovou nabídku aplikace nebo modální dialog |
Umožňuje zobrazit systémovou nabídku operací (minimalizovat, přesunout, zavřít atd.) nad oknem programu nebo otevřít modální dialog |
|
Vyvolejte systémovou nabídku okna (kromě modálních dialogů) |
Alt + spojovník + (-) |
Umožňuje zobrazit systémovou nabídku operací (minimalizace, přesun, zavření atd.) nad aktivním oknem |
Vyvolejte hlavní menu |
Aktivuje hlavní panel s tlačítky pro aktuální okno. Tímto způsobem můžete vybírat akce bez použití myši |
|
Zavolejte kontextové menu |
Zobrazí kontextovou nabídku nad aktuálně aktivním prvkem. Stejné jako lisování pravé tlačítko myši na to |
|
Vraťte aktivitu do normálního okna |
Po práci s kontextovou nabídkou vrátí aktivitu do normálního okna. Pozornost! V každém jiném případě Esc iniciuje uzavření aktivního okna |
Klávesové zkratky: správa formulářů
Zde jsou shromážděny „horké“ klíče, které zjednodušují a urychlují práci s různými formuláři, které byly vytvořeny v konfiguracích napsaných na platformě 1C:Enterprise.
Tabulka 4
Klávesové zkratky pro správu formulářů
Akce |
Klávesové zkratky |
Jak program funguje |
Přejít na další ovládací/výchozí tlačítko volání |
Přesun mezi ovládacími prvky ve formuláři „vpřed“ (viz záložka) |
|
Volání výchozího tlačítka |
Různé formuláře mají zpravidla přiřazeno výchozí tlačítko (je jiné než ostatní - např. je zvýrazněno tučně). Použití této kombinace kláves vám to umožní otevřený formulář aktivovat výchozí tlačítko |
|
Přejděte na další ovládací prvek |
Navigace mezi ovládacími prvky na dopředném formuláři |
|
Přejít na předchozí ovládací prvek |
Přesun mezi ovládacími prvky na formuláři "zpět" |
|
Aktivuje panel příkazů přidružený k aktivnímu ovládacímu prvku/formuláři |
Aktivuje hlavní panel s tlačítky pro aktuální formulář. Tímto způsobem můžete vybírat akce bez použití myši |
|
Procházejte ovládacími prvky seskupenými dohromady |
Nahoru |
Pomocí kurzorových kláves se můžete rychle pohybovat mezi seskupenými ovládacími prvky |
Zavřít formulář |
Zavře okno aktuálního formuláře |
|
Obnovte polohu okna |
Pokud dojde ke ztrátě některých parametrů okna formuláře, tato kombinace vám umožní vrátit vše zpět |
Klávesové zkratky: práce se seznamy a stromy
Klávesové zkratky v této části vám pomohou efektivně pracovat bez použití myši v mnoha seznamech a stromech, které se aktivně používají v různých konfiguračních objektech na platformě 1C:Enterprise 8.
Tabulka 5
Klávesové zkratky pro práci se seznamy a stromy
Akce |
Klávesové zkratky |
Jak program funguje |
Otevře prvek, na kterém je umístěn kurzor, pro úpravy. Klávesa je podobná akci "Upravit" na standardní liště tlačítek formuláře |
||
Aktualizace |
Ctrl + Shift + R |
Aktualizuje data v seznamu nebo stromu. To platí zejména pro dynamické seznamy (například seznam dokumentů), pokud pro ně není povolena automatická aktualizace |
kopírovat |
Vytvoří novou položku seznamu pomocí aktuální položky jako šablony. Podobné jako tlačítko "Přidat kopií". |
|
Nová skupina |
Vytvoří nová skupina. Podobně jako u tlačítka „Přidat skupinu“. |
|
Smazat řádek |
Přímo odstranit aktuální prvek. Pozornost! Tuto kombinaci používejte s maximální opatrností dynamické seznamy, protože smazání nelze vrátit zpět |
|
Posuňte o řádek výše |
Ctrl + Shift + Nahoru |
V seznamech, kde je povoleno řazení řádků, umožňuje posunout aktuální řádek nahoru. Podobně jako tlačítko „Posunout nahoru“. |
Posuňte o řádek dolů |
Ctrl + Shift + dolů |
V seznamech, kde je povoleno řazení řádků, umožňuje posunout aktuální řádek dolů. Podobné jako tlačítko „Přesunout dolů“. |
Přesunout prvek do jiné skupiny |
Ctrl + Shift + M |
Umožňuje rychle přesunout aktuální prvek (například adresář) do jiné skupiny |
Jděte o úroveň níže a současně rozšiřujte skupinu |
Přesune se do složky, kde byl umístěn kurzor |
|
Přejít o úroveň výš (na „rodič“) |
Přejde na začátek složky, ve které jste byli |
|
Dokončete úpravy |
Dokončí úpravy položky seznamu a uloží změny. |
|
Přestaňte hledat |
Přeruší vyhledávání |
|
Rozbalte uzel stromu |
Používá se tam, kde jsou k dispozici uzly stromu označené "+" nebo "-". |
|
Zavřít uzel stromu |
||
Rozbalte všechny uzly stromu |
||
Změna zaškrtávacího políčka |
Invertuje hodnotu zaškrtávacího políčka aktuálního prvku (zapne nebo vypne) |
Klávesové zkratky: vstupní pole
Vstupní pole- aktivně využívaný ovládací prvek na mnoha místech v konfiguračních formulářích. Klávesové zkratky pro vstupní pole umožňují rychle provádět často používané akce na něm. Tyto klávesy je zvláště užitečné používat tam, kde vývojář konfigurace neposkytne tlačítka pro ovládání vstupních polí, která potřebujete.
Tabulka 6
Klávesové zkratky pro vstupní pole
Akce |
Klávesové zkratky |
Jak program funguje |
Podobně jako při úpravě běžného textu umožňuje buď při zadávání přidávat nové znaky ke starým, nebo přepisovat staré znaky novými |
||
Tlačítko Vybrat |
Výběr vhodného objektu spojeného se vstupním polem (například výběr požadovaného dokumentu ze seznamu). Podobně jako u tlačítka vstupního pole "Vybrat". |
|
Otevřít tlačítko |
Ctrl + Shift + F4 |
Otevře formulář vybraného objektu v aktuálním vstupním poli. Stejné jako kliknutí na tlačítko vstupního pole "Otevřít". |
Čisté pole |
Vymažte vstupní pole z jeho aktuální hodnoty |
|
Práce se zadaným textem ve vstupním poli |
||
Ctrl + BackSpace |
||
Přejděte na začátek řádku |
||
Přejít na konec řádku |
||
Kliknutím ukazatele myši na tlačítko Nahoru zobrazíte tlačítko úprav |
Použijte úpravu, pokud je povolena ve vstupním poli. Například změna dat, počítadel atd. Podobně jako stisknutí tlačítka „nahoru“ regulátoru vstupního pole |
|
Klepnutím ukazatelem myši dolů na tlačítko úprav |
Použijte úpravu, pokud je povolena ve vstupním poli. Například změna dat, počítadel atd. Podobně jako stisknutí tlačítka "dolů" regulátoru vstupního pole |
Horké klávesy: pole obrázku
Obrázkové pole- jedná se o standardní prvek platformy 1C:Enterprise 8 pro zobrazování grafické obrázky. Horké klávesy pomohou například k pohodlnému zobrazení obrázku umístěného v poli obrázku.
Tabulka 7
Klávesové zkratky pro pole obrázku
Akce |
Klávesové zkratky |
Jak program funguje |
Přiblížit |
Změní měřítko obrázku |
|
Oddálit |
||
Svitek |
Nahoru |
Pohyb po obrázku |
Posunout velikost okna nahoru |
||
Posuňte velikost okna dolů |
||
Posuňte velikost okna doleva |
||
Posuňte se o jednu velikost okna doprava |
Klávesové zkratky: Editor tabulkových dokumentů
Tato sekce obsahuje seskupené klávesové zkratky pro různé tabulkové dokumenty. Mohou být velmi užitečné, pokud často upravujete data v takových dokumentech.
Tabulka 8
Klávesové zkratky pro tabulkový editor
Akce |
Klávesové zkratky |
Jak program funguje |
Jděte do cely |
Otevře dialogové okno pro přesun do buňky se souřadnicemi sloupce/řádku |
|
Pohyb po buňkách |
Nahoru |
Přesune kurzor po buňkách tabulky |
Procházet buňkami k další plné nebo prázdné |
Ctrl + (nahoru, dolů, doleva, doprava) |
Přesune kurzor přes vyplněné buňky tabulky |
Výběr buněk |
Shift + (nahoru, dolů, doleva, doprava) |
Vybere oblast buněk počínaje aktuální |
Posuňte stránku nahoru |
Listuje tabulkovým dokumentem |
|
Posuňte stránku dolů |
||
Přejděte o jednu stránku doleva |
||
Přejděte o jednu stránku doprava |
||
Přejděte na úpravu obsahu buňky |
Povolí režim úprav obsahu buňky |
|
Přepínání režimu úprav/vkládání v buňce |
||
Přejděte na začátek řádku |
Přesune kurzor na začátek řádku |
|
Přejít na konec řádku |
Přesune kurzor na konec řádku |
|
Přejděte na začátek textu |
||
Přejít na konec textu |
||
Nastavení názvu aktuální oblasti |
Ctrl + Shift + N |
Nastaví název aktuální oblasti buňky |
Klávesové zkratky: editor textových dokumentů
Klávesové zkratky při úpravě textu v textových oblastech a dokumentech mohou výrazně urychlit a zjednodušit proces.
Tabulka 9
Klávesové zkratky pro editor textové dokumenty
Akce |
Klávesové zkratky |
Jak program funguje |
Přepnout režim vkládání/výměny |
Umožňuje buď při zadávání přidávat nové znaky ke starým, nebo přepisovat staré novými |
|
Přejděte na začátek řádku |
Přesune kurzor na začátek aktuálního řádku |
|
Přejít na konec řádku |
Přesune kurzor na konec aktuálního řádku |
|
Vyberte pro začátek řádku |
Vybere text na začátek řádku |
|
Vyberte na konec řádku |
Vybere text až do konce řádku |
|
Přejděte na začátek textu |
Přesune kurzor na začátek textu |
|
Přejít na konec textu |
Přesune kurzor na konec textu |
|
Vyberte pro začátek textu |
Ctrl + Shift + Home |
Vybírá od kurzoru po začátek textu |
Vyberte na konec textu |
Ctrl + Shift + End |
Vybírá od kurzoru po konec textu |
Posuňte se o jeden řádek nahoru |
Listování textovým dokumentem |
|
Přejděte o jeden řádek dolů |
||
Přejděte na začátek předchozího slova |
||
Přejděte na začátek dalšího slova |
||
Vyberte předchozí slovo |
Ctrl + Shift + vlevo |
Rychlý výběr slova (znaky oddělené mezerami) |
Vyberte další slovo |
Ctrl + Shift + Vpravo |
|
Posuňte stránku nahoru |
Listování textovým dokumentem |
|
Posuňte stránku dolů |
||
Vyberte předchozí stránku textu |
Zvýrazňuje text stránku po stránce |
|
Vyberte další stránku textu |
Shift + Page Down |
|
Odebrat výběr |
Odebere výběr |
|
Přejít na řádek |
Přesune kurzor na číslo řádku |
|
Odstraňte znak nalevo od kurzoru |
Smaže znak nalevo od kurzoru |
|
Smažte znak napravo od kurzoru |
Smaže znak napravo od kurzoru |
|
Smažte slovo nalevo od kurzoru |
Ctrl + BackSpace |
Odstraní slovo nalevo od kurzoru |
Smažte slovo napravo od kurzoru |
Odstraní slovo napravo od kurzoru |
|
Nastavit/odebrat záložku |
Označí řádek, který potřebujete |
|
Další záložka |
Přesune kurzor mezi řádky se záložkami |
|
Předchozí záložka |
||
Smazat aktuální řádek |
Smaže aktuální řádek |
|
Posuňte blok doprava |
Přesune vybraný blok textu doprava |
|
Posuňte blok doleva |
Přesune vybraný blok textu doleva |
Pomocí operátoru Abort můžete opustit smyčku a přenést řízení na první spustitelný příkaz za smyčkou. Chcete-li přeskočit některé příkazy cyklu a přejít k další iteraci, použijte příkaz Continue. V tomto případě je řízení přeneseno na operátora na začátku smyčky, na operátor For nebo While. Operátory Přerušit a Pokračovat se nepoužívají samostatně, ale jsou zabudovány do konstrukcí „if“.
Příklad. Uveďte hodnotu první neperiodické konstanty číselný typ.
// Procedura, která vypíše hodnotu první neperiodické konstanty číselného typu
// Spustí se ze zpracování Ukázková procedura Execute()
// Výstupní příznak
totalConstant = Metadata.Constant(); for in = 1 pro všechny Konstantní smyčka
if Metadata.Constant(in).Periodické = 1 pak
pokračovat; // Předání řízení operátoru For endIf;
if Metadata.Constant(in).Type = "Number" then
nápady = Metadata.Constant(in).Identifikátor;
Report(iden +" " + Constant.GetAttribute(iden)); // Zůstatek dnů 1 Výstupní příznak = 1;
přerušit; // Předčasné ukončení cyklu For
endIf; endCycle; // Pro
if Output flag = 0 then
endProcedure // Proveď
Komentář. Někdy se programátoři ve smyčce For místo operátoru Abort uchýlí ke změně hodnoty proměnné smyčky v. Takže v našem případě by operátor Abort mohl být nahrazen operátorem
in = totalConst;
Takové akce jsou však klasifikovány jako špatný styl programování.
Někteří programátoři se domnívají, že operátory přerušení smyčky (v 1C jsou to Pokračovat a Přerušit) zhoršují strukturu programu, a proto je, kdykoli je to možné, odmítají používat. Místo toho se používá kombinování podmínek.
Dodržujme také zásady strukturované programování, napsáním kódu, který řeší výše uvedený problém pomocí sjednocení podmínek. V tomto kódu budeme muset opustit smyčku For a nahradit ji smyčkou While.
// Procedura, která používá kombinaci podmínek a vypisuje hodnotu první
// neperiodická konstanta číselného typu. Spouští se ze zpracování Ukázková procedura Execute()
proměnná allConstants, Output flag, in, ideas; ClearMessageWindow();
// Výstupní příznak bude mít hodnotu 1, pokud je detekován
// neperiodická konstanta numerického typu Output flag = 0;
totalConstant = Metadata.Constant();
in = 1; // Prozatím konstantní číslo (in<= всегоКонстант) и (флагВывода = 0) цикл
if (Metadata.Constant(in).Periodické = 0) a (Metadata.Constant(in).Typ = "Číslo") pak
nápady = Metadata.Constant(in).Identifikátor; Report(iden + " " + Constant.GetAttribute(iden)); Výstupní příznak = 1;
endIf;
in = in + 1; // Nezapomeňte se přesunout na další konstantní konec smyčky; // Pro
if Output flag = 0 then
Report("V konfigurátoru nejsou žádné neperiodické konstanty číselného typu."); endIf;
endProcedure // Proveď
Ve výše uvedeném kódu se sjednocení podmínek používá při psaní LP dvakrát: (in<= всегоКонстант) и (флагВывода = 0)
(Metadata.Constant(in).Periodic = 0) a (Metadata.Constant(in).Type = "Number") To nám umožnilo vyloučit z procedury operátory Continue a Abort.