1s endrer informasjonsregisteret programmatisk.

Dokumenter er essensen av regnskap i 1C. Hvert dokument har et resultat, for eksempel ankom +10 varer.

Rapporter – lar deg se resultatene. Disse resultatene oppsummeres og vises til brukeren.

Imidlertid er det mange dokumenter, og hvis det var nødvendig å oppsummere resultatene deres, ville det være for vanskelig. Derfor har en bedre måte blitt oppfunnet!

Dokumenter registrerer resultatene deres (kalt "bevegelser") i spesielle tabeller - 1C-registre, som selv oppsummerer resultatene slik at rapporten ganske enkelt viser de forhåndsberegnet totalsum.

I dag skal vi snakke om 1C-registre og deres bruk.

1c-registeret er en tabell, det samme som i Excel, hvert dokument skriver en eller flere linjer av sine bevegelser (resultater) med et tegn - pluss eller minus - inn i 1c-registeret. Dette betyr at summen av 1C-registeret er endret til tilsvarende tall.

Dokumentet som registrerte bevegelser i 1C-registeret kalles Registrar. Datoen og klokkeslettet for bevegelsen er lik (i 99 % av tilfellene) dokumentdatoen. Bevegelsesdatoen kalles perioden.

Hvert 1C-register tar vanligvis hensyn til bevegelsene til en bestemt katalog. For eksempel, 1C-registeret Varer på lager - bevegelser av varer (i form av 1C "nomenklatur") - hvor mange varer ankom lageret, hvor mange igjen. Registrer 1C Gjensidige oppgjør med motparter (kjøpere og leverandører) - bevegelser av kontrakter med motparter - hvor mye motparten skylder oss etter kjøpet eller hvor mye vi skylder ham etter betaling. Katalogen som registeret vedlikeholdes i, kalles hoveddimensjonen (analytikk) til 1C-registeret.

Selvfølgelig er det ingen som gjør én grunnleggende måling til 1C-registeret. Tross alt, hvis vi tar hensyn til bevegelsen av varer, er vi ikke bare interessert i hvilke varer som har redusert eller økt, men også for eksempel i hvilket lager. Derfor er det alltid tre til fem ekstra målinger "bare i tilfelle", som kan kalles tilleggsanalyse av 1C-registeret.

Hvordan bokføres et dokument gjennom registre?

Dokumenter bevegelser over 1C-registre

La oss se hvordan 1C-registre fungerer. Her har vi et varemottaksdokument, der vi ser at produktet Olje har kommet til Hovedlageret.

Når det gjelder logikk og matematikk, har dette dokumentet resultatet:

Kreml olje, Hovedlager +10 (stk)

La oss sjekke - er dette sant?

Dette menyelementet vil vise oss alle bevegelsene til dokumentet som det har gjort i registre. Som vi kan se, gjorde dokumentet bevegelser gjennom en hel haug med 1C-registre, i hver av dem registrerte det forskjellig informasjon (i samsvar med formålet med 1C-registeret). I følge 1C Varer i lagerregisteret foretok han konteringen som vi beregnet.

Hvordan ser det ut i 1C-registeret? La oss åpne 1C-registeret gjennom Operations-menyen.

1C-registeret er åpnet. Det er mye data i den. Vi vil foreta et utvalg kun basert på vårt dokument.

Som et resultat ser vi bevegelsen av dokumentet vårt gjennom 1C-registeret. Det samsvarer nøyaktig med det vi beregnet manuelt:

  • Pluss – type bevegelse (inntekt/utgift)
  • Registraren er vårt dokument
  • Aktivitet – denne bevegelsesstrengen er gyldig (dvs. ikke deaktivert)
  • Nomenklatur, hoveddimensjon
  • Lager, tilleggsdimensjon
  • Mengde, ressurs (det vil si antallet vi teller).

Hvis vi ikke velger etter dokument, men etter nomenklatur (på nøyaktig samme måte), vil vi se bevegelsene til alle dokumenter som påvirket denne nomenklaturen. Ett dokument - vi kjøpte varene. Den andre ble solgt. Selve 1C-registeret viser naturligvis ikke totalen - for dette må du bruke en rapport eller en spørring.

1C-registre er forskjellige (vi vil diskutere dette nedenfor). Oppslag til forskjellige 1C-registre ser også annerledes ut. Vi har nå sett på oppføringene i 1C akkumuleringsregisteret. Slik ser konteringene av vårt samme bilag ut i henhold til 1C regnskapsregisteret, som jobber ut fra 1C regnskaps(skatte)kontoplanen.

Hvorfor trengs 1C-registre?

1C-registre kommer i forskjellige typer. Hensikten med å bruke 1C-registeret avhenger av typen.

  • 1C informasjonsregistre
    Dette er en vanlig tabell, som i Excel. Den har ingen bevegelser (inntekter/utgifter). 1C informasjonsregisteret brukes vanligvis til å lagre ytterligere katalogdata. Ved å bruke 1C informasjonsregisteret kan du organisere
  • Regnskapsregistre 1C
    Fra brukerens side føres regnskap på regnskapskontoplanen. Faktisk føres regnskap i tabellen over 1C-regnskapsregistre, som er laget i sammenheng med 1C-kontoplanen.
  • 1C akkumuleringsregistre (1C balanseregister)
    Dokumentbevegelsestabell + og –, som automatisk beregner totalen i begynnelsen av perioden og totalen ved slutten av perioden. For eksempel var bevegelsen til Lopat-produktet +10, og deretter -8. Dette betyr at resten i begynnelsen var 0, og resten på slutten ble 2.

    1C akkumuleringsregisteret med "Saldo"-visningen betyr at bevegelser vil bli lagret (inntekter og utgifter, som også kalles "Omsetning") og i tillegg beregnes totaler automatisk (kalt "Saldo").

    1C-balanseregisteret brukes i tilfellet når katalogen logisk sett kan ha en rest. Når vi for eksempel tar hensyn til varebevegelsen, vil vi bruke 1C-balanseregisteret - vi kan tross alt si at det er 3 stykker av Lopat-produktet igjen.

  • Akkumulasjonsregistre 1C (revolusjonsregister 1C)
    Tabell over bevegelse av dokumenter + og -, som ikke teller totalen.

    1C omsetningsregisteret er ikke forskjellig fra saldoregisteret, bortsett fra at det ikke automatisk beregner saldoer.

    1C revolusjonsregisteret brukes i tilfellet når katalogen logisk ikke kan ha en rest. Skal vi ta hensyn til varesalg, så vil vi bruke omsetningsregisteret.

    For eksempel var produktsalget +10 (vi solgte) og deretter -2 (de returnerte til oss). Vi kan ikke si at salgsbalansen har blitt 8, for logisk sett eksisterer ikke begrepet salgsbalanse at den totale omsetningen (summen av hver omsetningslinje) har blitt 8.

  • 1C bosettingsregistre

    Tabell over bevegelser etter beregningstyper og perioder. Brukes i lønn (kalt komplekse periodiske beregninger).

Hvor er 1C-registrene plassert?

Utførelsen av et dokument i kode (i et program) er foreskrevet av programmereren. For å gjøre dette, åpne . Finn en linje som "Procedure ProcessingProcessing(". Åpne krysset og du vil se programmet for behandling av dette dokumentet.

Sette opp og utvikle 1C-registre

Hovedtrekk ved 1C-registre, etter fane:

Det er flere typer registre i 1C:

  • Akkumuleringer som lagrer saldo eller omsetning i numerisk form;
  • Beregninger som lagrer beregningstyper og selve beregningene brukes vanligvis til lønnsberegninger;
  • Regnskapsposter med data om regnskapsberegninger i form av Dt-Kt;
  • Informasjonsregistre.

Vi vil dvele ved sistnevnte mer detaljert, siden de lar oss kompilere data fra databasen etter måleseksjoner. For eksempel lagrer "Prisnomenklatur" data for en bestemt vare og egenskaper for en bestemt type pris.

Fig. 1 Register "Prisnomenklatur".

Kjennetegn

Registeret kan enten være periodisk eller ikke-periodisk, når det ikke er behov for å lagre endringssekvensen. Men hvis du fortsatt trenger å lagre det, bestemmes det innen hvilken periode programmet vil etablere kontroll over det unike ved postene: per sekund, per dag, per måned, per kvartal og per år.


Fig.2 Frekvens og opptaksmodus

Hvis du prøver å opprette to poster innen samme periode, vil programmet generere feilmeldingen "En post med slike nøkkelfelt finnes!" og vil ikke tillate deg å skrive til databasen.

Du kan også spesifisere opptaksmodus. Den første er med "Innsending til registraren", der poster vil bli registrert av dokumenter og i hver av dem vil registrardokumentet bli indikert. Hvis du velger den andre - uavhengige modusen, registreres ikke dataene av opptakeren, men legges til, for eksempel direkte fra listen eller som behandling.


Fig.3 Opptaksmoduser

Det særegne ved det periodiske registeret er at du kan bruke en del av de siste eller første, og hente ferdige verdier fra databasen om den siste/første innstilte verdien for en bestemt dato.

Innføring i 1C informasjonsregister

Rader i et register med punktum og opptaker som inneholder informasjon om ressurser når det gjelder dimensjoner, kalles poster.

For å legge til en post i et register, brukes enten en postbehandler eller et postsett. Hvis oppføringene i registeret har en felles nøkkel, må du bruke et RecordSet. Og for å registrere én enkelt post, hvis alle poster i registeret er unike, må du bruke Record Manager.

Et eksempel på en post ved bruk av objektet Information RegisterRecordSet.

Bruke opptaksbehandleren:

NewRecord = Information Registers.Currency Rates.CreateRecordManager(); NewRecord.Currency = Directories.Currencies.FindByName("USD"); NewRecord.Period = Dato(31,12,2016); NewRecord.Course = 100; NewRecord.Multiplicity = 1; NewRecord.Write();

Når du bruker et postsett og skrivemetoden, skrives en post til postsettets informasjonsregister. I dette tilfellet kan enten legge til linjer eller erstatte eksisterende linjer i registeret. For uavhengige registre, uten innstillingsvalg, vil alle oppføringer i registeret bli slettet og erstattet med tilføyde oppføringer.

Hvis du skriver data inn i et underordnet register uten å velge det, vil det oppstå en feil.

Et eksempel på en oppføring som bruker et sett med oppføringer i informasjonsregisteret Prisnomenklatur underordnet registraren:

NewRecordSet = Information Registers.Nomenclature Prices.CreateRecordSet(); NewRecordSet.Selection.Register.Set(Link); NewRecordSet = NewRecordSet.Add(); NewDialRecord.Period = Link.Dato; NewSetRecord.Nomenclature = Link.Nomenclature; NewSetRecord.Price = Link.Price; NewRecordSet.Write();

Et eksempel på et opptak via opptaksbehandleren:

Record = Information Registers.Currency Rates.CreateRecordManager(); Record.Period = Dato; Entry.Course = Kurs; Record.Currency = Valuta; Skriv.Skriv();

Søk og les informasjonsregister

For å finne en oppføring i informasjonsregisteret og lese den trenger du hjelp av spørringer. For eksempel må vi få priser oppgitt av en bestemt registrar:

VELG Nomenklaturpriser.Nomenklatur, Nomenklaturpriser.Pris FRA Registerinformasjon.Nomenklaturpriser HVORDAN Nomenklaturpriser HVOR Nomenklaturpriser.Registrar = &Registrar

Endring og sletting av oppføringer

For å slette en informasjonsregisteroppføring, for eksempel alle EUR-kurser, bruk følgende kode:

Selection Structure = new Structure("Valuta", Directories.Currencies.FindByName("EUR")); Utvalg = Informasjonsregistre.Valutakurser.Velg(,Utvalgsstruktur); While Select.Next() LoopRecordManager = Select.GetRecordManager(); Velg.GetRecordManager().Delete(); EndCycle;

For raskt og fullstendig å tømme registeret, kan du bruke følgende kode:

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

For å justere og endre registeret, samt raskt fylle registeret med data, kan du skrive en universell behandling.

1C informasjonsregistre det er et strukturert sett med data med dimensjoner og ressurser. Designet for å lagre periodisk informasjon.

Periodisitet

Informasjon lagres etter dimensjon og periode. Du kan stille inn frekvensen til informasjonsregisteret:

  • Ikke periodisk
  • av registrator
  • sekund
  • en uke
  • måned
  • fjerdedel

Frekvens er nødvendig for å velge informasjon fra registeret for en viss tidsperiode. Dersom du spesifiserer en frekvens, vil oppføringer i registeret bli gjort med perioden da oppføringen ble gjort. La oss si at hvis du ser på «Varepriser»-registeret, kan du se historien om prisendringer, med hvilke målinger og i hvilken tidsperiode oppføringen ble gjort.

Periodisitet i informasjonsregistre er nødvendig for informasjon som endrer seg over tid, for eksempel: valutakurser, produktpriser, produktrabatter og påslag mv.

Registratorer

Hvis du registrerer deg i informasjonsregisteret ved hjelp av et dokument, må du sette innføringsmodusen: "Innsending til registraren" og velge dokumentet som registreringen skal gjøres med i registeret. Da vil feltet «Registrar» dukke opp i registeret, hvor det vil bli lagret informasjon om hvilket dokument innførselen er gjort med. Opptakeren kan også brukes som en periode for å gjøre dette, angi i feltet "Frekvens" - "Ved opptaker". Underordning til registraren gjøres når det er nødvendig å strengt knytte et register til et dokument og endrede oppføringer i registeret manuelt blir utilgjengelige.

Det kan være flere dokumenter som vil fungere som registrarer. For å legge til en registrar, må du gå til egenskapene til det ønskede informasjonsregisteret, gå til fanen "Registrarer" og merke av i boksene ved siden av dokumentene som skal fungere som registrar.

Du kan se bevegelsene opptakeren gjør fra dokumentet. For å gjøre dette, må du gå til dokumentet du er interessert i, klikk: Gå – Dokumentbevegelser av registraren.

Ikke glem å legge til rettigheter i registeregenskapene de kan tildeles på fanen "Rettigheter". Så i listen over roller må du velge rollen du vil legge til rettigheter til registeret og i rettighetslisten sette rettighetene til for den valgte rollen.

Unikt av poster

Det unike med en post avhenger av perioden og målingene. Hvis du for eksempel vil skrive en post med samme mål i "Varepriser"-registeret samme dag, vil du ikke kunne gjøre dette og programmet vil forårsake en feil, siden registerets periodisitet er innen en dag.

Hvis frekvensen er fastsatt av registraren, deltar den også i postens unike karakter.

For ikke-periodiske og uavhengige registre avhenger unikhet av kombinasjonen av dimensjoner.

Skjemaer

For å se poster, bruk listeskjemaet, i det kan du sette utvalget i henhold til feltene du er interessert i, se historikken til poster og endre dem gjennom postskjemaet. Du kan se registeroppføringer som følger: i toppmenyen klikker du på knappen "Operasjoner" - "Informasjonsregistre". I vinduet som åpnes velger du registeret du trenger. Etter dette vil et listeskjema åpnes i form av en tabell, hvor hver oppføring er en unik oppføring.

For å redigere/opprette, bruk postskjemaet hvis posten er underordnet registraren, vil ikke feltet være tilgjengelig og skjemaet kan ikke opprettes.

Du må legge til skjemaer i konfiguratoren ved å gå til informasjonsregisteret, i «Skjemaer»-fanen og klikke på «forstørrelsesglasset» ved siden av ønsket type skjema. Deretter åpnes et vindu der du kan konfigurere feltene til det fremtidige skjemaet (plassering, navn og spesifisere funksjonalitet).


Dimensjoner, ressurser og detaljer

Dimensjoner er ment å danne det unike til en post i fremtiden, du kan velge dem og lage et kutt basert på en bestemt dimensjon. Kombinasjonen av målinger danner rekordnøkkelen. Det er bedre å ikke lage et stort antall dimensjoner slik at bordet ikke vokser og ikke bremser mens du arbeider med det.

Dimensjoner har en "Leading"-avmerkingsboks hvis det er merket av, vil posten bli lagret i databasen så lenge denne dimensjonen eksisterer. Flere ledende målinger kan gjøres. For eksempel, i informasjonsregisteret «Varepriser» er den ledende dimensjonen varen hvis du sletter en vare som er inkludert i posten, vil oppføringen i informasjonsregisteret for denne varen automatisk slettes.

Ressurser er laget for å lagre sammendragsinformasjon: mengde, pris osv. I fremtiden vil vi motta ressurser for en viss tid (hvis registeret er periodisk), i henhold til målinger.

Detaljer, i de fleste tilfeller, er ment å lagre tilleggsinformasjon de tar ikke del i det unike ved posten. Du kan for eksempel legge inn informasjon som forfatter, kommentar osv. i detaljene.

Du kan utføre følgende handlinger med informasjonsregisteret:

  • Sletting av en oppføring i 1C informasjonsregisteret

Egendommer

— Unikhet til poster basert på et sett med dimensjoner: hver post i informasjonsregisteret er en ny ressursverdi.

— Innføringer i informasjonsregisteret kan enten være periodiske eller ikke.

— Informasjonsregisteret kan være avhengig og uavhengig av registraren.

— Det er mulig å lage et tverrsnitt av første og siste post for ønsket dato. Dette er implementert av virtuelle tabeller: "Slice of the First" og "Slice of the Last". For å bruke disse tabellene kan du bruke både utvalg og spørring (i spørringsdesigneren velger du disse virtuelle tabellene og du kan lage en spørring på dem). Disse tabellene vil være tilgjengelige dersom informasjonsregisteret er periodisk.

"Varepriser"-registeret er et periodisk register over informasjon, oppføringer gjøres i henhold til registraren.

Bildet viser at frekvensen er satt til innen en dag. Dette betyr at prisen kan endres en gang i døgnet basert på målinger unike i løpet av dagen.

Registeret er underlagt dokumentet «Sett varepriser». Det betyr at innføringen i registeret kommer fra dette dokumentet. Bevegelser på et spesifikt dokument kan sees fra dokumentskjemaet "Angi varepriser".

Registeret er laget for å lagre informasjon om prisen på en vare, med dimensjonene "Pristype", "Vare" og "Vareegenskaper". Den ledende dimensjonen er alle tre dimensjonsfeltene det vil være mulig å gjøre valg basert på det ved prøvetaking.

Konklusjon: Etter å ha lest artikkelen vil du kunne opprette et 1C informasjonsregister, legge til dimensjoner og ressurser, konfigurere redigering og liste opp skjemaer. Opprett en post og velg eksisterende poster. Hvis du har spørsmål, bruk kommentarene i artikkelen, jeg vil prøve å raskt svare på spørsmålet ditt.

Registrerer er en samling poster om gjenstander. De lagrer ikke bare attributtene til programobjekter, men registrerer også bevegelser i henhold til disse parameterne. Deres formål er å lagre data og gi rapportering om visse parametere.

Parametrene kan variere avhengig av typen informasjon som lagres. Tabeller lagrer egenskapene til objekter. For varekostnadene vil det for eksempel være:

  • Navn
  • Produsent
  • Pakke
  • Kjøpesum

Resultatene av operasjoner utført i systemet registreres i registrene. Hvert av dokumentene registrerer resultatene. Slike oppføringer kalles Movements. Du kan bruke dem til å sortere og sammenligne data.

Hvis du legger til en ekstra tidsparameter, for eksempel prisen for en bestemt dato, kan valget også gjøres etter tidsperioder. Lagring av informasjon med en periodeverdi bidrar til å strukturere og filtrere nødvendige data.

Sette opp informasjonsregistre i 1C 8.3

Å sette opp slike dype programelementer er hovedsakelig jobben til programmerere og brukere trenger ikke å jobbe med dem hver dag. Avhengig av type register, kan tilgangen til det være plassert under forskjellige kontrollknapper til det tilsvarende delsystemet.

Vanligvis trenger ikke brukere å vite hvor informasjonsregisteret ligger 1s 8.3. La oss bare si at hovedtilgangen til dem er i konfigurasjonsdelen.

Slik legger du inn i informasjonsregisteret i 1C 8.3

Registreringer i registre er et resultat av operasjoner i ulike deler av programmet. Men det er en mulighet til å gjøre umiddelbare endringer. For å gjøre dette er det mulig å skrive til informasjonsregisteret 1C 8.3 programmatisk (la analysene av valutakurssvingninger være et eksempel):

  • La oss bruke Record Manager til å utføre én handling:

NewRecord = Information Registers.Currency Rates.CreateRecordManager();

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

NewRecord.Period = Dato(07/30/2018);

NewRecord.Course = 50;

NewRecord.Multiplicity = 1;

NewRecord.Write();

  • La oss ta et sett med rekorder for flere introduksjoner:

NewRecordSet = Information Registers.Currency Rates.CreateRecordSet();

//Merk følgende! Det er viktig å angi utvalgskriteriene her. Ellers forsvinner alle tidligere oppføringer.

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

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

//Nå kan du begynne å ta opp selve settet

NewRecordSet = NewRecordSet.Add();

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

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

NewSetRecord.Course = 50;

NewSetRecord.Multiplicity = 1;

NewRecordSet.Write();

Slik sletter du informasjonsregister i 1s 8.3

I programmet 1s 8.3 er det relativt enkelt å legge til en oppføring i informasjonsregisteret. La oss nå vurdere fjerningsalternativet. La oss ta et hypotetisk scenario der du må slette informasjon om organisasjonen. I dette tilfellet vil parameteren Organisasjon som skal slettes ha sin egen kobling.

Vi utfører følgende handlinger:

  • Kode 1C v 8.x
  • RecordSet = Information Registers.Organization Construction Objects.CreateRecordSet();
  • Recordset.Selection.Organization.Set(Organisasjonen som skal slettes);
  • RecordSet.Write();

Etter dette må du lage et variantsett med poster, hvor du kan gjøre et valg for selskapet som er det samme som Organisasjonen som skal slettes. Resultatet er et tomt sett med poster. For å slette den fullstendig, må du skrive den ned med erstatning. Dermed erstattes all informasjon som skal slettes med tomme verdier.

Merk at samplingen av et slikt sett med poster kun er satt til likhet.

Del med venner eller spar selv:

Laster inn...