Programovanie v jazyku 1C Enterprise 8. Cykly pomocou premennej - počítadlo cyklov

Učenie akéhokoľvek programovacieho jazyka sa spravidla začína príkladom písania prvého najjednoduchší program(„Ahoj svet!“). Deje sa tak s cieľom názorne demonštrovať prácu so základnými syntaktickými štruktúrami. Nebudeme robiť výnimku z tohto všeobecne akceptovaného spôsobu prezentácie materiálu pri skúmaní nového vývojového prostredia, a preto by sa náš prvý článok mal posudzovať v rovnakom duchu. V ňom podrobne rozoberieme odpovede na nasledujúce otázky týkajúce sa programovania na platforme 1C:Enterprise 8:

  • Kde a s akou pomocou napísať programový kód v vstavanom jazyku 1C?
  • Čo sú softvérové ​​moduly, aké sú pravidlá práce s nimi?
  • Čo je to premenná, ako s ňou pracovať, ako a kde ju deklarovať?
  • Aké porovnávacie, priraďovacie a podmienené operátory existujú a ako ich používate?
  • Booleovské operácie - čo sú a ako s nimi pracovať?
  • Prečo potrebujeme slučky a ako ich používať?

Článok bude užitočný pre všetkých, ktorí ešte nie sú oboznámení s vývojom na platforme 1C:Enterprise 8, ale chcú sa naučiť programovať na 1C.

Použiteľnosť

Materiál je relevantný pre platformu 1C:Enterprise 8, vydanie 8.2. a 8.3.

Premenné a operátory

V tomto článku začneme študovať vstavaný jazyk 1C:Enterprise 8. Spustiteľný kód je obsiahnutý v programových moduloch.

Existuje pomerne veľké množstvo modulov, ktoré sú určené na zvládanie rôznych udalostí.

Prihlásenie používateľa do systému je teda spracované v jednom module a spracovanie kliknutia používateľa na určité tlačidlo je spracované v úplne inom.

Každý modul teda popisuje správanie sa konfigurácie v určitom bode. Modul obsahuje predovšetkým časť pre popis premenných. Tie. môžeme deklarovať niektoré premenné v module.

V budúcnosti môžu byť použité v procedúrach a funkciách tohto modulu. Ak je premenná definovaná s kľúčovým slovom Exportovať, bude dostupná vonku tohto modulu. Príklad riadku deklarácie premennej:

Sklad Perem, divízia, skladník Export;

Po deklarácii premenných nasleduje sekcia procedúr a funkcií.

Za nimi je časť hlavného programu, ktorá sa spustí pri prístupe k tomuto modulu.

Napríklad v časti hlavného programu môžete inicializovať premenné, t.j. dajte im nejaké počiatočné hodnoty:

stav=1;
Nový výraz=2;
Výsledok = 3;

Modul si možno predstaviť ako kombináciu rôznych operátorov, ktoré vykonávajú rôzne akcie, ktoré potrebujeme.

Oddeľovač operátora je symbol ";" (bodkočiarka). Tento znak označuje koniec výpisu. Tie. operátor môže byť napísaný takto:

Výsledok=100X200
+400
-600;

Nezáleží na tom, na koľkých riadkoch sa výpis nachádza.

Samozrejme, často je pohodlnejšie a prehľadnejšie umiestniť operátora na jednu linku, ale niekedy sú operátori dosť dlhé (počet liniek môže rozumne dosiahnuť niekoľko desiatok).

Bodkočiarka nesmie byť umiestnená v záverečnom vyhlásení danej štruktúry, napríklad postupu. Tie. bude fungovať nasledujúci kód:

Procedure CalculateValue()

Počiatočná hodnota = 100;
IntermediateValue = PočiatočnáHodnota/5;
FinalValue = PočiatočnáHodnota+IntermediateValue

EndProcedure

V záverečnom vyhlásení je však lepšie použiť bodkočiarku. Je možné, že časom sa bude v stavbe pokračovať a konečné vyhlásenie už nebude konečné. Túto situáciu budeme musieť špeciálne sledovať.

Premenné sú navrhnuté tak, aby uložili nejakú hodnotu akéhokoľvek typu údajov. Používajú sa na prechodné ukladanie informácií na spracovanie.

Takmer v každom softvérovom module, ktorý vykonáva nejakú činnosť, existujú rôzne premenné. Zadávanie premenných podľa hodnôt v Platforme 1C:Enterprise 8 je mäkké.

Napríklad premenná môže obsahovať hodnotu jedného typu údajov a o niekoľko riadkov neskôr iného typu:

Vytvorené = False;
Vytvorené = Pravda;
Vytvorené =100;

V prvých dvoch operátoroch je hodnota premenných Boolean a v treťom sa zmení na číselná hodnota. Tie. písanie závisí od hodnoty, ktorá je priradená danej premennej.
Premenné možno opísať dvoma spôsobmi:

  • implicitná metóda (zmienka na ľavej strane operátora priradenia popisuje túto premennú, chýba predbežný popis premennej slovom Variable, t. j. neexistuje špeciálna sekcia na popis premenných);
  • explicitný popis premenných (Variable Control Data;). Explicitná deklarácia premenných sa používa napríklad vtedy, ak je zamýšľané následné odovzdanie tejto premennej funkcii.

Premenné sú pomenované pomocou klasického popisu identifikátora. Identifikátor sa skladá z písmen, číslic a podčiarkovníkov. Identifikátor musí začínať písmenom alebo podčiarkovníkom.

V tomto prípade by názov premennej mal odrážať význam tejto premennej. Jednopísmenové názvy premenných (ako A, B, C) sú zlé príklady. Neodrážajú podstatu premenných.

Príklady správnych názvov premenných: Počítadlo (zvyšujúca sa premenná pre slučku), Dodávateľ. Ak názov premennej obsahuje niekoľko slov, každé nové slovo by malo kvôli prehľadnosti začínať veľkým písmenom.

V názvoch premenných nemožno použiť vyhradené slová ako postup, funkcia, slučka, koniec slučky atď. (tieto štruktúry sú v programovom module zvýraznené červenou farbou).

Vyhradené slová sú vstavané jazykové operátory a je ich pomerne malý počet. Všetky sú prezentované v Asistent syntaxe.

Treba poznamenať, že dátové typy nie sú vyhradené slová (napríklad Array, Boolean, True, False). Systém správne akceptuje takéto názvy premenných.

Na písanie programový kód prípad nezáleží. Napríklad slovo Postup môže byť napísané s veľkým alebo malým písmenom. Okrem toho sa v rámci slova môžu striedať veľké a malé písmená.

Platforme na tom nezáleží. Podľa pravidiel slušného správania by sa však začiatok slova mal písať veľkým písmenom a všetky ostatné písmená malými.

Čo sa týka jazyka. Môžete použiť ruštinu, angličtinu alebo kombináciu týchto dvoch jazykov. Ak je to pre niekoho výhodné, môžete bezpečne používať angličtinu na písanie programového kódu, ako aj kombinovať ruštinu a angličtinu. Pre platformu to nie je dôležité.

Veľa titulov na anglický jazyk dosť ťažko zapamätateľné. Pri použití kombinácie dvoch jazykov sa zhoršuje čitateľnosť programového kódu.

Booleovské operácie

Porovnávacie operátory často používajú booleovskú logiku, ktorá vracia hodnotu True alebo False.

Napríklad v podmienenom operátore môžete porovnať: Ak Udalosť = Predaj Potom bude algoritmus nasledovať jednu vetvu (t. j. ak je hodnota True), ak je podmienka False, vykoná sa ďalšia vetva algoritmu.

Podmienky môžu byť dosť zložité, možno ich kombinovať a používajú sa tieto operátory: AND, OR a NOT. Takže pre operátora AND:

Pravda a pravda = Pravda;
Pravda a nepravda = nepravda;
False And True = False;
False A False = False.

Pre operátor OR stačí, aby sa jeden z operandov rovnal True, potom bude hodnota kombinácie True. Hodnota False sa získa iba vtedy, keď sú oba operandy False.

Operátor NOT jednoducho prevráti aktuálnu hodnotu (False to True, True to False).

Pomocou kombinácie týchto operátorov môžete vytvoriť pomerne zložité podmienky. Pri zostavovaní zložitých podmienených vyhlásení by ste mali zvážiť priority.

Operátor NOT má najvyššiu prioritu, za ním nasleduje operátor AND a za ním operátor OR. Čokoľvek je v zátvorkách, má najvyššiu prioritu a vykoná sa ako prvé.

Nastavme si napríklad priority (sekvenciu vykonávania) pre operácie v danom výraze:

NIE (Stav1 ALEBO Podmienka2) A Podmienka3 ALEBO Podmienka4
1.Výsledok1 = (Podmienka1 ALEBO Podmienka2);
2. Výsledok2 = NIE Výsledok1;
3. Výsledok3 = Výsledok2 A Podmienka1;
4. Výsledok = Výsledok3 ALEBO Podmienka4;

Existuje pravidlo konverzie:

NIE (Podmienka1 ALEBO Podmienka2) = NIE Podmienka1 A NIE Podmienka2.

Nemali by sme sa však vždy snažiť o zjednodušenie výrazu, pretože často je logicky rozšírený výraz ľahšie čitateľný.

Operátor pridelenia

Operátor priradenia by sa nemal zamieňať s operátorom rovnosti, aj keď majú rovnaký pravopis.

Princíp priraďovacieho operátora spočíva v tom, že ľavej hodnote (premennej na ľavej strane) sa priradí hodnota, ktorá je napravo od znamienka rovnosti. Pozrime sa na príklad:

Premenná1 = Premenná2 = Premenná3;

Premennej1 je priradená hodnota rovnosti z booleovskej logiky, t.j. True, ak Premenná2 = Premenná3, alebo False v opačnom prípade.

Pri testovaní pozície začínajúceho programátora je pomerne často používanou úlohou výmena hodnôt dvoch premenných.

Tento problém sa rieši pomocou operátora priradenia a má dve riešenia.

Riešenie #1 s použitím dočasnej premennej:
DocasnaPremenna = Premenna1;
Premenná1 = Premenná2;
Premenná2 = Dočasná premenná;

Riešenie č. 2:
Premenná1 = Premenná1 + Premenná2;
Premenná2 = Premenná1 – Premenná2;
Premenná1 = Premenná1 – Premenná2;

Podmienený operátor

Existuje taký operátor If, po ktorom je potrebné popísať nejakú podmienku (samotná podmienka môže byť dosť veľká). Za podmienkou nasleduje slovo Potom a príkazy, ktoré sa majú vykonať.

Potom môže nasledovať kľúčové slovo Else a séria ďalších vyhlásení. Ak existuje niekoľko rôznych podmienok, môžete použiť sériu kľúčových slov V opačnom prípade Ak(pozri príklad nižšie). Celá konštrukcia musí končiť kľúčovým slovom Koniec Ak, za ktorým nasleduje bodkočiarka.

Okrem jednoduchých a viacnásobných podmienok existuje skrátená forma podmieneného operátora: ?(Podmienka, Výraz1, Výraz2);

Ak je podmienka pravdivá, vykoná sa Výraz1, inak - Výraz2. Príklad kódu: DrahýProdukt = ?(Produkt.Cena>100000, Pravda, Nepravda);

V praxi namiesto porovnávania záznamov s hodnotou Pravda (Klamať) typ:

Ak premenná = pravda, potom
A
Ak premenná = False, potom

skutočne používané ekvivalentné zápisy sú:

Ak je premenná, potom
A
Ak NIE JE premenlivé, potom

Cyklické operátory

Pre každý typ slučky sa vyžaduje explicitné označenie konca tejto slučky pomocou kľúčové slovo Koniec cyklu. Existuje niekoľko typov cyklov.

Slučka na pulte– cyklus s pevným počtom opakovaní. Podmienkou vystúpenia z cyklu je prekročenie limitnej hodnoty. Príklad použitia na výpočet hodnoty A!

A = 5;
Faktor = 1;
Pre počítadlo = 1 podľa cyklu
Faktorial = Faktorial * Counter;
EndCycle;

Slučka podľa stavu– podmienka danej slučky je splnená, pokiaľ je pravdivá. Príklad:

Zostávajúca suma = 1 000;
Cena dodatočného produktu = 243;
množstvo = 0;
Kým zostávajúce množstvo>0 cyklu
Množstvo = Množstvo+1;
Zostávajúca suma = Zostávajúca suma – Množstvo*Cena dodatočného produktu;
Cena dodatočného produktu = cena dodatočného produktu * 0,8;
Koniec cyklu
Množstvo = množstvo-1;

Tento cyklus vypočíta, koľko jednotiek produktu je možné zakúpiť za danú sumu (1 000 rubľov), ak sa po zakúpení každej jednotky produktu jeho predchádzajúca cena vynásobí faktorom 0,8. Pôvodná cena produktu je 243 rubľov.

Príkladom chyby pri použití tohto typu slučky pre začiatočníkov je večná slučka, kedy je podmienka slučky spočiatku pravdivá, no v rámci samotnej slučky sa nijako nemení.

Prechádzajte zbierkami (iný názov pre každého).

V Platforme je pomerne veľké množstvo kolekcií (sú to kontajnery, ktoré obsahujú prvky určitého typu).

Prvky kolekcie môžete iterovať pomocou špeciálneho typu slučky.

Napríklad existuje pole čísel, musíte vypočítať súčet všetkých prvkov poľa:

Suma = 0;
Pre každý prvok zo slučky poľa
Suma=suma+položka;
EndCycle;

Pre cykly existujú špeciálnych operátorov: ďalej A Prerušiť.

Ak sa v určitom bode cyklu stane vykonávanie ďalších operátorov daného cyklu bezvýznamným, potom sa operátor použije na návrat na začiatok cyklu a usporiadanie jeho nasledujúceho cyklu. ďalej.

Operátor Prerušiť umožňuje cyklu ukončiť vykonávanie, aj keď je podmienka cyklu pravdivá.

Týmto sa uzatvára naše prvé zoznámenie sa s vývojom v internom jazyku 1C.

A čo Hello World? Ešte sme to nepísali, však? Áno, ale nič vám nebráni v tom, aby ste to urobili sami, pretože... vedomostí je UŽ dosť. No, ak to nevyjde, môžete sa pozrieť sem.

Vstavaný programovací jazyk programov 1C:Enterprise je programovací jazyk používaný v rodine programov automatizácie účtovníctva 1C:Enterprise. Tento jazyk patrí do triedy predkompilovaných jazykov špecifických pre doménu vysokej úrovne. Jeho realizačným prostredím je platforma 1C:Enterprise (vrátane 1C:Accounting). Jeho vizuálne vývojové prostredie sa nazýva „Configurator“ a je súčasťou balíka 1C:Enterprise.

Jazyk podporuje syntax príkazov v ruštine a angličtine. Zabudované jazykové dialekty pre verzie 1C:7.0, 1C:7.5 a 1C:7.7 sú až na malé výnimky kompatibilné zdola nahor. Dialekty pre 1C:7x sú kompatibilné s 1C:8x, pokiaľ ide o hlavných operátorov, ale výrazne sa líšia v tom, ako pracujú s aplikačnými objektmi, v dôsledku čoho je prakticky bezvýznamné prenášať kód z platformy 1C:7x na 1C. : 8x platforma.

Vo svojej syntaxi je programovací jazyk 1C:8 podobný Vizuálny jazyk Základné. Platforma poskytuje pevnú množinu hlavných tried, ktoré sú navrhnuté tak, aby riešili typické problémy v ich aplikačnej oblasti. Niektoré základné triedy:

  • dokument,
  • denník dokumentov,
  • konštantná,
  • liečba,
  • Správa,
  • prevod,
  • účtovná osnova,
  • Adresár atď.

Z týchto základných tried môžete vytvoriť ľubovoľný počet odvodených tried pomocou vizuálnych konfiguračných nástrojov. Navyše neexistuje spôsob, ako to programovo určiť nová trieda. Povolený je iba explicitný krok v triednom dedičstve. Objekty odvodených tried sú typicky databázové záznamy alebo sady záznamov. V zmysle jazyka 1C sa nazývajú objekty metadát a tvoria takzvaný „strom metadát“.

Typy týchto metadátových objektov sú Obchodné procesy, Dokumenty, Úlohy, Spracovanie, Výkazy, Plány typov a charakteristík kalkulácií, Účtovné osnovy, Registre akumulácie, kalkulácie a informácií, Adresáre. Projekty napísané v jazyku 1C:Enterprise sa nazývajú konfigurácie. Predaj, implementácia a údržba 1C a jeho konfigurácií sú hlavné obchodné aktivity partnerských spoločností 1C.

Existujú aj ďalšie komponenty, ktoré rozširujú hlavné triedy, čo im umožňuje voľná tvorba a zmeniť. Tieto komponenty však vývojár neodporúča používať. V praxi ich používanie znamená opustenie technická podpora od spoločnosti 1C a jej spoločníkov.

Napríklad komponent 1C++ rozširuje jazyk pomocou plnohodnotného OOP. Jeho použitie rozširuje možnosti konfigurácie 1C. Toto je bezplatný produkt distribuovaný pod otvorenou licenciou GNU GPL.

Existuje aj bezplatný projekt 2C, ktorý nepoužíva proprietárne moduly od 1C a iných výrobcov softvéru. Ide o rozšíriteľné jadro systému podobného 1C, prepísané od začiatku, ktoré je voľne šírené pod licenciou GNU GPL. „Vstavané objekty“ 1C, ako sú registre a adresáre, sú triedy, ktoré môže prepísať aplikačný programátor.

Pôvodne mal jazyk 1C pracovný názov „1Sik“, ktorý sa vyslovoval „odynesik“. V oficiálnych zdrojoch však rýchlo zmizol z používania. Keď sa tento vstavaný jazyk spomína v dokumentoch, je teraz zvykom ho nazývať „programovací jazyk 1C“. Zapnuté tento moment nemá vlastný názov, ktorý je vhodný na ústnu výslovnosť. V kontexte diskusie o balíku 1C:Enterprise sa často nazýva jednoducho „vstavaný jazyk“.

Chcel by som dokončiť recenziu vzorovým programom, ktorý zobrazuje tradičný pozdrav pre začiatočníkov, ktorí sa učia programovací jazyk:

Správa ("Ahoj, Svet!");

Tento kód bude fungovať vo verzii 1C:Enterprise 7.7.

21.12.2010

Predchádzajúce publikácie:

Každému, kto sa chce dostať k programovaniu, chceme vysvetliť niekoľko jednoduchých vecí, ktoré nie sú spomenuté vo všetkých učebniciach programovania, ale tí, ktorí chcú ovládať programovanie v jazyku 1C od nuly, by o tom mali vedieť.

1. Programovací jazyk je predovšetkým jazyk.

Predtým, ako sa začnete učiť jazyk, buďte psychicky pripravení na to, že tento proces nie je rýchly. Aby ste si konkrétne vedeli predstaviť, čo je učenie sa programovacieho jazyka – je to takmer rovnaké ako učenie sa cudzieho jazyka. Všetko sme sa učili v škole cudzí jazyk a každý veľmi dobre chápe, že znalosť jazyka nestačí len na to, aby ste sa naučili prekladať slová zo slovníka z cudzieho jazyka do svojho rodného jazyka. Napríklad frázu „Viem po anglicky“ môže povedať človek, ktorý je schopný: čítať text v angličtine, prekladať, zostaviť vetu bez chýb, vyjadrovať sa ústne. Prekladať cudzie slová bez schopnosti správne zostaviť vetu (prečítať syntax programovacieho jazyka) určite neznamená znalosť cudzieho jazyka. Preto Lekcia 1 – zaobchádzajte s učením programovacieho jazyka rovnakým spôsobom, akým by ste zaobchádzali s učením sa cudzieho jazyka s cieľom úplne ho zvládnuť.

2. Prax.

Iste ste už počuli, ako niektorí ľudia, ktorí dobre ovládajú cudzí jazyk, ho postupne zabúdali bez toho, aby si ho nacvičili. Po preštudovaní základov programovania na 1C cvičte denne pri vykonávaní jednoduchých úloh, aby ste nestratili skôr získané vedomosti a postupne preberali zložitejšie úlohy. Zlepšite svoje zručnosti.

Akékoľvek podnikanie sa pohybuje lepšie, ak existuje motivácia.V budúcnosti sú pre vás programátorské zručnosti peňažnou odmenou, dobrá práca, ľahký sociálny výťah atď. Nie je žiadnym tajomstvom, že softvérový produkt 1C Enterprise je v postsovietskom priestore veľmi populárny. Z desiatich spoločností osem používa program 1C na zaznamenávanie svojich obchodných aktivít. Preto potrebujú správcu alebo programátora 1C, ktorý by program udržiaval a vylepšoval. Prirodzene, takýto trh potrebuje špecialistov 1C. Niekedy sú firmy pripravené najať nie veľmi kvalifikovaného zamestnanca s programátorskými schopnosťami za slušný plat s podmienkou sebazdokonaľovania. A aj keď nechcete pracovať pre komerčnú spoločnosť alebo franšízu, dobrý kvalifikovaný programátor si bude môcť nájsť prácu na burzách na voľnej nohe alebo realizovať vlastné projekty. Vo všeobecnosti programátor 1C nezostane bez práce.

S úvodnou časťou v základy programovania skončili sme. Zvyšok materiálu bude venovaný zvládnutiu základov kódu jazyka 1C. Možno niektoré časti budú popísané príliš stručne, ale účel tohto materiálu nie je úplným ponorením čitateľa do syntaxe jazyka, ale skôr prvotným oboznámením sa špecialistov s architektúrou jazyka 1C s cieľom vytvoriť určitú kostru (základňu) v hlave používateľa, na ktorej budú zavesené všetky znalosti. v budúcnosti.

V tomto článku sa budeme zaoberať takouto konštrukciou programovacieho jazyka 1C ako Cykly.

Existujú tri spôsoby, ako organizovať slučky.

  1. Slučky pomocou logického výrazu (spustené do logický výraz pravda)
  2. Prechádzanie zbierkami

Pozrime sa na každú z týchto metód.

Slučky pomocou premennej počítadla slučiek

Syntax:

Pre< Переменная> = < НачальноеЗначение>Autor:< КонечноеЗначение>CycleEndCycle;

Pri tomto spôsobe organizovania slučiek je premennej počítadla priradená určitá počiatočná hodnota a je vykonávaná dovtedy, kým hodnota premennej počítadla nie je 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 cyklov ukončenia 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 až 1000 cyklov počítadlo = počítadlo + 10 ; EndCycle ;

Slučky využívajúce boolovské výrazy

Syntax:

Zbohom< ЛогическоеВыражение>CycleEndCycle;

Odmietnuť = Nepravda ; GeneratorRandom = NewRandomNumberGenerator(1) ; Do cyklu zlyhania RandomNumber = GeneratorRank. NáhodnéČíslo(0, 10); Ak RandomNumber > 5 Then Failure = True ; Koniec Ak ; EndCycle ;

To znamená, že cyklus bude prebiehať, kým sa nevygeneruje náhodné číslo väčšie ako päť.

Prechádzanie zbierkami

V programovacom jazyku 1C existuje niečo ako zbierka. Je to súbor prvkov obsiahnutých v objekte.

Môžeme sem zahrnúť také objekty ako kolekciu: pole, tabuľku hodnôt, výber z výsledku dotazu, metaúdaje atď. Tento koncept je celkom konvenčný, ale objavuje sa na každom kroku v asistentovi syntaxe. Veľmi často sa stretávame s úlohou, keď potrebujeme postupne iterovať všetky prvky kolekcie, aby sme s nimi vykonali nejaké akcie. Existuje na to syntaktická štruktúra:

Pre každý< ЭлементКоллекции>Od< Коллекция>CycleEndCycle;

Tu <ЭлементКоллекции> je premenná, do ktorej sa postupne umiestňujú prvky z kolekcie. A vo vnútri slučky je spracovaný zodpovedajúcim spôsobom.
Ako príklad vám dám slučku prechádzania riadkami 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ý riadok tabuľky z produktov tabuľky Názov cyklu = riadok tabuľky. Názov; Cena = TableRow. Cena; Správa = New MessageToUser; Správa. Text = "Názov produktu:"

V skutočnosti sa to isté dá urobiť pomocou prvej možnosti, to znamená v slučke pomocou počítadla:

Počet riadkov = TableProducts. Množstvo(); Pre počítadlo = 0 podľa počtu riadkov - 1 cyklus Riadok tabuľky = TableProducts[ Counter] ; Názov = Riadok tabuľky. Názov; Cena = TableRow. Cena; Správa = New MessageToUser; Správa. Text = "Názov produktu:"+ Názov + "; Cena: " + Cena; Správa. Ohlásiť() ; EndCycle ;

Ale ako vidíme, použitie prechodu zberných prvkov je oveľa jednoduchšie a pohodlnejšie

Pomocní operátori

Často nastáva situácia, že v závislosti od niečoho 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, ktorá nasleduje po slučke. Ak potrebujete prejsť na ďalšiu iteráciu, musíte použiť operátor ďalej. Potom sa riadenie prenesie na začiatok slučky. Ukážme si to na malom príklade:

For Counter = 0 By 100 Cycle If Counter = 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ôžete deliť nulou. A cyklus sa pre hodnoty premennej vykoná celkovo päťkrát Počítadlo od 0 do 4

1. Čo je to jazyk 1C?
2. Metódy, premenné, iné jazykové konštrukcie.

Čo je to jazyk 1C?

Akýkoľvek programovací jazyk je navrhnutý tak, aby dal programu pokyn na vykonanie akcií, ktoré potrebujeme. Písanie kódu je ako písanie inštrukcií, v nich špecifikujeme, čo máme robiť a v akom poradí. Všetky spustiteľné konfiguračné kódy môžu byť umiestnené iba v moduloch, zvážme hlavné 4 typy:

1. aplikačný modul

2. spoločné moduly

3. objektový modul

4. modul formulára.

V rôznych typoch modulov sa kód vykonáva v rôznych fázach vykonávania programu. V aplikačnom module môže byť kód spustený pri spustení alebo zatvorení programu, v bežných moduloch počas volaní z iných modulov, v objektovom module - počas akcií s objektom (vytvorenie, úprava, vymazanie), vo formulárovom module - počas akcie na formulári. Čo môžete použiť pri písaní kódu:
Premenné, objekty a ich detaily, nami vytvorené metódy (programátori 1C) a systémové (zabudované v platforme), ako aj vstavané jazykové konštrukcie.

Metódy, premenné, jazykové konštrukcie

Premenné sa používajú na ukladanie údajov počas relácie používateľa. Premenná je slovo, ktoré sa začína písmenom (ruština alebo angličtina) alebo podčiarkovníkom „_“ a skladá sa z písmen, číslic a podčiarkovníkov.
Napríklad :

  • Toto je premenná
  • _Toto je premenná
  • _Toto je 1_Premenná

Skutočnosť, že písmená môžu byť ruské a anglické, môže hrať krutý vtip pri použití písmen s podobným dizajnom z rôznych jazykov.

Neberie sa do úvahy veľkosť písmen v kóde, t.j. premenné „Variable1“ a „VARIABLE1“ sú pri vykonávaní kódu programu rovnaké. Je žiaduce, aby názvy premenných boli zmysluplné. To zlepšuje čitateľnosť kódu.

Predmety a detaily sa čítajú a menia počas práce s údajmi.
Objekt je súbor údajov zoskupených podľa určitej charakteristiky. Zvyčajne objekty v informačnú základňu je odrazom dokumentov, zoznamov údajov, enumerácií hmotného sveta. Údaje o objekte v podstate uchovávajú údaje.

Napríklad: Objekt „Doklad o predaji č. 00018 zo dňa 01.01.2005“.
Tento doklad o predaji môžeme odlíšiť od iných dokladov o predaji na základe podrobností, ktoré obsahuje. Toto je atribút „Number“ s hodnotou „00018“( zadajte reťazec ) a atribút „Dátum“ ( zadajte dátum ) s hodnotou „01/01/2005“. Jediná vec, ktorú sme mohli určiť z objektu bez toho, aby sme poznali hodnoty jeho detailov, bol jeho typ „Sales Receipt“.
Metódy sú malé a zvyčajne úplné pokyny.

Napríklad systémová metóda „CurrentDate ()“ Už z názvu je jasné, že sa vráti aktuálny dátum počítač. Alebo povedzme, že môžete vytvoriť metódu “ StringContainsNumber(Kontroluje sa reťazec)“, ktorý vráti odpoveď Pravda alebo Klamať, tu odovzdávame parametre v zátvorkách t.j. dáta, na ktorých musí metóda vykonávať nejaké akcie. Obidve uvažované metódy sú funkciami; Je medzi nimi jeden rozdiel Funkcia musí vrátiť hodnotu.

Iné jazykové konštrukcie (operátory, kolekcie hodnôt atď.) sú slová vyhradené systémom 1C, ktoré pomáhajú manipulovať s údajmi.

Napríklad :

Pre každý prvok kolekcie z názvu kolekcie EndCycle cyklu;

Príklad ukazuje návrh na iteráciu prvkov kolekcie. Tento dizajn sa nazýva cyklu . Väčšina typov objektov, ako aj ich podrobnosti, sú kolekcie, ktoré možno opakovať vyššie uvedeným spôsobom a pristupovať k prvku kolekcie zadaním jej indexu (CollectionName[0]). Všetky kolekcie začínajú prvkom, ktorého index = 0.