Ստեղծեք և ջնջեք տեղեկատվական ռեգիստրի գրառումները: Տեղեկատվական ռեգիստրի գրառումների ստեղծում և ջնջում Տեղեկատվական ռեգիստրի մուտքի ջնջում 1c 8.3

Արագ անցում

Ծրագրային տարբերակ ամբողջական մաքրման համար.

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

Ձայնագրությունների հավաքածուհատուկ «մենեջեր» է՝ մի խումբ գրառումների կառավարման համար։

Եթե ​​ընտրությունն ըստ չափումների սահմանված չէ, և նախնական ընթերցումը չի կատարվում Read() մեթոդով, ապա Write() կանչի պահին պահպանվում է ներկայիս դատարկ վիճակը։

Ինտերակտիվ կերպով ջնջելով տեղեկատվական ռեգիստրի գրառումները

Կազմաձևի շահագործման կառավարվող ռեժիմում, լռելյայնորեն, միացված է ռեգիստրի գրառումների բազմակի ընտրություն, և եթե ռեգիստրն անկախ է (գրանցող փաստաթղթին ենթակա չէ), ապա հնարավոր է ջնջել գրառումների խումբը:

Ընտրեք shift-ի միջոցով և բոլոր գրառումները Ctrl + A հրամանով և սեղմեք «Ջնջել» կամ «Ջնջել» համատեքստի ընտրացանկի միջոցով:

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

Ավելի քան 5000 գրառումների ցուցակներով այս մեթոդի օգտագործումը խորհուրդ չի տրվում, քանի որ երբ աղյուսակի դաշտում տողերի ցանկը մեծանում է, դրա աշխատանքը կտրուկ դանդաղում է։

Նորմալ ձևերով ստանդարտ է ջնջել մեկ տող:

Տեղեկատվական ռեգիստրի գրառումները ջնջելու գործընթաց

  • Բացի ռեգիստրի գրառումները փոխելուց և ջնջելուց, ավելացվել է կամայական ալգորիթմ օգտագործելու հնարավորությունը:
  • Ցանկից ընտրելով RS, ձևը ցուցադրում է դինամիկ ռեգիստրների ցուցակ:
  • Ստեղծում է դաշտեր անմիջապես ձևի վրա՝ ընթացիկ գրառումը փոխելու համար: Դուք կարող եք փոխել, ավելացնել, ջնջել գրառումները:
  • Գրառումների խմբի համար (դինամիկ ցուցակում ընդգծված տողեր) կարող եք փոխել դաշտերը, ներառյալ չափերը: ԿԱՐԵՎՈՐ. Ձայնագրումը վերագրանցման ռեժիմում է, այնպես որ, եթե վերջնական գրառումն արդեն գոյություն ունի կամ դուք փոխել եք գրառումների խմբի միակ չափսը, հետևանքները կարող են աղետալի լինել: Բայց հուսով եմ, որ դուք հասկանում եք, թե ինչ եք պատրաստվում անել:
  • Դաշտերը փոխելիս շրջանակն ընդգծված է: Դուք միշտ տեղյակ եք, թե ինչ է փոխվելու։ Սա հատկապես ճիշտ է ձայնագրությունների խմբերի համար:
  • Հնարավոր է ձայնագրել ներբեռնման ռեժիմում
  • Հնարավոր է սահմանել լրացուցիչ ռեկորդային հատկություններ (երբեմն շատ կարևոր)
  • Օգտագործում է արտոնյալ ռեժիմ:
Gmix-ի մշակման հիման վրա տեղեկատվական ռեգիստրների խմբային մշակում
  • Տեղեկատվական ռեգիստրների գրառումների փոփոխություն (մեկից բոլոր դաշտերը), ջնջում և պատճենում (ցանկացած թվով դաշտերի փոխարինումով):

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

Տեղեկատվական ռեգիստրը ծրագրային կերպով մաքրելու սովորական եղանակը, որը ենթակա չէ գրանցողին, դատարկ գրառումների հավաքածու գրելն է, նման բան.

RecordSet = DataRegisters.OurRegister.CreateRecordSet(); RecordSet.Write();

Recordset=RegistersInfo. Մեր գրանցամատյանը CreateRecordSet();

RecordSet. Գրել();

Բայց այս դեպքում գրանցամատյանն այս կերպ մաքրելը շատ ժամեր կպահանջի։ Ուստի ընտրվեց մեկ այլ մեթոդ՝ տեղեկատվական ռեգիստրը մաքրելու արագ միջոց։

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

Քայլ 2. Մենք պատճենում ենք անհրաժեշտ տեղեկատվական ռեգիստրը:

Քայլ 3. Ջնջել սկզբնական տեղեկատվական ռեգիստրը

Քայլ 4 Վերանվանեք պատճենը բնօրինակի և կիրառեք փոփոխությունները:

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

Գրեթե ցանկացած կոնֆիգուրացիայի տարր կարող է մաքրվել նմանատիպ եղանակով: Բայց, իհարկե, ոչ ոք չի երաշխավորում նման գործողությունից հետո հաշվապահական հաշվառման ճիշտությունը:

Եթե ​​սխալ կամ անճշտություն եք գտել, խնդրում ենք ընդգծել տեքստի մի հատվածը և սեղմել Ctrl+Enter.

Այս հոդվածում մենք կանդրադառնանք, թե ինչպես դա անել ջնջել և գրել տեղեկատվական ռեգիստրի գրառումները. Եվ առաջին հերթին մենք կդիտարկենք գրառումների ջնջումը, քանի որ. ոչ այնքան կարևոր է նոր գրառումներ ստեղծելը, որքան եղածները պահպանելը։

Իսկ տեղեկատվական ռեգիստրի հետ անզգույշ վարվելու դեպքում շատ հեշտ է ջնջել բոլոր առկա գրառումները, որոնք կցուցադրվեն ստորև: Որպես օրինակ՝ մենք կօգտագործենք հետևյալ տեղեկատվական ռեգիստրը

Տեղեկատվական ռեգիստրի գրառումների ջնջում

Ինչպես գիտեք, տեղեկատվական ռեգիստրի հետ աշխատելու համար օգտագործվում է գրառումների մի շարք: Եկեք գրենք երկու պարզ կոդ մեր ռեգիստրի համար և գործարկենք դրանք կատարման համար

Գրառումների հավաքածու =RegistersInfo. Գին. CreateRecordSet(); SetRecords. Գրել();

Շնորհավորում եմ: Մենք պարզապես փչեցինք տեղեկատվական մատյանում բոլոր գրառումները: Թեև թվում է, թե դատարկ ձայնագրություն գրելիս ոչ մի հանցավոր բան չի կարող լինել: Բայց եթե դիմեք շարահյուսության օգնականին, կարող եք տեսնել, որ հակասություն չկա: Եթե ​​գրենք գրառումների հավաքածուն և մեթոդում Գրել ()պարամետրերը նշված չեն Սուտ(իսկ True-ն փոխարինվում է լռելյայնորեն), այնուհետև առկա գրառումների շարքը փոխարինվում է մեր գրածով, սահմանված ընտրության համաձայն։ Եվ քանի որ մենք չենք սահմանել ընտրությունը, ռեգիստրի բոլոր գրառումները ընտրվում են փոխարինման համար և հաջողությամբ փոխարինվում են գրառումների դատարկ շարքով: Եվ սա փոցխ է, որի վրա երբեմն քայլում են մշակողները, ովքեր առաջին օրը չեն 1C-ում: Ի դեպ, եթե մենք միտումնավոր ցանկանում ենք ամբողջությամբ մաքրել ռեգիստրը, ապա սա այն մեթոդն է, որը մենք պետք է օգտագործենք։ Ես ուշադրություն եմ հրավիրում սրա վրա, քանի որ բավականին հաճախ կա կոդ, երբ ջնջելուց առաջ մի շարք գրառումներ են կարդացվում, այնուհետև մաքրվում և միայն հետո գրվում: Թեև գրառումների հավաքածուն կարդալն ու մաքրելը այստեղ լրիվ ավելորդ է:

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

Ենթադրենք, մենք ուզում ենք ջնջել գրառումները, որտեղ Ապրանք - Մատիտ, Ա Ժամանակաշրջան - 01.01.2017թ. Հիշեցնեմ, որ տեղեկատվության պարբերական ռեգիստրների համար ընտրությունը կարող է սահմանվել ոչ միայն չափերով, այլև ըստ ժամանակաշրջանի։ Այս դեպքում մեր կոդը այսպիսի տեսք կունենա

Գրառումների հավաքածու =RegistersInfo. Գին. CreateRecordSet(); SetRecords. Ընտրություն. Ժամանակաշրջան. Սահմանել («20170101»); SetRecords. Ընտրություն. Արտադրանք. Set(Directories. Goods. FindByName("Pencil") ); SetRecords. Գրել();

Ուզում եմ նաև ուշադրություն հրավիրել մեթոդի վրա Տեղադրեք (). Այն դեպքում, երբ ընտրության մեջ համեմատության տեսակն է Հավասար էայս մեթոդը թույլ է տալիս ընտրությունը սահմանել կոդերի նվազագույն քանակով:
Այս կոդը գործարկելուց հետո մեր ռեգիստրում կմնան հետևյալ գրառումները

Գրառումները ջնջելիս, իհարկե, կարող են լինել ավելի բարդ դեպքեր: Օրինակ, երբ անհրաժեշտ է ջնջել ռեսուրսների կամ ատրիբուտների որոշակի արժեքների գրառումները:

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

Տեղեկատվական գրանցամատյանում գրառումների ավելացում

Որպես տեղեկատվական ռեգիստրի գրառումներ ստեղծելու օրինակ՝ մենք կվերականգնենք նախկինում ջնջված գրառումները

Գրառումների հավաքածու =RegistersInfo. Գին. CreateRecordSet(); SetRecords. Ընտրություն. Ժամանակաշրջան. Սահմանել («20170101»); SetRecords. Ընտրություն. Արտադրանք. Set(Directories. Goods. FindByName("Pencil") ); NewRecord = RecordSet: Ավելացնել () ; Նոր Մուտք. Ժամանակաշրջան = "20170101"; Նոր Մուտք. Վաճառող = տեղեկատուներ: Կողմնակիցներ. FindByName("ՍՊԸ "Lesprom" "" ); Նոր Մուտք. Ապրանք = տեղեկատուներ: Ապրանք. FindByName («Մատիտ» ); Նոր Մուտք. Գումարը = 10 ; NewRecord = RecordSet: Ավելացնել () ; Նոր Մուտք. Ժամանակաշրջան = "20170101"; Նոր Մուտք. Վաճառող = տեղեկատուներ: Կողմնակիցներ. FindByName("PJSC ""Գրենային պիտույքներ" "" ); Նոր Մուտք. Ապրանք = տեղեկատուներ: Ապրանք. FindByName («Մատիտ» ); Նոր Մուտք. Գումար = 27 ; SetRecords. Գրել (Սխալ) ;

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


Բայց եթե վերագրանցման ռեժիմը դնենք Ճշմարտություն, ապա վերագրանցման ժամանակ սխալ չի առաջանա, քանի որ առկա գրառումները կվերագրվեն:

Մեկ ձայնագրությամբ աշխատելու դեպքում ձայնագրությունների հավաքածուի փոխարեն կարող եք օգտագործել ռեկորդների կառավարիչը։

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