Despre baie - Tavan. Băi. Ţiglă. Echipamente. Reparație. Instalatii sanitare

Pavel Chistov. Rezolvarea problemelor de operare, contabilitate si calcule periodice 1c manual specialist pe platforma 8.3

Instruirea include:

Acest - curs la distanta (corespondenta)., care se desfășoară în format de suport prin intermediul site-ului, așa cum facem noi de 2 ani.

  • Nu este nevoie să călătorești oriunde– Poți studia acasă, la serviciu, pe drum – la fel de convenabil pentru tine
  • Primești materiale pentru descărcare în format video și poți viziona acest videoclip Oricând
  • Nu există webinarii, timpul de studiu obligatoriu sau orice restricții
  • Primești sarcini, vei avea timp să le lucrezi independent - și vom posta o soluție de referință. Dacă ceva din el rămâne neclar, vom fi bucuroși să explicăm de ce ne propunem să o facem în acest fel.
  • Veți putea să vă adresați întrebările antrenor pe site sau prin e-mail - și vă va răspunde pe site sau vă va înregistra un videoclip suplimentar. Și o vei avea doua luni.
  • Unele dintre problemele pe care le vom lua în considerare sunt alese de grup– Ne poți oferi o problemă care provoacă cele mai mari dificultăți – și o vom analiza
  • Acces la toate materialele - viaţă

Mai multe detalii mai jos...

Antrenor principal – Pavel Chistov

Pavel conduce cursuri de pregătire pentru certificare din 2008.

Cursul actual este versiunea din aprilie 2012, revizuită și extinsă.

Cui i se adreseaza acest training?

Cursul este destinat:

  • pentru specialiștii entry-level și mid-level în dezvoltarea și suportul configurațiilor pe platforma 1C:Enterprise 8 care se pregătesc să promoveze examenul de certificare
  • pentru ca șefii serviciilor și departamentelor IT să evalueze nivelul de pregătire al subordonaților acestora
  • Pentru cine nu este potrivit acest antrenament?

    Pentru programatorii începători care nu sunt familiarizați cu comportamentul sistemului 1C:Enterprise și nu au abilitățile de a scrie și proiecta în mod independent configurații.

    Dacă nu știți ce planuri de tipuri de caracteristici sunt, cum diferă registrul de acumulare de registrul de informații, atunci cursul nu este pentru dvs., urmați mai întâi cursurile inițiale.

    Scurta descriere

    Aceasta este a treia versiune a cursului de pregătire pentru certificare.

    Acest antrenament în prima sa versiune a început să se desfășoare în 2009. Pe parcursul cursului a fost elaborată următoarea schemă.

    Cursul constă într-o analiză a sarcinilor similare cu cele pe care 1C le folosește la examenul de certificare.

    Un număr mare de studenți își împărtășesc experiența de promovare a examenului și informații despre sarcinile și scenariile de sarcini sunt deosebit de populare în rândul examinatorilor.

    Pe baza informațiilor primite au fost pregătite pentru acest curs mai multe probleme, cât mai apropiate de problemele din colecția de probleme de pregătire pentru examenul de certificare emis de 1C - 2 probleme din fiecare parte a colecției.

    În plus, cursul examinează mecanismele formelor controlate - în aproape fiecare lecție. Cursul include și un videoclip despre crearea proceselor de afaceri.

    Total: 2 sarcini din fiecare parte a colecției (2 pentru sarcini operaționale, 2 pentru contabilitate, 2 pentru partea de calcul), se analizează lucrul cu formulare gestionate în cadrul cerințelor de certificare, principiile creării proceselor de afaceri suficiente pentru a trece certificarea examen sunt afișate.

    Toate rapoartele sunt scrise în SKD.

    Cursul este însoțit și de un text de muncă independentă, după rezolvarea căruia studentul poate merge la certificare fără teamă.

    Format, durata

    Asta este exact Instruire– interacțiunea dintre trainer și studenți este așteptată prin intermediul Master Group (nu se folosesc webinarii).

    Puteți adresa întrebări Grupului Master în orice moment, revizuim zilnic întrebările primite.

    Durata de preparare: 2 luni. În interior sunt 8 lecții, durata totală este de aproximativ 16 ore + 27 de ore de probleme și soluții „bonus”.

    Este posibil ca ora să fie ușor ajustată în sus.

    Principii de aranjare a sarcinilor

    La crearea sarcinilor, au fost luate ca bază scenarii din cele mai populare bilete întâlnite în timpul certificării.
    Cu toate acestea, din punct de vedere metodologic, sarcinile au fost ușor modificate. La rezolvarea unor probleme, cerințele au fost omise.

    Ar trebui explicată logica din spatele acestei decizii.

    La înregistrarea unui curs video, accentul principal este pus pe studenții cu un nivel inițial suficient de pregătire.

  • Se crede, de exemplu, că, dacă mecanismul de blocare controlată este afișat o dată, atunci, în sarcinile ulterioare, ascultătorul va putea reproduce independent un mecanism similar.
  • Se crede, de exemplu, că ascultătorul poate înmulți independent prețul cu cantitatea într-o formă controlată, poate crea un nou director sau registru de acumulare fără explicații.
  • De exemplu, într-o sarcină privind contabilitatea operațională, elementele privind implementarea contabilității loturilor folosind ambele metode FIFO și LIFO au fost eliminate în mod deliberat din cerințe, studentul nostru ar trebui să poată sorta rezultatul unui eșantion de interogare în ambele direcții;)

    Lucrare finala:

    Textul lucrării finale independente este atașat cursului. Sarcinile din text nu sunt inferioare ca complexitate și nu depășesc sarcinile de certificare.

    După finalizarea cursului, studentul are toate abilitățile necesare pentru a rezolva această muncă. Lucrarea include și o scară de greșeli populare cu puncte de penalizare.

    În mod intenționat, munca independentă nu are o analiză video dacă nu ați reușit să rezolvați problema fără puncte de penalizare, urmăriți cursul din nou și încercați din nou;

    Descrierea detaliată a claselor

    Dacă publicația mea vă este de folos, nu uitați să-i acordați un plus :-)

    Iată un rubricator pentru toate sarcinile din colecție(o pagină care conține link-uri către fire de forum pentru fiecare sarcină)
    http://chistov.spb.ru/forum/16-969-1

    Ei bine, acum evoluțiile și notele mele pe care le-am creat în timpul procesului de pregătire.
    O sa incerc sa ma repet cat mai putin cu cele doua mentionate mai sus ultimul publicații.

    Asadar, haideti sa începem:


    Dacă susțineți examenul de la distanță, ar trebui să aveți două obiecte pe desktop la sfârșitul examenului:

    1. Încărcarea finală a bazei de informații (fișier dt)
    2. Notă explicativă

    Nu ar trebui să existe nimic altceva, fără copii intermediare etc.

    Asigurați-vă că scrieți o notă explicativă!
    În cazul unei sarcini vag formulate, asigurați-vă că scrieți acolo că ați ales exact așa și o variantă de soluție.
    De asemenea, în locurile cheie din cod, este mai bine să lăsați comentarii scurte, fără fanatism, dar acolo unde examinatorul poate avea întrebări, este mai bine să scrieți.

    Dar despre acest lucru vi se va spune în instrucțiunile pe care vi se vor da să le citiți înainte de examen.
    Este mai bine să știi dinainte)


    Utilizarea caracterului ampersand în interogări.

    Uneori este mai rapid să tastați de pe o tastatură suplimentară decât să comutați aspectul înainte și înapoi, economisind timp
    & = Alt+38

    *************************************************************************************************
    Utilizarea TimePoint() în Interogări

    În interogările la registrele de acumulare și contabilitate, este necesar să se utilizeze nu data documentului ca parametru tabel virtual (perioada), ci parametrul Moment, care este definit în cod după cum urmează:

    Moment = ?(Mod de trecere = Modul de înregistrare a documentului. Operațional, Nedefinit, Moment de timp());

    *************************************************************************************************
    La generarea deplasărilor documentului prin registru, chiar la începutul procedurii de procesare a detașării, este necesară ștergerea mișcărilor documentului curent prin registru.

    Codul este cam asa:

    Movement.RegisterName.Write = Adevărat; Movements.RegisterName.Clear();

    Este posibil ca în timpul procesului să fie necesară analizarea înregistrărilor din acest registru.
    Deci, pentru ca atunci când analizați înregistrările curente (cele vechi, înainte ca documentul să fie schimbat) cu siguranță să nu fie incluse în eșantion, puteți adăuga încă o linie la cele două rânduri de mai sus:

    Movement.RegisterName.Write();

    Sau, atunci când analizați înregistrările, indicați în mod explicit o limită care nu include momentul în timp al documentului curent.

    Dar peste tot am indicat pur și simplu construcția acestor trei linii:

    Movement.RegisterName.Write = Adevărat; Movements.RegisterName.Clear(); Movement.RegisterName.Write();

    *************************************************************************************************
    Există două moduri de a bloca datele, alegerea dintre ele depinde de metoda utilizată - veche sau nouă:

    1) Blocare controlată regulată, metodă veche de procesare a documentelor (obiect de blocare a datelor)

    Setați dacă soldurile sunt verificate mai întâi și apoi anulate.
    În cazul în care trebuie să avem niște informații din registru pentru a forma o mișcare.


    Exemplu:

    În document - cantitate, în registru - cantitate și sumă (cost)
    Deci, știm cantitatea de mărfuri din document - cât de mult am anulat, dar costul - nu.
    O putem afla doar din registru, dar pentru a ne asigura că nimeni nu schimbă registrul între momentul primirii soldurilor și momentul înregistrării mișcărilor, trebuie să blocăm registrul chiar înainte de a citi soldurile.
    Deci, în acest caz, este utilizat obiectul Data Locking. Și la crearea acestuia, este mai corect să indicăm prin ce dimensiuni blocăm registrul (de exemplu, în cazul nostru - doar după articolul specificat în document) - astfel încât să nu existe încuietori inutile și un alt utilizator să poată vinde altul articol.


    1. Setați o blocare utilizând obiectul Blocare date
    2. Citiți restul
    3. Verificăm posibilitatea de anulare
    4. Creăm mișcări, de exemplu, anulăm bunuri
    5. După postarea documentului, blocarea este eliminată automat (blocarea este valabilă ca parte a tranzacției de înregistrare și este eliminată automat de către sistem). Adică, nu este nevoie să deblochezi obiectul în mod special.

    2) Metodologie nouă de prelucrare a documentelor (folosind proprietatea LockForChange = True)

    Se folosește dacă nu avem nevoie de informații din registre pentru a forma mișcări și putem verifica dacă am intrat în negativ la anulare dacă, după înregistrare, ne uităm la soldurile din registru și vedem că sunt negative. . În acest caz, vom înțelege că am anulat prea mult și vom anula operațiunea de anulare.

    Exemplu:
    Să luăm în considerare operațiunea de vânzare a unui produs.
    În document - cantitate, în registru - doar cantitate
    Deci, știm cantitatea de mărfuri din document.
    Formăm mișcări cu cantitatea specificată în document și le înregistrăm. Apoi, citim registrul, ne uităm la solduri și analizăm dacă există unele negative. Dacă există, afișați o eroare și setați Refuz = Adevărat.

    Adică, secvența este astfel:
    1. Pentru a vă deplasa prin registru, setați proprietatea BlockForChange = True
    2. Creăm mișcări - anulăm bunurile
    3. Înregistrați mișcările
    4. Citiți registrul și asigurați-vă că nu există solduri negative. Dacă există, atunci au anulat excesul, dacă nu, atunci totul este în regulă.

    Deci, în acest caz, nu este nevoie să indicăm după ce dimensiuni trebuie să blocăm registrul.
    Pur și simplu setăm proprietatea BlockForChange la True înainte de a ne înregistra mișcările, de a forma mișcările și de a înregistra.
    Sistemul în sine va bloca registrul în momentul înregistrării în funcție de măsurătorile necesare, după ce am analizat ceea ce am înregistrat.
    Odată finalizată, blocarea va fi eliminată.

    Această opțiune (a doua) este mai simplă, se numește „noua metodologie de procesare a documentelor” și 1C recomandă utilizarea ei dacă este posibil și scade puncte dacă se folosește prima opțiune, dar în unele cazuri pur și simplu nu poate fi aplicată, iar prima opțiune cu este folosit obiectul Data Locking (vezi. exemplul de mai sus).

    Mai remarc ca indiferent de metoda aleasa miscarile trebuie curatate inainte de a lucra cu ele (vezi sfaturile anterioare)

    *************************************************************************************************
    Blocarea datelor (metoda de blocare nr. 1 din descrierea de mai sus)

    Blocarea controlată este necesară atunci când datele sunt citite și mișcările sunt efectuate pe baza acestor date
    Cea mai rapidă modalitate de a obține codul de blocare gestionat este să introduceți „Data Locking”, să apelați Syntax Assistant și să copiați pur și simplu exemplul de cod de acolo. Apoi schimbați-l pur și simplu cu numele registrului și dimensiunile dvs.

    Arata cam asa:

    Blocare = NewDataLock; Element de blocare = Locking.Add("Registrul de acumulare.MarfaInDepozite"); LockElement.Mode = DataLockMode.Exclusive; BlockingElement.DataSource = PM; Blocare Element.UseFromDataSource("Nomenclatură", "Nomenclatură"); Lock.Lock();

    *************************************************************************************************
    Este mai bine să numiți partea tabelară a documentelor pur și simplu „TC”

    Există doar o singură parte tabelară în 99% din documente. Un astfel de nume unificat pentru părțile tabulare va ajuta foarte mult la economisirea de timp, deoarece:
    1) Foarte scurt - scrie repede
    2) La fel pentru toate documentele, nu trebuie să vă amintiți cum se numește atunci când scrieți codul

    *************************************************************************************************
    Rezultatul interogării ar trebui verificat pentru a nu exista gol înainte de preluare sau încărcare în specificația tehnică.

    În general, am folosit eșantionarea în toate sarcinile.

    Eșantionarea este mai optimă pentru sistem în ceea ce privește performanța, deoarece este „ascuțită” doar pentru citirea datelor (spre deosebire de TK).

    Dar, în orice caz, înainte de metoda Select(), este mai bine să verificați rezultatul interogării pentru gol, acest lucru va reduce și mai mult încărcarea sistemului.

    Rezultat = Query.Run(); If Not Result.Empty() Then Select = Result.Select(TravelQueryResult.ByGrouping); ... EndIf;

    Și în cazul în care trebuie să obținem o singură valoare din cerere
    (de exemplu, doar metoda de anulare în conformitate cu politica contabilă stabilită pentru acest an):

    Rezultat = Query.Run(); If Not Result.Empty() Then Select = Result.Select(); Selection.Next(); Metoda de anulare a costurilor = Sample.Cost Write-Off Method; endIf;

    *************************************************************************************************
    Document „Operațiune” pentru o sarcină contabilă

    Este necesar să se creeze un document de operare pentru sarcinile contabile.

    Dezactivăm total postarea pentru aceasta (în proprietățile „Posting = Deny”), indicăm că face mișcări în registrul contabil și tragem mișcările în formular.

    *************************************************************************************************
    Prelucrarea promptă a documentelor:

    Trebuie să fie inclus:
    În operațional și contabil. contabilizarea documentelor trebuie să fie activată (cu excepția documentului „Operare”, vezi mai jos).

    Trebuie să fie oprit:
    în sarcinile de calcul nu are sens pentru un document de salarizare.

    Pentru documentul „Funcționare”, postarea ar trebui să fie complet dezactivată (în proprietățile documentului „Posting = Interzice”),
    deoarece scrie pur și simplu scrie date direct în registru atunci când scrie.

    *************************************************************************************************
    Condiție într-o cerere de forma „Fie nomenclatura specificată sau oricare, dacă nu este specificată”

    În interogări, apare următoarea sarcină: de exemplu, trebuie să selectați documentele cu o nomenclatură specificată sau toate documentele dacă nomenclatorul nu este specificat.
    Se rezolvă prin următoarea condiție din cererea în sine:

    Nomenclatură = &Nomenclatură SAU &Nomenclatură = Valoare(Directory.Nomenclature.EmptyLink)

    Dar ar fi mai optim și mai corect să transformăm această condiție (mulțumesc Yukon):


    Request.Text = Request.Text + "WHERE Nomenclature = &Nomenclature";

    endIf;

    Odată cu apariția modelului de obiect de interogare în 8.3.5, va fi posibil să adăugați o condiție mai sigur:

    Dacă ValueFilled(Nomenclatură) Atunci
    Query1.Selection.Add("Articol = &Nomenclatură");
    Request.SetParameter("Nomenclatură", Nomenclatură);
    endIf;

    *************************************************************************************************
    Îmbinarea tabelelor în interogări:

    Numărul total de înregistrări nu depinde de afișarea câmpului tabelului alăturat, depinde doar de relațiile configurate.
    Adică, câmpul tabelului atașat poate să nu fie afișat.

    Dacă doriți să atașați un tabel fără nicio condiție, atunci în fila de condiții scrieți pur și simplu condiția „ADEVĂRAT”.
    În acest caz, masa va fi unită exact.

    *************************************************************************************************
    Folosind planul tipurilor de caracteristici (PVC):

    1. Utilizare ca mecanism de descriere a caracteristicilor obiectelor.

    1.1. Cream PVC. Acestea vor fi Tipuri de Caracteristici (de exemplu, culoare, dimensiune, viteza max. etc.). În setări, selectați toate tipurile posibile de valori caracteristice și, dacă este necesar, creați obiectul de la punctul 1.2 și, de asemenea, indicați-l în setări.

    1.2. Pentru valori suplimentare de PVC, creăm un director subordonat Valori suplimentare ale caracteristicilor (sau pur și simplu Valori ale caracteristicilor).
    Va stoca caracteristicile dacă nu se află în directoarele existente. Este posibil să nu o creăm dacă toate caracteristicile de care avem nevoie sunt în directoare existente sau aceste valori pot fi reprezentate prin tipuri de date elementare. În setările PVC indicăm că acest director va fi folosit în scopuri suplimentare. valorile caracteristicilor.

    1.3. Creăm un registru de informații, care conectează de fapt trei obiecte:
    - Obiectul la care conectăm mecanismul caracteristicilor
    - Tip Caracteristici (tip PVC)
    - Valoarea caracteristicilor (tip - caracteristică, acesta este un tip nou care a apărut în sistem după crearea PVC-ului
    și descrierea tuturor tipurilor de date posibile pe care le poate lua o valoare caracteristică).
    În registrul de informații, indicăm că Tipul Caracteristic este proprietarul pentru Valoarea Caracteristică (link către parametrul de selecție), precum și conexiunea tip pentru Valoarea Caracteristică, din nou din Tipul Caracteristic.

    O altă caracteristică este că pentru fiecare tip de caracteristică creat, puteți specifica tipul de valoare caracteristică, dacă nu aveți nevoie de toate tipurile posibile pentru a descrie valoarea acestei caracteristici.

    2. Utilizarea PVC-ului pentru crearea unui mecanism subconto pentru registrul contabil .

    2.1. Cream tipuri PVC Subconto.

    2.2. Creăm un director subordonat ValuesSubConto (ca și în cazul caracteristicilor, acesta va conține valori subconto dacă nu există în alte directoare).

    2.3. Comunicarea se face folosind un plan de conturi.

    *************************************************************************************************
    Resurse registrului contabil:

    Suma - bilant,
    Cantitate - extrabilanț și asociat cu caracteristica contabilă Cantitativ

    *************************************************************************************************
    Tabele registrului contabil virtual:

    Cifra de afaceri: cifra de afaceri a unui singur cont
    TurnoverDtKt: cifra de afaceri între oricare două conturi, adică toate aceleași tranzacții pentru perioada respectivă.

    *************************************************************************************************
    Contabilitatea valutară pe registrele contabile - cum se implementează:

    Creăm un atribut contabil „monedă” în planul de conturi.
    În registrul contabil, creăm suplimentar:
    - Dimensiunea valutară (interzicerea valorilor necompletate, în afara bilanţului, atribut contabil - valută)
    - resursă CurrencyAmount (în afara bilanțului, atribut contabil - valută, va stoca suma în valută, adică 100 USD de exemplu)
    Toate.

    Astfel, structura registrului este:

    Masuri:
    - Moneda
    Resurse
    - Cantitate
    - Suma (suma în ruble)
    - CurrencyAmount (suma în valută)

    Astfel, contabilitatea valutară este doar o rafinare a contabilității convenționale în Republica Belarus, nu schimbă esența, de exemplu, Suma resursei
    (acolo, ca de obicei, suma este în ruble, indiferent dacă contul este în valută sau nu).
    Și dacă funcția de contabilitate valutară este dezactivată pentru cont, atunci aceasta este structura obișnuită a Republicii Belarus (resurse - doar cantitate și sumă).

    *************************************************************************************************
    Când setăm parametrii unui tabel virtual pentru a obține o felie din acesta din urmă, impunem condiții asupra dimensiunilor, și nu asupra resurselor.

    În caz contrar, vom obține nu o felie dintre cele mai recente, ci ultima înregistrare cu valoarea specificată a resursei - este posibil să nu fie ultima din setul de dimensiuni

    *************************************************************************************************
    Semnificația resursei și detaliile din registrul de calcul

    În registrele de calcul, crearea unei resurse face posibilă primirea acesteia la calcularea bazei folosind acest registru.
    Și chiar proporțional cu perioada dată, valoarea resursei va fi recalculată (dacă perioada de bază nu coincide cu periodicitatea registrului).

    Iar valoarea atributului este disponibilă numai în tabelul real al registrului de calcul, nu este disponibilă în tabelele virtuale.

    *************************************************************************************************
    Caseta de selectare „De bază” în proprietățile dimensiunii registrului de calcul
    Înseamnă că se va obține o bază din această dimensiune în viitor și servește pentru indexarea suplimentară a valorilor pentru acest câmp.

    *************************************************************************************************
    Defalcarea perioadei de valabilitate a concediului pe lună la înregistrarea seturi de înscrieri în registru,
    dacă vacanța este specificată în document într-o singură linie timp de mai multe luni simultan pe o singură linie:

    StartDateTecMonth = StartMonth(TexLineMainAccruals.ActionPeriodStart); CurrentMonthEndDate = EndMonth(TexLineMainAccruals.ActionPeriodStart); CurrentMonth = Data; WhileDateStartCurrentMonth<= НачалоМесяца(ТекСтрокаОсновныеНачисления.ПериодДействияКонец) Цикл Движение = Движения.ОсновныеНачисления.Добавить(); Движение.Сторно = Ложь; Движение.ВидРасчета = ТекСтрокаОсновныеНачисления.ВидРасчета; Движение.ПериодДействияНачало = Макс(ДатаНачалаТекМесяца, ТекСтрокаОсновныеНачисления.ПериодДействияНачало); Движение.ПериодДействияКонец = КонецДня(Мин(ДатаОкончанияТекМесяца, ТекСтрокаОсновныеНачисления.ПериодДействияКонец)); Движение.ПериодРегистрации = Дата; Движение.Сотрудник = ТекСтрокаОсновныеНачисления.Сотрудник; Движение.Подразделение = ТекСтрокаОсновныеНачисления.Подразделение; Движение.Сумма = 0; Движение.КоличествоДней = 0; Движение.График = ТекСтрокаОсновныеНачисления.График; Движение.Параметр = ТекСтрокаОсновныеНачисления.Параметр; Движение.БазовыйПериодНачало = НачалоМесяца(ДобавитьМесяц(Дата, -3)); Движение.БазовыйПериодКонец = КонецДня(КонецМесяца(ДобавитьМесяц(Дата, -1))); ДатаНачалаТекМесяца = НачалоМесяца(ДобавитьМесяц(ДатаНачалаТекМесяца, 1)); ДатаОкончанияТекМесяца = КонецМесяца(ДатаНачалаТекМесяца); КонецЦикла; КонецЕсли;

    *************************************************************************************************
    Construirea unei diagrame Gantt:

    Plasăm un element de tip „Diagrama Gantt” pe formular, îl numim DG, apoi creăm comanda „Generare” și scriem următoarele în modulul formular:

    &OnClient Procedura Generare(Comandă) GenerareOnServer(); Sfârșitul procedurii &Pe server Procedura GenerateOn Server() DG.Clear(); DG.Actualizare = Fals; Solicitare = New Request("SELECT |BasicAccrualsActualActionPeriod.Employee, |BasicAccrualsActualActionPeriod.CalculationType, |BasicAccrualsActualActionPeriod.ActionPeriodStart AS ActionPeriodStart, |MainAccrualsActualActionPeriod.Peri odActions.CAccrualsEnd ASFActions.CAccrualsEnd ActualPeriodActions AS MainAccrualsActualPeriodActions |WHERE |MainAccrualsActualPeriodActions.PeriodActions BETWEEN &StartDate AND &EndDate "); Query.SetParameter("StartDate", Period.StartDate); Request.SetParameter("EndDate", Period.EndDate); Selectare = Query.Run().Select(); While Selection.Next() Loop Point = DG.SetPoint(Selection.Employee); Series = DG.SetSeries(Selection.CalculationType); Valoare = DG.GetValue(Point, Series); Interval = Value.Add(); Interval.Start = Sample.PeriodActionStart; Interval.End = Sample.ActionPeriodEnd; EndCycle; DG.Actualizare = Adevărat; Sfârșitul procedurii

    De fapt, aici doar codul din buclă este important pentru noi, restul lucrurilor sunt auxiliare, tocmai am dat întreaga implementare a acestei subsarcini.
    În cerere, este important pentru noi să existe un angajat, tipul de plată, data de începere și data de încheiere a perioadei.
    Codul este de fapt foarte simplu, ușor de reținut, nu vă alarmați dacă vi se pare greoi

    *************************************************************************************************
    Procesarea intrărilor „inversare” în sarcinile de calcul:

    În procedura de procesare a tranzacțiilor (modul obiect), formăm toate mișcările, iar apoi dacă există înregistrări în alte perioade, le obținem astfel
    (sistemul le generează automat - ne ajută):

    Înregistrări de adăugare = Movements.MainAccruals.GetAddition(); // Nu este nevoie să înregistrați mișcările pentru a obține adăugarea

    Pentru fiecare linie tehnică din ciclul de adăugiri record
    Record = Movements.MainAccruals.Add();
    FillPropertyValues(Înregistrare, TechString);
    Record.RegistrationPeriod = TechString.RegistrationPeriodReversal;
    Record.ActionPeriodStart = TechString.ActionPeriodStartReverse;
    Record.ActionPeriodEnd = TechString.ActionPeriodEndReversal;
    Sfârșitul ciclului

    Și când calculați înregistrările, introduceți cecuri:

    Dacă TechMovement.Reversal Atunci
    CurrentMovement.Amount = - CurrentMovement.Amount;
    endIf;

    *************************************************************************************************
    Cum să determinați ce este inclus în angajamentele principale și ce este inclus în angajamente suplimentare în sarcinile de calcul.

    Dar acest lucru nu este întotdeauna 100% clar, există și cazuri mai complicate, deși sunt destul de multe;
    (de exemplu, un bonus care depinde de numărul de zile lucrătoare dintr-o lună - acesta este HE).

    Taxe de bază:
    Dacă tipul de calcul este dependent de orar (adică un registru de informații cu date calendaristice), atunci se referă la taxele principale.

    Exemplu OH:
    - Salariul
    - Ceva care se calculează din numărul de zile lucrătoare (și pentru asta trebuie să folosești un program): fie în perioada de valabilitate (cum ar fi salariul), fie în perioada de bază

    Costuri suplimentare:
    Ceea ce este considerat fie din suma acumulată, fie timpul LUCRAT (și nu norma!), fie nu depinde deloc - acesta este suplimentar. angajamente.

    Adică: angajamentele pentru calculul cărora se folosește standardul de timp (poate și un fapt) este OH și pentru care este nevoie de date reale sau deloc este DN.

    Sau cu alte cuvinte:

    Dacă VR utilizează un standard de timp, atunci perioada de valabilitate trebuie inclusă pentru VR.

    *************************************************************************************************
    Adăugați posibilitatea de a deschide secțiunea de ajutor încorporată „Lucrul cu cărți de referință” în forma de listă din directorul „Nomenclatură”.

    Rulați comanda pe formularul:

    &OnClient
    Ajutor pentru procedură (comandă)
    OpenHelp("v8help://1cv8/EnterprWorkingWithCatalogs");
    Sfârșitul procedurii

    Definim linia de secțiune după cum urmează:
    Accesați informațiile de ajutor ale obiectului de configurare (în configurator), scrieți un cuvânt, selectați-l, accesați meniul Elemente/Link și selectați secțiunea dorită din 1C Help, după care linkul este inserat automat. Pare complicat, dar în practică este ușor.

    *************************************************************************************************
    Implementarea interacțiunii între formulare, de exemplu, selecția:

    1. Din formularul curent, deschideți cel dorit folosind metoda „OpenForm()”, trecând structura cu parametri ca al doilea parametru (dacă este necesar). Al treilea parametru poate transmite un link către acest formular - ThisForm.

    2. În formularul deschis, în handlerul „When CreatedOnServer()”, putem prinde parametrii trecuți la pasul 1 prin „Parameters.[ParameterName]”. Formularul care a inițiat deschiderea acestui formular va fi accesibil prin identificatorul „Proprietar” (dacă a fost, desigur, specificat la pasul 1).

    Și cel mai important, funcțiile de export ale formularului de proprietar vor fi disponibile. Adică, putem apela funcția de export a formularului sursă și putem trece ceva acolo ca parametru pentru a procesa selecția. Și această funcție va completa deja ceea ce este necesar în formularul original. Există o singură avertizare - nu puteți trece un tabel de valori între procedurile client, dar îl putem plasa în stocare temporară și pur și simplu transmitem adresa VX, apoi o extragem din VX.

    *************************************************************************************************
    Ciclul de viață al parametrilor de formă

    Toți parametrii transferați în formular în momentul deschiderii acestuia sunt vizibili numai în procedura „When CreateOnServer”.
    Odată creați, toți parametrii sunt distruși și nu mai sunt disponibili în formular.
    Excepția este pentru parametrii care sunt declarați în editorul de formulare cu atributul „Parametru cheie”.
    Ele determină unicitatea formei.
    Acest parametru va exista atâta timp cât există forma în sine.

    *************************************************************************************************
    Folosind interfața Taxi

    În timpul dezvoltării, puteți seta interfața gestionată obișnuită 8.2 în proprietățile de configurare - acest lucru face totul mult mai compact și familiar.
    Acest lucru este valabil mai ales dacă închiriați de la distanță - rezoluția ecranului este foarte mică și este imposibil să faceți ceva cu interfața „taxi”.
    Nu uitați să puneți din nou „Taxi” când ați terminat!În caz contrar, examinatorul va deduce puncte!

    *************************************************************************************************

    PS: E Există subsarcini standard separate care sunt utilizate în toate sarcinile și acestea sunt pe care trebuie să le puteți rezolva (de exemplu, anularea pe loturi, utilizarea PVC (ei bine, acest lucru este cu adevărat rar) și altele). Și în toate sarcinile sunt pur și simplu repetate (undeva sunt niște subsarcini, altundeva, doar în combinații diferite). Mai mult decât atât, au promis de mult timp să lanseze o nouă colecție (dacă nu au făcut-o deja), în care ar trebui să fie mult mai multe probleme, adică nu are rost să memorezi soluții la probleme individuale, are sens să înveți cum să rezolvați subsarcini standard individuale, apoi veți rezolva orice problemă.

    PSS: Colegi, dacă are cineva alte informații utile despre pregătirea pentru examen și promovarea acestuia, vă rugăm să scrieți în comentarii și vom adăuga la articol.

    Practica studenților arată că trebuie să vă pregătiți pentru examene în avans. Examenul 1C: Specialistul este doar unul dintre acestea. Deschidem înregistrarea pentru un curs online de pregătire pentru certificare.

    Autorul și prezentatorul cursului este 1C: Centrul de Formare nr. 1 profesor Pavel Belousov. Susține examenul 1C:Specialist de 15 ani și este unul dintre dezvoltatorii acestuia. Este puțin probabil ca cineva să vă spună mai multe despre examen decât el.

    Caracteristicile cursului

    Accentul principal al cursului este pe practicarea tehnicilor de programare și configurare corectă metodologic, a căror stăpânire este testată la examen. In afara de asta:

    • cursul include două forme de transfer de materiale: înregistrare video și consultare online cu un trainer;
    • partea de curs este înregistrată și accesul la videoclip este oferit tuturor participanților la cursul online;
    • După fiecare consultare, participanții primesc teme pentru a consolida materialul acoperit. Implementarea lui este obligatorie!
    • Formatorul verifică fiecare sarcină și oferă feedback tuturor studenților.

    La sfârșitul cursului, studenții vor stăpâni tehnici de configurare în conformitate cu „Standardele de dezvoltare a configurației” și vor putea fi certificate ca specialist în platformă gratuit „1C: Enterprise 8.3”.

    Bonusuri pentru participanții la curs

    Infostart a oferit un set de bonusuri special pentru participanții la curs:

    • Pentru întreaga perioadă de studiu, accesul la catalogul Infostart este prevăzut cu o limită 20 de bani de început in cont. Acest abonament poate fi folosit pentru a descărca fișiere dintr-un set de publicații din acest proiect special
    • Cupon de reducere de 10% pentru orice curs postat în catalogul Infostart.
    • Încercarea gratuită de a certifica „1C: Specialist” pentru platformă „1C: Enterprise 8.3”(dacă aveți certificat „1C: Profesional” pentru platformă) la cel mai apropiat Centru de Examinare Certificat al companiei „1C”.

    Cost și timp

    Cursul se va desfășura în perioada 11 martie - 3 aprilie 2019. Constă din 11 cursuri online a câte 4 ore fiecare și 6 consultații suplimentare. Cursurile au loc conform programului: de la 17.00 la 21.00, ora Moscovei.

    Pregătirea a durat o lună și jumătate. Am trecut din prima încercare, dar a trebuit să muncesc din greu - apărarea a durat o oră și jumătate, a luat-o Pavel Stanislavovich Belousov (el este creatorul regulilor examenului, autorul problemelor din colecție, 15 ani de experiență, are o diplomă academică). Am sperat cu adevărat că îl vor lansa mai devreme și că aș putea adăuga șabloane de cod și să adaug subsisteme, dar nu s-a întâmplat un miracol.

    Biletele sunt acum aranjate aleatoriu, ceea ce înseamnă că prima sarcină poate fi din 5 bilete, a doua sarcină din 13 bilete și așa mai departe. 5 ore sunt alocate pentru tot. După ce te-ai hotărât asupra biletelor cel puțin o dată și înțelegând ce, unde, cum și pentru ce (aici vă vor ajuta soluțiile mele), puteți face acest lucru în aceste cinci ore.

    1.E Acest lucru vă va oferi posibilitatea de a vă exprima gândurile direct profesorului și de a vă certa cu el. Cine ştie? Poate că vei avea dreptate sau vei înțelege ceva pentru tine odată pentru totdeauna.

    2. Mulți oameni nu știu, dar pentru cele două mii de ruble pe care le costă examenul, aveți dreptul la un prânz gratuit (luați un cupon de la examinator și grăbiți-vă, s-ar putea să nu fie suficient pentru toată lumea).

    3. Intrarea/ieșirea din audiență este liberă, nu trebuie să ceri nimănui timp liber, te-ai ridicat în tăcere și te-ai dus la treaba ta.

    4. Nu este nevoie să descrieți toate acțiunile dvs. într-un fișier text (care este necesar pentru livrarea de la distanță). Acest lucru vă oferă mai mult timp pentru a rezolva singuri problemele.

    5. Dacă rezultatul dvs. este un C sau mai mare, veți primi imediat un certificat pe hârtie.

    Regula numărul 1:

    Faceți o copie de rezervă la fiecare zece minute!!! Platforma (și adesea mașinile nu au cea mai recentă versiune a platformei) se comportă ciudat în unele momente, s-ar putea să vă pierdeți o parte din munca și să fiți din nou să codificați.

    Articole Infostart și resurse terțe care m-au ajutat să înțeleg și să înțeleg toate subtilitățile și complexitățile examenului 1C: Platform Specialist:

    http://chistov.spb.ru/forum/16 - Ar trebui să începeți pregătirea de pe acest site. De asemenea, puteți găsi bilete actuale compilate de comunitate acolo.

    - Citiți cu atenție ce greșeli puteți face și ce vi se va întâmpla pentru asta.

    Veți învăța o mulțime de lucruri inteligente din următoarele publicații:

    - Note pentru promovarea cu succes .

    - Rezolvăm probleme legate de procesele de afaceri.

    - Model pentru rezolvarea problemelor proceselor de afaceri.

    - Rezolvăm probleme de calcul.

    Succes cu trecerea ta si fara griji!!!


    *procesele de afaceri nu sunt rezolvate în toate biletele, deoarece acestea sunt același tip de sarcini, iar rezolvarea aceluiași lucru de fiecare dată devine plictisitoare. Publicația nu conține textele biletelor în sine.

    Veți susține examenul 1C: Platform Specialist 1C: Enterprise 8 și doriți să obțineți rapid cazuri cheie pentru rezolvarea problemelor? Acest curs este ceea ce ai nevoie.

    Fără „apă”. Teoria doar în acele locuri în care deseori ridică întrebări. Cursul este practic.

    Peste 1000 de persoane au absolvit acest curs. Statisticile arată că, după finalizarea cursului, rata de promovabilitate este aproape de 90%, în timp ce încercările de a promova examenul prima dată fără pregătire sunt mai mici de 20%.

    Publicul cursului (Atenție, trebuie să citiți asta!)

    Cursul nu este destinat începătorilor. Dacă nu știți ce este subconto, de ce aveți nevoie de un plan de tipuri de calcul sau cum diferă o îmbinare stânga de o îmbinare completă, este prea devreme pentru a urmări acest curs.

    Conducător de curs - Pavel Chistov

    Metodist pentru platforma 1C: Enterprise 8.
    Profesor certificat 1C:TSSO.
    Manager de resurse pentru echipele de proiect.
    Unul dintre cei mai renumiți specialiști în predarea programării pe platforma 1C din Rusia și CSI,
    creatorul multor cursuri și webinarii populare.

    Programul cursului

    Cursul constă într-o analiză a 32 de probleme, dintre care majoritatea sunt identice cu cele de certificare.

    • 8 sarcini privind contabilitatea operațională, durata totală 7 ore 35 minute (sau 10 ore de formare)
    • 8 probleme de contabilitate, durata totală 7 ore 49 minute (sau 10,5 ore de curs)
    • 9 probleme de calcul, durata totală 9 ore 42 minute (sau 13 ore de predare)
    • 7 sarcini privind formularele gestionate și procesele de afaceri, durata 3 ore 34 minute (5 ore de instruire)

    Cum funcționează cursul

    Prețul cursului include suportul profesorilor timp de 31 de zile de la data achiziționării cursului.
    Cursul este susținut într-un forum închis, la care studenții vor avea acces după cumpărare timp de 31 de zile.

    Pentru a face cunoștință cu videoclipul, vă sugerez să vizionați integral primele două lecții:

    Cerințe de sistem

    Materialele video ale cursului sunt protejate împotriva copierii - folosesc un player securizat care conectează videoclipul la echipament și sistemul de operare. Puteți activa și vizualiza videoclipuri numai pe computere Windows. Activarea poate fi anulată din cauza modificărilor hardware sau a actualizărilor majore ale sistemului de operare. Abține-te de la actualizare pentru cele 31 de zile care sunt alocate pentru finalizarea cursului.

    Aproximativ 2/3 din curs este înregistrat pe platforma 8.2, acest lucru nu afectează în niciun fel relevanța materialelor, deoarece în sarcinile aplicate culoarea interfeței nu joacă niciun rol.

    Materialele video sunt furnizate într-un format protejat, redarea este posibilă numai sub sistemul de operare Windows, cu o placă video care acceptă suprapuneri. Dacă vă îndoiți că computerul dvs. poate reda materiale video, descărcați un program de testare sau contactați-ne pentru ajutor prin e-mail. Poștă .

    Activarea video se realizează atunci când există o conexiune la internet. Redarea video este posibilă numai pe computerul pe care a fost efectuată activarea. Nu sunt furnizate activări suplimentare. Redarea video în mașinile virtuale și sesiunile terminale nu este posibilă.



    Ți-a plăcut articolul? Imparte cu prietenii tai!
    A fost de ajutor articolul?
    da
    Nu
    Vă mulțumim pentru feedback-ul dumneavoastră!
    Ceva a mers prost și votul tău nu a fost numărat.
    Mulțumesc. Mesajul tau a fost trimis
    Ați găsit o eroare în text?
    Selectați-l, faceți clic Ctrl + Enter si vom repara totul!