Internet Windows Android
Kengaytirish

Oldindan belgilangan elementlarni o'rnatish. Oldindan belgilangan elementlarni o'rnatish 1c 8 oldindan belgilangan elementni tiklash

Oson ishlov berish oldindan belgilangan qiymatlar bilan ishlash.

IS elementlarini konfiguratsiyada oldindan belgilangan elementlar bilan moslashtirish imkonini beradi.

Butun konfiguratsiyani takrorlangan (oldindan belgilangan bitta element bilan bog'langan bir nechta IB elementlari - xato) va etishmayotgan elementlar (bog'langan IB elementlari bo'lmagan oldindan belgilangan elementlar - xato) mavjudligini tekshirishga imkon beradi. Bunday elementlar almashinuvi yoki nosozliklar paytida yuzaga kelishi va konfiguratsiyadagi xatolarga olib kelishi mumkin.

Siz shunchaki joriy qiymatlarni ko'rishingiz mumkin, kerakli o'zgarishlarni amalga oshirishingiz mumkin.

Ishlash tartibi:

1. Biz ishlov berishni boshlaymiz.

2. Turni tanlang (ma'lumotnoma, buxgalteriya jadvali, PVX, PVR).

3. Tanlangan turdagi katalogni tanlang.

4. Qayta ishlashning jadvalli qismida IBda mavjud bo'lgan va konfiguratsiyada tavsiflangan barcha oldindan belgilangan elementlar paydo bo'ladi.

Agar ma'lumotlar bazasida bitta oldindan belgilangan xususiyatga bog'langan bir nechta elementlar mavjud bo'lsa yoki konfiguratsiyada tavsiflangan ba'zi elementlarga IB elementlari tayinlanmagan bo'lsa, tizim qidiruvni tanlashda bu haqda xabar beradi. Ikki marta kattalashtirilgan va etishmayotgan elementlar ro'yxatning yuqori qismida paydo bo'ladi va to'q sariq rangda ta'kidlanadi.

5. Biz kerakli oldindan belgilangan elementlar uchun yangi qiymatlarni o'rnatamiz.

Shu bilan birga, konfiguratsiya konfiguratsiyadan yo'qolgan chiziqlar qizil rang bilan belgilangan. oldindan belgilangan element. Oldindan belgilangan element o'zgaradigan ko'k chiziqlar, oldindan belgilangan element paydo bo'ladigan yashil chiziqlar.
Da katta miqdorda dublikatlar, sichqoncha bilan barcha keraksiz qatorlarni tanlash va barcha tanlangan satrlar uchun "Unmatch" tugmasi bilan ulanishni bekor qilishni ko'rsatish qulay (1.3.1 versiyasidan).

6. Biz "Elementlarni qayta tayinlashni amalga oshirish" tugmachasini bosib qayta tayinlashni amalga oshiramiz.

Dublikatlarni tekshirish(Xato "Oldindan belgilangan element noyob emas"):

"Dublikatlarni tekshirish" tugmasini bosganingizda, ishlov berish barcha kataloglarni, hisoblar jadvallarini, PVX va PVRni tekshiradi va ikki barobar ko'p elementlar sonini ko'rsatadigan jadvallar ro'yxatini ko'rsatadi.

Shundan so'ng, siz xatolar aniqlangan ob'ektlarni alohida tekshirishingiz kerak.

Tekshirish o'tkazib yuborilgan(Xato "Ma'lumotlarda oldindan belgilangan element yo'q"):

"Yo'qolganligini tekshirish" tugmasini bosganingizda, ishlov berish barcha kataloglarni, hisoblar jadvallarini, PVX va RRPlarni tekshiradi va ular bilan bog'langan IS ma'lumotlariga ega bo'lmagan oldindan belgilangan elementlar ro'yxatini ko'rsatadi.

Foydalanish uchun platforma 8.3.3 yoki undan yuqori versiyasini talab qiladi.

Ko'p qirrali, har qanday konfiguratsiya bilan ishlatilishi mumkin.

Tilni aniqlash afrikaans alban arab arman ozarbayjon bask bengal belarus katalan xitoy (simp) xitoy (trad) xorvat chex daniya golland ingliz esperanto eston filippin fin fransuz galisian gruzin nemis yunon gujarati gaiti kreol ibroniy hind venger bolgar island indoneziya irland italyan yapon kannada koreys Litva makedoncha malaycha maltacha norvegcha forscha polshacha portugalcha rumincha ruscha serbcha slovakcha slovencha ispancha suahilicha shvedcha tamilcha teluguchacha taychacha turkchacha ukrainachacha urduchacha vyetnachachacha uelschacha yiddichacha Afrikaancha albancha arabcha armancha ozarbayjoncha bask bengalcha belaruscha bolgarcha kataloncha xitoycha (simp) xitoycha (trad) xorvatcha chexcha dancha gollandcha inglizcha esperantocha estoncha filippincha finchacha frantsugruzchadanchadanındanındanındanmasından gujaridangachanden gaiticha kreolchachachagachachagachadan Malaycha maltacha norvegcha forscha polshacha portugalcha rumincha ruscha serbcha slovakchacha slovenchacha ispancha suahichacha shvedchacha tamilchacha teluguchachachachachachachachaуданchachagachacha turkchacha ukrachachacha urduchacha veetnachachacha

Oldindan belgilangan elementlar bilan dasturiy ish g'oyasi, menimcha, juda to'g'ri. Ishlayotganda e'tiborga olish kerak bo'lgan ba'zi nuanslar mavjud.

Avval siz konfiguratsiyada oldindan belgilangan elementlar mavjudligini va ma'lumot bazasida (IB) oldindan belgilangan elementlar mavjudligini aniq tushunishingiz kerak. Texnik jihatdan oldindan belgilangan IS elementlari kataloglarning eng keng tarqalgan elementlari bo'lib, ularda "PredefinedDataName" atributi oldindan belgilangan konfiguratsiyaning qaysi elementiga mos kelishini ko'rsatadi. Ular oddiy elementlardan farq qilmaydi. Shunga ko'ra, axborot xavfsizligining har qanday oddiy elementi oldindan belgilangan, har qanday oldindan belgilangan element oddiy holga keltirilishi mumkin. Buning uchun rekvizitga kerakli qiymatni kiritish kifoya. "PredefinedDataName".

Vaqti-vaqti bilan bu xususiyat ishlab chiquvchi taqdim etgan qiymatni o'z ichiga olmaydi. Natijada, 1C ishida xatolar yuzaga keladi. Ish printsipial jihatdan imkonsiz bo'lgan tanqidiydan tortib, algoritmlarning mantig'i buzilgan tanqidiy bo'lmagangacha.

Shartli ravishda ajratish mumkin uch turdagi xatolar:
1. “Ma’lumotlarda oldindan belgilangan element yo‘q”;

3. Noto'g'ri ko'rsatma oldindan belgilangan element;

1. "Ma'lumotlarda oldindan belgilangan element yo'q" - oh IS ma'lumotlaridagi konfiguratsiyada tasvirlangan oldindan belgilangan elementning yo'qligi.

Bu disk raskadrovka va tuzatish uchun eng oson xato turi. Uning soddaligi shundaki, platforma ushbu vaziyatni to'g'ri xabar qiladi "Ma'lumotlarda oldindan belgilangan element yo'q" va uni qanday tuzatish kerakligi aniq.

"Kataloglar. Aloqa ma'lumotlarining turlari. Aloqa qiluvchi shaxsning elektron pochtasi" kodidagi etishmayotgan elementga kirishda xabar ko'rsatiladi.

"VALUE(Catalog.KindsofContactInformation.EmailContactPerson)" so'rovidagi elementga kirishda quyidagi xabar ko'rsatiladi:

Agar element konfiguratsiyada tasvirlangan bo'lsa, lekin ma'lumotlar bazasida element u bilan bog'lanmagan bo'lsa, bunday xatolik yuzaga keladi.

Boshlash uchun biz bu holat har doim ham noto'g'ri emasligini aniqlaymiz. Ko'pchilik foydalanuvchilar uchun foydalanilmasligi mumkin bo'lgan dastur mantig'ida oldindan belgilangan ma'lumotlardan foydalanish juda mumkin. Bunday holda, barcha konfiguratsiya foydalanuvchilari uchun katalogni ifloslantirmaslik uchun konfiguratsiyada oldindan belgilangan elementlarni aniqlash mantiqan to'g'ri keladi, lekin ularni barcha IBlarda emas, balki faqat kerakli konfiguratsiya mantig'i qo'llaniladigan IBlar uchun yarating. Bunday holda, dasturchi katalog uchun "Oldindan belgilangan ma'lumotlarni yangilamang" xususiyatini belgilashi va modulning funksionalligiga kirishda elementlarni dasturiy ravishda yaratishi mumkin. Yoki foydalanuvchiga modulning oldindan belgilangan elementlarini o'zida mavjud bo'lgan odatiy elementlarga mustaqil ravishda bog'lashiga ruxsat bering.

Shuningdek, ishlatilmaydi avtomatik yaratish RIB rejimida ishlashda oldindan belgilangan elementlar. Chunki yangi elementlar markaziy bazadan uzatilishi kerak va turli UID-larga ega tugunlarda yaratilmasligi kerak.

Bular. ba'zan bunday elementning o'zi mavjudligini emas, balki mos kelmaydigan elementga murojaat qilish xatodir.

Nima uchun element yaratilmaganligini tahlil qilish kerak. Ba'zi dastur rejimi bajarilganda uni yaratish kerak bo'lishi mumkin. Masalan, RIBda almashinuvni amalga oshirgandan so'ng. Yoki tasodifan o'chirilgan bo'lishi mumkin.

Agar mantiq oldindan belgilangan elementlarni avtomatik ravishda emas, balki alohida rejimda to'ldirishni ta'minlasa, unda nom bilan qo'ng'iroq qilishdan oldin " Kataloglar. Aloqa ma'lumotlarining turlari. Aloqa qiluvchi shaxsning elektron pochtasi" Istisnoni oldini olish uchun element allaqachon ma'lumotlar bazasida mavjudligini tekshirish tavsiya etiladi. Agar element yo'q bo'lsa, foydalanuvchiga bu haqda xabar bering va elementni to'ldirish uchun u qanday rejimni bajarishi kerakligini tushuntiring. Bunday tekshirish uchun , siz ma'lumotlarni so'rashingiz mumkin.

So'rov = Yangi so'rov; Query.Text = "TANLA | Aloqa ma'lumotlari turlari. Havola | FROM | Katalog. Aloqa ma'lumotlari turlari Aloqa ma'lumotlari turlari sifatida | QAYER | Aloqa ma'lumotlari turlari. Oldindan belgilangan ma'lumotlar nomi = "" Kontakt odamiga elektron pochta xabari"""; ElementMissingData = Query.Execute().Empty();

Agar bu hali ham ma'lumotlar bazasi ma'lumotlarida xato bo'lsa, unda IB elementining oldindan belgilangan elementiga ulanish kerak. Bular. tizimga dastur kodi ushbu nom bilan qaysi IS elementiga murojaat qilish kerakligini tushuntirish kerak. Texnik jihatdan bog'lash faqat "" da oldindan belgilangan element nomini ko'rsatishdir.Oldindan belgilanganDataName"IB elementining. Uni o'rnatish uchun quyidagi kodni ishga tushirish kifoya:

2. "Oldindan belgilangan element yagona emas" - h Tavsiya etilgan oldindan belgilangan elementlar:

Bu holat shundaki, bir nechta IB elementlari oldindan belgilangan bitta elementga bog'langan. Bunday holda, oldindan belgilangan nomga kirishda element tasodifiy tanlanadi. Bu holat har doim noto'g'ri. Uning murakkabligi shundaki, platforma hech qanday tarzda bu haqda xabar bermaydi. Faqat algoritmlar noto'g'ri ishlay boshlaydi.

Platforma takrorlangan elementni tahrirlashga urinayotganda faqat “Oldindan belgilangan element yagona emas” xatosi haqida xabar beradi.

Hech kim elementni tahrirlashi shart emas ekan, hech kim xato haqida bilmaydi.

Bunday dublikatlar, masalan, katalog uchun RIB ishlatilsa va oldindan belgilangan ma'lumotlarning xususiyatlarida "Avtomatik yangilash" rejimi ko'rsatilgan bo'lsa, yaratilishi mumkin. Bunday holda, almashinuvni amalga oshirishda, konfiguratsiya yangilanganda oldindan belgilangan ma'lumotlarning bir nusxasi yaratiladi. Xuddi shu nomdagi oldindan belgilangan elementlarning ikkinchi nusxasi almashinuv vaqtida markaziy ma'lumotlar bazasidan uzatiladi.

Bundan tashqari, bu dublikatlar konfiguratsiyalar o'rtasida almashinuvni qayta ishlashdan foydalanganda yuzaga keladi, agar turli xil IS elementlari turli ma'lumotlar bazalarida oldindan belgilangan elementlarga mos kelsa. Bunday holda, oldindan belgilangan ma'lumotlarning bir nusxasi allaqachon ma'lumotlar bazasida, ikkinchisi boshqa UID bilan ma'lumotlarni yuklashda keladi. Agar siz ma'lumotlarni ko'chirishni amalga oshirayotgan bo'lsangiz, qaysi ma'lumotlar bazasi elementlarini asosiy deb hisoblashingiz va ularni bo'ysunuvchi ma'lumotlar bazasida ishlatishingiz kerak. Bo'ysunuvchi bazada siz eski elementlardan foydalanishni asosiy bazaning elementlari bilan almashtirishingiz kerak.

Ma'lumotlar bazasidagi bunday xatolar quyidagi so'rovlar orqali aniqlanishi mumkin:

Aloqa ma'lumotlarining turlarini tanlang.Oldindan belgilangan ma'lumotlarning nomi, SONI (TURLI Aloqa ma'lumotlarining turlari. Havola) Katalogdan oldindan belgilangan soni.Aloqa ma'lumotlari turlari Aloqa ma'lumotlari turlari sifatida Aloqa ma'lumotlari turlari bo'yicha Guruhga bo'lgan oldindan belgilangan ma'lumotlarning nomi. (TURLI Aloqa ma'lumotlari. Havola) > 1

Ushbu so'rov bir nechta IB elementlari bilan bog'langan oldindan belgilangan elementlar ro'yxatini qaytaradi.

Agar bunday elementlar mavjud bo'lsa, ulardan biri uchun oldindan belgilangan bilan aloqani olib tashlash kerak. Bular. tizim uchun ushbu nomdan foydalanilganda dastur kodi qaysi IS elementiga murojaat qilishi kerakligini aniq aniqlash kerak. Buning uchun kodni bajarish kifoya.

3. Oldindan belgilangan elementni noto'g'ri ko'rsatish.

Xato, oldindan belgilangan elementning dastur mantig'i tomonidan taqdim etilgan elementga mos kelmasligidadir. Bunday xatolarni tashxislash eng qiyin. Birinchi ikki turdan farqli o'laroq, konfiguratsiyani ushbu xatolar uchun avtomatik ravishda tekshirib bo'lmaydi. Ularni faqat ish mantig'ini tahlil qilish orqali aniqlash mumkin. Shubha tug'ilganda, to'g'ri element ishlatilayotganligini tekshirishingiz mumkin.

Buning uchun buyruqlardan birini bajarish kifoya.

//kerakli oldindan belgilangan Hisobotga bog'langan IB elementini aniqlang(Directory.Types of contact information.Person of the contact of the email) //Tanlangan hisobot bog'langan oldindan belgilangan elementni aniqlang(ReferenceToElement.PredefinedDataName)

Bunday xatolar aniqlanganda, eski elementga noto'g'ri havolani olib tashlash va yangi elementga havola qo'shish kerak. Operatsion kodi birinchi ikki turdagi xatolarni tuzatish kodiga o'xshaydi.

Xo'sh, qachon xatolar haqida qisqacha dastur ishi yoki konfiguratsiya rejimida:

"Oldindan belgilangan element tegishli emas<Имя справочника>" - konfiguratordagi nomga mos kelmaydigan nom bilan oldindan belgilangan elementni yozishga urinayotganda xatolik yuz beradi..

"Oldindan belgilanmagan ob'ektlarda oldindan belgilangan pastki o'lchov turi yozuvlari bo'lishi mumkin emas" - oldindan belgilangan hisoblar rejasini elementni oldindan belgilanmagan qilishga urinayotganda xatolik yuzaga keladi. Xatolarni bartaraf qilish uchun element subkontaktining har bir satridan "Oldindan belgilangan" bayroqni olib tashlash kerak.

"Oldindan belgilanmagan ob'ektlarda oldindan belgilangan asosiy hisob yozuvlari bo'lishi mumkin emas"- hisoblash turlari rejasining oldindan belgilangan elementini oldindan belgilanmagan qilishga urinishda xatolik yuzaga keladi. Xatolarni bartaraf qilish uchun elementning etakchi hisoblash turining har bir qatoridan "Oldindan belgilangan" bayroqni olib tashlash kerak.

"Oldindan belgilangan elementlar noyob emas"- yangilashda konfiguratorda xatolik yuz berdi axborot bazasi 8.3.4 moslik rejimisiz konfiguratsiya versiyasida. Yangilashdan oldin dublikatlarni tekshirish va ularni yo'q qilish kerak.

"Oldindan belgilangan element nomi yagona emas" - platformani yangilashda konfiguratsiyada bir xil nomdagi bir nechta oldindan belgilangan elementlar mavjud bo'lganda xatolik yuzaga keladi.8.3.6.2332 va undan yuqori. Konfiguratsiyadagi dublikatlarni yo'q qilish kerak.

Oldindan belgilangan ma'lumotlar bilan ishlash uchun men qayta ishlashni tavsiya etaman. U oldindan belgilangan ma'lumotlar bilan har qanday harakatlarni bajarishi mumkin, shuningdek, barcha IS ob'ektlarida (kataloglar, hisoblar jadvallari, PVX, PVR) dastlabki ikki turdagi xatolar (ikki marta va etishmayotgan elementlar) mavjudligi uchun konfiguratsiyani bir butun sifatida tekshirishi mumkin.

Xayrli kun.

Bugun biz 8.3 platformasida oldindan belgilangan elementlarga oid innovatsiyalar haqida gaplashamiz.

Kirish

Shuni eslatib o'tamanki, ilgari amalda men ko'pincha uning oldindan belgilangan nomini bilish uchun katalog elementiga qarashni xohlardim. Masalan, siz ikkita oldindan belgilangan kontragent yaratdingiz va ularni IPSidorov va OOOMeteor deb nomladingiz. Va ularga qandaydir mantiq tikishdi.

Hammasi tuzatilib, ishlab chiqilgandan so'ng, vazifa aksincha o'rnatilgani va IP uchun mantiq OOO uchun va OOO mantig'i IP uchun kerakligi ma'lum bo'ldi. "Muammo yo'q" deymiz va korporativ rejimda elementlarning nomini o'zgartiramiz. Axir, kodga kirish ancha qiyinroq. Bir yil o'tadi va sizga yangi vazifa beriladi: IP Sidorov uchun yana bir oz mantiqni o'rnatish. Siz konfiguratorga ko'tarilasiz, mantiqni yozasiz, tekshirishni boshlaysiz va hech narsa ishlamaydi, chunki IPSidorov konfiguratorida va korxonada - MChJ Meteor. Miya buzilgan va men bu rakeni yo'q qilmoqchiman. Eng oddiy va vizual usul - oldindan belgilangan element nomini ro'yxat shaklida ko'rsatishdir. Mana pistirma, siz 8.2 da oldindan belgilangan nomini faqat usul bilan olishingiz mumkin. Va usul o'zining noqulayligi, uni so'rovda olish mumkin emas. Bular. birinchi noqulaylik - katalogga havola orqali oldindan belgilangan nomini olish.

Ikkinchi noqulaylik, bizda allaqachon katalog elementi mavjud bo'lganda va biz uni oldindan belgilangan qilishimiz kerak. Biz oldindan belgilangan elementni yaratamiz va havolada ikkita elementni olamiz. Ulardan biri oldindan belgilangan, ikkinchisi esa barcha hujjatlarimizga tegishli ishchi. Havolalarni almashtirish, albatta, yordam beradi, lekin ma'lumotlar bazasi katta bo'lsa, bu qiyin.

Endi biznesda

Birinchi narsa shundaki, katalog endi "Oldindan belgilangan ma'lumotlarni yangilash" xususiyatiga ega.

Bu maydon bizga nima beradi? Agar u "Avtomatik yangilanmasin" ga o'rnatilgan bo'lsa, oldindan belgilangan elementni qo'shish orqali biz uni darhol katalogda ko'rmaymiz. Bular. metadata ma'lumotlar bilan hech qanday aloqasi yo'q. Va agar u katalogda yaratilmagan bo'lsa, unda katalog menejeri orqali uning nomi bilan kirish sintaksis xatosiga olib keladi.

Juda qiziq, lekin nima uchun? Katalogda elementni qanday yaratamiz? Va xohlaganingizcha, siz yaratishingiz mumkin yoki uni mavjud bilan bog'lashingiz mumkin. Endi lug'atda "PredefinedDataName" atributi mavjud. Biz odatdagidek "Directories.Accounts.CreateElement()" orqali dasturli ravishda katalog elementini yaratamiz va uning "PredefinedDataName" atributini oldindan belgilangan element nomiga teng to'ldiramiz. Yoki, agar element allaqachon mavjud bo'lsa, biz uning ob'ektini olamiz va unga yana "PredefinedDataName" ni to'ldiramiz. Hamma narsa.

Va nihoyat, bir oz sirop

Ushbu yangi atribut nafaqat o'qilishi va yozishi mumkin, balki so'rovlarda ham mavjud. Shunday qilib, siz so'rovlarda unga shartlar qo'yishingiz, oldindan belgilangan yoki yo'qligini aniqlashingiz mumkin.

E'tibor uchun rahmat.