1s 8 perioodiline teabemuutuste register dokumentide kaupa. Mõõtmed, ressursid ja üksikasjad

1C-s on mitut tüüpi registreid:

  • Kogumid, mis salvestavad saldosid või käivet numbrilisel kujul;
  • Palgaarvestuseks kasutatakse tavaliselt arvutustüüpe ja arvutusi endid salvestavaid arvutusi;
  • Raamatupidamisdokumendid raamatupidamisarvestuse andmetega Dt-Kt kujul;
  • Inforegistrid.

Viimastel peatume lähemalt, kuna need võimaldavad andmebaasist andmeid koguda mõõtmise osade kaupa. Näiteks “Hinnanomenklatuur” salvestab andmed konkreetse kauba kohta ja omadused teatud tüüpi hinna kohta.

Joonis 1 “Hinnanomenklatuuri” register

Omadused

Register võib olla nii perioodiline kui ka mitteperioodiline, kui muudatuste jada pole vaja salvestada. Aga kui teil on seda siiski vaja salvestada, siis määratakse kindlaks, millise aja jooksul loob programm kontrolli kirjete unikaalsuse üle: sekundis, päevas, kuus, kvartalis ja aastas.


Joon.2 Sagedus ja salvestusrežiim

Kui proovite luua kaks kirjet sama perioodi jooksul, genereerib programm veateate "Selliste võtmeväljadega kirje on olemas!" ja ei luba teil andmebaasi kirjutada.

Samuti saate määrata salvestusrežiimi. Esimene on “Esitamisega registripidajale”, milles fikseeritakse kirjed dokumentide kaupa ja igas neist märgitakse registripidaja dokument. Kui valite teise - sõltumatu režiimi, siis salvestaja andmeid ei salvesta, vaid lisatakse näiteks otse loendist või töötlemisena.


Joon.3 Salvestusrežiimid

Perioodilise registri eripära on see, et saate kasutada viimaste või esimeste lõiku, saades andmebaasist valmis väärtused teatud kuupäeva viimase/esimese seatud väärtuse kohta.

1C teaberegistrisse kandmine

Registri ridu, millel on punkt ja salvesti, mis sisaldab teavet ressursside kohta mõõtmete järgi, nimetatakse kirjeteks.

Kirje registrisse lisamiseks kasutatakse kirjehaldurit või kirjekomplekti. Kui registrikirjetel on ühine võti, peate kasutama RecordSeti. Ja ühe kirje salvestamiseks, kui kõik registris olevad kirjed on kordumatud, peate kasutama kirjehaldurit.

Kirje näide Information RegisterRecordSet objekti kasutamisel.

Salvestushalduri kasutamine:

NewRecord = Inforegistrid.Valuutakursid.CreateRecordManager(); NewRecord.Currency = Directories.Currencies.FindByName("USD"); NewRecord.Period = Kuupäev(31,12,2016); NewRecord.Kursus = 100; NewRecord.Multiplicity = 1; NewRecord.Write();

Kui kasutate kirjekomplekti ja kirjutamismeetodit, kirjutatakse kirje kirjekomplekti teaberegistrisse. Sel juhul võib tekkida kas lihtsalt ridade lisamine või registris olemasolevate ridade asendamine. Sõltumatute registrite puhul ilma valikuid määramata kustutatakse kõik registri kanded ja asendatakse lisatud kannetega.

Kui kirjutate andmed alamregistrisse ilma seda valimata, tekib tõrge.

Näide kandest, mis kasutab registripidajale alluva hinnanomenklatuuri teaberegistri kannete kogumit:

NewRecordSet = Inforegistrid.Nomenklatuurihinnad.CreateRecordSet(); NewRecordSet.Selection.Register.Set(Link); NewRecordSet = NewRecordSet.Add(); NewDialRecord.Period = Link.Date; NewSetRecord.Nomenclature = Link.Nomenklatuur; NewSetRecord.Price = Link.Price; NewRecordSet.Write();

Salvestamise näide salvestushalduri kaudu:

Kirje = Teaberegistrid.Valuutakursid.CreateRecordManager(); Record.Period = kuupäev; Entry.Course = Kursus; Record.Currency = valuuta; Kirjuta.Kirjuta();

Otsi ja loe inforegistrit

Teaberegistrist kande leidmiseks ja lugemiseks on vaja päringute abi. Näiteks peame hankima teatud registripidaja poolt sisestatud hinnad:

VALI Nomenklatuur Hinnad.Nomenklatuur, Nomenklatuurhinnad.Hind ALAST Registriteave.Nomenklatuurihinnad KUIDAS Nomenklatuurihinnad KUS Nomenklatuurhinnad.Registripidaja = &Registripidaja

Kirjete muutmine ja kustutamine

Teaberegistri kande, näiteks kõigi EUR vahetuskursside kustutamiseks kasutage järgmist koodi:

Valiku struktuur = new Structure("Currency", Directories.Currencies.FindByName("EUR")); Selection = Inforegistrid.Valuutakursid.Select(,Selection Structure); Kuigi Select.Next() LoopRecordManager = Select.GetRecordManager(); Select.GetRecordManager().Delete(); EndCycle;

Registri kiireks ja täielikuks tühjendamiseks võite kasutada järgmist koodi:

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

Registri kohandamiseks ja muutmiseks, samuti registri kiireks täitmiseks andmetega saab kirjutada universaalse töötluse.

Seda rakendatakse kirjalike funktsioonide massiivi kujul. Need peavad vastama platvormil aktsepteeritud parameetritele (mõõtmise tüübid). Kus ja kuidas neid säilitatakse, samuti kuidas lisada või kustutada 1C teaberegistri kirjet?

Mis on teave?

Arendaja kasutatavate objektide koostis on rangelt seotud platvormi endaga ja seda ei saa muuta. Samuti pole võimalik oma objekte luua – opereerida saab vaid platvormil juba olemasoleva komplektiga.

See struktuur võimaldab meil protsessi standardida. Teisest küljest võimaldab see saadud lahendusi teistel spetsialistidel muuta.

Standardsed konfiguratsiooniobjektid sisaldavad ka teaberegistrit (inglise keeles). Selle ülesanne on salvestada mõõtmiste kontekstis suvalised andmed.

Näiteks vahetuskursid - valuuta järgi, hinnad - hinnaliigi järgi või nomenklatuuri järgi jne.

Struktuur

Andmed 1C-s salvestatakse kirjete kujul (registreerimine, inglise keel). Igaüks neist sisaldab mõõtmiste tüüpi (jaotisi) ja vastavaid ressursside väärtusi.

Näiteks võib register "Tootehinnad" sisaldada dimensioone "Toode" ja "Hinnatüüp" (jaotised) ning ressursid sisaldavad väärtust "Hind". Seega areneb selle struktuur:

Ja kirjed ise Kauba hinnad näevad välja järgmised:

Ladustamiseks Lisainformatsioon Iga registreerimise kohta on "Üksikasjad".

Perioodilisus

Staatiliste andmete muudatuste aja jooksul jälgimise võimaldamiseks on registreerimisel väli „Periood”. See on ka täiendav osa analüüsi jaoks. Sagedusväärtust saab valida:

Sagedusväärtuse valimine

1C teaberegistrisse (nende muudatused) saab sissekandeid teha käsitsi. Need muutuvad automaatselt ka dokumentide loomisel.

Viimasel juhul värskendatakse iga registreerimist spetsiaalse väljaga, et salvestada selline genereeriv dokument.

Võimalik on valida režiim. Näiteks režiim "Registripidajale esitamine" põhjustab vormistamisdokumentidele range lingi.

Näiteks hindade muutmiseks peate looma spetsiaalse dokumendi - "Muuda hindu".

Rekordite ainulaadsus

Konfliktide vältimiseks on iga kirje kordumatu. Selle määrab süsteemi poolt automaatselt genereeritud võti. See võti sõltub väljadele kirjutatud väärtustest ja sellest, millist tüüpi registrisse andmed on kirjutatud.

Selle loomiseks võetakse kolm väärtust - salvesti väärtus (alam või mitte-alluv), perioodi väärtus (perioodiline või mitteperioodiline) ja mõõtmisväärtus.

Redigeerimine

Andmete esitamiseks on (vaikimisi) sisseehitatud vormid (kuigi arendaja saab ise luua). Näiteks loendi vorm:

Tänu sellele saab kasutaja võimaluse vaadata, otsida, kustutada/lisa andmeid ning ka tühjendada 1C inforegistrit.

Sisselogimiseks ja töötamiseks eraldi sissekanne Selle esitamiseks on vorm:

Valuutakursi redigeerimine 1C-s

Nende vormide kaudu arendajale delegeeritud võimalused:

  • Kustutage, muutke, lisage 1C-s registrisse kanne;
  • Mitmepoolne, mitmekülgne sorteerimine mõõtmiste järgi ajavahemikes ja salvestite järgi.

Selles väljaandes õppisite üksikasjalikult erinevaid 1C registreid ja õppisite nendes olevat teavet töötlema.

1C 8 teaberegister on metaandmete objekt, mis on loodud viiteteabe salvestamiseks arendaja määratletud mõõtmete kontekstis.

Teaberegistri kasutamise tüüpiline näide on valuutakursside ja perioodide kaupa teabe salvestamine.

Vaatame lähemalt inforegistri atribuute ja seadistusi.

Konvergentsiregistri kaks peamist omadust on − Perioodilisus Ja Salvestusrežiim.

Need on teaberegistri ainulaadsed omadused, mida ühelgi teisel metaandmeobjektil ei ole. Vaatame neid lähemalt.

See omadus võimaldab teil mõõtmete loendisse lisada täiendava dimensiooni - Periood. Tema abiga saate lahendada suur hulkülesanded: teabe salvestamine andmebaasi, võttes arvesse selle asjakohasust teatud kuupäeval. Perioodide kasutamise kohta on palju rakenduslikke näiteid: valuuta väärtuse salvestamine iga päeva kohta, kauba hinna salvestamine jne.

Sagedus võib võtta järgmisi väärtusi:

  • Mitteperioodiline
  • Sekundi jooksul
  • Ühe päeva jooksul
  • Kuu aja jooksul
  • Ploki piires
  • Aasta jooksul

Hankige 267 videotundi 1C-s tasuta:

Kui valite muu perioodilisuse kui suvand Mitteperioodiline, kontrollib süsteem kirjete kordumatust määratud ajavahemiku jooksul. Kui kirje pole ainulaadne, kuvab 1C süsteem teate ja ei luba teil andmebaasi kirjutada.

Perioodilise teaberegistri üks peamisi omadusi on võimalus saada valmisväärtusi "Esimese lõikamine" ja "Viimase lõikamine". See teave võimaldab teil väga kiiresti saada andmebaasist teavet konkreetse kuupäeva viimase (esimese) seatud väärtuse kohta.

Teabe register Kirjutamisrežiim

Punktides 1C 8.2 ja 8.3 võib see atribuut olla kas "sõltumatu" või "registripidajale esitamine". Esimesel juhul saab kandeid teha nii programmiliselt kui ka inforegistri loendivormilt. Teisel juhul on vaja märkida dokument, mis kannet fikseerib. See seab teatud piirangud, kuid samal ajal avab uusi võimalusi.

Üksikasjad Registreeri mõõtmete omadused

Samuti peaksite tähelepanu pöörama teaberegistri mõõtmisomaduste paletile 1C 8.3. Eriti juhtiva ja põhivaliku lippude jaoks:

  • Saatejuht— mõõtmise omadus, mis annab mõista, et ilma selle mõõtmise väärtuseta pole registrikandel mõtet. Tegelikult tähendab see seda, et kui süsteem dimensioonist väärtuse kustutab, kustutab see ka registrikirje dimensiooniga “Juhtiv”. Määrata saab ainult ühe mõõtmise.
  • Peamine valik— kui register on sõltumatu, kasutatakse neid mõõtmisi vahetusplaani muudatuste registreerimise kindlaksmääramiseks. Sarnane kasutus Põhivalik perioodide kaupa sisaldab perioodiliste registrite põhivalikut.

Programmi sisestamine teaberegistrisse 1C

Uute kirjete lisamiseks teaberegistrisse on kaks võimalust: kirjehalduri ja kirjekomplekti abil. Esimene juhtum sobib ühe plaadi jaoks, teine ​​- kahe või enama plaadi jaoks.

Salvestushalduri kasutamine:

NewRecord = Inforegistrid.Valuutakursid.CreateRecordManager();
NewRecord.Currency = Directories.Currencies.FindByName("USD");
NewRecord.Period = Kuupäev(31,12,2016);
NewRecord.Kursus = 100;
NewRecord.Multiplicity = 1;
NewRecord.Write();

1C teaberegistri kirjete komplekti kasutamine:

NewRecordSet = Inforegistrid.Valuutakursid.CreateRecordSet();
//kui valikut ei sea, kustutatakse kõik inforegistri kanded
NewRecordSet.Selection.Currency.Set(Dollar, True);
NewRecordSet.Selection.Period.Set(Kuupäev(31/12/2016), Tõene);
//moodustab seatud kirje otse
NewRecordSet = NewRecordSet.Add();
NewSetRecord.Currency = Directories.Currencies.FindByName("USD");
NewDialRecord.Period = Kuupäev(31.12.2016);
NewSetRecord.Course = 100;
NewSetRecord.Multiplicity = 1;
NewRecordSet.Write();