Որոնք են տեղեկատվության պարբերական ռեգիստրները 1-ում: Տեղեկատվության պարբերական ռեգիստրներ. Խաղում ենք վերահաշվարկներով

Այս հոդվածը կքննարկի այնպիսի հայեցակարգ, ինչպիսին է 1C փաստաթղթերը, ինչպիսի կոնֆիգուրացիայի օբյեկտ է դա, որն է դրա նպատակը, ինչ մաքսային հատկություններ կան օբյեկտի համար. ինչպես է հնարավոր ինտերակտիվ և ծրագրային կերպով աշխատել այս օբյեկտի հետ:


Ցանկացած ձեռնարկության կյանքը հնարավոր չէ առանց շատ հաճախ տեղի ունեցող տարբեր տեսակի իրադարձությունների գրանցման: Այս իրադարձությունները կոչվում են բիզնես գործարքներ. 1C-ում բիզնես գործարքի գրանցումը փաստաթուղթ է։

Բիզնես գործարքների օրինակներ՝ ապրանքների ստացում պահեստում, ապրանքների դուրսգրում պահեստից, դրամական միջոցների ստացում դրամարկղում, աշխատողի ընդունում և այլն։

Այս բոլոր գործարքները պետք է փաստաթղթավորվեն համապատասխան թղթային փաստաթղթերում: 1C համակարգում գրանցված փաստաթղթային օբյեկտը հենց այս թղթային փաստաթղթի անալոգն է: Պետք է նշել, որ մենք ունենք առնվազն երկու տարբեր հաշիվներ։ Սրանք են կառավարման հաշվառումը և կանոնակարգված հաշվապահությունը: Կարգավորվող հաշվապահության մեջ բիզնես գործարք չի կարող գոյություն ունենալ առանց այն հաստատող փաստաթղթի: Կառավարման հաշվառման մեջ բիզնես գործարքի համար փաստաթղթի առկայությունը նախապայման չէ, քանի որ կառավարման հաշվառման մեջ կատարված գործարքների ցանկը կարող է բազմազան լինել: Այս դեպքում որոշ տեղեկություններ պարզապես գրանցվում են էլեկտրոնային փաստաթղթի տեսքով։

Այսպիսով, մենք ունենք թղթային փաստաթուղթ և էլեկտրոնային փաստաթուղթ: Նրանց միջև պետք է անալոգիա անել: Թղթային փաստաթուղթ տրամադրելիս նախապայման է դրանում թվի և ամսաթվի առկայությունը: Նմանապես, էլեկտրոնային փաստաթուղթը պետք է պարունակի համար և ամսաթիվ: Այս դաշտերով մենք կարող ենք գտնել մեզ անհրաժեշտ փաստաթուղթը: Հետևաբար համարը և ամսաթիվը հիմնական հատկություններն են:

Դիտարկենք հիմնական հատկությունը "Ամսաթիվը". 7.7 տարբերակում այն ​​կոչվում էր «DataDoc», բայց 8-րդ տարբերակում այն ​​պարզապես կոչվում էր "Ամսաթիվը". Սա շատ կարևոր փաստաթղթային հատկություն է: Ինչո՞ւ է այդպես։ Դիտարկենք իրավիճակը մի առևտրային կազմակերպության հետ, որտեղ իրականացվում է ապրանքների ստացման և դրա վաճառքի փաստի գրանցում: Այսպիսով, հնարավոր չէ վաճառել ապրանքներ, որոնց ստացման ամսաթիվը ավելի մեծ է վաճառքի ամսաթվից, քանի որ հնարավոր չէ վաճառել այն ապրանքները, որոնք դեռ չեն հասել։

Նշենք, որ որոշ ստանդարտ կոնֆիգուրացիաներում հնարավոր է վաճառել ապրանքներ, որոնք դեռ չեն հասել: Բայց սա ավելի շուտ բացառություն է, քան կանոն և վերաբերում է առևտրային ձեռնարկության առանձնահատկություններին:

Ահա թե ինչու է փաստաթղթում ամսաթիվ ունենալը այդքան կարևոր: Նշենք նաեւ, որ գույքում "Ամսաթիվը"պարունակում է ոչ միայն ամսաթիվը, այլև փաստաթղթի ժամը՝ մոտակա վայրկյանին:

Շատ հաճախ փաստաթղթի նման նույնականացումը ժամանակային առանցքի վրա բավարար չէ:

Պատկերացնենք մի իրավիճակ, երբ ամսի 1-ին 100 միավոր ապրանք է հասնում պահեստ։ Այնուհետեւ նույն ամսվա 2-ին ժամը 23:59:59-ին վաճառվում է՝ 80 հատ. Փաստաթուղթը կատարվում է առանց խնդիրների, քանի որ բավականաչափ ապրանք կա։ Ենթադրենք, որ նաև 2-ին ժամը 23:59:59-ին մեկ ուրիշը նույնպես վաճառում է նույն ապրանքը 50 միավորի չափով։ Այս փաստաթուղթը նույնպես կանցկացվի առանց խնդիրների, քանի որ 23:59:59-ի դրությամբ այս ապրանքը հասանելի է: Թեեւ իրականում ունենք, սակայն երկրորդ փաստաթղթի արդյունքում 30 միավոր ապրանքների բացասական հաշվեկշիռ է ձեւավորվում։

Նման իրավիճակների առաջացումը կանխելու համար ամսաթվին և ժամին ավելացվում է նաև փաստաթղթի դիրքը, այն է՝ դրա հղումը: Փաստաթղթի այս նույնականացումը ըստ ամսաթվի և ժամի + հղում կոչվում է ժամանակի պահը. Իսկ երկրորդ փաստաթուղթը տեղադրելիս համակարգը կցուցադրի հաղորդագրություն 30 միավոր ապրանքի պակասի մասին և թույլ չի տա տեղադրել փաստաթուղթը։

Ինչպե՞ս ստանալ ժամանակի մի պահ: Եվ այն ստացվում է մեթոդով «Ժամանակի պահը», դասին պատկանող «Փաստաթղթի օբյեկտ». Սա վերադարձնում է տվյալների տեսակը «Ժամանակի պահը».

Այս տեսակի տվյալները պետք է փոխանցվեն որպես պարամետր ապրանքների մնացորդը ստացող հարցումներին:

Ժամանակի կետ ստանալու օրինակ.

&OnClient ընթացակարգ GetTimePoint(Command) GetTimePointOnServer(Object.Reference) ; EndProcedure &OnServer կարգը GetTimeOnServer(Հղում) Եթե հղում. Empty() Ապա հաշվետվություն( «Փաստաթուղթը գրանցված չէ».) ; Վերադարձ ; Վերջ Եթե ; DocumentObject = Հղում: GetObject(); MomentTime = DocumentObject: Ժամանակի պահ (); Հաշվետվություն (MomentInTime) ; Ավարտի ընթացակարգը // GetTimeOnServer ()

Փաստաթղթի ժամանակի կարգավորում

Եկեք վերլուծենք, թե ինչպես է համակարգը սահմանում նոր մուտքագրված փաստաթղթերի ժամանակացույցը: Երբ փաստաթուղթը ստեղծվում է, այն լռելյայն սահմանում է ընթացիկ համակարգի ամսաթիվը զրոյական ժամանակով, իսկ երբ այն գրվում է, այն սահմանվում է ընթացիկ ժամանակի դրոշմանիշի վրա:


Գործառնական իրականացման մեջ կա հետեւյալ նրբերանգը. Եթե ​​դրա ամսաթիվը հավասար է ընթացիկ ժամանակին, ապա ժամանակը կսահմանվի ընթացիկ ժամանակի վրա: Եթե ​​փաստաթուղթը փակցված լիներ ոչ օպերատիվ կերպով, ապա միայն մուտքագրման պահին նշանակվում էր ընթացիկ ժամային դրոշմակնիք, այնուհետև այն կմնար անփոփոխ։ Եթե ​​փաստաթուղթը մուտքագրված չէ ընթացիկ ամսաթվով, ապա սկզբում նշանակվում է զրոյական ժամանակի դրոշմակնիք, իսկ ձայնագրման ժամանակ նշանակվում է այդ օրվա ամենավերջին նշանը: Այսինքն՝ համակարգը փնտրում է այս օրվա վերջին մուտքագրված փաստաթուղթը, նայում է դրա ժամը, ավելացնում է վայրկյանով և վերագրում մեր փաստաթղթին։ Եթե ​​դուք փաստաթուղթ եք ստեղծում այն ​​ամսաթվի համար, որում այս տեսակի փաստաթուղթ չի մուտքագրվել (օրինակ՝ ապրանքների անդորրագիր), բայց մուտքագրվել են այլ տեսակի փաստաթղթեր (օրինակ՝ ապրանքների դուրսգրում), ապա համակարգը կխլի առավելագույնը. Մեկ այլ տեսակի փաստաթղթի վերջին ամսաթիվը, դրան ավելացրեք մեկ վայրկյան և նշանակեք մեր փաստաթուղթը: Եթե ​​դուք փաստաթուղթ եք ստեղծում ամսաթվով, որում մուտքագրված չէ որևէ փաստաթուղթ, ոչ մի տեսակ, ապա հարթակը դրան կնշանակի ժամը 12:00:00:

Եվ մեկ այլ իրավիճակ. Պատկերացնենք, որ տվյալների բազայում ունենք փաստաթուղթ՝ 23:59:59 ժամանակային դրոշմակնիքով, և եթե մեկ վայրկյան ավելացնենք, դա արդեն հաջորդ օրը կլինի։ Հետևաբար համակարգը հեռանում է նույն ժամը, այսինքն՝ 23:59:59: Փաստաթղթի ժամանակի կարգավորման համակարգը վերը նկարագրված է միայն լռելյայն արժեք: Բայց այս պահվածքը հնարավոր է անտեսել: Եկեք բացենք փաստաթղթի ձևը կոնֆիգուրատորում և դիմենք դրա հատկություններին: Հատկություններում մենք կտեսնենք դաշտը «AutoTime». Եթե ​​մենք ոչինչ չենք փոխում այս հատկության մեջ, ապա փաստաթղթի ժամանակի ձևավորումը տեղի է ունենում այնպես, ինչպես նկարագրված է վերևում: Բայց դուք կարող եք նշել ժամը՝ ընթացիկ կամ օրվա սկզբում, միշտ առաջինը, միշտ վերջինը, և մի օգտագործեք:

Փաստաթղթի մեկ այլ կարևոր հատկություն է թիվ. Փաստաթղթի համարը, ինչպես և ամսաթիվը, ցանկացած փաստաթղթի պարտադիր սեփականությունն է: Այն անհրաժեշտ է տպագրության վրա փաստաթուղթը նույնականացնելու համար:

Անցկացման հնարավորություն

Փաստաթուղթը կարող է ունենալ երեք վիճակ. ստեղծված, նշված ջնջման համարԵվ անցկացվել է. Տեղադրված փաստաթուղթը կարող է փոխել ձեռնարկության ֆինանսական վիճակը, փոխել պահեստում գտնվող ապրանքների քանակը և այլն։ Այսինքն՝ չտեղադրված փաստաթուղթը մի տեսակ նախագիծ է, և երբ տեղադրվում է, այն ուժի մեջ է մտնում և համապատասխանաբար գրանցում ինչ-որ իրադարձություն։ 1C համակարգը հնարավորություն է տալիս փոխել տեղադրված փաստաթուղթը, չեղարկել դրա պահումը, ինչը, ի տարբերություն ծրագրերի արևմտյան անալոգների, հաշվառման ավելի մեղմ սկզբունք է։

Ստանդարտ փաստաթղթի մանրամասներ

Ի հավելումն այն հատկանիշներին, որոնք մշակողը ավելացնում է փաստաթղթին, կա նաև ատրիբուտների ստանդարտ փաթեթ, որոնք արդեն ներդրված են փաստաթղթում հարթակի մակարդակով: Սա. հղում, համար, ամսաթիվ, ջնջման նշան, տեղադրված. Դուք կարող եք գտնել դրանք ներդիրում: «Տվյալներ», կոճակ «Ստանդարտ մանրամասներ».

Թվի և ամսաթվի մասին արդեն խոսել ենք։ Ջնջման դրոշը բուլյան է, որը պարունակում է տեղեկատվություն այն մասին, թե արդյոք փաստաթուղթը նշված է ջնջման համար, թե ոչ: Հղում- փաստաթղթերի աղյուսակում փաստաթղթի եզակի նույնականացման պահանջ: Անցկացվել է- բուլյան հատկություն, որը պարունակում է տեղեկատվություն այն մասին, թե արդյոք փաստաթուղթը տեղադրվել է, թե ոչ:

Փաստաթուղթը կարող է լինել երեք վիճակով.

  • Նշված չէ ջնջման համար և չի իրականացվում.
  • Նշված չէ ջնջման համար և իրականացված;
  • Նշված է ջնջման համար և չի իրականացվել:

Ինչպես նշվեց ավելի վաղ, մշակողը կարող է ինքնուրույն ավելացնել անհրաժեշտ մանրամասները, ինչպես նաև աղյուսակային մասերը: Յուրաքանչյուր աղյուսակային մաս ունի մեկ ստանդարտ հատկանիշ. «Գծի համարը».


Փաստաթղթերի պահպանում տեղեկատվական բազայում

Տվյալների բազայում փաստաթղթի յուրաքանչյուր տեսակ պահվում է առանձին աղյուսակում: Այս աղյուսակը պարունակում է փաստաթղթի բոլոր մանրամասները: Աղյուսակային մասերը պահվում են առանձին աղյուսակներում: Փաստաթղթերի աղյուսակի հետ կապը կատարվում է հատկանիշով «Հղում».

Փաստաթղթերի համարակալում

Յուրաքանչյուր փաստաթուղթ ունի համար, որի կարգավորումը դրված է ներդիրում «Համարակալում». Այս ներդիրում կարող եք սահմանել ավտոմատ համարակալման հատկությունը, եզակիության վերահսկման հատկությունը, թե ինչ տեսակի կլինի համարը (թվային կամ լարային) և դրա երկարությունը:

Խորհուրդ է տրվում սահմանել համարի լարային տեսակը, քանի որ ապագայում կարող է անհրաժեշտ լինել թվի մեջ նշել կազմակերպության նախածանցը, ինչը շատ հաճախ է պատահում։

Նախածանցը դրվում է փաստաթղթի օբյեկտի մոդուլում, ընթացակարգով «Նոր համար սահմանելիս».

NewNumberSetting Procedure (Standard Processing, Prefix) EndProcedure

Նաև ներդիրում «Համարակալում»մենք կարող ենք սահմանել փաստաթղթի հաճախականությունը:

Հնարավոր արժեքներ.
  • Ոչ պարբերական;
  • Մեկ տարվա ընթացքում;
  • Բլոկի ներսում;
  • Մեկ ամսվա ընթացքում;
  • Մեկ օրվա ընթացքում.
Սովորաբար ընտրեք արժեքը «Մեկ տարվա ընթացքում», սա նշանակում է, որ նոր տարում փաստաթղթերի համարակալումը կսկսվի սկզբից։

Երբեմն լինում են իրավիճակներ, երբ շարունակական համարակալումն անհրաժեշտ է մի քանի տեսակի փաստաթղթերի համար։ Այս դեպքերի համար համակարգը տրամադրում է այնպիսի օբյեկտ՝ որպես համարիչ։

Այն պետք է մուտքագրվի դաշտում «Համարիչ».

Փաստաթղթերի պահպանում

Մի փոքր փաստաթղթերի վարման մասին. Համակարգի համար նշանակում է, որ փաստաթուղթը տեղադրված է բուլյան դրոշի դեպքում «Անցկացված»փաստաթուղթը սահմանված է "Ճիշտ". Ընդհանուր ցանկում նման փաստաթղթերը ընդգծված են համապատասխան պատկերակով: Պլատֆորմի համար դա այլևս ոչինչ չի նշանակում, բայց ծրագրի տրամաբանության տեսանկյունից տեղադրված փաստաթուղթը կարող է ազդել ընկերության ֆինանսական արդյունքի վրա։ Այսինքն, այն կարող է առաջացնել շարժումներ ռեգիստրներում, որոնց հիման վրա գեներացվում են հաշվետվություններ։

Երբ տեղի է ունենում ինտերակտիվ կամ ծրագրային կատարում, ընթացակարգի կատարումը գործարկվում է «HandlingHandling()», որը գտնվում է փաստաթղթի օբյեկտի մոդուլում։

// Տեղադրեք կարգավորիչի բովանդակությունը:Ավարտի ընթացակարգը

Այս ընթացակարգը ունի երկու պարամետր. մերժումԵվ ռեժիմ. Եթե ​​ձախողման պարամետրը սահմանել եք արժեքը "Ճիշտ", տեղադրումը չի կատարվի։ Պարամետր «Ռեժիմ»սահմանում է փաստաթղթերի տեղադրման ռեժիմը. գործառնականկամ ոչ գործառնական. Կառուցապատողն ինքը պետք է գրանցի տեղաշարժերը գրանցամատյաններում այս ընթացակարգում:

Որ գրանցամատյաններում փաստաթուղթը շարժումներ կանի, դրված է ներդիրում «Շարժումներ».

Հետմշակման ընթացակարգի օրինակ

Ընթացակարգի մշակման տեղադրում (ձախողում, փակցման ռեժիմ) // Այս հատվածը կառուցված է կոնստրուկտորի կողմից: // Կոնստրուկտորը նորից օգտագործելիս ձեռքով փոփոխություններ են կատարվում // կկորչի!!! // գրանցել GoodsInStock անդորրագիրըՇարժում. ապրանքներ պահեստում. log = ճշմարիտ; Յուրաքանչյուր TekRowProducts From Products Cycle Movement = Movement: ապրանքներ պահեստում. Ավելացնել () ; Շարժում. MovementType = MovementTypeAccumulation: Գալիս; Շարժում. ժամանակաշրջան = ամսաթիվ; Շարժում. Ապրանք = TekRowProducts: Ապրանք; Շարժում. Քանակ = CurrentLineProducts: Քանակ; Վերջնական ցիկլ; //__REGISTER_MOTION_CONSTRUCTORԱվարտի ընթացակարգը

Փաստաթղթերի մուտքի իրավունք

1C համակարգում հասանելիության տարբեր տեսակներ կան: Դրանք են ինտերակտիվ գործողությունների վերլուծությունը և ծրագրային գործողությունների վերլուծությունը։

Որոնք են ինտերակտիվ գործողությունները: Սրանք գործողություններ են, որոնք կատարվում են անմիջապես օգտագործողի կողմից. սեղմելով կոճակներ, վանդակներ և այլն: Ծրագրային գործողություններ կատարվում են ինչ-որ ալգորիթմով, օգտատերը կարող է նույնիսկ չիմանալ դրանց մասին:

Փաստաթղթերի մուտքի իրավունքները կազմաձևված են ներդիրում «Իրավունքներ». Այստեղ մենք տեսնում ենք մի քանի բաժիններ, սա այն բաժինն է, որտեղ ցուցադրվում են դերերը, բաժնի ուղղակի իրավունքները և բաժինը «Տվյալների հասանելիության սահմանափակումներ»(մենք դա չենք դիտարկի, դա անհրաժեշտ է, այսպես կոչված, RLS մեխանիզմն օգտագործելիս):

Գլուխ «Ռոլի»ցուցադրում է տեղեկատվական բազայում մուտքագրված բոլոր դերերը, որոնց համար բաժնում «Իրավունքներ»մենք պարզապես սահմանել ենք մուտքի իրավունքները:

Մուտքի իրավունքի հնարավոր տեսակները.
  • ընթերցում (ծրագրավորմամբ), դիտում (ինտերակտիվ);
  • ավելացնելով (ծրագրավորմամբ), ինտերակտիվ ավելացնելով (ինտերակտիվորեն);
  • փոփոխություն (ծրագրային առումով), խմբագրում (ինտերակտիվ);
  • ջնջում (ծրագրավորմամբ), ինտերակտիվ ջնջում (ինտերակտիվորեն);
  • վարում (ծրագրային), ինտերակտիվ վարում (ինտերակտիվ);
  • հետարկել (ծրագրավորմամբ), ինտերակտիվ հետարկել (ինտերակտիվ);

Մուտքի ինտերակտիվ տեսակը պարունակում է նաև այնպիսի իրավունքներ, ինչպիսիք են՝ ջնջման համար ինտերակտիվ նշում, ջնջման համար ինտերակտիվ հանում, նշվածների ինտերակտիվ ջնջում, ինտերակտիվ ոչ գործառնական կատարում, ավարտվածների ինտերակտիվ փոփոխություն, մուտքագրում տողով:

Փաստաթղթի աղյուսակային մասը

Փաստաթղթի աղյուսակային մասերը դրված են ներդիրում «Տվյալներ»և ոչ այլ ինչ են, քան հավաքածուներ, որոնց տարրերը աղյուսակային հատվածի տողերն են: Հետևաբար, դրա տարրերը շրջանցելը հնարավոր է և՛ օղակով, և՛ ուղղակի մուտքով՝ ըստ ինդեքսի (համարակալումը սկսվում է զրոյից)։


Շատ ծրագրավորողներ, ովքեր ծանոթ են 7.7 տարբերակին և ցանկանում են տիրապետել 8-րդ տարբերակին, հարցնում են, թե ուր են գնացել պարբերական հղման մանրամասները և պարբերական հաստատունները: Իսկ եթե դրանք չեն, ապա ի՞նչ մեխանիզմ է փոխարինում դրանց։ 1C:Enterprise 8-ում պարբերական տեղեկատվական ռեգիստրներն օգտագործվում են արժեքների փոփոխությունների պատմությունը պահելու համար:

Ընդհանուր առմամբ, տեղեկատվական ռեգիստրները նախատեսված են չափերի համակցությամբ ընդլայնված տեղեկատվությունը պահելու համար: Տեղեկատվության պարբերական ռեգիստրի և սովորական ռեգիստրի հիմնական տարբերությունն այն է, որ այն պարունակում է «ամսաթիվ» տիպի «Ժամանակաշրջան» լրացուցիչ համակարգային չափում: Սա թույլ է տալիս ստանալ ոչ միայն ընթացիկ տեղեկատվություն օբյեկտի մասին, այլև ցանկացած պահի:

Պարբերական փոփոխականի համար «Պարբերականություն» հատկությունը սահմանվում է ստեղծման ժամանակ հետևյալ հնարավոր արժեքներից.
- վայրկյանի ընթացքում,
- մեկ օրվա ընթացքում
- մեկ ամսվա ընթացքում
- եռամսյակի ընթացքում
- մեկ տարվա ընթացքում
- ըստ գրանցողի պաշտոնի (հասանելի է, եթե գրանցամատյանի ձայնագրման ռեժիմը «Ներկայացում գրանցողին» է):

Նկատի ունեցեք, որ տեղեկատվական ռեսուրսի տեսակը կարող է լինել կամ պարզունակ (թիվ, տող, ամսաթիվ, բուլյան) կամ հղում (CatalogReference, DocumentReference, EnumReference և այլն): Ավելին, նույնիսկ նկարները և այլ ոչ կառուցվածքային տեղեկատվություն կարող են պահվել տեղեկատվական ռեգիստրում, քանի որ կարող եք ստեղծել «ValueStorage» տիպի ռեսուրս:

Պարբերական տեղեկատվական ռեգիստրի ամենապարզ օրինակը Արժույթի փոխարժեքներն են: Այս տեղեկատվական ռեգիստրը պահում է բոլոր արժույթների փոխարժեքները յուրաքանչյուր օրվա համար:

Տեղեկատվական ռեգիստրի կառուցվածքի մասին մանրամասն տեղեկություններ Փոխարժեքները ներկայացված են հետևյալ աղյուսակում.
Չափումներ. «ReferenceReference.Currencies» տեսակի արժույթներ, առաջատար, դատարկ արժեքների արգելում
Դասընթացի տեսակը «թիվ», երկարությունը 15, ճշգրտությունը 4, ոչ բացասական
Բազմապատկության տեսակ «թիվ», երկարությունը 10, ճշգրտությունը 0, ոչ բացասական
Հաճախականությունը մեկ օրվա ընթացքում
Ձայնագրման ռեժիմ Անկախ

Այս տեղեկատվական ռեգիստրում տվյալները կարող են ձեռքով մուտքագրվել՝ օգտագործելով ցուցակի ձևը:

ՈՒՇԱԴՐՈՒԹՅՈՒՆ.Տեղեկատվական ռեգիստրում որոշակի հաճախականությամբ, որը հավասար չէ «Ըստ պաշտոնի գրանցողին», դուք չեք կարող մուտքագրել երկու գրառում նույն չափումների և ժամանակաշրջանով, այսինքն. դուք չեք կարող նույն արժույթի երկու փոխարժեքներ մուտքագրել նույն օրը: Եթե ​​ռեեստրի մուտքագրման հաճախականությունը սահմանված է «Ըստ գրանցողի դիրքի», ապա մուտքի եզակիության բանալին պարունակում է նաև հղում դեպի գրանցող փաստաթուղթ, այսինքն. Նման մատյանը չի կարող պարունակել երկու գրառում՝ չափումների, ժամանակաշրջանի և գրանցողի նույն հավաքածուով: Սա տեղեկատվական ռեգիստրի անբաժանելի հատկությունն է, որն այն տարբերում է այլ գրանցամատյաններից:
Տեղեկատվական գրանցամատյանում նոր գրառումների ավելացումը, ինչպես նաև առկա գրառումների թվարկումը կատարվում է բոլոր ռեգիստրների համար ստանդարտ եղանակով: Այս բաժնում մենք կանդրադառնանք միայն ամենակարևորին
- ժամանակի որոշակի կետում պարբերական ռեգիստրից տեղեկատվություն ստանալը.

Մեթոդների կիրառմամբ պարբերական տեղեկատվության հասանելիություն
RegisterInformationManager օբյեկտը թույլ է տալիս մուտք գործել ռեգիստրի «տոտալներ»: Տեղեկատվության պարբերական ռեգիստրի «ընդհանուրները» ռեսուրսների առաջին կամ վերջին արժեքներն են նշված չափսերի համար: Դրա համար օգտագործվում են հետևյալ մեթոդները.

Ստացեք (<Период>, <Отбор>)

Որպես կառույց վերադարձնում է ռեգիստրի մեկ մուտքի ռեսուրսային արժեքները, որոնք համապատասխանում են գրանցման բոլոր (!) չափերի և ժամանակաշրջանի նշված արժեքներին:
Get Latest (<Конец периода>, <Отбор>)
Այս մեթոդը վերադարձնում է տվյալ ամսաթվի գործող ռեսուրսների ընթացիկ արժեքը: Եթե ​​այն գրանցամատյանում չի գտնում մուտքագրում չափերի տվյալ համակցության համար հենց նշված ժամանակահատվածի համար, ապա վերադարձվում է հաջորդ հետագա մուտքի ռեսուրսների արժեքները պարունակող կառուցվածք:
GetFirst (<Начало периода>, <Отбор>)
Այս մեթոդը աշխատում է GetLast մեթոդի նման, բայց եթե մուտքը ներկայումս չի գտնվել, ապա վերադարձվում է մոտակա ավելի վաղ մուտքի ռեսուրսների արժեքները պարունակող կառուցվածքը:
SliceRecent (<Конец периода>, <Отбор>)
Այս մեթոդները համապատասխանաբար նման են GetLast և GetFirst մեթոդներին, բայց դրանք սովորաբար չեն նշում մեկ կամ մի քանի չափսեր: Արդյունքում վերադարձվում է ոչ թե կառուցվածք, ինչպես նախորդ դեպքերում, այլ արժեքների աղյուսակ, որը լցված է հայտնաբերված տեղեկատվական ռեգիստրի գրառումների տվյալներով:

GetFirst, GetLast, SliceFirst և SliceLast մեթոդները կանչելիս առաջին պարամետրը կարող է լինել «ամսաթիվ», «Moment in Time» կամ «Boundary» տիպի, բայց այն կարող է ընդհանրապես բաց թողնել, ապա ռեսուրսի արժեքները հենց առաջին կամ վերջին գրանցումից: մուտքը կգտնվի համապատասխանաբար:

Մենք ցույց կտանք այս մեթոդների օգտագործումը օրինակներով.

Օրինակ 1. Ստանալով փոխարժեքը հենց նշված ամսաթվին (եթե տվյալ ամսաթվի համար գրառում չկա, ապա կառուցվածքի տարրերը կպարունակեն դատարկ արժեքներ):


StructureRateMultiplicity = RegistersInformation.Currency Rates.Get(SelectionDate, CurrencySelection);
Եթե ​​StructureCourseMultiplicity.Course = 0 Ապա
Ցույց տալ («Այս ամսաթվի փոխարժեքը նշված չէ»);
Հակառակ դեպքում
Հաշվետվություն («Արժույթի փոխարժեք.» + կրճատված LP(StructureCourseMultiplicity.Rate) + «, բազմապատկություն. « + AbbreviatedLP(StructureCourseMultiplicity.Multiplicity));
EndIf;

Օրինակ 2Ստանալով ընթացիկ փոխարժեքը տվյալ ամսաթվի համար (եթե տվյալ ամսաթվի համար գրառում չկա, կգտնվի հաջորդ գրառումը)

CurrencySelection = Նոր կառուցվածք ("Currency", SelectCurrency);
StructureRateMultiplicity = RegistersInformation.Currency Rates.GetLast(SelectionDate, CurrencySelection);
Հաշվետվություն («Տվյալ ամսաթվի ընթացիկ փոխարժեքը. « + StructureRateRatio.Rate);

Օրինակ 3Ստանալով բոլոր արժույթների ընթացիկ փոխարժեքները տվյալ ամսաթվով (ընտրությունը նշված չէ, այսինքն՝ մենք ցանկանում ենք տեղեկատվություն ստանալ բոլոր չափումների արժեքների մասին):

tzData = RegistersInformation.Currency Rates.SliceLast(SelectionDate,);

Հաշվետվություն («Արժույթի համար» + տող (Pr.Արժույթ) + «փոխարժեք տվյալ ամսաթվի համար.
End Cycle;

Օրինակ 4Ապրանքների փաստացի մեծածախ գների ձեռքբերում (նշված է «TypePrice» չափման ընտրությունը)

SelectionPriceType = Նոր կառուցվածք ("PriceType", Enumerations.PriceTypes.Wholesale);
tzData = RegistersInformation.CompanyPrices.SliceLast(SelectionDate, SelectionPriceType);
Տվյալների ցիկլի յուրաքանչյուր էջի համար
Հաշվետվություն("Ապրանքի համար" + String(St.Nomenclature) + "մեծածախ գին. " + String(St.Price));
End Cycle;

Պարբերական տեղեկատվության մուտք հարցումների միջոցով

Այս տեղեկատվությունը ստանալու համար օգտագործվում է տեղեկատվական ռեգիստրի վերջին / առաջին գրառումների հատվածի վիրտուալ աղյուսակը: Կառուցվածքով այն լիովին նույնական է տեղեկատվական ռեգիստրի հիմնական աղյուսակին և պարունակում է հետևյալ դաշտերը.
<Имя измерения> - ռեգիստրի չափերի արժեքներ պարունակող դաշտերի մի շարք: Դաշտերի անվանումները համապատասխանում են չափումների անուններին:
<Имя реквизита> - ռեգիստրի մանրամասների արժեքները պարունակող դաշտերի մի շարք:
<Имя ресурса> - Դաշտերի մի շարք, որը պարունակում է ռեգիստրի ռեսուրսների արժեքները:
Գործունեություն- Պարունակում է ձայնագրման գործունեության նշան: Գրառումները, որոնց համար այս գույքի արժեքը սահմանվել է False, հաշվի չեն առնվի ռեգիստրի «առաջին» կամ «վերջին» գրառումները, ինչպես նաև որոշակի ժամանակահատվածում տեղեկատվություն ստանալիս:
Ժամանակի պահը- Պարունակում է ռեգիստրի գրման ժամանակի կետը:
Line Number- Պարունակում է տողի համարը, որը սահմանվում է որպես գրառումների շարքի հաջորդական համար:
Ժամանակաշրջան- Պարունակում է այն ժամանակահատվածը, որին պատկանում է ռեգիստրի գրառումը:
Գրանցող- Պարունակում է շարժման արձանագրության փաստաթղթի հղում:

SliceFirst և SliceLast վիրտուալ աղյուսակներ մուտք գործելիս կարող եք նշել հետևյալ տարբերակները.

Ամսաթիվ -Նշում է ամսաթիվը կամ ժամանակի կետը, որի համար տեղեկատվությունը կստացվի: Եթե ​​պարամետրը սահմանված չէ, կընտրվեն վերջին/ամենավաղ գրառումները:
Վիճակը -Պայմանը նշված է հարցման լեզվով: Այն կօգտագործվի ռեկորդների կազմը սահմանափակելու համար, որոնցից կընտրվեն ամենավերջինը/վաղը: Պայմանը կկիրառվի բնօրինակ գրառումների, ոչ թե արդեն ընտրվածների վրա:

Ահա հարցումների միջոցով տեղեկատվական ռեգիստրի գրառումներին մուտք գործելու օրինակներ.

Օրինակ 1Ընտրեք բոլոր տեղեկատվական ռեգիստրի գրառումները

SELECT * FROM Data Register.Currency rates

Օրինակ 2Ստացեք մեկ արժույթի ընթացիկ փոխարժեքը տվյալ ամսաթվով

SELECT արժույթ, դասընթաց
FROM DataRegister.Currency Rates.SliceLast(&SelectDate, Currency = &SelectCurrency);

Օրինակ 3Ընտրեք ընթացիկ փոխարժեքները բոլոր արժույթների համար տվյալ ամսաթվին

SELECT արժույթ, դասընթաց
FROM DataRegister.Currency Rates.SliceLast(&SelectionDate);

Օրինակ 4Ստացեք արդի գնացուցակ տվյալ ամսաթվի համար (նշված է որոշակի գնի տեսակ, օրինակ՝ «Մանրածախ»)

SELECT անվանակարգ, Գին
FROM DataRegister.CompanyPrices.LastSlice (&SelectDate,PriceType=&SelectPriceType);

Ամփոփում
- Պարբերական տեղեկատվական ռեգիստրը հզոր գործիք է գրեթե ցանկացած տեղեկատվության մեջ փոփոխությունների պատմությունը պահելու համար:
- Տեղեկատվական ռեգիստրի հաճախականությունը կարող է շատ տարբեր լինել՝ գրանցող փաստաթղթի դիրքից (նվազագույն հաճախականություն) մինչև մեկ տարի (առավելագույն հաճախականություն): 1C:Enterprise 8-ն ունի նաև ոչ պարբերական տեղեկատվական ռեգիստրներ:
- Տեղեկատվական ռեգիստրի ռեսուրսի տեսակը կարող է լինել պարզունակ (համար, տող, ամսաթիվ, բուլյան), հղում (հղում դեպի որոնման տարր, փաստաթուղթ, թվարկման արժեք) կամ Արժեքների պահպանում:
- Պարբերական տեղեկատվական ռեգիստրը կարող է ստեղծել ռեսուրսների արժեքներ հենց տվյալ ամսաթվին, վերջին կամ ամենավաղ արժեքը տվյալ ամսաթվին, կամ առաջինի հատվածը և վերջինիս հատվածը որոշակի ամսաթվին համապատասխան՝ տվյալ չափման արժեքների համաձայն:
- Տեղեկատվական ռեգիստրի տվյալների հասանելիությունը հնարավոր է ինչպես մեթոդների, այնպես էլ հարցումների օգնությամբ։

1C 8 տեղեկատվական ռեգիստրը մետատվյալների օբյեկտ է, որը նախատեսված է մշակողի կողմից սահմանված չափերի համատեքստում հղումային տեղեկատվությունը պահելու համար:

Տեղեկատվական ռեգիստրի օգտագործման տիպիկ օրինակ է փոխարժեքի մասին տեղեկատվության պահպանումն ըստ արժույթի և ժամանակաշրջանի:

Եկեք մանրամասն նայենք տեղեկատվական ռեգիստրի հատկություններին և պարամետրերին:

Հավաքածուի ռեգիստրի երկու հիմնական հատկություններն են − ՊարբերականությունԵվ Ձայնագրման ռեժիմ.

Սրանք եզակի տեղեկատվական ռեգիստրի հատկություններ են, որոնք չունեն այլ մետատվյալների օբյեկտներ: Դիտարկենք դրանք ավելի մանրամասն:

Այս հատկությունը թույլ է տալիս լրացուցիչ չափումներ ավելացնել չափերի ցանկին. Ժամանակաշրջան. Նրա օգնությամբ դուք կարող եք լուծել մեծ թվով առաջադրանքներ՝ տվյալների շտեմարանում պահելը, հաշվի առնելով որոշակի ամսաթվի համապատասխանությունը: Կան ժամանակաշրջանների օգտագործման բազմաթիվ կիրառական օրինակներ՝ արժույթի արժեքի պահպանում յուրաքանչյուր օրվա համար, ապրանքի արժեքի պահպանում և այլն:

Պարբերականությունը կարող է վերցնել հետևյալ արժեքները.

  • Ոչ պարբերական
  • վայրկյանի ընթացքում
  • Մեկ օրվա ընթացքում
  • Մեկ ամսվա ընթացքում
  • Բլոկի ներսում
  • Մեկ տարվա ընթացքում

Ստացեք 267 1C վիդեո դասեր անվճար.

Եթե ​​դուք ընտրում եք ոչ պարբերական տարբերակից այլ պարբերականություն, համակարգը կվերահսկի գրառումների եզակիությունը որոշակի ժամանակահատվածում: Եթե ​​գրառումը եզակի չէ, ապա 1C համակարգը հաղորդագրություն կթողարկի և թույլ չի տա գրել տվյալների բազա:

Իսկ տեղեկատվության պարբերական ռեգիստրի հիմնական հատկանիշներից մեկը «Կտրել առաջինը» և «Կտրել վերջինը» պատրաստի արժեքները ստանալու հնարավորությունն է: Այս տեղեկատվությունը թույլ է տալիս շատ արագ տվյալների բազայից տեղեկատվություն ստանալ որոշակի ամսաթվի վերջին (առաջին) սահմանված արժեքի մասին:

Տեղեկատվական ռեգիստրի ձայնագրման եղանակ

1C 8.2 և 8.3 կետերում այս գույքը կարող է լինել կամ «Անկախ» կամ «Գրանցողին ենթակա»: Առաջին դեպքում գրառումները կարող են կատարվել ինչպես ծրագրային, այնպես էլ տեղեկատվական ռեգիստրի ցուցակի ձեւից։ Երկրորդ դեպքում պարտադիր է նշել գրառումների գրանցման փաստաթուղթը։ Սա որոշակի սահմանափակումներ է դնում, բայց միևնույն ժամանակ բացում է նոր հնարավորություններ։

Տեղեկատվության ռեգիստրի չափման հատկություններ

Պետք է նաև ուշադրություն դարձնել տեղեկատվական ռեգիստրի չափման հատկությունների պալիտրա 1C 8.3. Հատկապես առաջատար և հիմնական ընտրության դրոշների վրա.

  • Առաջատար- Չափի հատկություն, որը ենթադրում է տեղեկատվություն, որ առանց այս չափման արժեքի ռեգիստրի գրառումը իմաստ չունի: Փաստորեն, սա նշանակում է, որ համակարգը չափորոշիչից արժեք ջնջելիս ջնջում է նաև «Առաջատար» չափանիշով ռեգիստրի մուտքը: Միայն մեկ չափում կարող է սահմանվել:
  • Հիմնական ընտրություն- եթե գրանցամատյանը անկախ է, ապա այդ չափումներով կսահմանվի փոխանակման պլանի փոփոխությունների գրանցումը: Նմանատիպ օգտագործում Հիմնական ընտրությունը ըստ ժամանակաշրջանիներառում է հիմնական ընտրություն պարբերական գրանցամատյանների ժամանակաշրջանի համար:

Ծրագրի մուտքագրումը տեղեկատվական ռեգիստրում 1C

Տեղեկատվական մատյանում նոր գրառումներ ավելացնելու երկու եղանակ կա՝ օգտագործելով գրառումների կառավարիչը և օգտագործելով ռեկորդային հավաքածու: Առաջին դեպքը հարմար է մեկ մուտքի համար, երկրորդը՝ երկու կամ ավելի գրառումների համար:

Օգտագործելով ձայնագրման մենեջեր.

NewRecord = RegistersInformation.Currency Rates.CreateRecordManager();
NewRecord.Currency = References.Currencies.FindByName(«USD»);
NewRecord.Period = Ամսաթիվ (31,12,2016);
NewRecord.Course = 100;
NewRecord.Multiplicity = 1;
NewRecord.Record();

Օգտագործելով 1C տեղեկատվական ռեգիստրի գրառումների մի շարք.

NewRecordSet = DataRegisters.Currency Rates.CreateRecordSet();
//եթե դուք չեք սահմանել ընտրությունը, տեղեկատվական ռեգիստրի բոլոր գրառումները կջնջվեն
NewRecordSet.Selection.Currency.Set(Dollar, True);
NewRecordSet.Selection.Period.Set(Date(31,12,2016), True);
//մենք ուղղակիորեն կազմում ենք հավաքածուի գրառումը
NewRecordSet = NewRecordSet.Add();
NewSetRecord.Currency = References.Currencies.FindByName(«USD»);
NewSetRecord.Period = Ամսաթիվ (31,12,2016);
NewSetRecord.Course = 100;
NewSetRecord.Multiplicity = 1;
NewRecordSet.Write();

Տեղեկատվական ռեգիստրներ 1Cայն չափսերով և ռեսուրսներով կառուցվածքային տվյալների բազա է: Նախատեսված է պարբերական տեղեկատվության պահպանման համար:

Պարբերականություն

Տեղեկատվությունը պահվում է չափումների և ժամանակաշրջանի առումով: Գրանցեք տեղեկատվություն, կարող եք սահմանել հաճախականությունը.

  • Ոչ պարբերական
  • գրանցողի կողմից
  • երկրորդ
  • շաբաթ
  • ամիս
  • քառորդ

Պարբերականություն է անհրաժեշտ՝ որոշակի ժամանակահատվածում գրանցամատյանից տեղեկատվություն ընտրելու համար: Եթե ​​դուք նշում եք հաճախականությունը, գրանցամատյանում գրառումները կկատարվեն այն ժամանակաշրջանով, երբ մուտքագրումը կատարվել է: Ասենք, եթե նայեք «Ապրանքների գներ» ռեգիստրը, կարող եք տեսնել գների փոփոխությունների պատմությունը, թե ինչ չափումներով և ինչ ժամանակահատվածում է արձանագրվել։

Տեղեկատվական ռեգիստրներում պարբերականությունը անհրաժեշտ է ժամանակի ընթացքում փոփոխվող տեղեկատվության համար, օրինակ՝ փոխարժեքներ, ապրանքների գներ, ապրանքների զեղչեր և մարժաներ և այլն:

Գրանցողներ

Եթե ​​դուք գրում եք տեղեկատվական ռեգիստր՝ օգտագործելով փաստաթուղթ, ապա պետք է սահմանեք ձայնագրման ռեժիմը՝ «Ներկայացում գրանցողին» և ընտրեք այն փաստաթուղթը, որը կօգտագործվի գրանցամատյանում գրելու համար: Այնուհետև գրանցամատյանում կհայտնվի «Գրանցող» դաշտը, որտեղ կպահվի տեղեկատվությունը, թե որ փաստաթղթով է կատարվել մուտքը։ Նաև գրանցողը կարող է օգտագործվել որպես ժամկետ, դրա համար նշեք «Պարբերականություն» - «Գրանցողի կողմից» դաշտում: Գրանցողին ենթակայությունը կատարվում է այն դեպքում, երբ պահանջվում է ռեգիստրը կոշտ կապել փաստաթղթին, և գրանցամատյանում գրանցումները ձեռքով ռեժիմով փոխելն անհասանելի է դառնում:

Կարող են լինել մի քանի փաստաթղթեր, որոնք կլինեն գրանցողների դերում։ Գրանցող ավելացնելու համար անհրաժեշտ է գնալ անհրաժեշտ տեղեկատվական ռեգիստրի հատկություններ, գնալ «Գրանցողներ» ներդիրը և նշել այն փաստաթղթերի կողքին գտնվող վանդակները, որոնք հանդես կգան որպես գրանցող:

Փաստաթղթից կարող եք տեսնել այն շարժումները, որոնք կատարում է գրանցողը։ Դա անելու համար հարկավոր է գնալ դեպի ձեզ հետաքրքրող փաստաթուղթը, սեղմել՝ Գնալ - Փաստաթղթերի շարժումներ գրանցողի միջոցով:

Ռեեստրի հատկություններում մի մոռացեք ավելացնել իրավունքները, դրանք կարող են նշանակվել «Իրավունքներ» ներդիրում: Այնուհետև դերերի ցանկում դուք պետք է ընտրեք այն դերը, որին ցանկանում եք ավելացնել իրավունքներ գրանցամատյանում և սահմանել ընտրված դերի իրավունքները իրավունքների ցանկում:

Ռեկորդների եզակիությունը

Գրառման եզակիությունը կախված է ժամանակաշրջանից և չափումներից: Օրինակ, եթե ցանկանում եք նույն չափումներով գրառում գրել «Ապրանքների գներ» ռեգիստրում նույն օրը, ապա ձեզ չի հաջողվի, և ծրագիրը սխալ կառաջացնի, քանի որ ռեգիստրի հաճախականությունը մեկ օրվա ընթացքում է:

Եթե ​​հաճախականությունը սահմանում է ռեգիստրը, նա նույնպես մասնակցում է ռեկորդի եզակիությանը։

Ոչ պարբերական և անկախ ռեգիստրների համար եզակիությունը կախված է չափերի համակցությունից:

Ձևաթղթեր

Գրառումները դիտելու համար օգտագործեք ցուցակի ձևը, կարող եք ընտրել ձեզ հետաքրքրող դաշտերը, դիտել գրառումների պատմությունը և փոխել դրանք գրանցման ձևի միջոցով: Գրանցման գրառումները կարող եք դիտել հետևյալ կերպ. վերևի ընտրացանկում սեղմեք «Գործողություններ» - «Տեղեկատվության գրանցամատյաններ» կոճակը: Բացվող պատուհանում ընտրեք Ձեզ անհրաժեշտ ռեգիստրը։ Դրանից հետո կբացվի ցուցակի ձև՝ աղյուսակի տեսքով, որտեղ յուրաքանչյուր տող եզակի մուտք է։

Խմբագրման/ստեղծման համար օգտագործեք մուտքի ձևը, եթե գրառումը ենթակա է գրանցողին, ապա դաշտը հասանելի չի լինի, և ձևը չի ստեղծվի:

Դուք պետք է ձևաթղթեր ավելացնեք կոնֆիգուրատորում՝ գնալով տեղեկատվական ռեգիստր, «Ձևեր» ներդիրում և սեղմելով «խոշորացույցը» ցանկալի ձևի տիպի կողքին: Հաջորդը կբացվի պատուհան, որտեղ կարող եք կարգավորել ապագա ձևի դաշտերը (գտնվելու վայրը, անունները և սահմանել ֆունկցիոնալությունը):


Չափեր, ռեսուրսներ և հենարաններ

Չափերը նախատեսված են ձայնագրության յուրահատկությունը ձևավորելու համար, այնուհետև դրանք կարող են օգտագործվել որոշակի չափսով ընտրելու և կտրելու համար: Չափումների համադրությունը կազմում է գրանցման բանալին: Ավելի լավ է մեծ քանակությամբ չափսեր չստեղծել, որպեսզի սեղանը չմեծանա և չդանդաղի դրա հետ աշխատելու գործընթացում։

Չափերը ունեն «Առաջատար» վանդակը, եթե այն սահմանված է, ապա գրառումը կպահվի տվյալների բազայում, քանի դեռ այս չափումը գոյություն ունի: Մի քանի առաջատար չափումներ կարող են կատարվել. Օրինակ՝ «Ապրանքների գներ» տեղեկատվական ռեգիստրում առաջատար չափանիշը ապրանքն է, եթե ջնջեք գրանցմանը մասնակցող ապրանքը, ապա այս ապրանքի տեղեկատվական ռեգիստրի գրառումն ինքնաբերաբար կջնջվի։

Ռեսուրսները նախատեսված են ամփոփ տեղեկատվություն պահելու համար՝ քանակ, գին և այլն: Հետագայում մենք ռեսուրսներ կստանանք որոշակի ժամանակահատվածի համար (եթե ռեգիստրը պարբերական է)՝ ըստ չափումների։

Մանրամասները, շատ դեպքերում, նախատեսված են լրացուցիչ տեղեկություններ պահելու համար, դրանք չեն մասնակցում ձայնագրության եզակիությանը: Օրինակ, մանրամասների մեջ կարելի է մուտքագրել այնպիսի տեղեկություններ, ինչպիսիք են հեղինակը, մեկնաբանությունը և այլն:

Տեղեկատվական ռեգիստրով կարող եք կատարել հետևյալ գործողությունները.

  • Տեղեկատվական գրանցամատյանում գրառումը ջնջելը 1C

Առանձնահատկություններ

- Գրառումների եզակիությունը ըստ չափումների. յուրաքանչյուր գրառում տեղեկատվական ռեգիստրում ռեսուրսի նոր արժեք է:

- Տեղեկատվական ռեգիստրի գրառումները կարող են լինել կամ պարբերական կամ ոչ:

- Տեղեկատվության ռեգիստրը կարող է կախված և անկախ լինել գրանցողից:

- Հնարավոր է առաջին և վերջին գրառումների կրճատում կատարել ցանկալի ամսաթվին: Սա իրականացվում է վիրտուալ աղյուսակների միջոցով՝ SliceFirst և SliceLast: Այս աղյուսակներն օգտագործելու համար կարող եք օգտագործել և՛ ընտրությունը, և՛ հարցումը (հարցման դիզայներում դուք կվերցնեք այս վիրտուալ աղյուսակները և կարող եք հարցումներ կատարել): Այս աղյուսակները հասանելի կլինեն, եթե տեղեկատվական ռեգիստրը պարբերական լինի:

«Անոմենկլատուրային գներ» ռեգիստրը տեղեկատվության պարբերական ռեգիստր է, գրանցումները կատարվում են ըստ գրանցողի։

Պատկերը ցույց է տալիս, որ հաճախականությունը սահմանվում է մեկ օրվա ընթացքում։ Սա նշանակում է, որ գինը կարող է փոփոխվել օրական մեկ անգամ՝ օրվա ընթացքում եզակի չափումների համաձայն։

Գրանցամատյանը ենթակա է «Ապրանքների գների սահմանում» փաստաթղթին: Այսպիսով, գրանցամատյանում գրառումը գալիս է այս փաստաթղթից: Կոնկրետ փաստաթղթի վրա շարժումները կարելի է դիտել «Ապրանքների գների սահմանում» փաստաթղթի ձևից։

Գրանցամատյանը նախատեսված է ապրանքի գնի մասին տեղեկությունները պահելու համար՝ «Գնի տեսակ», «Անվանակոչ» և «Ապրանքի բնութագիրը» չափսերով։ Առաջատար չափերը չափման բոլոր երեք դաշտերն են, ընտրության ընթացքում հնարավոր կլինի դրա վրա ընտրություն կատարել։

Եզրակացություն:Հոդվածը կարդալուց հետո դուք կկարողանաք ստեղծել 1C տեղեկատվական ռեգիստր, ավելացնել չափեր և ռեսուրսներ, կարգավորել խմբագրման և ցուցակի ձևերը: Ստեղծեք գրառում և կատարեք առկա գրառումների ընտրություն: Եթե ​​ունեք հարցեր, օգտագործեք հոդվածի մեկնաբանությունները, ես կփորձեմ արագ պատասխանել ձեր հարցին:

Շատ հաճախ 1C հարցումներում դուք պետք է աշխատեք ամսաթվերի հետ: Հատկապես, երբ հարցումը կառուցված է մետատվյալների օբյեկտների համար, որոնք պարունակում են պարբերական տեղեկատվություն: Որպես կանոն, դրանք ռեգիստրներ են (տեղեկատվություն, կուտակում, հաշվարկ, հաշվառում): Դիտարկենք 1C հարցումների լեզվի ամենատարածված գործառույթները՝ ամսաթվերի հետ աշխատելու համար: Մենք օրինակներ կկառուցենք տեղեկատվական ռեգիստրի հիման վրա ԱշխատակիցներԿազմակերպություններ ZUP կոնֆիգուրացիաների տարբերակ 2.5.

  • Ամսաթիվ ԺԱՄԱՆԱԿ

    Թույլ է տալիս ստանալ հարցման ամսաթիվը (ժամով կամ առանց ժամանակի)՝ նշելով տարին, ամիսը, օրը, ժամը, րոպեն, վայրկյանը:
    Շարահյուսություն:
    DATETIME (տարի, ամիս, օր, ժամ, րոպե, վայրկյան)
    Սովորաբար ժամը, րոպեն ու վայրկյանը չեն նշվում։ Բերենք մինի օրինակ. Հարցման վահանակում մուտքագրեք հետևյալ տեքստը.

    SELECT DATETIME (2016, 1, 1)

    Հարցման արդյունքում ստանում ենք ամսաթիվ՝ 01.01.2016թ
    Իրականում դժվար է պատկերացնել մի իրավիճակ, երբ այս կերպ հայտի մեջ նշվի ամսաթիվը։ Ի վերջո, երբ դուք պետք է նշեք ժամանակահատվածը, օգտագործվում են պարամետրեր: Բայց կա դեպք, երբ այս ֆունկցիան առանձնահատուկ արժեք ունի։ Սա այն դեպքում, երբ մենք պետք է նշենք դատարկ ամսաթիվ դաշտերում կամ հարցումների պայմաններում: Հիշեցնեմ, որ 1C լեզվի համար դատարկ ամսաթիվը նման է 0001.01.01: Այսպիսով, հարցումում դատարկ ամսաթիվ ստանալու համար բավական է նշել DATETIME (1, 1, 1). Որպես օրինակ՝ ընտրենք տեղեկատվական ռեգիստրից ԱշխատակիցներԿազմակերպություններգրառումներ, որոնք չեն լրացվում Ավարտման ժամկետը:

    SELECT Employees of Organizations.Period, Employees of Organizations.Employee, Employee of Organizations.Position, Employees of Organizations.Department of Organizations FROM Registri of Information.Employees of Organizations AS Employees of Organizations WHERE Employees of Organizations. Ավարտման ժամկետը (1, = DATETIME) 1, 1)

  • ԺԱՄԱՆԱԿԻ ՍԿԶԲԸ

    Նշված ամսաթվի համար վերադարձնում է այն ժամանակաշրջանի սկիզբը, որին պատկանում է:
    Շարահյուսություն:
    ԺԱՄԱՆԱԿԱՇՐՋԱՆԻ ՄԵԿՆԱՐԿ (ամսաթիվ, ժամանակաշրջանի տեսակ)
    PeriodType-ը կարող է ընդունել հետևյալ արժեքները. ՐՈՊԵ, ԺԱՄ, ՕՐ, ՇԱԲԱԹ, ԱՄԻՍ, ԵՌԱՄՍՅԱԿ, ՏԱՐԻ, Տասնամյակ, ԿԵՍ ՏԱՐԻ
    Հարցման վահանակում մուտքագրեք.

    ԸՆՏՐԵՔ ԺԱՄԱՆԱԿԱՀԱՏՎԱԾԻ ՍԿՍԻԶԲ (ԱՄՍՎԱԾ ԺԱՄԱՆԱԿ(2016, 1, 15), ԱՄԻՍ)

    Հարցումը կվերադառնա - 01/01/2016
    Իսկ հիմա օրինակ. Ինչպես գիտեք, ռեգիստրի հաճախականությունը ԱշխատակիցներԿազմակերպություններմի օր. Ստեղծենք հարցում, որում գրառումների իրական ժամանակաշրջանի փոխարեն կցուցադրվի ամսվա սկզբի ամսաթիվը։

    ԸՆՏՐԵՔ ԺԱՄԱՆԱԿԱՇՐՋԱՆԻ ՍԿԶԲԸ (Organizations of Employees.Period, MONTH) AS ամսի սկիզբ, Կազմակերպությունների աշխատակիցներ.Աշխատակից, Կազմակերպությունների աշխատակիցներ.Պաշտոն, Կազմակերպությունների աշխատակիցներ. Կազմակերպությունների ՀԾ աշխատակիցներ

  • ՎԵՐՋԻՆ ԺԱՄԱՆԱԿ

    Շարահյուսությունը նույնն է, ինչ ժամանակաշրջանի սկզբի համար: Եվ ինչպես ենթադրում է անունը, այն վերադարձնում է ժամանակաշրջանի ավարտը ըստ ամսաթվի և ժամանակաշրջանի տեսակի: Մենք մանրամասն չենք քննարկի: Մենք սահմանափակվում ենք մինի օրինակով.
    Հայց.

    ԸՆՏՐԵԼ ՎԵՐՋԻՆ ԺԱՄԱՆԱԿԸ (DATETIME (2016, 1, 15), MONTH)

    Վերադարձ 31.01.2016 23:59:59
    Ինչպես տեսնում եք, արժեքը ճշգրիտ վերադարձվում է երկրորդին:

  • ԱՎԵԼԱՑՆԵԼ

    Ամսաթվին ավելացնում է նշված թվով ժամանակային հատվածներ:
    Շարահյուսություն:
    ADDDATE (ամսաթիվ, ժամանակաշրջանի տեսակ, հաշվարկ)
    PeriodType-ն ընդունում է նույն արժեքները, ինչ ֆունկցիայի համար ԺԱՄԱՆԱԿԻ ՍԿԶԲԸ
    Որպես օրինակ վերցնենք փետրվարը.

    ԸՆՏՐԵՔ ԱՎԵԼԱՑՈՒՄ (DATETIME(2016, 2, 15), MONTH, 2)

    Մենք ստանում ենք ամսաթիվը 04/15/2016 0:00:00 AM Չնայած այն հանգամանքին, որ փետրվարը կարճ ամիս է, ստացված ամսաթվի օրը նույնն է, ինչ սկզբնականը: Շատ հարմար է, որ դուք ստիպված չեք լինի մտածել ամիսների օրերի քանակի մասին։
    Թիվը կարող է լինել նաև բացասական։ Այնուհետեւ միջակայքը հաշվում են հակառակ ուղղությամբ։

  • ԺԱՄԱՆԱԿԻ ՏԱՐԲԵՐՈՒԹՅՈՒՆ

    Հաշվում է նշված միավորներում երկու ամսաթվերի տարբերությունը:
    Շարահյուսություն:
    DATEDIFF (Սկիզբի ամսաթիվ, ավարտի ամսաթիվ, ժամանակաշրջանի տեսակ)
    Ժամանակահատվածի տեսակը կարող է վերցնել հետևյալ արժեքները. ԵՐԿՐՈՐԴ, ՐՈՊԵ, ԺԱՄ, ՕՐ, ԱՄԻՍ, ԵՌԱՄՍՅԱԿ, ՏԱՐԻ
    Օրինակ:

    ԸՆՏՐԵԼ ԱՄՍԹՎԱՅԻ ՏԱՐԲԵՐՈՒԹՅՈՒՆ (ԱՄՍՎԱԾ ԺԱՄԱՆԱԿ(2016, 2, 15), ԺԱՄԱՆԱԿ (2016, 3, 1), ՕՐ)

    վերադարձնում է 15

Այստեղ դիտարկվել են 1C հարցումների լեզվի առավել հաճախ օգտագործվող գործառույթները: Մնացածը հազվադեպ են օգտագործվում: Անհրաժեշտության դեպքում նրանց հետ աշխատելու օրինակները կարելի է գտնել 1C հարթակում ներկառուցված օգնության մեջ:

Հավանեցի՞ք հոդվածը: Կիսվեք ընկերների հետ: