1s cyklus prechodu do ďalšej iterácie. Slučka preruší. kombinovanie podmienok. "Horúce" klávesy: správa formulárov
12. decembra 2014 o 13:13 hodKtorý cyklus je rýchlejší? Testovanie 1C
- Vysoký výkon ,
- abnormálne programovanie,
- Programovanie
Programoval som 1C niekoľko rokov a potom prišla myšlienka - „Prečo neabsolvovať nejaký druh školenia, zrazu sú tu medzery vo vedomostiach, o ktorých som predtým ani netušil“? Len čo sa povie, tak urobí. Sedím, počúvam kurz, dostávam sa k cyklickým operátorom a potom druhá myšlienka (áno, často sa mi neobjavujú) - "Ktorý cyklus je rýchlejší?" Mali by sme to skontrolovať.
Tak som našiel piatimi spôsobmi ako môžete zorganizovať cyklus pomocou 1C.
Prvý typ cyklu, nazvime ho podmienene "ForPo" vyzerá takto:
Pre n = 0 podľa počtu iterácií slučka SomeAction(); EndCycle;
Druhý pohľad "Pre každého":
Pre každú kolekciu položiek z kolekcie slučka SomeAction(); EndCycle;
Po tretie "Zbohom":
Ahoj n<>NumberIterations Loop SomeAction(); n = n + 1; EndCycle;
Potom som si spomenul na montážnu mladosť - cyklus "Ak":
~LoopStart: Ak n<>NumberIterations Then SomeAction(); n = n + 1; Jump ~StartCycle; Koniec Ak;
A nakoniec "rekurzia"
Procedure RecursiveLoop(n, Počet iterácií) SomeAction(); Ak n<>Počet iterácií potom rekurzívna slučka(n+1, počet iterácií); Koniec Ak; EndProcedure
Prirodzene, nie je úplne správne pripisovať rekurziu cyklom, no napriek tomu s jej pomocou môžete dosiahnuť podobné výsledky. Okamžite urobím rezerváciu, že rekurzia sa nezúčastnila ďalšieho testovania. Po prvé, všetky testy boli vykonané pri 1 000 000 iteráciách a rekurzia vypadne už pri 2 000. Po druhé, rýchlosť rekurzie je desaťkrát nižšia ako rýchlosť iných slučiek.
Posledný ústup. Jednou z podmienok bolo vykonanie akýchkoľvek akcií v cykle. Po prvé, prázdna slučka sa používa zriedka. Po druhé, pre nejakú kolekciu sa používa cyklus „For Each“, čo znamená, že zvyšok cyklov musí pracovať s kolekciou, aby testovanie prebiehalo za rovnakých podmienok.
Tak teda poďme. Telo slučky bolo načítané z vopred vyplneného poľa.
alebo pri použití slučky „ForEach“.
TestValue Receiver = elem;
Testovanie prebiehalo na platforme 8.3.5.1231 pre tri typy rozhraní (bežná aplikácia, riadená aplikácia a taxi).
Čísla predstavujú čas v milisekundách získaný pomocou funkcie CurrentUniversalDateInMilliseconds(), ktorý som volal pred slučkou a po jej skončení. Čísla sú zlomkové, pretože som použil aritmetický priemer piatich meraní. Prečo som nepoužil benchmarking? Nemal som za cieľ merať rýchlosť každého riadku kódu, iba rýchlosť cyklov s rovnakým výsledkom práce.
Zdalo by sa, že je to všetko, ale - testovať tak testovať!
Výsledok pre platformu 8.2.19.106
Platforma 8.2 je v priemere o 25 % rýchlejšia ako 8.3. Taký rozdiel som trochu nečakal a rozhodol som sa to otestovať na inom stroji. Výsledky neuvediem, môžete si ich vygenerovať sami pomocou tejto konfigurácie. Môžem len povedať, že tam 8,2 bolo o 20 percent rýchlejšie.
prečo? Neviem, demontáž jadra nebola súčasťou mojich plánov, ale aj tak som sa pozrel na meranie výkonu. Ukázalo sa, že samotné cyklické operácie v 8.3 sú o niečo rýchlejšie ako v 8.2. Ale na linke
TestValue Receiver = TestArray.Get(n);
to znamená, že pri čítaní položky zbierky do premennej dochádza k výraznému zásahu do výkonu.
Nakoniec:
Prečo toto všetko? Pre seba som urobil niekoľko záverov:
1.
Ak je možné použiť špecializovanú slučku - "Pre každého", potom je lepšie ju použiť. Mimochodom, sám o sebe to funguje dlhšie ako iné slučky, ale rýchlosť prístupu k prvku zbierky je oveľa vyššia.
2.
Ak poznáte počet iterácií vopred - použite "Pre". "Ahoj" bude fungovať pomalšie.
3.
Ak použijete cyklus „If“, ostatní programátori vám zjavne nebudú rozumieť.
21
//Funkcia generuje čitateľnú reprezentáciu hodnôt. // Príklady formátovania čísel ValueFormat = Format(123456.789, " NT=10; NT=2"); // ValueFormat = "123456.79" ValueFormat = Format(123456.789, "FH=0; FPV=2"); // Hodnota
16
Fulltextové vyhľadávanie - umožňuje nájsť textové informácie, umiestnený takmer kdekoľvek vo vašej konfigurácii. Zároveň môžete vyhľadávať potrebné údaje buď v celej konfigurácii ako celku, alebo zúžením ...
8
„Moment času“ je virtuálne pole, ktoré nie je uložené v databáze. Obsahuje objekt MomentInTime (ktorý obsahuje dátum a REFERENCIU DOKUMENTU) V 7.7 bol konceptDocumentPosition a v 8.x Moment in Time To get...
6
Pre 8.x FindByReferences (FindDataByRef) Syntax: FindByReferences (Zoznam odkazov) Parametre: Zoznam odkazov Povinné Typ: Pole. Pole obsahujúce zoznam odkazov na objekt, na ktoré sa majú nájsť odkazy. ...
V tomto článku sa budeme zaoberať takouto konštrukciou programovacieho jazyka 1C ako Cykly.
Existujú tri spôsoby, ako organizovať slučky.
- Slučky pomocou boolovského výrazu (vykonajte do booleovský výraz pravda)
- Prechádzanie kolekciami v slučke
Zvážme každú z týchto metód.
Slučky pomocou premennej - počítadlo slučiek
Syntax:
Pre< Переменная> = < НачальноеЗначение>Autor:< КонечноеЗначение>CycleEndCycle ;Pri tomto spôsobe organizovania cyklov je premennej počítadla priradené nejaké pôvodná hodnota a vykonáva sa, pokiaľ je hodnota premennej počítadla menšia alebo rovná zadanej konečnej hodnote.
S každou iteráciou sa hodnota počítadla zvýši o jednu. Tu je najzákladnejší príklad takejto slučky:
Pre počítadlo = 0 až 1000 Cyklus Koniec cyklu ;Na rozdiel od mnohých iných programovacích jazykov, 1C neposkytuje možnosť špecifikovať krok v cykle. V prípade potreby sa to dá urobiť pridaním požadovanej hodnoty do počítadla vo vnútri slučky
Pre počítadlo = 0 po 1000 počítadlo slučky = počítadlo + 10 ; EndCycle ;Slučky pomocou boolovského výrazu
Syntax:
Zbohom< ЛогическоеВыражение>CycleEndCycle ;Odmietnuť = Nepravda ; GeneratorSch = Nový generátor náhodných čísel(1) ; Do zlyhania slučky RandomNumber = GeneratorSch. NáhodnéČíslo(0, 10) ; If RandomNumber > 5 Then Rejection = True ; Koniec Ak ; EndCycle ;
To znamená, že cyklus sa bude vykonávať dovtedy, kým sa nevygeneruje náhodné číslo väčšie ako päť.
Prechádzanie kolekciami v slučke
V programovacom jazyku 1C existuje niečo ako kolekcia. Je to súbor prvkov obsiahnutých v objekte.
Kolekciou môžeme označovať také objekty ako: pole, tabuľka hodnôt, výber z výsledku dotazu, metaúdaje atď. Tento koncept je skôr podmienený, ale v asistentovi syntaxe sa vyskytuje na každom kroku. Veľmi často sa vyskytuje úloha, keď potrebujeme postupne iterovať všetky prvky kolekcie, aby sme s nimi vykonali nejaké akcie. Na to existuje syntaktická konštrukcia:
Pre každého< ЭлементКоллекции>Od< Коллекция>CycleEndCycle ;Tu <ЭлементКоллекции>
je premenná, do ktorej sa postupne umiestňujú prvky z kolekcie. A vo vnútri slučky sa spracuje zodpovedajúcim spôsobom.
Ako príklad uvediem premostenie v slučke riadkov tabuľky hodnôt. Nech sa volá TableProducts a vyzerá takto:
Prejdeme si túto tabuľku v slučke a pre každý riadok zobrazíme správu s názvom a cenou produktu:
Pre každú RowTableFrom TableProducts Názov slučky = RowTable. Názov; Cena = TableString. Cena; Správa = New MessageToUser; Správa. Text = "Názov produktu:"V skutočnosti sa to isté dá urobiť pomocou prvej možnosti, t.j. v slučke pomocou počítadla:
Počet riadkov = TableProducts. Množstvo(); Pre počítadlo = 0 podľa počtu riadkov - 1 slučka Tabuľka riadkov = TableProducts[Counter] ; Name = StringTable. Názov; Cena = TableString. Cena; Správa = New MessageToUser; Správa. Text = "Názov produktu:"+ Názov + "; Cena: " + Cena; Správa. Ohlásiť() ; EndCycle ;
Ale ako vidíme, je oveľa jednoduchšie a pohodlnejšie použiť prechádzanie prvkov kolekcie.
Pomocní operátori
Často nastáva situácia, keď v závislosti od niektorých je potrebné prerušiť vykonávanie cyklu alebo prejsť z ďalšej iterácie.
Prerušenie sa vykonáva pomocou operátora prerušiť. V tomto prípade sa vykonávanie cyklu preruší a riadenie sa prenesie do jazykovej konštrukcie nasledujúcej po slučke. Ak potrebujete prejsť na ďalšiu iteráciu, musíte použiť operátor Pokračujte. Potom sa riadenie prenesie na začiatok slučky. Ukážme si to na malom príklade:
For Count = 0 By 100 Loop If Count = 0 Potom Continue ; Koniec Ak ; If Counter = 4 Then Abort ; Koniec Ak ; Výsledok = 1 / počítadlo; Správa = New MessageToUser; Správa. Text = String(vysledok) ; Správa. Ohlásiť() ; EndCycle ;Preskočíme nulu, pretože nemôžeš deliť nulou. A celkovo sa cyklus vykoná päťkrát pre hodnoty premennej Počítadlo 0 až 4
Každé riešenie 1C založené na platforme 1C:Enterprise 8 má širokú škálu možností. Existujú však univerzálne triky, ktoré sa dajú použiť v akejkoľvek konfigurácii. Týmto článkom otvárame sériu publikácií, v ktorých budú metodológovia 1C hovoriť o univerzálnych možnostiach platformy 1C:Enterprise 8. Začnime jednou z najdôležitejších metód na zlepšenie efektivity práce - s popisom „horúcich“ kláves (akcie z klávesnice sa spravidla vykonávajú rýchlejšie ako podobné akcie prostredníctvom ponuky pomocou myši). Po zvládnutí klávesových skratiek si zjednodušíte vykonávanie často sa opakujúcich akcií.
stôl 1
Akcia |
Klávesové skratky |
Ako program funguje |
Vytvorte nový dokument |
||
Otvorte existujúci dokument |
||
Otvorte kalkulačku |
Otvorí kalkulačku |
|
Zobraziť vlastnosti |
Alt+Enter |
|
Otvorte schránku správ |
||
Zatvorte okno so správou |
Ctrl+Shift+Z |
|
Otvorte tabuľku výsledkov |
Otvorí tabuľku výsledkov |
|
Otvorte Pomocníka |
Otvorí pomocníka |
|
Zavolajte index pomoci |
Shift+Alt+F1 |
Vyvolá index pomoci |
Klávesové skratky: Globálne akcie
Globálne akcie sú akcie, ktoré môžete vykonať v akomkoľvek stave programu. Nezáleží na tom, čo je momentálne otvorené v 1C:Enterprise. Hlavná vec je, že aplikácia by nemala byť zaneprázdnená vykonávaním akejkoľvek úlohy.
Globálne akcie sú akcie, ktoré možno volať kdekoľvek na spustenej platforme 1C:Enterprise 8. Bez ohľadu na to, čo sa deje v spustená konfigurácia, význam globálnych akcií sa nemení (napr. stlačenie Ctrl+N vždy vyvolá dialóg na vytvorenie nového dokumentu).
stôl 1
Klávesové skratky pre globálne akcie
Akcia |
Klávesové skratky |
Ako program funguje |
Vytvorte nový dokument |
Otvorí okno, v ktorom budete požiadaní o výber typu nového dokumentu, ktorý sa má vytvoriť rôznych formátov- napríklad v texte, tabuľke alebo HTML |
|
Otvorte existujúci dokument |
Otvorí štandardné dialógové okno „Otvoriť“, ktoré je prístupné cez ponuku „Súbor/Otvoriť...“. |
|
Aktivácia vyhľadávacieho poľa na paneli príkazov |
Nastaví kurzor na toto pole |
|
Otvorte kalkulačku |
Otvorí kalkulačku |
|
Zobraziť vlastnosti |
Alt+Enter |
V závislosti od toho, na čo je kurzor umiestnený, otvorí príslušnú paletu vlastností tohto objektu alebo prvku. Užitočné pri práci s tabuľkami, textom, HTML atď. |
Otvorte schránku správ |
Umožňuje vám otvoriť predtým zatvorené okno správy. Často je to užitočné, keď je okno náhodne zatvorené a potrebujete od neho správu. Upozornenie: pokiaľ systém opäť nič nezadá do okna správ, staré správy sa uložia aj v zatvorenom okne |
|
Zatvorte okno so správou |
Ctrl+Shift+Z |
Zatvorí okno so správou, keď už nie sú potrebné. Upozornenie: kombinácia je zvolená tak, aby sa dala ľahko stlačiť jednou rukou |
Otvorte tabuľku výsledkov |
Otvorí tabuľku výsledkov |
|
Otvorte Pomocníka |
Otvorí pomocníka |
|
Zavolajte index pomoci |
Shift+Alt+F1 |
Vyvolá index pomoci |
"Horúce" klávesy: všeobecné akcie
Všeobecné akcie- akcie, ktoré majú rovnaký význam v rôznych konfiguračných objektoch, ale správanie platformy 1C:Enterprise 8 sa mení v závislosti od toho, kde presne používate jednu alebo druhú spoločnú akciu. Ak sa napríklad nachádzate v zozname prvkov adresára, stlačením klávesu "Del" sa označí aktuálny prvok adresára na vymazanie. Alebo vymaže obsah aktuálnej bunky tabuľkového dokumentu, ak ho upravujete.
tabuľka 2
"Horúce" klávesy pre bežné akcie
Akcia |
Klávesové skratky |
Ako program funguje |
Odstráni prvok pod kurzorom (aktuálny prvok) alebo vybranú skupinu prvkov |
||
Pridať |
Umožňuje pridať nový prvok |
|
Uloží aktívny dokument |
||
Tlač aktívneho dokumentu |
Vyvolá dialógové okno tlače pre aktívny dokument |
|
Tlač na aktuálnej tlačiarni |
Ctrl+Shift+P |
Spustí priamu tlač aktívneho dokumentu na predvolene priradenú tlačiareň v systéme (bez otvorenia dialógového okna tlače) |
Skopírovať do schránky |
ctrl+c |
Skopíruje požadovaný prvok alebo vybranú skupinu prvkov do schránky Windows |
Vystrihnúť do schránky |
Ctrl + X |
Vystrihne požadovaný prvok alebo vybranú skupinu prvkov do schránky Windows. Od kopírovania sa líši tým, že skopírovaný prvok alebo skupina sa po zásahu do vyrovnávacej pamäte vymaže |
Prilepiť zo schránky |
Ctrl+V |
Prilepí aktuálne údaje zo schránky Windows na miesto označené kurzorom |
Pridať do schránky ako číslo |
Shift + Num + (*) |
Používa sa pre číselné hodnoty |
Pridať do schránky |
Shift + Num + (+) |
Používa sa pre číselné hodnoty. Operácia sčítania s údajmi v schránke |
Odčítať zo schránky |
Shift + Num + (-) |
Používa sa pre číselné hodnoty. Operácia odčítania údajov zo schránky |
Vybrať všetko |
||
Zrušiť posledná akcia |
Ctrl + Z |
|
Znova vykonajte vrátenú akciu |
ctrl+y |
|
Nájdi ďaľší |
||
Nájsť ďalšie zvýraznené |
||
Nájsť predchádzajúce |
||
Nájdite predchádzajúci výber |
Ctrl+Shift+F3 |
|
Nahradiť |
||
Ctrl+Num+(-) |
||
Vybrať všetko |
Vyberie všetky dostupné prvky v aktívnom dokumente |
|
Vrátiť späť poslednú akciu |
Ctrl + Z |
Zruší poslednú akciu |
Znova vykonajte vrátenú akciu |
ctrl+y |
Umožňuje vrátiť späť "Ctrl + Z", inými slovami - vrátiť to, čo ste urobili pred stlačením poslednej akcie späť |
Otvorí dialógové okno pre nastavenie parametrov vyhľadávania v aktívnom konfiguračnom objekte a vykonanie tohto vyhľadávania |
||
Nájdi ďaľší |
Nájde ďalší prvok, ktorý zodpovedá parametrom zadaným v nastaveniach vyhľadávania |
|
Nájsť ďalšie zvýraznené |
Nájde ďalší prvok zodpovedajúci prvku, ktorý ste vybrali (napríklad tam, kde sa nachádza kurzor) |
|
Nájsť predchádzajúce |
Vyhľadá predchádzajúci prvok, ktorý zodpovedá parametrom zadaným v nastaveniach vyhľadávania |
|
Nájdite predchádzajúci výber |
Ctrl+Shift+F3 |
Vyhľadá predchádzajúci prvok, ktorý sa zhoduje s tým, ktorý ste vybrali |
Nahradiť |
Otvorí dialógové okno Nájsť a nahradiť hodnoty (ak je to povolené) |
|
Zbaliť (uzol stromu, skupina tabuliek, zoskupenie modulov) |
Ctrl+Num+(-) |
Používa sa tam, kde sú k dispozícii uzly stromu označené „+“ alebo „-“. |
Zbaliť (uzol stromu, tabuľkovú skupinu, zoskupenie modulov) a všetkých podriadených |
Ctrl+Alt+Num+(-) |
|
Zbaliť (všetky uzly stromu, skupiny dokumentov tabuľky, zoskupenia modulov) |
Ctrl+Shift+Num+(-) |
|
Rozbaliť (uzol stromu, skupina tabuliek, zoskupenie modulov) |
Ctrl + Num + (+) |
|
Rozbaľte (uzol stromu, tabuľkovú skupinu, zoskupenie modulov) a všetkých podriadených |
Ctrl+Alt+Num+(+) |
|
Rozbaliť (všetky uzly stromu, skupiny dokumentov tabuľky, zoskupenia modulov) |
Ctrl + Shift + Num + (+) |
|
Ďalšia strana |
Ctrl+PageDown |
Rýchle stránkovanie aktívneho dokumentu |
Predchádzajúca strana |
Ctrl+Page Up |
|
Zapnutie/vypnutie tučného písma |
Používa sa tam, kde je podporované a možné formátovanie textu |
|
Zapnúť/vypnúť kurzívu |
||
Zapnúť/vypnúť podčiarknutie |
||
Preskočte na predchádzajúcu webovú stránku/kapitolu pomocníka |
Používa sa v dokumentoch HTML |
|
Preskočte na ďalšiu webovú stránku/kapitolu pomocníka |
||
Prerušenie vykonávania systémovej správy zostavy údajov |
Klávesové skratky: Správa okien
Táto sekcia kombinuje bežné klávesové skratky pre všetky okná a formy platformy „1C:Enterprise“.
Tabuľka 3
"Horúce" klávesy pre správu okien
Akcia |
Klávesové skratky |
Ako program funguje |
Zatvorte aktívne voľné okno, modálny dialóg alebo aplikáciu |
Táto kombinácia môže rýchlo dokončiť celú konfiguráciu na platforme 1C:Enterprise, takže ju používajte opatrne |
|
Zatvorte aktívne bežné okno |
Zatvorí aktuálne normálne okno |
|
Zavrieť aktívne okno |
Zatvorí aktuálne aktívne okno |
|
Aktivujte ďalšie normálne okno |
Ctrl+Tab |
Umožňuje vám aktivovať ďalšie okno spomedzi okien otvorených v rámci konfigurácie. Cyklické stláčanie pri súčasnom držaní klávesu Ctrl vám umožňuje posúvať sa v otvorených oknách „vpred“ |
Aktivujte predchádzajúce bežné okno |
Ctrl+Shift+Tab |
Umožňuje vám aktivovať predchádzajúce okno medzi oknami otvorenými v rámci konfigurácie. Opakované stláčanie pri súčasnom držaní klávesu Ctrl vám umožňuje posúvať sa cez otvorené okná „späť“ |
Aktivujte ďalšiu časť okna |
Aktivuje ďalšiu časť aktuálneho okna |
|
Aktivujte predchádzajúcu časť okna |
Aktivuje predchádzajúcu časť aktuálneho okna |
|
predvolať systémové menu aplikácia alebo modálny dialóg |
Umožňuje zobraziť systémové menu operácií (minimalizácia, presun, zatvorenie atď.) nad oknom programu alebo otvorený modálny dialóg |
|
Vyvolanie systémovej ponuky okna (okrem modálnych dialógov) |
Alt + spojovník + (-) |
Umožňuje zobraziť systémové menu operácií (minimalizovať, presunúť, zavrieť atď.) nad aktívnym oknom |
Vyvolajte hlavné menu |
Aktivuje hlavný panel nástrojov s tlačidlami pre aktuálne okno. Môžete teda vyberať akcie bez použitia myši. |
|
Zavolajte kontextové menu |
Zobrazí kontextovú ponuku nad aktuálne aktívnym prvkom. Podobne, ako keď naň kliknete pravým tlačidlom myši |
|
Vráťte aktivitu do normálneho okna |
Po práci s kontextovou ponukou vráti aktivitu do normálneho okna. Pozor! V každom inom prípade Esc zatvorí aktívne okno. |
"Horúce" klávesy: správa formulárov
Tu sú zhromaždené "horúce" klávesy, ktoré zjednodušujú a urýchľujú prácu s rôznymi formulármi, ktoré sú vytvorené v konfiguráciách napísaných na platforme 1C:Enterprise.
Tabuľka 4
"Horúce" klávesy na správu formulárov
Akcia |
Klávesové skratky |
Ako program funguje |
Prejsť na ďalšie volanie ovládacieho/predvoleného tlačidla |
Navigácia medzi ovládacími prvkami vo formulári „dopredu“ (pozri kartu) |
|
Volanie predvoleného tlačidla |
Rôzne formuláre majú spravidla priradené predvolené tlačidlo (je iné ako ostatné – napr. je zvýraznené tučným písmom). Pomocou tejto klávesovej skratky to môžete urobiť odkiaľkoľvek otvorený formulár aktivovať predvolené tlačidlo |
|
Prejdite na ďalší ovládací prvok |
Prechádzajte medzi ovládacími prvkami vo formulári dopredu |
|
Prejdite na predchádzajúci ovládací prvok |
Navigácia medzi ovládacími prvkami vo formulári „späť“ |
|
Aktivuje panel príkazov spojený s aktívnym ovládacím prvkom/formulárom |
Aktivuje hlavný panel nástrojov s tlačidlami pre aktuálny formulár. Môžete teda vyberať akcie bez použitia myši. |
|
Prechádzajte ovládacími prvkami zoskupenými dohromady |
Hore |
Pomocou kurzorových kláves sa môžete rýchlo pohybovať medzi zoskupenými ovládacími prvkami |
zavrieť formulár |
Zatvorí okno aktuálneho formulára |
|
Obnovte polohu okna |
Ak dôjde k strate niektorých parametrov okna formulára, táto kombinácia vám umožní vrátiť všetko späť |
"Horúce" klávesy: práca so zoznamom a stromom
„Horúce“ klávesy v tejto časti vám pomôžu efektívne pracovať bez použitia myši v mnohých zoznamoch a stromoch, ktoré sa aktívne používajú v rôznych konfiguračných objektoch na platforme 1C:Enterprise 8.
Tabuľka 5
"Horúce" klávesy pre prácu so zoznamom a stromom
Akcia |
Klávesové skratky |
Ako program funguje |
Otvorí prvok, na ktorom je umiestnený kurzor, na úpravu. Kláves je podobný akcii „Upraviť“ na štandardnej lište tlačidiel formulára |
||
Obnoviť |
Ctrl+Shift+R |
Obnoví údaje v zozname alebo strome. Platí to najmä pre dynamické zoznamy (napríklad zoznam dokumentov), keď pre ne nie je povolená automatická aktualizácia. |
Kopírovať |
Vytvorí novú položku zoznamu pomocou aktuálnej položky ako šablóny. Podobne ako pri tlačidle „Pridať kopírovaním“. |
|
Nová skupina |
Vytvára nová skupina. Podobne ako tlačidlo „Pridať skupinu“. |
|
Odstránenie riadku |
Priame odstránenie aktuálneho prvku. Pozor! Túto kombináciu používajte veľmi opatrne dynamické zoznamy pretože odstránenie nie je možné vrátiť späť. |
|
Posunúť o riadok vyššie |
Ctrl+Shift+Up |
V zoznamoch, kde je povolená zmena poradia riadkov, vám umožňuje presunúť aktuálny riadok nahor. Podobne ako pri tlačidle „Posunúť nahor“. |
Posuňte riadok nadol |
Ctrl+Shift+Dole |
V zoznamoch, kde je povolená zmena poradia riadkov, vám umožňuje presunúť aktuálny riadok nadol. Podobne ako tlačidlo „Presunúť nadol“. |
Presuňte prvok do inej skupiny |
Ctrl+Shift+M |
Umožňuje rýchlo presunúť aktuálny prvok (napríklad adresár) do inej skupiny |
Choďte o úroveň nižšie pri rozširovaní skupiny |
Prechádza do priečinka, kde bol umiestnený kurzor |
|
Prejsť o úroveň vyššie (na „rodič“) |
Prejde na začiatok priečinka, v ktorom ste boli |
|
Dokončite úpravy |
Dokončí úpravu položky zoznamu uložením zmien |
|
Zrušiť vyhľadávanie |
Preruší vyhľadávanie |
|
Rozbaľte uzol stromu |
Používa sa tam, kde sú k dispozícii uzly stromu označené „+“ alebo „-“. |
|
Zatvorte uzol stromu |
||
Rozbaľte všetky uzly stromu |
||
Zmeňte začiarkavacie políčko |
Invertuje hodnotu začiarkavacieho políčka aktuálneho prvku (povolí alebo zakáže ho) |
"Horúce" klávesy: vstupné pole
Vstupné pole- aktívne používaný ovládací prvok na mnohých miestach konfiguračných formulárov. "Horúce" klávesy pre vstupné pole vám umožňujú rýchlo vykonávať často používané akcie. Tieto klávesy je obzvlášť užitočné použiť tam, kde vývojár konfigurácie nezobrazil potrebné ovládacie tlačidlá vstupného poľa.
Tabuľka 6
"Horúce" klávesy pre vstupné pole
Akcia |
Klávesové skratky |
Ako program funguje |
Podobne ako pri úprave obyčajného textu vám umožňuje buď pridávať nové znaky pri písaní k starým, alebo prepisovať staré znaky novými. |
||
Tlačidlo Vybrať |
Výber vhodného objektu priradeného k vstupnému poľu (napríklad výber požadovaného dokumentu zo zoznamu). Podobne ako tlačidlo vstupného poľa „Vybrať“. |
|
Otvoriť tlačidlo |
Ctrl+Shift+F4 |
Otvorí formulár vybratého objektu v aktuálnom vstupnom poli. Podobne ako pri stlačení tlačidla vstupného poľa „Otvoriť“. |
čisté pole |
Vymažte vstupné pole z jeho aktuálnej hodnoty |
|
Práca so zadaným textom vo vstupnom poli |
||
Ctrl+backspace |
||
Prejdite na začiatok riadku |
||
Prejdite na koniec riadku |
||
Ukazovateľ myši Stlačením tlačidla Nahor pre tlačidlo Upraviť |
Použite úpravu, ak je to povolené vo vstupnom poli. Napríklad zmena dátumov, počítadiel atď. Podobne ako pri stlačení tlačidla „hore“ na ovládači vstupného poľa |
|
Tlačidlo ukazovateľa myši nadol pre škrtiace tlačidlo |
Použite úpravu, ak je to povolené vo vstupnom poli. Napríklad zmena dátumov, počítadiel atď. Podobne ako pri stlačení tlačidla „dole“ na ovládači vstupného poľa |
"Horúce" klávesy: obrázkové pole
obrázkové pole je štandardným prvkom platformy „1C:Enterprise 8“ na zobrazovanie grafické obrázky. „Hot“ klávesy pomôžu napríklad pohodlnému prezeraniu obrazu nachádzajúceho sa v poli obrázka.
Tabuľka 7
"Horúce" klávesy pre obrazové pole
Akcia |
Klávesové skratky |
Ako program funguje |
priblížiť |
Zmení mierku obrázka |
|
oddialiť |
||
Posúvajte sa |
Hore |
Pohyb po obrázku |
Posunúť veľkosť okna nahor |
||
Prejdite nadol podľa veľkosti okna |
||
Posuňte veľkosť okna doľava |
||
Posuňte veľkosť okna doprava |
"Horúce" klávesy: editor tabuliek
V tejto sekcii sú zoskupené "horúce" klávesy pre rôzne tabuľkové dokumenty. Môžu byť veľmi užitočné, ak často upravujete údaje v takýchto dokumentoch.
Tabuľka 8
"Horúce" klávesy pre editor tabuliek
Akcia |
Klávesové skratky |
Ako program funguje |
Choďte do bunky |
Otvorí dialógové okno na presun do bunky so súradnicami stĺpca/riadku |
|
Prechádzať bunkami |
Hore |
Presúva kurzor cez bunky tabuľky |
Prechádzajte cez bunky k ďalšej vyplnenej alebo prázdnej |
Ctrl + (hore, dole, vľavo, vpravo) |
Presunie kurzor nad vyplnené bunky tabuľky |
Výber buniek |
Shift + (hore, dole, vľavo, vpravo) |
Vyberie oblasť buniek počnúc aktuálnou |
Posuňte sa o stránku nahor |
Posúvanie tabuľky |
|
Prejdite nadol o stránku |
||
Posuňte stránku doľava |
||
Posuňte stránku doprava |
||
Prejdite na úpravu obsahu bunky |
Povolí režim úpravy obsahu bunky |
|
Prepnite režim úprav/vstupu do bunky |
||
Prejdite na začiatok riadku |
Presunie kurzor na začiatok riadku |
|
Prejdite na koniec riadku |
Presunie kurzor na koniec riadku |
|
Prejdite na začiatok textu |
||
Prejsť na koniec textu |
||
Nastavenie názvu aktuálnej oblasti |
Ctrl+Shift+N |
Nastaví názov oblasti aktuálnej bunky |
"Horúce" klávesy: editor textových dokumentov
"Horúce" klávesy pri úprave textu v textových oblastiach a dokumentoch môžu výrazne urýchliť a zjednodušiť proces.
Tabuľka 9
"Horúce" klávesy pre editor textové dokumenty
Akcia |
Klávesové skratky |
Ako program funguje |
Prepnúť režim vkladania/výmena |
Umožňuje buď pridávať nové znaky pri zadávaní k starým, alebo prepisovať staré znaky novými |
|
Prejdite na začiatok riadku |
Presunie kurzor na začiatok aktuálneho riadku |
|
Prejdite na koniec riadku |
Presunie kurzor na koniec aktuálneho riadku |
|
Zvoľte na začiatok riadku |
Vyberie text až po začiatok riadku |
|
Vyberte na koniec riadku |
Vyberie text až do konca riadku |
|
Prejdite na začiatok textu |
Presunie kurzor na začiatok textu |
|
Prejsť na koniec textu |
Presunie kurzor na koniec textu |
|
Vyberte na začiatok textu |
Ctrl+Shift+Home |
Vyberá od kurzora po začiatok textu |
Vyberte na koniec textu |
Ctrl+Shift+End |
Vyberá od kurzora po koniec textu |
Posuňte sa o jeden riadok nahor |
Rolovanie v textovom dokumente |
|
Prejdite o jeden riadok nadol |
||
Prejdite na začiatok predchádzajúceho slova |
||
Preskočte na začiatok nasledujúceho slova |
||
Vyberte predchádzajúce slovo |
Ctrl+Shift+Doľava |
Rýchly výber slová (znaky oddelené medzerami) |
Vyberte nasledujúce slovo |
Ctrl+Shift+Vpravo |
|
Posuňte sa o stránku nahor |
Rolovanie v textovom dokumente |
|
Prejdite nadol o stránku |
||
Vyberte predchádzajúcu stranu textu |
Stránkovať text |
|
Vyberte ďalšiu stranu textu |
Shift + Page Down |
|
Odstrániť výber |
Zrušte výber |
|
Prejdite na riadok |
Presunie kurzor na riadok s číslom |
|
Vymazať znak naľavo od kurzora |
Vymaže znak naľavo od kurzora |
|
Vymazať znak napravo od kurzora |
Vymaže znak napravo od kurzora |
|
Vymažte slovo naľavo od kurzora |
Ctrl+backspace |
Vymaže slovo naľavo od kurzora |
Odstrániť slovo napravo od kurzora |
Vymaže slovo napravo od kurzora |
|
Nastaviť/Zrušiť záložku |
Označí požadovaný riadok |
|
Ďalšia záložka |
Presúva kurzor medzi riadkami so záložkami |
|
Predchádzajúca záložka |
||
Vymazať aktuálny riadok |
Vymaže aktuálny riadok |
|
Presuňte blok doprava |
Posunie vybratý blok textu doprava |
|
Presuňte blok doľava |
Posunie vybratý blok textu doľava |
Pomocou príkazu Break môžete opustiť cyklus a preniesť riadenie na prvý príkaz po slučke. Ak chcete preskočiť časť príkazov cyklu a prejsť na ďalšiu iteráciu, použite príkaz Continue. V tomto prípade sa riadenie prenesie na operátora začiatku cyklu, operátora For alebo While. Príkazy Break a Continue sa nepoužívajú samostatne, ale sú zabudované do klauzúl „ak“.
Príklad. Uveďte hodnotu prvej neperiodickej konštanty číselný typ.
// Procedúra, ktorá zobrazí hodnotu prvej neperiodickej konštanty číselného typu
// Spustí sa od spracovania Probe procedure Execute()
// výstupný príznak
totalConstant = Metadata.Constant(); pre yin = 1 cez celkovú konštantnú slučku
if Metadata.Constant(in).Periodicky = 1 potom
pokračovať; // Prenesenie riadenia na operátor For endIf;
if Metadata.Constant(in).Type = "Number" then
nápady = Metadata.Constant(in).Identifikátor;
Report(id + " " + Constant.GetAttribute(id)); // Príznak výstupu BalanceDays 1 = 1;
prerušiť; // Skorý odchod zo slučky For
koniec Ak; koniec cyklu; // pre
ak výstupný príznak = 0, potom
endProcedures // Vykonať
Komentujte. Niekedy sa programátori v slučke For namiesto príkazu Break uchýlia k zmene hodnoty premennej cyklu v.Čiže v našom prípade by operátora Abort mohol nahradiť operátor
in = celková konštanta;
Takéto akcie sú však klasifikované ako zlý štýl programovania.
Niektorí programátori sa domnievajú, že operátori prerušenia slučky (v 1C sú to Continue a Interrupt) zhoršujú štruktúru programu, a preto ich, ak je to možné, odmietajú používať. Namiesto toho použité kombinovanie podmienok.
Držme sa zásad štruktúrované programovanie, napísaním kódu, ktorý rieši vyššie uvedený problém, pomocou spojenia podmienok. V tomto kóde budeme musieť opustiť cyklus For a nahradiť ho slučkou While.
// Procedúra, ktorá používa spojenie podmienok a výstupom je hodnota prvej
// neperiodická konštanta číselného typu. Spúšťa sa zo spracovania procedúry sondy Execute()
var totalConst, výstupný príznak, in, nápady; ClearMessageWindow();
// výstupný príznak ak sa nájde, nadobudne hodnotu 1
// neperiodická konštanta numerického typu OUTPUT flag = 0;
totalConstant = Metadata.Constant();
in = 1; // Číslo doterajšej konštanty (v<= всегоКонстант) и (флагВывода = 0) цикл
if (Metadata.Constant(in).Periodické = 0) a (Metadata.Constant(in).Type = "Number") potom
nápady = Metadata.Constant(in).Identifikátor; Report(id + " " + Constant.GetAttribute(id)); výstupný príznak = 1;
koniec Ak;
in = in + 1; // Nezabudnite prejsť na ďalší konštantný koniec slučky; // pre
ak výstupný príznak = 0, potom
Report("V konfigurátore nie sú žiadne neperiodické konštanty číselného typu."); koniec Ak;
endProcedures // Vykonať
Vo vyššie uvedenom kóde sa kombinácia podmienok používa pri písaní LP dvakrát: (v<= всегоКонстант) и (флагВывода = 0)
(Metadata.Constant(in).Periodické = 0) a (Metadata.Constant(in).Typ = "Číslo") To nám umožnilo vylúčiť z procedúry príkazy Continue a Abort.