Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Zanimljiv
  • 1s 8 periodični registar promjena podataka po dokumentu. Pretraživanje i čitanje registra podataka

1s 8 periodični registar promjena podataka po dokumentu. Pretraživanje i čitanje registra podataka

Registar informacija 1C 8 je objekt metapodataka dizajniran za pohranu referentnih informacija u kontekstu dimenzija koje je definirao programer.

Tipičan primjer korištenja informacijskog registra je pohranjivanje podataka o tečajevima po valutama i razdobljima.

Pogledajmo pobliže svojstva i postavke registra informacija.

Dva glavna svojstva registra konvergencije su − Periodičnost I Način snimanja.

Ovo su jedinstvena svojstva registra informacija koja nema nijedan drugi objekt metapodataka. Pogledajmo ih pobliže.

Ovo svojstvo omogućuje vam dodavanje dodatne dimenzije na popis dimenzija - Razdoblje. Uz njegovu pomoć možete riješiti veliki broj problema: pohranjivanje informacija u bazu podataka, uzimajući u obzir njihovu relevantnost na određeni datum. Postoje mnogi primijenjeni primjeri korištenja razdoblja: pohranjivanje vrijednosti valute za svaki dan, pohranjivanje cijene artikla itd.

Frekvencija može poprimiti sljedeće vrijednosti:

  • Neperiodično
  • Unutar sekunde
  • U roku od jednog dana
  • Unutar mjesec dana
  • Unutar bloka
  • U roku od godinu dana

Besplatno nabavite 267 video lekcija o 1C:

Ako odaberete periodičnost koja nije opcija Neperiodično, sustav će kontrolirati jedinstvenost zapisa unutar navedenog vremenskog razdoblja. Ako zapis nije jedinstven, 1C sustav će prikazati poruku i neće vam dopustiti pisanje u bazu podataka.

A jedna od glavnih značajki registra periodičnih informacija je mogućnost dobivanja gotovih vrijednosti "Cut of first" i "Cut of last". Ove informacije vam omogućuju da vrlo brzo iz baze podataka dobijete podatke o zadnjoj (prvoj) postavljenoj vrijednosti na određeni datum.

Način pisanja registra informacija

U 1C 8.2 i 8.3 ovo svojstvo može biti "Neovisno" ili "Podnošenje registraru". U prvom slučaju upisi se mogu provoditi i programski i iz popisnog obrasca informacijskog registra. U drugom slučaju potrebno je naznačiti ispravu kojom se bilježi upis. To nameće određena ograničenja, ali u isto vrijeme otvara nove mogućnosti.

Detalji Registrirajte svojstva dimenzija

Također biste trebali obratiti pozornost na paletu mjernih svojstava registra informacija 1C 8.3. Posebno za zastavice za vodeći i glavni odabir:

  • Prezenter— svojstvo mjere koje implicira informaciju da bez vrijednosti te mjere upis u registar nema smisla. Zapravo, to znači da kada sustav izbriše vrijednost iz dimenzije, briše i unos u registru s "Vodećom" dimenzijom. Može se postaviti samo jedno mjerenje.
  • Glavni izbor— ako je registar neovisan, ta će se mjerenja koristiti za utvrđivanje registracije promjena za plan razmjene. Slična uporaba Glavni izbor po razdoblju uključuje glavni odabir razdoblja za periodične registre.

Unos programa u registar informacija 1C

Postoje dva načina dodavanja novih zapisa u registar informacija: korištenjem upravitelja zapisa i korištenjem skupa zapisa. Prvi slučaj je prikladan za jedan zapis, drugi - za dva ili više zapisa.

Korištenje upravitelja snimanja:

NewRecord = Podaci o registrima.Currency Rates.CreateRecordManager();
NewRecord.Currency = Directories.Currencies.FindByName("USD");
NewRecord.Period = Datum(31,12,2016);
NewRecord.Course = 100;
NewRecord.Multiplicity = 1;
NewRecord.Write();

Korištenje skupa zapisa registra informacija 1C:

NewRecordSet = Podaci o registrima.Currency Rates.CreateRecordSet();
//ako ne postavite odabir, brišu se svi unosi u informacijskom registru
NewRecordSet.Selection.Currency.Set(Dollar, True);
NewRecordSet.Selection.Period.Set(Date(12/31/2016), True);
//formirajte postavljeni zapis izravno
NewRecordSet = NewRecordSet.Add();
NewSetRecord.Currency = Directories.Currencies.FindByName("USD");
NewDialRecord.Period = Date(12/31/2016);
NewSetRecord.Course = 100;
NewSetRecord.Multiplicity = 1;
NewRecordSet.Write();

Registri je zbirka zapisa o objektima. Oni ne samo da pohranjuju atribute programskih objekata, već također bilježe kretanja prema tim parametrima. Njihova je svrha pohranjivanje podataka i izvješćivanje o određenim parametrima.

Parametri mogu varirati ovisno o vrsti informacija koje se pohranjuju. Tablice pohranjuju svojstva objekata. Na primjer, za trošak robe to će biti:

  • Ime
  • Proizvođač
  • Paket
  • Nabavna cijena

Rezultati obavljenih poslova u sustavu evidentiraju se u upisnicima. Svaki od dokumenata bilježi svoje rezultate. Takvi se unosi nazivaju Kretanja. Možete ih koristiti za sortiranje i usporedbu podataka.

Ako dodate dodatni vremenski parametar, npr. cijenu za određeni datum, tada se odabir može vršiti i po vremenskim razdobljima. Pohranjivanje informacija s vrijednošću razdoblja pomaže u strukturiranju i filtriranju potrebnih podataka.

Postavljanje registara informacija u 1C 8.3

Postavljanje tako dubokih programskih elemenata uglavnom je posao programera i korisnici ne moraju s njima raditi svaki dan. Ovisno o vrsti registra, pristup njemu može se nalaziti pod različitim kontrolnim gumbima odgovarajućeg podsustava.

Korisnicima u pravilu nije potrebna informacija o tome gdje se informacijski registar nalazi u 1s 8.3. Recimo samo da je glavni pristup njima u odjeljku Konfiguracije.

Kako napraviti unos u registar informacija u 1C 8.3

Upisi u upisnike rezultat su operacija u različitim dijelovima programa. Ali postoji prilika za trenutne promjene. Da biste to učinili, moguće je programski upisati u registar informacija 1C 8.3 (primjer neka bude analitika fluktuacija tečaja):

  • Upotrijebimo Upravitelj zapisa za izvođenje jedne radnje:

NewRecord = Podaci o registrima.Currency Rates.CreateRecordManager();

NewRecord.Currency = Directories.Currencies.FindByName("UA");

NewRecord.Period = Datum(30.07.2018);

NewRecord.Course = 50;

NewRecord.Multiplicity = 1;

NewRecord.Write();

  • Uzmimo Set of Records za nekoliko uvoda:

NewRecordSet = Podaci o registrima.Currency Rates.CreateRecordSet();

//Pažnja! Ovdje je važno navesti kriterije odabira. U suprotnom, svi prethodno napravljeni unosi će nestati.

NewRecordSet.Selection.Currency.Set(Hrivnia, True);

NewRecordSet.Selection.Period.Set(Date(07/30/2018), True);

//Sada možete početi snimati sam set

NewRecordSet = NewRecordSet.Add();

NewSetRecord.Currency = Directories.Currencies.FindByName("UA");

NewDialRecord.Period = Date(07/30/2018);

NewSetRecord.Course = 50;

NewSetRecord.Multiplicity = 1;

NewRecordSet.Write();

Kako izbrisati registar podataka u 1s 8.3

U programu 1s 8.3 dodavanje unosa u registar podataka je relativno jednostavno. Sada razmotrimo opciju uklanjanja. Uzmimo hipotetski scenarij u kojem trebate izbrisati podatke o organizaciji. U ovom slučaju, parametar Organizacija koja se briše imat će svoju vezu.

Izvodimo sljedeće radnje:

  • Kod 1C v 8.x
  • RecordSet = Informacijski registri.Organizacija Građevinski objekti.CreateRecordSet();
  • Recordset.Selection.Organization.Set(Organizacija za brisanje);
  • RecordSet.Write();

Nakon toga trebate stvoriti varijaciju skupa zapisa, gdje možete odabrati tvrtku koja je ista kao organizacija koju želite izbrisati. Rezultat je prazan skup zapisa. Da biste ga potpuno izbrisali, morate ga zapisati zamjenom. Stoga se sve informacije koje se namjeravaju izbrisati zamjenjuju praznim vrijednostima.

Imajte na umu da je uzorkovanje takvog skupa zapisa postavljeno samo na jednakost.

1C registri informacija to je strukturirani skup podataka s dimenzijama i resursima. Dizajniran za pohranu periodičnih informacija.

Periodičnost

Informacije se pohranjuju po dimenzijama i periodima. Možete postaviti učestalost registra informacija:

  • Neperiodično
  • od strane matičara
  • drugi
  • tjedan
  • mjesec
  • četvrtina

Učestalost je potrebna za odabir podataka iz registra za određeno vremensko razdoblje. Ako navedete učestalost, upisi u registar će se vršiti s razdobljem kada je upis izvršen. Recimo, ako pogledate registar “Cijene artikala”, možete vidjeti povijest promjena cijena, s kojim mjerama i u kojem vremenskom razdoblju je unos napravljen.

Periodičnost u informacijskim registrima potrebna je za informacije koje se mijenjaju tijekom vremena, na primjer: tečajevi, cijene proizvoda, popusti i marže na proizvode itd.

matičari

Ukoliko upis u očevidnik vršite pomoću isprave, potrebno je postaviti način unosa: „Dostava matičaru“ i odabrati ispravu kojom će se izvršiti upis u upisnik. Tada će se u upisniku pojaviti polje “Matičar” u kojem će biti pohranjeni podaci kojim je dokumentom izvršen upis. Snimač se također može koristiti kao točka; da biste to učinili, u polju "Učestalost" označite - "Po snimaču". Subordinacija upisniku se vrši kada je potrebno striktno vezati upisnik uz ispravu, a ručna izmjena upisnika u upisniku postaje nedostupna.

Može postojati nekoliko dokumenata koji će djelovati kao registratori. Da biste dodali matičara, potrebno je otići na svojstva željenog registra informacija, otići na karticu “Matičari” i potvrditi okvire pored dokumenata koji će djelovati kao matičar.

Možete vidjeti pokrete koje diktafon čini iz dokumenta. Da biste to učinili, potrebno je otići na dokument koji vas zanima, kliknuti na: Idi – Kretanje dokumenata od strane matičara.

Ne zaboravite dodati prava u svojstvima registra; ona se mogu dodijeliti na kartici "Prava". Zatim u popisu uloga potrebno je odabrati ulogu kojoj želite dodati prava u registar te u popisu prava postaviti prava na odabranu ulogu.

Jedinstvenost zapisa

Jedinstvenost zapisa ovisi o razdoblju i mjerenjima. Na primjer, ako želite isti dan upisati zapis s istim mjerama u šifrant “Cijene artikala”, tada to nećete moći učiniti i program će izazvati pogrešku, jer je periodičnost očevidnika unutar jednog dana.

Ako učestalost postavlja matičar, ona također sudjeluje u jedinstvenosti zapisa.

Za neperiodične i nezavisne registre jedinstvenost ovisi o kombinaciji dimenzija.

Obrasci

Za pregled zapisa koristite obrazac liste, u njemu možete postaviti odabir prema poljima koja vas zanimaju, pregledati povijest zapisa i mijenjati ih kroz obrazac zapisa. Unose u registar možete pregledati na sljedeći način: u gornjem izborniku kliknite na gumb “Operacije” - “Informacijski registri”. U prozoru koji se otvori odaberite registar koji vam je potreban. Nakon toga otvorit će se obrazac popisa u obliku tablice, gdje je svaki unos jedinstveni unos.

Za uređivanje/izradu koristite obrazac evidencije, ako je evidencija podređena matičaru, tada polje neće biti dostupno i obrazac se ne može kreirati.

Obrasce je potrebno dodati u konfigurator tako da odete u registar informacija, u karticu „Obrasci“ i kliknete na „povećalo“ pored željene vrste obrasca. Zatim će se otvoriti prozor u kojem možete konfigurirati polja budućeg obrasca (mjesto, nazive i navesti funkcionalnost).


Dimenzije, sredstva i detalji

Dimenzije su namijenjene formiranju jedinstvenosti zapisa, u budućnosti ih možete odabrati i napraviti rez na temelju određene dimenzije. Kombinacija mjerenja tvori ključ zapisa. Bolje je ne stvarati veliki broj dimenzija tako da stol ne raste i ne usporava tijekom rada s njim.

Dimenzije imaju potvrdni okvir "Vodeći"; ako je označen, zapis će biti pohranjen u bazi podataka sve dok ova dimenzija postoji. Može se napraviti nekoliko vodećih mjerenja. Na primjer, u informacijskom očevidniku “Cijene artikala” vodeća dimenzija je artikl, ako izbrišete artikl koji je uključen u evidenciju, automatski se briše i unos u informatoru za taj artikl.

Resursi su dizajnirani za pohranjivanje sažetih informacija: količina, cijena itd. Ubuduće ćemo dobivati ​​sredstva za određeno vremensko razdoblje (ako je registar periodičan), prema mjerenjima.

Detalji su u većini slučajeva namijenjeni pohranjivanju dodatnih informacija, ne sudjeluju u jedinstvenosti zapisa. Na primjer, možete unijeti podatke kao što su autor, komentar itd. u detalje.

S registrom informacija možete izvršiti sljedeće radnje:

  • Brisanje unosa u registar informacija 1C

Osobitosti

— Jedinstvenost zapisa na temelju skupa dimenzija: svaki zapis u informacijskom registru je nova vrijednost resursa.

— Upisi u informator mogu biti periodični ili ne.

— Informacijski registar može biti ovisan i neovisan o matičaru.

— Moguće je napraviti presjek prvog i zadnjeg zapisa za željeni datum. To se provodi pomoću virtualnih stolova: “Slice of the First” i “Slice of the Last”. Da biste koristili ove tablice, možete koristiti i selekciju i upit (u dizajneru upita ćete odabrati ove virtualne tablice i možete napraviti upit na njima). Ove će tablice biti dostupne ako je registar informacija periodičan.

Upisnik “Cijene artikala” je periodični registar podataka, upisi se vrše prema upisniku.

Slika pokazuje da je učestalost postavljena na jedan dan. To znači da se cijena može promijeniti jednom dnevno na temelju jedinstvenih mjerenja tijekom dana.

Registar je podređen dokumentu „Određivanje cijena artikala“. To znači da upis u registar dolazi iz ove isprave. Kretanja po pojedinom dokumentu možete vidjeti iz obrasca dokumenta “Određivanje cijena artikala”.

Registar je namijenjen za pohranjivanje podataka o cijeni artikla, s dimenzijama “Vrsta cijene”, “Artikl” i “Karakteristike artikla”. Vodeća dimenzija su sva tri dimenzijska polja, na temelju njih će biti moguće vršiti odabire prilikom uzorkovanja.

Zaključak: Nakon čitanja članka, moći ćete stvoriti 1C registar informacija, dodati dimenzije i resurse, konfigurirati uređivanje i popis obrazaca. Stvorite zapis i odaberite postojeće zapise. Ako imate bilo kakvih pitanja, upotrijebite komentare u članku, pokušat ću brzo odgovoriti na vaše pitanje.

U 1C postoji nekoliko vrsta registara:

  • Akumulacije koje pohranjuju stanja ili promet u numeričkom obliku;
  • Izračuni koji pohranjuju vrste izračuna i sami izračuni obično se koriste za izračune plaća;
  • Knjigovodstvena evidencija s podacima o knjigovodstvenim obračunima u obrascu Dt-Kt;
  • Informacijski registri.

Detaljnije ćemo se zadržati na potonjem, jer nam oni omogućuju prikupljanje podataka iz baze podataka po mjernim dijelovima. Na primjer, "Nomenklatura cijena" pohranjuje podatke za određenu stavku i karakteristike za određenu vrstu cijene.

Slika 1 Registar “Nomenklatura cijena”.

Karakteristike

Registar može biti periodičan ili neperiodičan, kada nema potrebe za spremanjem slijeda promjena. Ali ako ga ipak trebate pohraniti, tada je određeno u kojem roku će program uspostaviti kontrolu nad jedinstvenošću zapisa: po sekundi, po danu, po mjesecu, po kvartalu i po godini.


Slika 2 Frekvencija i način snimanja

Ako pokušate stvoriti dva zapisa unutar istog razdoblja, program će generirati pogrešku "Postoji zapis s takvim ključnim poljima!" i neće vam dopustiti pisanje u bazu podataka.

Također možete odrediti način snimanja. Prvi je s “Dostavom matičaru”, u kojem će se evidencije voditi po ispravama iu svakoj od njih biti naznačena matična isprava. Ako odaberete drugi - neovisni način rada, tada se podaci ne bilježe na snimaču, već se dodaju, primjerice, izravno s popisa ili kao obrada.


Slika 3 Načini snimanja

Osobitost periodičnog registra je u tome što možete koristiti isječak zadnjih ili prvih, dobivajući gotove vrijednosti iz baze podataka o zadnjoj/prvoj postavljenoj vrijednosti za određeni datum.

Upis u registar informacija 1C

Redovi u registru s točkom i zapisničarom koji sadrže informacije o resursima u smislu dimenzija nazivaju se zapisima.

Za dodavanje zapisa u registar koristi se ili upravitelj zapisa ili skup zapisa. Ako unosi u registru imaju zajednički ključ, tada morate koristiti RecordSet. A za snimanje jednog jedinog zapisa, ako su svi zapisi u registru jedinstveni, morate koristiti Record Manager.

Primjer zapisa kada se koristi objekt Information RegisterRecordSet.

Korištenje upravitelja snimanja:

NewRecord = Podaci o registrima.Currency Rates.CreateRecordManager(); NewRecord.Currency = Directories.Currencies.FindByName("USD"); NewRecord.Period = Datum(31,12,2016); NewRecord.Course = 100; NewRecord.Multiplicity = 1; NewRecord.Write();

Kada koristite skup zapisa i metodu Write, zapis se upisuje u registar informacija skupa zapisa. U tom slučaju može doći do jednostavnog dodavanja redaka ili zamjene postojećih redaka u registru. Za nezavisne registre, bez odabira postavki, svi unosi u registar će biti izbrisani i zamijenjeni dodanim unosima.

Ako upisujete podatke u podređeni registar, a da ga niste odabrali, dolazi do greške.

Primjer unosa koji koristi skup unosa u registru informacija Nomenklature cijena koji je podređen registru:

NewRecordSet = Informacijski registri.Nomenklaturne cijene.CreateRecordSet(); NewRecordSet.Selection.Register.Set(Link); NewRecordSet = NewRecordSet.Add(); NewDialRecord.Period = Link.Date; NewSetRecord.Nomenclature = Veza.Nomenklatura; NewSetRecord.Price = Link.Price; NewRecordSet.Write();

Primjer snimanja putem upravitelja snimanja:

Zapis = Registri informacija. Tečajevi valuta. Kreiraj upravitelja zapisa (); Record.Period = Datum; Entry.Course = Tečaj; Record.Currency = Valuta; Napiši.Napiši();

Pretraživanje i čitanje registra podataka

Za pronalaženje i čitanje unosa u informacijskom registru potrebna vam je pomoć upita. Na primjer, trebamo dobiti cijene koje je unio određeni registar:

SELECT Nomenklaturne cijene.Nomenklatura, Nomenklaturne cijene.Cijena FROM Podaci o registru.Nomenklaturne cijene HOW Nomenklaturne cijene WHERE Nomenklaturne cijene.Registar = &Registar

Mijenjanje i brisanje unosa

Za brisanje unosa u registru informacija, na primjer svih tečajeva eura, upotrijebite sljedeći kod:

Struktura odabira = nova struktura ("Valuta", Direktoriji.Valute.FindByName("EUR")); Odabir = Registri informacija. Tečajevi valuta. Odabir(, Struktura odabira); Dok Select.Next() LoopRecordManager = Select.GetRecordManager(); Odaberite.GetRecordManager().Delete(); EndCycle;

Za brzo i potpuno brisanje registra možete koristiti sljedeći kod:

NewRecord = InformationRegisters.TestRegister.CreateRecordSet(); NewRecord.Write();

Za podešavanje i promjenu registra, kao i brzo popunjavanje registra podacima, možete napisati univerzalnu obradu.

Najbolji članci na temu