1c ma'lumotlarni aylantirish 2.0 versiyasi 2.1 8.2. Konvertatsiya qilish uchun video ko'rsatmalar

Hodisalarni qayta ishlash mexanizmi "Ma'lumotlarni aylantirish 2.0" yordamida ma'lumotlarni o'zgartirish texnologiyasidagi asosiy mexanizmlardan biridir. Ushbu mexanizmdan malakali va mohirona foydalanish ishlab chiquvchiga deyarli har qanday ma'lumotlarni konvertatsiya qilish muammosini tezda hal qilish imkonini beradi. Protsessor texnologiyasidan foydalanib, ma'lumotlarni tanlash va ma'lumotlarni konvertatsiya qilish osonlik bilan amalga oshiriladi turli xil turlari, murakkab ma'lumotlarni tanlash, konvertatsiya parametrlarini o'rnatish va boshqa ko'plab vazifalar.

Keling, ushbu texnologiyaning asosiy tamoyillarini ko'rib chiqaylik. Universal almashinuvdan ma'lumotlarni yuklash va yuklab olish algoritmlarining asosiy nuqtalarida ma'lumotlarni yuklash yoki yuklab olishni qayta ishlashga "qattiq simli" emas, balki ma'lumotlar almashinuvi qoidalaridan olingan dastur kodini bajarish mumkin. Data Conversion 2.0 konfiguratsiyasi bunday dastur kodini ma'lumotlar almashinuvi qoidalariga integratsiya qilish imkoniyatlarini beradi.

Umuman olganda, ma'lumotlar almashinuvi algoritmlarida uchinchi tomon kodlari bajarilishi mumkin bo'lgan yigirmadan ortiq turli joylar mavjud. Shunga ko'ra, konfiguratsiya turli xil turdagi hodisalarni qayta ishlash vositalarini yaratishni ta'minlaydi.

Hodisalarni qayta ishlash kodi almashinuv qoidalari ob'ektlariga "bog'langan" - kataloglar elementlari: konversiyalar, ob'ektlarni o'zgartirish qoidalari, mulkni o'zgartirish qoidalari, ma'lumotlarni yuklash qoidalari va ma'lumotlarni tozalash qoidalari. Tabiiyki, hodisani qayta ishlash kodi bir qator talablarga javob berishi kerak. Xususan, ishlov beruvchi kodida konvertatsiya jarayonini boshqarish uchun maxsus o'zgaruvchilar - parametrlardan foydalanish kerak. Hodisa ishlov beruvchilarining barcha turlari va mavjud o'zgaruvchilarning to'liq tavsifini tegishli shakllardagi ishlov beruvchi ma'lumotlarida topish mumkin.

DIQQAT!!!

"Ma'lumotlarni aylantirish 2.0" texnologiyalari "1C: Enterprise 7.7" va "1C: Enterprise 8.0" platformalarida amalga oshirilgan ma'lumotlar bazalari bilan ma'lumotlar almashish imkonini beradi. 1C: Enterprise 7.7 platformasining o'ziga xos xususiyatlaridan kelib chiqqan holda, ushbu platformada amalga oshirilgan axborot bazalari uchun voqea ishlov beruvchilari yordamida ma'lumotlar almashinuvi qoidalarini tayyorlash bir qator xususiyatlarga ega.

1C: Enterprise 7.7 platformasi uchun o'zboshimchalik bilan kodni bajarish mumkin emas (V8 uchun Run funksiyasiga o'xshash). Agar siz V7.7 platformasi uchun hodisa ishlov beruvchilaridan foydalanishingiz kerak bo'lsa, ma'lumotlarni tushirish yoki yuklash uchun ishlov berish matnini "Ma'lumotlarni aylantirish 2.0" konfiguratsiyasi tomonidan chiqarilgan ishlov berish matnlari bilan almashtirishingiz kerak.

Agar siz ma'lumotlarni V7.7 dan V8 ga ko'chirishingiz kerak bo'lsa, unda:

Yukni tushirishda, qoidalar faylining o'ziga qo'shimcha ravishda, tizim V77Exp.ert ni voqea ishlov beruvchilarini amalga oshiradigan funktsiyalar bilan qayta ishlash uchun modul matnini yaratadi. Keyin, konfiguratorda standart V77Exp.ert modulini "Ma'lumotlarni aylantirish 2.0" tomonidan yaratilgan yangisiga almashtirishimiz kerak.

1C: Enterprise 7.7 platformasida ma'lumotlar almashinuvi uchun echimlarni ishlab chiqishda siz ushbu muhim "arzimas narsalarni" eslab qolishingiz kerak. Ma'lumotlar almashinuvi qoidalarini yuklashda modul matni yaratilgan o'zgartirilgan ishlov berishdan foydalansangizgina sizning qoidalaringiz to'g'ri ishlaydi. Ushbu qoidadan bitta istisno mavjud - agar siz voqea ishlov beruvchilaridan foydalanmasangiz, unda siz standart ishlov berishdan foydalanishingiz mumkin.

Hurmat bilan, Vladimir Milkin(o'qituvchi va ishlab chiquvchi).

Ma'lumotlarni o'zgartirish 2.0 va 2.1 - 8.1 dan 8.3 gacha bo'lgan platforma versiyalarida amalga oshirilgan 1C ning texnologik konfiguratsiyasi.

Asbobning asosiy vazifasi 1C 8 va 7 amaliy yechimlari o'rtasida almashish qoidalarini yozishdir. Bugungi kunda ma'lumotlarni konvertatsiya qilishning joriy versiyasi 3.0.

Ma'lumotni konvertatsiya qilish juda foydali konfiguratsiya bo'lib, uning yordami bilan siz nafaqat ma'lumotni bir ma'lumot bazasidan boshqasiga o'tkazish masalasini, balki, masalan, bitta ma'lumotlar bazasidagi ma'lumotlarni o'zgartirishni ham hal qilishingiz mumkin;

Konfiguratsiya bilan foydalanish juda qulay.

Ma'lumotlarni konvertatsiya qilish har qanday dasturchi uchun foydali bo'ladi: almashinuv qoidalarini yaratish ko'nikmalariga ega bo'lish professional ko'nikmalar uchun jiddiy ortiqcha.

Konfiguratsiya bilan qanday ishlashni o'rganish uchun yechim eng mos keladi amaliy muammolar. O'zingiz uchun vazifalarni ishlab chiqishga harakat qiling, masalan: ba'zi ma'lumotlarni bir ma'lumotlar bazasidan boshqasiga o'tkazish, savdo hujjatini kvitansiya hujjatiga aylantirish, joriy qoldiqlarni "haydash". buxgalteriya hisobi hujjatda "balanslarni kiritish" va boshqa vazifalar.

1C 8.3 ning "standart" almashinuv qoidalarini tushunish juda foydali bo'ladi, u erda siz ko'pincha vazifalarni bajarishning qiziqarli misollarini topishingiz mumkin.

Asoslarni tushunish uchun sizga materiallar kerak bo'ladi, biz ularni quyida ko'rib chiqamiz.

Konvertatsiya qilish uchun video ko'rsatmalar

"1C Data Conversion" konfiguratsiyasidan foydalangan holda 1C-da ma'lumotlar almashinuvini sozlash asoslari uchun videodagi misolga qarang:

1C Data Conversion 2.0 ni o'rganish uchun materiallar, darsliklar

Internetda juda ko'p materiallar va hujjatlar yo'q, men eng muhim va qiziqarli materiallarni to'plashga harakat qildim:

0. Avvalo, men Ilya Leontyevning bepul video kursini tavsiya qilaman, u quyidagi manzilda mavjud havola.

1. Men birinchi navbatda konfiguratsiyada o'rnatilgan yordamdan foydalanishni maslahat bergan bo'lardim. Bu haqiqatan ham yaxshi yozilgan va texnik jihatdan yaxshi amalga oshirilgan:

2. Ma'lumotlarning ikkinchi eng muhim manbasi - bu ma'lumotlarni konvertatsiya qilishga ixtisoslashgan http://www.mykod.info/ (sayt yopilgan) sayti. U erda yuklab olishingiz mumkin katta miqdorda konvertatsiya materiallari.

3. Alohida, men darslikni ta'kidlamoqchiman - (muallif - Olga Kuznetsova).

1.Kirish.

2. Sizga nima kerak bo'ladi: 1C konfiguratsiyasi: Ma'lumotlarni o'zgartirish 2.* va paketdan ishlov berish. Misol vazifalari uchun 1C: Savdoni boshqarish 11 va 1C: BP 3.* konfiguratsiyalarini olaylik.

Shunday qilib, 1C-ga ma'lumotlarni yuklash qoidalarini ishlab chiqish uchun sizga 1C konfiguratsiyasi kerak bo'ladi: Ob'ektni aylantirish 2, shuningdek, paketga kiritilgan ishlov berish.

Misol uchun, biz allaqachon konversiya ma'lumotlar bazasini joylashtirdik va uni ishga tushirdik.

Biz 1C: Savdoni boshqarish 11 va 1C: Enterprise Accounting 3 konfiguratsiyasi (UT / ACCOUNT almashish qoidalari) o'rtasida almashinuv qoidalarini ishlab chiqishni yozamiz.

3. Metadata strukturasini yuklash va almashish uchun bizga ishlov berish kerak bo'ladi.

Rivojlanish uchun olishingiz kerak bo'lgan birinchi narsa metadata tuzilmasi bo'lgan fayllardir. Bu ob'ektni o'zgartirish paketiga kiritilgan metama'lumotlar strukturasini tushirish uchun ishlov berish yordamida amalga oshiriladi.

Aslida, konfiguratsiyalar uchun paketdan chiqarilgan konfiguratsiya katalogida boshqariladigan shakllar biz MD83Exp.epf ni qayta ishlashga qiziqamiz. Agar tushirishni oddiy shakllardagi konfiguratsiyalardan amalga oshirish kerak bo'lsa, u holda MD82Exp.epf ishlovidan foydalaniladi. Bu, masalan, 1C: UT 10, 1C: Management kabi konfiguratsiyalardan tuzilma olishingiz kerak bo'lsa. ishlab chiqarish korxonasi 1.3, 1C: Kompleks avtomatlashtirish 1.1, 1C: Zup 2.5 va boshqalar.

Bundan tashqari, bizning qoidalarimizdan foydalangan holda ma'lumotlarni 1C-ga yuklash va yuklab olish uchun siz 1C: Savdoni boshqarish 11.*, 1C BP 3, 1C kabi boshqariladigan shakllardagi konfiguratsiyalar uchun "XML formatida universal ma'lumotlar almashinuvi" V8Exchan83.epf ni qayta ishlashingiz kerak bo'ladi: ERP 2. * va shunga o'xshash. Va shunga ko'ra V8Exchan83.epf - oddiy shakllardagi konfiguratsiyalar uchun.

4. 1C: Savdoni boshqarish 11.3 va 1C: Korxona hisobi 3.0.* konfiguratsiyasining metamaʼlumotlar strukturasini yuklash.

1C: Enterprise Accounting 3 konfiguratsiyasidan metadata strukturasini yuklab olishdan boshlaylik.
MD83Exp.epf ishlov berishni ochamiz

Qayta ishlash shaklida mavjud qo'shimcha sozlamalar, bu erda biz 1C da registrlar va harakatlarni tushirish variantini yoqishimiz yoki o'chirishimiz mumkin. Yuklash qaerda amalga oshirilishini tanlash ham mavjud: 1C serverida yoki "mijozda". Ma'lumotlar strukturasi yuklanadigan fayl nomini belgilang. Xuddi shunday, biz Savdoni boshqarish 11 konfiguratsiyasining metama'lumotlar strukturasini yuklaymiz.

Endi konfiguratsiyani konversiya ma'lumotlar bazasiga yuklashingiz kerak. Bu nuqtaga konfiguratsiyalar ro'yxatidan ham, konvertatsiyalar ro'yxatidan ham erishish mumkin. Ish stolidan yuklaylik:

Muloqot oynasida BP tuzilishini yuklang:

Va shunga o'xshash - Savdoni boshqarish tuzilmasi.

Yuklab olish tugallangach, siz uchun qulay bo'lgan nomni belgilashingiz mumkin bo'lgan dialog oynasi paydo bo'ladi.

6. Vazifaning aniq misoli yordamida 1C da konvertatsiya qilish qoidalarini yaratish.

Keyin, "Ob'ekt qoidalarini o'rnatish" ga o'ting, u erda biz yangi sozlamani yaratamiz.
Konvertatsiya yaratish dialog oynasida "manba" konfiguratsiyasini va "maqsad" konfiguratsiyasini (siz avval yuklagan) tanlang va OK tugmasini bosing.

Ushbu maqolada men "noldan" va "axlatsiz" yaratishni ko'rsatishni rejalashtirganim uchun, biz avtomatik ravishda hech narsa yaratmasligimizni eslatib o'taman. Prototiplar yo'q.

Ushbu dialog oynasida biz hech narsa qilmaymiz, shunchaki "Yopish" tugmasini bosing.

Keling, bitta hujjatni emas, balki bir turni boshqasiga yuklash qoidalarini yarataylik, masalan, UT 11 dan tovarlar va xizmatlarni sotish hujjati BP 3-dagi Tovar va xizmatlarni qabul qilish hujjatiga kerakli ma'lumotnomalar bilan.

Shunday qilib, biz yangi PKO yaratamiz (1C-da ob'ektlarni aylantirish qoidasi)

Tovar va xizmatlarni sotish manbasini va tovar va xizmatlarni qabul qilish manzilini tanlang va OK tugmasini bosing.
Biz yana rad etishimiz mumkin bo'lgan dialog oynasi paydo bo'ladi avtomatik yaratish PKS (Mulkni aylantirish qoidalari). Keyinchalik, biz faqat keraklilarini tanlaymiz.

Ammo DVP (ma'lumotlarni yuklash qoidalari) yaratish taklifiga biz "Ha" deb javob beramiz.

PVDlar yaratiladi, ular tanlov uchun universal XML almashinuvini qayta ishlashda aks etadi:

Bo'sh mulkni o'zgartirish qoidalari bilan ma'lumotlarni aylantirish qoidalari ham yaratiladi.

Bundan tashqari, sukut bo'yicha dasturiy ta'minotni ichki ob'ekt identifikatori bo'yicha qidirish taklif qilinganligi aniq. Buni PCO yaqinidagi kattalashtiruvchi oyna ko'rsatadi. Biz o'zimizning qidiruvimizni qilamiz va buni kun boshida hujjat raqami va sanasi bo'yicha qilamiz.

UIO orqali qidiruvni olib tashlaymiz:

Endi ob'ektning kerakli xossalarini (tafsilotlarini) solishtirishni boshlaymiz. Buni amalga oshirish uchun "Xususiyatlar sinxronlash" tugmasini bosing (ekrandagi "1" yorlig'i). Biz qoidalarning rekursiv yaratilishini olib tashlaymiz ("2"). Belgilangan barcha tafsilotlarni olib tashlang ("3"). Va biz o'zimizga kerakli narsani tanlaymiz.

Masalan, sizga kerak bo'lgan narsani tanlang:

Men sizning e'tiboringizni qaratamanki, biz kontragentning PKS-ni tashkilotga, tashkilotni esa kontragentga aylantiramiz, shuningdek, nomi bilan mos kelmaydigan ba'zi tafsilotlarni, masalan, "Valyuta" va "Hujjat" ni solishtiramiz. Valyuta”.

Qaerda biz hali konvertatsiya qoidalari yo'qligini ko'rmoqdamiz.

Keling, tafsilotlarni ko'rib chiqishni va ularni tavsiflashni boshlaylik. Birinchidan, avval yozganimdek, hujjat qidiruvini o'rnatamiz, sana boshida hujjatni yuklaymiz va qidiramiz va raqamlashni o'zgartiramiz. Biz dastlabki uchta belgini "UTB" prefiksi bilan almashtiramiz. Va BP va UT-da raqamlash har biri 11 belgidan iborat bo'lganligi sababli, biz kompozit raqam hosil qilamiz: bizning prefiksimiz va manbadan 8 belgi. Quyidagi skrinshotda misol.

Biz har doim hujjatlarni yuksiz va harakatsiz yuklaymiz. Hujjatlar foydalanuvchi tomonidan tekshirilgandan so'ng qabul qiluvchida qayta ishlanadi deb taxmin qilamiz.

Buning uchun PKS ni bajarilmagan deb belgilash, 0 yoki 1, biz uni Boolean sifatida ishlatamiz.

Misol sifatida valyutadan foydalanib, biz PKS uchun ob'ektni aylantirish qoidasini yaratamiz. Shu bilan birga, biz ikkala ma'lumotlar bazasida ham valyutalar mavjudligiga ishonamiz va ular kod bilan sinxronlashtirilishi kerak. Shuning uchun biz PQS valyutasida barcha PKS ni yaratmaymiz, faqat Qidiruv kodini qo'shamiz. Bular. Ob'ekt uchun PKS yaratish taklifini rad etamiz.

Yaratilgan Konvertatsiya qoidasi PKS uchun hujjatning PQR-ga almashtirildi. Va standart qoidaning o'zi noyob identifikator tomonidan taklif etiladi. Biz uni tuzatamiz, kodni qidiramiz va yangi ob'ekt yaratmaslik uchun xususiyatni o'rnatamiz.

Natijada biz quyidagi variantni olamiz:

Keyinchalik, analogiya bo'yicha, qolgan tafsilotlar uchun PKO va PKS ni yaratamiz. Bundan tashqari, biz tashkilotni kontragent bo'yicha va aksincha TIN bo'yicha qidiramiz. Bu minimal tafsilotlar bilan taxminan shunday ko'rinadi (agar kerak bo'lsa, qo'shishingiz mumkin).

PCO kontragent kelishuvlari uchun biz PKS kontragenti, ismi va egasi bo'yicha qidiramiz.

Keling, PKS da sanab o'tish turida kerakli qiymatni qanday belgilashni ko'rib chiqaylik. Masalan, "Operatsiya turi" atributi. Bu yerda siz turli shartlardan va o'rnini bosuvchi qiymatlardan foydalanishingiz mumkin. Misol uchun, biz har doim "Tovar" tushirilishi uchun "operatsiya turi" ga muhtojmiz, bu holda "peshona" qatoriga kerakli qiymatni yozish kifoya.

Quyida qanday qilib qiyinchiliksiz va ko'p hollarda o'zaro hisob-kitoblar ko'pligi, o'zaro hisob-kitob stavkasi, buxgalteriya hisobi uchun shaxsiy kompyuterlarni o'rnatish ko'rsatilgan.

PKO Nomenklatura uchun biz ichki noyob identifikator bo'yicha qidiruvni qoldiramiz. Ammo sizning e'tiboringizni guruhingizni qanday qilib qayta belgilashingiz mumkinligiga qaratishga ruxsat bering. Masalan, biz 1C: Savdoni boshqarish 11 konfiguratsiyasidan yangi element tushirilishiga rozi bo'lamiz, ammo bu elementni to'plash kerak. ma'lum bir guruh"Bizning guruh".

Ushbu vazifani amalga oshirish uchun biz boshqa PKO yaratamiz. Keling, uni "NomenklaturaParent" deb ataymiz, biz konvertatsiya qoidasida ota-onaning shaxsiy kompyuterlarida ko'rsatamiz.

Biz ikkita qidiruvni o'rnatdik: ism bo'yicha, bu erda biz guruhimizning nomini qat'iy ko'rsatamiz va "Bu guruh" atributining kerakli xususiyati rost deb o'rnatiladi.

Bizning barcha narsalarimiz bizning guruhimizga tegishli deb qaror qilganimiz sababli, yukni tushirishda UT 11 dan guruhlarni tushirishning hojati yo'q. "Muvaffaqiyatsizlik = bu guruh;" guruhlarini tushirishga hojat yo'q.

Mahsulotlar va xizmatlarni sotish bo'yicha DRP (ma'lumotlarni yuklash qoidalari)da biz o'chirish uchun belgilangan hujjatlar yuklanmasligi uchun filtr qo'shamiz. Buni amalga oshirish uchun "Yuklashdan oldin" hodisasi ishlov beruvchilarida VDPda "Failure = Object.DeletionMark;" filtrini yozamiz.


Keling, ishlab chiqilgan qoidalarni faylga saqlaymiz.


7. Xulosa qilish uchun: ishlab chiqilgan ma'lumotlar almashinuvi qoidalaridan foydalangan holda ma'lumotlarni yuklash va yuklash.

1C da oching: Savdoni boshqarish 11 "XML formatida universal ma'lumotlar almashinuvi" V8Exchan83.epf ishlov berish.

Yuk tushirish tugallandi, endi biz 1C: Enterprise Accounting 3-ga yuklash uchun xuddi shu ishlovdan foydalanamiz.


Yuklash tugallandi. Keling, qanday yuklanganligini tekshirib ko'raylik. Shunday qilib, hujjat yuklandi, biz xohlagandek - bizning Tashkilotimiz kontragentga, kontragent esa tashkilotga yuklandi. Buxgalteriya hisoblari barcha yuklab olinadi va o'rnatiladi. Biz hujjat raqamini prefiksimiz bilan va kunning boshida oldik. Taqdim etilgan barcha ma'lumotlar to'ldirilgan.

Biz elementlarning yuklanishini tekshiramiz. Ko'ramizki, hammasi biz rejalashtirgandek bo'ldi.


Tafsilotlarni o'zimiz xohlagan tarzda yaratdik va to'ldirdik. Konvertatsiya qilishda juda ko'p nozikliklar va konvertatsiyani to'g'ri yozishga yordam beradigan oddiy, ammo kerakli narsalar mavjud. Va bu sizga xatolarni kamaytirishga, mavjud ma'lumotlarni buzmaslikka va keraksiz axlatdan xalos bo'lishga imkon beradi. Bu eng ko'plaridan biri oddiy misollar. Bundan tashqari, bitta ob'ektni ko'pga yoki aksincha, ko'pchilikni bittaga aylantirishingiz mumkin.

Endi ma'lumotlarni aylantirish 3 mavjud, u boshqa muammolarni hal qiladi. Shuning uchun 2-konvertatsiya ham zarur. O'rganish va o'zlashtirishda hammaga omad.

Albatta, agar siz dasturchi bo'lsangiz va bu sizning asosiy ishingiz bo'lsa, konvertatsiyani o'zingiz yozishga harakat qilishingiz mumkin. Ammo agar yo'q bo'lsa, unda siz o'zingizning faoliyat sohangizda vaqtingizni qadrlashingiz kerak va bu vazifa buni professionallardan so'rang.

Turli xil konfiguratsiyalar o'rtasida ma'lumotlarni ko'chirish ahamiyatsiz vazifa emas. Har doimgidek, bir nechta echimlar mavjud, ammo ularning hammasi ham maqbul emas. Keling, ma'lumotlarni uzatishning nuanslarini tushunishga harakat qilaylik va bunday muammolarni hal qilish uchun universal strategiyani tanlaylik.

Kecha ma'lumotlarni ko'chirish muammosi (biz faqat 1C kompaniyasining mahsulotlari haqida gapiramiz) bir yechimdan boshqasiga o'tmagan. 1C kompaniyasi migratsiyani yaratishda ishlab chiquvchilar qanday qiyinchiliklarga duch kelishini juda yaxshi tushunadi, shuning uchun u vositalar bilan yordam berishga har tomonlama harakat qiladi.

Platformani ishlab chiqish jarayonida kompaniya bir qator universal vositalarni, shuningdek, ma’lumotlarni uzatishni soddalashtiruvchi texnologiyalarni joriy qildi. Ular barcha standart echimlarga o'rnatilgan va bir xil konfiguratsiyalar o'rtasidagi migratsiya muammosi odatda hal qilingan. G'alaba standart echimlarning yaqin integratsiyasi bilan yana bir bor tasdiqlanadi.

Nostandart echimlar orasidagi migratsiya bilan vaziyat biroz murakkabroq. Texnologiyalarning keng tanlovi ishlab chiquvchilarga muammoni o'z nuqtai nazaridan hal qilishning optimal usulini mustaqil tanlash imkonini beradi.

Keling, ulardan ba'zilarini ko'rib chiqaylik:

  • matnli fayllar orqali almashish;
  • almashinuv rejalaridan foydalanish;
  • va hokazo.

Ularning har biri o'zining ijobiy va salbiy tomonlariga ega. Xulosa qilib aytadigan bo'lsak, asosiy kamchilik uning so'zsizligi bo'ladi. O'z-o'zini amalga oshirish Migratsiya algoritmlari katta vaqt xarajatlari bilan bir qatorda uzoq davom etadigan nosozliklarni tuzatish jarayoni bilan ham to'la. Bunday qarorlarni qo'llab-quvvatlash haqida gapirishni ham xohlamayman.

Qo'llab-quvvatlashning murakkabligi va yuqori narxi 1C kompaniyasini universal echim yaratishga undadi. Migratsiyani rivojlantirish va qo'llab-quvvatlashni iloji boricha soddalashtirishga imkon beradigan texnologiyalar. Natijada, g'oya alohida konfiguratsiya - "Ma'lumotlarni aylantirish" shaklida amalga oshirildi.

Ma'lumotlarni konvertatsiya qilish - standart yechim, mustaqil konfiguratsiya. “ITS:Prof” obunasiga ega har qanday foydalanuvchi ushbu paketni foydalanuvchilarni qo‘llab-quvvatlash sayti yoki ITS diskidan mutlaqo bepul yuklab olishi mumkin. O'rnatish standart tarzda amalga oshiriladi - 1C dan boshqa barcha standart echimlar kabi.

Endi yechimning afzalliklari haqida bir oz. Eng muhim narsadan boshlaylik - ko'p qirrali. Yechim maxsus platforma konfiguratsiyasi/versiyalariga moslashtirilmagan. U standart va moslashtirilgan konfiguratsiyalar bilan teng darajada yaxshi ishlaydi. Ishlab chiquvchilar universal texnologiya va yangi migratsiyalarni yaratish uchun standartlashtirilgan yondashuvga ega. Yechimning ko'p qirraliligi hatto 1C: Enterprise'dan boshqa platformalar uchun ham migratsiyalarni tayyorlashga imkon beradi.

Ikkinchi katta ortiqcha - ko'rgazmali qo'llanmalar. Oddiy migratsiya dasturlashsiz yaratiladi. Ha, ha, bitta kod satrisiz! Faqat buning uchun texnologiyani bir marta o'rganishga vaqt sarflash, keyin esa bebaho ko'nikmalarni qayta-qayta ishlatish kerak.

Men ta'kidlagan uchinchi afzallik - ma'lumotlarni tarqatishda cheklovlar yo'qligi. Ishlab chiquvchining o'zi qabul qiluvchi konfiguratsiyasiga ma'lumotlarni etkazib berish usulini tanlaydi. Ikkita variant mavjud: xml fayliga yuklash va ma'lumot bazasiga (COM/OLE) to'g'ridan-to'g'ri ulanish.

Arxitekturani o'rganish

Biz allaqachon bilamizki, ma'lumotlarni konvertatsiya qilish mo''jizalar yaratishi mumkin, ammo texnik afzalliklari nimada ekanligi hali to'liq aniq emas. Siz tushunishingiz kerak bo'lgan birinchi narsa, har qanday ma'lumotlarni ko'chirish (konversiya) almashinuv qoidalariga asoslangan. Birja qoidalari - bu axborot xavfsizligi ma'lumotlari yuklanadigan tuzilmani tavsiflovchi oddiy xml fayl. Ma'lumotlarni yuklaydigan/yuklab oladigan xizmatni qayta ishlash almashinuv qoidalarini tahlil qiladi va ular asosida yuklashni amalga oshiradi. Yuklash vaqtida teskari jarayon sodir bo'ladi.

"CD" konfiguratsiyasi vizual konstruktorning bir turi bo'lib, uning yordamida ishlab chiquvchi almashinuv qoidalarini yaratadi. Ma'lumotni qanday yuklab olishni bilmaydi. Buning uchun CD tarqatish paketiga kiritilgan qo'shimcha tashqi xizmatni qayta ishlash javobgardir. Ulardan bir nechtasi bor (fayl nomidagi XX - platforma versiyasi raqami):

  • MDXXExp.epf- ishlov berish xml fayliga infobase strukturasi tavsifini yuklash imkonini beradi. Tuzilish tavsifi keyingi tahlil qilish va almashish qoidalarini yaratish uchun kompakt diskga yuklanadi.
  • V8ExchanXX.epf- almashinuv qoidalariga muvofiq axborot bazasidan ma’lumotlarni yuklaydi/yuklaydi. Ko'pgina odatiy konfiguratsiyalarda ishlov berish qutidan tashqarida mavjud ("Xizmat" menyusiga qarang). Qayta ishlash universaldir va hech qanday maxsus konfiguratsiyalar/qoidalar bilan bog'liq emas.

Xo'sh, endi yuqorida aytilganlarning barchasiga asoslanib, yangi konversiyani ishlab chiqish bosqichlarini aniqlaymiz:

  1. Vazifaning ta'rifi. Qaysi ma'lumotlarni uzatish kerakligini (qaysi konfiguratsiya ob'ektlaridan) va, eng muhimi, uni qaerga o'tkazish kerakligini aniq tushunish kerak.
  2. Keyinchalik kompakt diskga yuklash uchun konfiguratsiya tuzilmalari (Manba/Sink) tavsiflarini tayyorlash. Muammo MDXXExp.epf xizmatini qayta ishlash orqali hal qilinadi.
  3. Tuzilmalarning tayyorlangan tavsiflarini axborot xavfsizligiga yuklash.
  4. Vizual CD vositasi yordamida almashinuv qoidalarini yaratish.
  5. V8ExchanXX.epf ishlovidan foydalangan holda yaratilgan ma'lumotlarni aylantirish qoidalariga muvofiq yuklash/yuklab olish.
  6. Nosozliklarni tuzatish almashinuvi qoidalari (agar kerak bo'lsa).

Eng oddiy konvertatsiya

Namoyish uchun bizga ikkita o'rnatilgan konfiguratsiya kerak bo'ladi. Men variant bilan borishga qaror qildim: "Savdoni boshqarish" 10-nashr va kichik uy yozma yechim. Vazifa standart "UT" konfiguratsiyasidan ma'lumotlarni uzatish bo'ladi. Qisqacha aytganda, keling, o'z-o'zidan yozilgan yechimni "Sink" va savdo boshqaruvini "Manba" deb ataylik. Muammoni hal qilishni "Nomenklatura" katalogidan elementlarni o'tkazish orqali boshlaylik.

Avvalo, ma'lumotlarni konvertatsiya qilish sxemasini ko'rib chiqamiz va bajarilishi kerak bo'lgan harakatlar ro'yxatini qayta o'qib chiqamiz. Keyin biz "Manba" konfiguratsiyasini ishga tushiramiz va unda MD82Exp.epf xizmatini qayta ishlashni ochamiz.

Qayta ishlash interfeysi ko'p sozlamalarga ega emas. Foydalanuvchi faqat struktura tavsifiga kiritilmaydigan metadata ob'ektlari turlarini ko'rsatishi kerak. Ko'pgina hollarda, bu sozlamalarni o'zgartirish kerak emas, chunki Harakatlarni yig'ish registrlari yordamida tushirishda alohida nuqta yo'q (misol sifatida).

Hujjatlarni qabul qiluvchida ushlab turganda harakatni shakllantirish to'g'riroq. Barcha harakatlar hujjatning o'zi tomonidan transferdan keyin amalga oshiriladi. Standart sozlamalarni himoya qilishning ikkinchi argumenti yuklash bilan fayl hajmini kamaytirishdir.

Ba'zi hujjatlar (ayniqsa, standart konfiguratsiyalarda) bir nechta registrlar bo'ylab harakatlarni hosil qiladi. Bularning barchasini olib tashlash natijasida XML fayli juda katta bo'ladi. Bu qabul qiluvchi bazasiga keyingi tashish va yuklashni qiyinlashtirishi mumkin. Ma'lumotlar fayli qanchalik katta bo'lsa, sizga shuncha ko'p kerak bo'ladi tasodifiy kirish xotirasi uni qayta ishlash uchun. Amaliyot davomida men juda katta hajmdagi yuklangan fayllarga duch kelish imkoniga ega bo'ldim. Bunday fayllar standart vositalar yordamida tahlil qilishdan butunlay voz kechdi.

Shunday qilib, biz barcha standart sozlamalarni qoldiramiz va konfiguratsiya tavsifini faylga yuklaymiz. Ikkinchi baza uchun shunga o'xshash protsedurani takrorlaymiz.

CDni oching va asosiy menyuda tanlang "Kataloglar" -> "Konfiguratsiyalar". Katalog konversiyalarni yaratish uchun ishlatilishi mumkin bo'lgan barcha konfiguratsiyalar tuzilmalarining tavsiflarini saqlaydi. Biz konfiguratsiya tavsifini bir marta yuklaymiz va undan keyin turli konversiyalarni yaratish uchun uni bir necha marta ishlatishimiz mumkin.

Katalog oynasida "tugmasini bosing. Qo'shish” va paydo bo'lgan oynada konfiguratsiyani tavsiflovchi faylni tanlang. "Yangi konfiguratsiyaga yuklash" katagiga belgi qo'ying va "Yuklash" tugmasini bosing. Biz shunga o'xshash harakatlarni ikkinchi konfiguratsiya strukturasining tavsifi bilan bajaramiz.

Endi siz almashinuv qoidalarini yaratishga tayyormiz. Asosiy CD menyusida "Kataloglar" -> "Konversiyalar" ni tanlang. Qo'shish yangi element. Yangi konversiyani yaratish oynasida quyidagilarni ko'rsatishingiz kerak: manba konfiguratsiyasi (UT ni tanlang) va maqsad konfiguratsiyasi ("Qabul qiluvchi" ni tanlang). Keyin, "Kengaytirilgan" yorlig'ini oching va quyidagi maydonlarni to'ldiring:

  • almashish qoidalari fayl nomi - yaratilgan almashinuv qoidalari shu nom ostida saqlanadi. Istalgan vaqtda fayl nomini o'zgartirishingiz mumkin, lekin uni hozir o'rnatish yaxshidir. Bu kelajakda vaqtni tejaydi. Men demo misoli uchun qoidalarni nomladim: “rules-ut-to-priemnik.xml”.
  • nom - konvertatsiya nomi. Ism mutlaqo har qanday bo'lishi mumkin, men o'zimni "Demo" bilan chekladim. Qabul qiluvchiga UT.”

Hammasi shunday, "OK" tugmasini bosing. Darhol bizning oldimizda barcha qoidalarni avtomatik ravishda yaratishimizni so'ragan oyna paydo bo'ladi. Bunday jozibali taklifga rozi bo'lish ustaga tanlangan konfiguratsiyalar tavsifini avtomatik ravishda tahlil qilish va almashish qoidalarini mustaqil ravishda yaratish buyrug'ini beradi.

Keling, darhol "men" ni belgilaymiz. Sehrgar jiddiy hech narsa yarata olmaydi. Biroq, bu imkoniyatni chegirmaslik kerak. Agar bir xil konfiguratsiyalar o'rtasida almashinuvni o'rnatish zarur bo'lsa, mutaxassisning xizmatlari juda foydali bo'ladi. Bizning misolimiz uchun qo'lda rejim afzalroqdir.

Keling, "Almashtirish qoidalari sozlamalari" oynasini batafsil ko'rib chiqaylik. Interfeys biroz chalkash tuyulishi mumkin - boshqaruv elementlari bilan to'ldirilgan ko'p sonli yorliqlar. Aslida, hamma narsa unchalik qiyin emas, siz bir necha soatlik dastur bilan ishlashdan keyin bu jinnilikka ko'nikishni boshlaysiz.

Ushbu bosqichda biz ikkita yorliq bilan qiziqamiz: "Ob'ektni o'zgartirish qoidalari" va "Ma'lumotlarni yuklash qoidalari". Avvaliga biz mos keladigan qoidalarni sozlashimiz kerak, ya'ni. ikkita konfiguratsiya ob'ektlarini solishtiring. Ikkinchidan, foydalanuvchiga yuklash uchun mavjud bo'lgan ob'ektlarni aniqlang.

"Ob'ektni o'zgartirish qoidalari" yorlig'ining ikkinchi yarmida ikkita yorliqli qo'shimcha panel mavjud: "Mulkni o'zgartirish" va " Qiymatlarni konvertatsiya qilish" Birinchisi tanlangan ob'ektning xususiyatlarini (tafsilotlarini) tanlaydi, ikkinchisi esa oldindan belgilangan qiymatlar (masalan, oldindan belgilangan katalog elementlari yoki sanab elementlari) bilan ishlash uchun zarurdir.

Ajoyib, endi kataloglar uchun konvertatsiya qoidalarini yarataylik. Ushbu amalni ikki usulda bajarishingiz mumkin: Ob'ektni sinxronlashtirish ustasidan foydalaning ("" tugmasi) yoki har bir ob'ekt uchun yozishmalarni qo'lda qo'shing.

Joyni tejash uchun biz birinchi variantdan foydalanamiz. Sehrgar oynasida guruh belgisini olib tashlang " Hujjatlar” (bizni faqat kataloglar qiziqtiradi) va guruhni kengaytiring. Kataloglar" Biz ro'yxatni diqqat bilan aylantiramiz va taqqoslash mumkin bo'lgan ma'lumotnomalar nomlarini ko'rib chiqamiz.

Mening holatimda uchta ma'lumotnoma mavjud: Nomenklatura, Tashkilotlar va Omborlar. Shuningdek, "Mijozlar" kabi bir xil maqsadga xizmat qiluvchi katalog mavjud. Qarama-qarshi tomonlar"konfiguratsiyadan" UT" To‘g‘ri, ismlari turlicha bo‘lgani uchun usta ularni qiyoslay olmadi.

Biz bu muammoni o'zimiz hal qila olamiz. Biz oynada topamiz " Obyekt moslashuvi» ma’lumotnoma « Mijozlar", va "Manba" ustunida "Qarama-qarshi tomonlar" katalogini tanlang. Keyin "Type" ustunidagi katakchani belgilang va "OK" tugmasini bosing.

Ob'ektlarni sinxronlashtirish ustasi tanlangan barcha ob'ektlarning xususiyatlarini avtomatik ravishda o'zgartirish qoidalarini yaratishni taklif qiladi. Xususiyatlar nomi bilan taqqoslanadi va bizning namoyishimiz uchun bu etarli bo'ladi, biz rozi bo'lamiz. Keyingi savol yuklash qoidalarini yaratish taklifi bo'ladi. Keling, bunga ham rozi bo'laylik.

Ayirboshlash qoidalari uchun asos tayyor. Sinxronizatsiya uchun ob'ektlarni tanladik va xususiyatlarni o'zgartirish qoidalari va yuklash qoidalari avtomatik ravishda yaratildi. Keling, almashish qoidalarini faylga saqlaymiz, keyin IB "Manba" ni oching (mening holimda bu UT) va unda xizmat ko'rsatishni ishga tushiramiz. V8Exchan82.epf.

Avvalo, ishlov berish oynasida biz yaratgan almashinuv qoidalarini tanlang. Yuklash qoidalari haqidagi savolga ijobiy javob beramiz. Qayta ishlash almashinuv qoidalarini tahlil qiladi va yuklash uchun mavjud bo'lgan bir xil nomdagi ob'ektlar daraxtini yaratadi. Ushbu daraxt uchun biz barcha turdagi tanlovlarni o'rnatishimiz yoki ma'lumotlarni tanlashimiz kerak bo'lgan tugunlarni almashtirishimiz mumkin. Biz mutlaqo barcha ma'lumotlarni yuklab olishni xohlaymiz, shuning uchun filtrlarni o'rnatishga hojat yo'q.

Faylga ma'lumotlarni yuklash jarayonini tugatgandan so'ng, IB ga o'ting " Qabul qiluvchi" Unda ishlov berishni ham ochamiz V8Exchan82.epf, faqat bu safar biz "Ma'lumotlarni yuklash" yorlig'iga o'tamiz. Ma'lumotlar faylini tanlang va "Yuklab olish" tugmasini bosing. Hammasi, ma'lumotlar muvaffaqiyatli uzatildi.

Haqiqiy dunyo muammolari

Birinchidan demo chalg'ituvchi bo'lishi mumkin. Hamma narsa juda oddiy va mantiqiy ko'rinadi. Aslida bu haqiqat emas. IN haqiqiy ish Vizual vositalar yordamida (dasturlashsiz) hal qilish qiyin yoki mutlaqo mumkin bo'lmagan muammolar paydo bo'ladi.

Texnologiyadan xafa bo'lmaslik uchun men bir nechta haqiqiy muammolarni tayyorladim. Ishda ularga albatta duch kelasiz. Ular unchalik ahamiyatsiz ko'rinmaydi va sizni ma'lumotlarni o'zgartirishga yangi burchakdan qarashga majbur qiladi. Taqdim etilgan misollarni diqqat bilan ko'rib chiqing va haqiqiy muammolarni hal qilishda ulardan parcha sifatida foydalaning.

Vazifa № 1. Yo'qolgan tafsilotlarni to'ldiring

Aytaylik, biz katalogni o'tkazishimiz kerak " Qarama-qarshi tomonlar" Qabul qiluvchida bu maqsadda xuddi shunday "Mijozlar" katalogi mavjud. Bu ma'lumotlarni saqlash uchun to'liq mos keladi, lekin unda rekvizitlar mavjud " Tashkilot”, bu sizga tashkilotga tegishli bo'lgan kontragentlarni ajratish imkonini beradi. Odatiy bo'lib, barcha kontragentlar joriy tashkilotga tegishli bo'lishi kerak (buni bir xil nomdagi doimiydan olish mumkin).

Muammoning bir nechta echimlari mavjud. Tafsilotlarni to'ldirish variantini ko'rib chiqamiz " Tashkilot"to'g'ri ma'lumotlar bazasida" Qabul qiluvchi", ya'ni. ma'lumotlarni yuklash vaqtida. Joriy tashkilot doimiy ravishda saqlanadi, shuning uchun ushbu qiymatni olish uchun hech qanday to'siq yo'q. Ob'ektni o'zgartirish qoidasini (bundan buyon matnda PKO deb yuritiladi) ochamiz. Mijozlar” (ob'ektni ikki marta bosing) va qoidalarni o'rnatish ustasida "Voqeani qayta ishlash" bo'limiga o'ting. Ishlovchilar ro'yxatida biz topamiz " Yuklab olingandan keyin”.

Keling, joriy tashkilotni olish uchun kodni tasvirlab beramiz va keyin uni tafsilotlarga tayinlaymiz. "Yuklashdan keyin" ishlov beruvchisi ishga tushirilganda, ob'ekt to'liq shakllanadi, lekin hali ma'lumotlar bazasiga yozilmagan. Hech kim bizni o'z xohishimizga ko'ra o'zgartirishni taqiqlamaydi:

Agar Object.ThisGroup EMAS bo'lsa, unda Object.Organization = Constants.CurrentOrganization.Get(); endIf;

Tafsilotlarni to'ldirishdan oldin " Tashkilot"Atributning qiymatini tekshirish kerak" Bu guruh" Ma'lumotnoma uchun " Mijozlar"Ierarxik xususiyat o'rnatilgan, shuning uchun guruhni tekshirish kerak. Har qanday tafsilotlarni xuddi shunday tarzda to'ldiring. Boshqa ishlov beruvchi variantlari uchun yordamni o'qib chiqing. Yuklashdan keyin" Masalan, ular orasida " parametri mavjud Rad etish" Agar siz unga "True" qiymatini belgilasangiz, ob'ekt ma'lumotlar bazasiga yozilmaydi. Shunday qilib, yuklash vaqtida yozilishi mumkin bo'lgan ob'ektlarni cheklash mumkin bo'ladi.

Vazifa № 2. Axborot reestri uchun tafsilotlar

Katalogda " Qarama-qarshi tomonlar“UT konfiguratsiyasi, tafsilotlar mavjud” Xaridor"Va" Provayder" Har ikki tafsilot "turi" Mantiqiy” va kontragent turini aniqlash uchun ishlatiladi. IBda " Qabul qiluvchi", katalogida" Mijozlar"O'xshash tafsilotlar yo'q, ammo ma'lumotlar reestri mavjud" Mijozlarning turlari" U xuddi shunday funktsiyani bajaradi va bitta mijoz uchun bir nechta atributlarni saqlashi mumkin. Bizning vazifamiz ma'lumotlarning qiymatlarini ma'lumotlar registridagi alohida yozuvlarga o'tkazishdir.

Afsuski, faqat vizual vositalar bu erda ham bardosh bera olmaydi. Keling, kichikdan boshlaylik, ma'lumotlar reestri uchun yangi dastur yarating " Mijozlarning turlari" Manba sifatida hech narsa keltirmang. Avtomatik yuklash qoidalarini yaratishdan saqlaning.

Keyingi qadam yuklash qoidalarini yaratishdir. Tegishli yorliqga o'ting va " Qo'shish" Yuklash qoidalarini qo'shish oynasida quyidagilarni to'ldiring:

  • Namuna olish usuli. "Ixtiyoriy algoritm" ga o'zgartirish;
  • Konvertatsiya qilish qoidasi. "Mijozlarning turlari" ma'lumotlar registrini tanlang;
  • Qoida kodi (nomi). Uni "Mijoz turlarini tushirish" deb yozing;

Endi siz yuklash uchun ma'lumotlarni tanlash uchun kod yozishingiz kerak. parametr " Ma'lumotlardan namuna olish" Biz unda tayyorlangan ma'lumotlar to'plami bilan to'plamni joylashtirishimiz mumkin. Parametr " Ma'lumotlardan namuna olish” olishi mumkin turli ma'nolar- so'rov natijasi, tanlov, qiymatlar to'plami va boshqalar. Biz uni ikkita ustunli qiymatlar jadvali sifatida ishga tushiramiz: mijoz va mijoz turi.

Quyida hodisa ishlov beruvchisi uchun kod mavjud " Qayta ishlashdan oldin" Parametrni ishga tushiradi " Ma'lumotlardan namuna olish” so‘ng katalogdagi ma’lumotlarni to‘ldirish orqali “ Qarama-qarshi tomonlar" Bu erda siz ustunni to'ldirishga e'tibor berishingiz kerak " Mijoz turi" "UT" da bizning atributlarimiz "Mantiqiy" tipda, qabul qiluvchi esa ro'yxatdir.

Bu bosqichda biz ularni kerakli turga aylantira olmaymiz (u UTda yo'q), shuning uchun hozircha ularni satrlar shaklida qoldiramiz. Buni qilish shart emas, lekin men darhol manbadagi etishmayotgan turga qanday o'tishni ko'rsatmoqchiman.

DataFetch = New ValueTable(); DataSelection.Columns.Add("Mijoz"); DataSelection.Columns.Add("ClientType"); SelectingDataFromDirectory = Directories.Accounts.Select(); SelectingDataFromDirectory.Next() sikli Agar SelectingDataFromDirectory.ThisGroup keyin davom eting; endIf; Agar Directory.Buyer dan ma'lumotlarni tanlash bo'lsa, NewRow = Data Selection.Add(); NewRow.Client = DataFetchFromDirectory.Link; NewRow.ClientType = "Mijoz"; endIf; Agar DataFetchFromDirectory.Supplier bo'lsa, NewRow = DataFetch.Add(); NewRow.Client = DataFetchFromDirectory.Link; NewString.ClientType = "Yetkazib beruvchi"; endIf; EndCycle;

Keling, ma'lumotlarni yuklash qoidasini saqlaymiz va "yorlig'iga qaytaylik Ob'ektni aylantirish qoidalari" Keling, ma'lumot reestriga qo'shamiz " Mijozlarning turlari” mulkni aylantirish qoidalari: mijoz va mijoz turi. Biz manbani bo'sh qoldiramiz va "Yuklashdan oldin" voqea ishlovchisiga biz yozamiz:

//“Mijoz” xususiyati uchun Qiymat = Source.Client; //“ClientType” mulki uchun Source.Client = “Xaridor” Keyin Ifoda = “Enumerations.ClientTypes.Buyer” ElseIf Source.Client = “Yetkazib beruvchi” Keyin Ifoda = “Enumerations.ClientTypes.Supplier”; endIf;

Ro'yxatda ma'lumotlar tanlangan ma'lumotlar namunasi asosida to'ldiriladi. Biz shunchaki mijozni havola sifatida o'tkazamiz va mijoz turini parametrga yozamiz " Ifoda" Ushbu parametrning ma'lumotlari qabul qiluvchida talqin qilinadi va bajarilganda rekvizit ro'yxatdagi to'g'ri qiymat bilan to'ldiriladi.

Mana, almashish qoidalari tayyor. Ko'rib chiqilgan misol juda universal bo'lib chiqdi. Shunga o'xshash yondashuv ko'pincha 7.7 platformasida yaratilgan konfiguratsiyalardan ma'lumotlarni ko'chirishda qo'llaniladi. Buning yorqin misoli - davriy detallarning uzatilishi.

Vazifa № 3. Stol qismlari bilan fokuslar

Ko'pincha siz bitta jadval bo'limidan bir nechta satrlarni joylashtirishni talab qiladigan vazifalarga duch kelasiz. Misol uchun, dastlabki konfiguratsiyada xizmatlar va tovarlar bir jadvalli qismda ro'yxatga olinadi va qabul qiluvchida bu sub'ektlarning saqlashi bo'linadi. Vizual vositalar bilan yana muammoni hal qilib bo'lmaydi. Bu yerda ikkinchi masalaning yechimini asos qilib olish qulay.

Biz ma'lumotlarni tushirish uchun qoida tuzamiz, o'zboshimchalik bilan algoritmni belgilaymiz va "Yuklashdan oldin" ishlov beruvchisida jadval qismidan ma'lumotlarni olish uchun so'rov yozamiz.

Joyni tejash uchun men so'rovning kodini (siz har doim manbalarga murojaat qilishingiz mumkin) bermayman - unda g'ayrioddiy narsa yo'q. Olingan tanlovni saralaymiz va tartiblangan natijalarni allaqachon tanish bo'lgan parametrga joylashtiramiz " Ma'lumotlardan namuna olish" To'plam sifatida qiymatlar jadvalidan foydalanish yana qulay:

DataFetch = New ValueTable(); //Bu yerda yana bir jadval qismi bo'ladi Data Selection.Columns.Add (“Mahsulotlar”); //Bu erda yana jadvalli qism bo'ladi Data Selection.Columns.Add (“Xizmatlar”); SelectionData.Columns.Add("Link");

Vazifa № 4. Ma'lumotlarni operatsiyaga o'tkazish

Agar tashkilot bir nechta buxgalteriya tizimlaridan foydalansa, ertami-kechmi keyingi operatsiyalarni yaratish bilan ma'lumotlarni ko'chirish zarurati paydo bo'ladi.

Konfiguratsiyada " BP"Umumjahon hujjat bor" Operatsiya” va u ko'proq simlarni shakllantirish uchun ideal. Bitta muammo bor - hujjat ayyorlik bilan tuzilgan va unga ma'lumotlarni osongina o'tkazib bo'lmaydi.

Siz maqolaning manba kodida bunday konvertatsiya qilishning namunasini topasiz. Kod miqdori juda katta bo'lib chiqdi, shuning uchun uni maqola bilan birgalikda nashr etishning ma'nosi yo'q. Aytmoqchimanki, qayta yuklash ma'lumotlarni yuklash qoidalarida ixtiyoriy algoritmdan foydalanadi.

Vazifa № 5. Bir nechta tafsilotlar bo'yicha ma'lumotlarni sinxronlashtirish

Biz allaqachon bir nechta misollarni ko'rib chiqdik, lekin biz hali ham ko'chirish paytida ob'ektlarni sinxronlashtirish haqida gapirmadik. Tasavvur qilaylik, biz kontragentlarni o'tkazishimiz kerak va ularning ba'zilari, ehtimol, qabul qiluvchining ma'lumotlar bazasida. Qanday qilib ma'lumotlarni uzatish va dublikatlar paydo bo'lishining oldini olish mumkin? Shu munosabat bilan CD uzatilgan ob'ektlarni sinxronlashtirishning bir necha usullarini taklif qiladi.

Birinchisi noyob identifikator bo'yicha. Ko'pgina ob'ektlar jadval ichidagi o'ziga xoslikni kafolatlaydigan noyob identifikatorga ega. Masalan, katalogda " Qarama-qarshi tomonlar” identifikatorlari bir xil boʻlgan ikkita element boʻlishi mumkin emas. CD bu va barcha yaratilgan PCOlar uchun hisob-kitoblarni amalga oshiradi, sukut bo'yicha identifikator bo'yicha qidiruv darhol yoqilgan. PCO ni yaratishda siz ob'ekt nomining yonidagi kattalashtiruvchi oyna tasviriga e'tibor berishingiz kerak edi.

Noyob identifikator yordamida sinxronlash ishonchli usuldir, lekin u har doim ham mos kelmaydi. Kataloglarni birlashtirganda " Qarama-qarshi tomonlar” (bir nechta turli tizimlardan) bu ko'p yordam bermaydi.

Bunday hollarda ob'ektlarni bir nechta mezonlarga muvofiq sinxronlashtirish to'g'riroqdir. Kontragentlarni INN, KPP, Name bo'yicha qidirish yoki qidiruvni bir necha bosqichlarga bo'lish to'g'riroq.

Ma'lumotlarni konvertatsiya qilish ishlab chiquvchini qidirish mezonlarini belgilashda cheklamaydi. Keling, mavhum misolni ko'rib chiqaylik. Aytaylik, biz kataloglarni sinxronlashtirishimiz kerak " Qarama-qarshi tomonlar” turli axborot bazalaridan olingan. Keling, dasturiy ta'minotni tayyorlaymiz va ob'ektni o'zgartirish qoidalari sozlamalarida " Qabul qiluvchi ob'ekt identifikator tomonidan topilmasa, qidiruv maydonlarini qidirishni davom eting" Ushbu harakat bilan biz darhol ikkita qidiruv mezonini aniqladik - noyob identifikator va maxsus maydonlar bo'yicha.

Maydonlarni o'zimiz tanlash huquqiga egamiz. TIN, KPP va Ismni tekshirish orqali biz darhol bir nechta qidiruv mezonlarini ko'rsatamiz. Qulaymi? To'g'ri, lekin yana bu etarli emas. Qidiruv mezonlarini o'zgartirmoqchi bo'lsak-chi? Misol uchun, birinchi navbatda biz TIN + KPP kombinatsiyasini qidiramiz va agar hech narsa topa olmasak, biz omadimizni nom bilan sinab ko'ramiz.

Bunday algoritm amalga oshirishga juda qodir. Hodisa boshqaruvchisida " Qidiruv maydonlari” biz 10 tagacha qidiruv mezonlarini belgilashimiz mumkin va ularning har biri uchun qidiruv maydonlarining o'z tarkibini aniqlaymiz:

Agar SearchOptionNumber = 1 bo'lsa, SearchPropertyNameString = “TIN, KPP”; Aks holdaIfSearchOptionNumber = 2 ThenSearchPropertyNameString = “Ism”; endIf;

Har doim bir nechta echimlar mavjud

Har qanday vazifa bir nechta echimlarga ega va turli xil konfiguratsiyalar o'rtasida ma'lumotlarni uzatish bundan mustasno emas. Har bir ishlab chiquvchi o'z echimini tanlash huquqiga ega, ammo agar siz doimo murakkab ma'lumotlar migratsiyasini ishlab chiqishingiz kerak bo'lsa, men "" ga e'tibor berishni tavsiya qilaman. Avvaliga mashg'ulotlarga resurslarni (vaqt) sarflashingiz kerak bo'lishi mumkin, ammo ular birinchi yoki kamroq jiddiy loyihada ko'proq pul to'laydi.

Menimcha, 1C kompaniyasi ma'lumotlarni konvertatsiya qilishdan foydalanish mavzusini adolatsiz ravishda e'tiborsiz qoldirmoqda. Texnologiyaning butun mavjudligi davomida u haqida faqat bitta kitob nashr etilgan: "1C: Enterprise 8. Ma'lumotlarni konvertatsiya qilish: amaliy echimlar o'rtasida almashish". Kitob ancha eski (2008), lekin u bilan tanishib chiqish tavsiya etiladi.

Platformalarni bilish hali ham zarur

"u universal vositadir, lekin agar siz undan 1C: Enterprise 7.7 platformasi uchun ishlab chiqilgan konfiguratsiyalardan ma'lumotlar migratsiyasini yaratish uchun foydalanmoqchi bo'lsangiz, unda siz o'rnatilgan til bilan tanishish uchun vaqt sarflashingiz kerak bo'ladi. Tilning sintaksisi va mafkurasi juda boshqacha, shuning uchun siz o'rganishga vaqt sarflashingiz kerak bo'ladi. Aks holda, printsip bir xil bo'lib qoladi.




Yuqori