Shaklning asosiy tafsilotlari. Boshqariladigan shakl tafsilotlari (1Cv8) 1c boshqariladigan shakllar dasturiy ravishda tafsilotlarni qo'shadi

Shakl tafsilotlari

Shakl tafsilotlari to'plami shaklda ko'rsatiladigan, tahrirlanadigan yoki saqlanadigan ma'lumotlar tarkibini tavsiflaydi. Shu bilan birga, shakl tafsilotlarining o'zi ma'lumotlarni ko'rsatish va tahrirlash imkoniyatini bermaydi. Shakl tafsilotlari bilan bog'langan shakl elementlari (ushbu bobning "Forma elementlari" bo'limiga qarang) ko'rsatish va tahrirlash uchun ishlatiladi. Shaklning barcha tafsilotlari to'plami forma ma'lumotlari deb ataladi.

Muhim! Shuni esda tutish kerakki, oddiy shakllardan farqli o'laroq, boshqariladigan shakldagi barcha ma'lumotlar tafsilotlar shaklida tasvirlangan bo'lishi kerak. Shakl moduli o'zgaruvchilaridan shakl elementlari uchun ma'lumot manbalari sifatida foydalanishga yo'l qo'yilmaydi.

Tayinlash mumkin Shaklning asosiy tafsilotlari, ya'ni shaklning standart funksionalligini aniqlaydigan atributlar (shakl kengaytmasi). Shuni esda tutish kerakki, shakl faqat bitta asosiy xususiyatga ega bo'lishi mumkin.

Shakl kengaytmasi– bular ManagedForm obyektining qo‘shimcha xossalari, usullari va shakl parametrlari bo‘lib, shaklning asosiy elementi bo‘lgan obyektning xarakteristikasidir.

Shaklni ishlab chiqish jarayonida siz ko'rish va tahrirlash xususiyatlaridan foydalanib, muayyan shakl ma'lumotlarini rollar bo'yicha ko'rish va tahrirlash qobiliyatini aniq belgilashingiz mumkin (batafsil ma'lumot uchun "Muharrirlar" ning "Rolga asoslangan shakl sozlamalari" bo'limiga qarang. ” bobi). Bundan tashqari, shaklning o'zida ma'lum bir atributning mavjudligi funktsional variantlardan foydalangan holda sozlanishi mumkin (funktsional parametrlar haqida batafsil ma'lumotni "Konfiguratsiya interfeysini boshqarish" bo'limida topish mumkin).

Shakl atributi xususiyati Saqlangan maʼlumotlar ma'lumotlarning interaktiv o'zgarishi shakl ma'lumotlarini tahrirlash uchun blokirovka qilishga, shuningdek, shaklni o'zgartirish bayrog'ini avtomatik sozlashga olib kelishining belgisidir.

Boshqariladigan shaklda mavjud ma'lumotlar turlari

Boshqariladigan shakl oddiy shakldan u ishlaydigan ma'lumotlar turlari bilan ham farq qiladi. Agar oddiy shakl 1C: Enterprise taqdim etadigan ko'pgina turlar bilan ishlayotgan bo'lsa (shu jumladan DirectoryObject, DocumentObject va boshqalar), unda boshqariladigan shaklda quyidagi tur toifalarini ajratish mumkin:

  • to'g'ridan-to'g'ri shaklda ishlatiladigan turlar - bu nozik va Web mijoz tomonida mavjud bo'lgan turlar (masalan, Number, DirectoryLink.Products, GraphicScheme, TabularDocument);
  • maxsus ma'lumotlar turlariga aylantiriladigan turlar - boshqariladigan shakl ma'lumotlar turlari. Bunday turlar shakl tafsilotlari ro'yxatida qavslar ichida ko'rsatiladi, masalan (DirectoryObject.Products);
  • dinamik ro'yxat (batafsil ma'lumot uchun ushbu bobning "Dinamik ro'yxat" bo'limiga qarang).

Ilova ob'ektlarini shakl ma'lumotlariga aylantirish

Ba'zi dastur turlari (masalan, DirectoryObject va boshqalar) nozik va veb-mijoz tomonida mavjud emas (batafsilroq ma'lumot uchun Boshqariladigan ilovalar kontseptsiyasi bo'limiga qarang). Shuning uchun, bunday dastur turlarini shaklda ko'rsatish uchun platforma boshqariladigan shakllarda ishlashga mo'ljallangan maxsus ma'lumotlar turlarini taqdim etdi. Boshqariladigan ilovaning bu xususiyati dastur ob'ektlarini ma'lumotlarni shaklga aylantirish zaruratini keltirib chiqaradi (va aksincha).

Quyidagi ma'lumotlar turlari qo'llaniladi:

  • Form DataStructure - ixtiyoriy turdagi xususiyatlar to'plamini o'z ichiga oladi. Xususiyatlari boshqa tuzilmalar, kollektsiyalar yoki to'plamli tuzilmalar bo'lishi mumkin. Bu tip, masalan, DirectoryObject shaklida ifodalanadi.
  • FormDataCollection - massivga o'xshash terilgan qiymatlar ro'yxati. To'plam elementiga indeks yoki identifikator orqali kirish mumkin. Ba'zi hollarda ID orqali kirish imkonsiz bo'lishi mumkin. Bu ushbu to'plam tomonidan taqdim etilgan dastur ob'ektining turiga bog'liq. Identifikator har qanday butun son bo'lishi mumkin. Bu tur, masalan, jadvalli qism shaklida ifodalanadi.
  • Form DataStructureWithCollection - bu bir vaqtning o'zida struktura va to'plam sifatida taqdim etiladigan ob'ekt. Uni ushbu ob'ektlarning har biri kabi davolash mumkin. Bu tip, masalan, formadagi yozuvlar to'plamini ifodalaydi.
  • Form DataTree - ierarxik ma'lumotlarni saqlash uchun mo'ljallangan ob'ekt.

Ilova ob'ekti bir yoki bir nechta shakl ma'lumotlari elementlari bilan ifodalanadi. Umuman olganda, shakl ma'lumotlarining ierarxiyasi va tarkibi boshqariladigan shaklning dastur ob'ektlarining murakkabligi va o'zaro bog'liqligiga bog'liq.

Masalan, jadval qismini o'z ichiga olgan hujjat FormDataStructure tipidagi ob'ekt (hujjatning o'zi) bilan ifodalanadi, unga FormDataCollection tipidagi ob'ekt (hujjatning jadval qismi) bo'ysunadi.

Muhim! Konfiguratsiyani ishlab chiqishda shuni yodda tutish kerakki, dastur ob'ektlari faqat serverda mavjud bo'lib, forma ma'lumotlari ob'ektlari ham serverda, ham mijozda ishlatilishi mumkin.

Boshqariladigan shaklning mijoz va server qismlari o'rtasida ma'lumotlarni uzatish

Aslida, biz shuni aytishimiz mumkinki, forma ma'lumotlari - bu forma bir xilda ishlaydigan va serverda ham, mijozda ham mavjud bo'lgan turli xil amaliy ob'ektlar ma'lumotlarining birlashtirilgan ko'rinishi. Ya'ni, shakl o'ziga xos ma'lumotlar turlari ko'rinishidagi dastur ob'ekti ma'lumotlarining ba'zi "proyeksiyalarini" o'z ichiga oladi va agar kerak bo'lsa, ular o'rtasida konversiyani amalga oshiradi. Biroq, agar konfiguratsiyani ishlab chiquvchi o'zining ma'lumotlarni qayta ishlash algoritmini amalga oshirsa, u holda ma'lumotlarni konvertatsiya qilishni (ixtisoslashtirilgan turlardan dastur turlariga va aksincha) mustaqil ravishda amalga oshirishi kerak.

Ixtisoslashgan muharrirda shakl ma'lumotlarini tahrirlashda (batafsilroq ma'lumot uchun "Muharrirlar" bo'limining "Forma tafsilotlari" bo'limiga qarang), forma ishlayotgan vaqtda mijoz va server o'rtasida ma'lumotlarni uzatishga ta'sir qilish mumkin. Buning uchun tafsilotlar muharriri ustunidan foydalaniladi. Har doim foydalaning. Ushbu xususiyatning ta'siri uch turdagi atributlar uchun farq qiladi:

  • Dinamik ro'yxatga bo'ysunuvchi atribut uchun (dinamik ro'yxat ustuni):
    • xususiyat yoqilgan - atribut har doim ma'lumotlar bazasidan o'qiladi va shakl ma'lumotlariga kiritiladi;
    • xususiyat o'chirilgan - atribut ma'lumotlar bazasidan o'qiladi va faqat atribut yoki unga bo'ysunuvchi atribut bilan bog'langan hozirda ko'rinadigan shakl elementi mavjud bo'lganda shakl ma'lumotlariga kiritiladi.
  • Harakat to'plamiga bo'ysunadigan rekvizitlar uchun:
    • xususiyat yoqilgan - hujjat harakati ma'lumotlar bazasidan o'qiladi va shakl ma'lumotlarida mavjud bo'ladi;
    • xususiyat o'chirilgan - hujjat harakati ma'lumotlar bazasidan o'qilmaydi va shakl ma'lumotlariga kiritilmaydi (agar hujjat harakatiga havola qiluvchi shakl elementi bo'lmasa).
  • Shaklning boshqa tafsilotlari:
    • xususiyat yoqilgan - atribut yoki unga bo'ysunuvchi atribut bilan bog'langan kamida bitta shakl elementi mavjudligi yoki yo'qligidan qat'i nazar, atribut shakl ma'lumotlarida mavjud bo'ladi;
    • xususiyat o'chirilgan - atribut faqat atribut yoki unga bo'ysunuvchi atribut bilan bog'langan shakl elementi mavjud bo'lsa, forma ma'lumotlarida mavjud bo'ladi. Dinamik ro'yxat atributlaridan farqli o'laroq, atribut bilan bog'langan elementning ko'rinishi bu erda muhim emas.

Eslatma. Shuni esda tutish kerakki, ota-atributga o'rnatilgan xususiyat barcha bo'ysunuvchi atributlarga ta'sir qiladi. Misol uchun, agar Use xususiyati har doim hujjatning jadval qismi uchun tozalangan bo'lsa, tizim ushbu xususiyat barcha bo'ysunuvchi tafsilotlar uchun ham tozalangan deb hisoblaydi (mulkning haqiqiy holatiga qaramasdan).

Ilova ob'ekti ma'lumotlarini shakl ma'lumotlariga aylantirish usullari

Ilova ob'ektlarini shakl ma'lumotlariga va orqaga aylantirish uchun global usullar to'plami mavjud:

  • ValueInFormData(),
  • FormDataInValue(),
  • CopyFormData().

Muhim! Ilova ob'ektlari bilan ishlaydigan usullar faqat server protseduralarida mavjud. Forma ma'lumotlari o'rtasidagi qiymatlarni nusxalash usuli serverda va mijozda mavjud, chunki u parametr sifatida dastur ob'ektlarini talab qilmaydi.

Shakl ma'lumotlarini dastur ob'ektiga aylantirishda ularning mosligini hisobga olish kerak.

  • ValueInFormData() – ilova tipidagi obyektni shakl ma’lumotlariga aylantiradi;
  • FormDataInValue() – shakl ma’lumotlarini ilova tipidagi obyektga aylantiradi;
  • CopyFormData() - mos tuzilishga ega bo'lgan shakl ma'lumotlarini nusxalaydi. Nusxa muvaffaqiyatli bajarilgan bo'lsa, True yoki ob'ekt tuzilishi mos kelmasa, False qiymatini qaytaradi.

Eslatma. Asosiy detallarga ega bo‘lgan formaning standart amallarini (formani ochish, standart Write buyrug‘ini bajarish va h.k.) bajarishda konversiya avtomatik ravishda amalga oshiriladi.

Keling, o'z algoritmlarida ma'lumotlarni o'zgartirishdan qanday foydalanishga misol keltiraylik.

CreateOnServer qachon &OnServerProcedure(Muvaffaqiyatsizlik, StandardProcessing)

ObjectProduct = Directories.Products.FindByName("Kofepot").GetObject(); ValueInFormData(ObjectItem, Object);

Jarayonning oxiri

&OnClient protsedurasini yozish()

WriteOnServer();

Jarayonning oxiri

&OnServer protsedurasi WriteOnServer()

ObjectProduct = FormDataValue (Ob'ekt, Tur ("DirectoryObject.Mahsulotlar")); ObjectItem.Write();

Jarayonning oxiri

ManagedForm obyektida serverda mavjud usullar ham mavjud:

  • ValueVFormAttribute() – ilova tipidagi obyektni belgilangan forma atributiga aylantiradi.
  • FormAttributeVValue() - shakl ma'lumotlari atributini dastur turidagi ob'ektga aylantiradi.

Ushbu usullardan foydalanish odatda qulayroqdir, chunki ular, masalan, shakl tafsilotlari turi haqida ma'lumotga ega. Bundan tashqari, Form AttributesValue() usuli xabarlarni yaratishda foydalaniladigan shakl ma'lumotlari va ob'ekt o'rtasidagi yozishmalarni o'rnatadi. Bu haqda ko'proq ma'lumotni "Xizmat navigatsiya imkoniyatlari" bo'limida o'qishingiz mumkin.

Keling, ushbu usullardan foydalanishga misol keltiraylik.

&OnServer protsedurasi RecalculateOnServer()

// Object atributini dastur obyektiga aylantiradi. Hujjat = Form AttributesValue("Ob'ekt"); // Hujjat modulida belgilangan usul yordamida qayta hisoblashni amalga oshiradi. Document.Recalculate(); // Ilova ob'ektini rekvizitga aylantiradi. ValueVFormAttributes(Hujjat, "Ob'ekt");

Jarayonning oxiri

Dasturiy ta'minot interfeysi

FormDataTree

  • FindById
  • GetItems

Tavsif:

Boshqariladigan shakl ma'lumotlarida daraxtni modellashtirish uchun mo'ljallangan.

Ushbu ob'ektni XDTO ga seriyalash mumkin. Ushbu ob'ektga mos keladigan XDTO turi nomlar maydonida aniqlanadi. XDTO turi nomi:

GetItems

Sintaksis:

GetItems()

Qaytish qiymati:

Turi: Daraxt elementlarining shakl ma'lumotlari to'plami.

Tavsif:

Yuqori darajadagi daraxt elementlari to'plamini oladi.

Mavjudligi: mijoz, server, nozik mijoz, veb-mijoz.

FindById

Sintaksis:

FindById(<Идентификатор>)

Variantlar:

<Идентификатор>(majburiy)

Turi: raqam. Daraxt elementi identifikatori.

Qaytish qiymati:

Turi: FormDataTreeElement.

Tavsif:

To'plam elementini ID bo'yicha oladi.

Mavjudligi: mijoz, server, nozik mijoz, veb-mijoz.

FormDataTreeItem

Xususiyatlari:

<Имя свойства> (<Имя свойства>)

  • GetId (GetId)
  • GetParent
  • GetItems
  • Mulk

Tavsif:

Shakl ma'lumotlar daraxti elementi.

FormDataTreeItemCollection

To'plam elementlari: DataFormTreeElement

Ob'ekt uchun For every... From... Loop operatori yordamida to'plamni aylanib o'tish mumkin. O'tish to'plamning elementlarini tanlaydi. Kolleksiya elementiga [...] operatori yordamida kirish mumkin. Element indeksi argument sifatida uzatiladi.

  • Kiritmoq
  • Qo'shish
  • Indeks (IndexOf)
  • Hisoblash
  • Toza
  • Oling
  • Ko'chirish
  • Oʻchirish

Tavsif:

Yog'och elementlarning to'plami.

Mavjudligi: mijoz, server, nozik mijoz, veb-mijoz.

Shuningdek qarang:

  • FormDataTreeElement, GetElements usuli
  • DataFormTree, GetItems usuli

Qiymat daraxti bilan ishlash xususiyatlari

Daraxt yangilanishi

Muammo bor tushadi daraxtni yangilashda platformalar.

Agar daraxtdagi biron bir tugun kengaytirilgan bo'lsa va unga bo'ysunuvchi tugun tanlangan bo'lsa, daraxtni funktsiya bilan yangilashda ValueInFormData platforma tushadi.

Yechim: Yangilashdan oldin daraxtni tozalashingiz kerak.

Masalan:

&Server protsedurasida ClearTree(elementlar) Elementlarning har bir elementi uchun Loop ClearTree(element.GetElements()); EndCycle; elementlar.Clear(); Jarayonning oxiri

&Server protsedurasida tushunchalar daraxtini toʻldirish() dConcepts = srProperties.Build Concept Tree(OnDate, Meta.CurrentIB()); ClearTree(ConceptTree.GetItems()); ValueInFormData(dConcepts, ConceptTree); Jarayonning oxiri

&OnClient protsedurasi OnDateOnChange(Element) ConceptTree(); Jarayonning oxiri

1C: Enterprise platformasi sizga boshqariladigan shakl elementlarini dasturiy ravishda qo'shish va o'zgartirish imkonini beradi. Keling, nima uchun bu kerak bo'lishi mumkinligini aniqlaylik.

Shaklning dasturiy ta'minotini o'zgartirish bir necha hollarda talab qilinishi mumkin:

  • Keyingi yangilash jarayonini osonlashtirish uchun standart konfiguratsiyalarni yakunlashda. Bunday holda, faqat forma moduli o'zgartiriladi. Modullarni yangilash shakllarga qaraganda ancha oson.
  • Ba'zi umumiy algoritmlarni amalga oshirishda. Masalan, "Ob'ekt tafsilotlarini tahrirlashni taqiqlash" quyi tizimida tafsilotlarni tahrirlash imkoniyatini yoqish uchun quyi tizimga ulangan barcha ob'ektlar uchun dasturiy ravishda tugma yaratilishi mumkin.
  • Ba'zi maxsus algoritmlarni amalga oshirishda. Masalan, Nomenklatura katalogida qo'shimcha ma'lumotlarni tahrirlash uchun maydonlar yaratiladi.

Boshqariladigan shaklda siz dasturiy ravishda qo'shishingiz, o'zgartirishingiz va o'chirishingiz mumkin:

  • rekvizitlar;
  • mahalliy jamoalar;
  • elementlar.

Ushbu operatsiyalarning barchasi faqat serverda mumkin.

Dasturiy qayta shakllantirishda cheklovlar mavjud:

  • Siz faqat dasturiy jihatdan qo'shilgan tafsilotlarni/buyruqlarni/elementlarni o'chirishingiz mumkin. Siz konfiguratorda yaratilgan ob'ektlarni dasturiy ravishda o'chira olmaysiz.
  • Siz asosiy atribut sifatida belgilay olmaysiz.

Shakl buyruqlarini o'zgartirish

Ob'ekt uchun buyruqlar tarkibini boshqarish Boshqariladigan shakl kolleksiyasi bor Jamoalar

    Qo'shish (< ИмяКоманды >)

    Miqdori ()

    Toping (< ИмяКоманды >)

    Oʻchirish (< Команда >)

Teams to'plami mijozda ham, serverda ham mavjud. To'plamni (Qo'shish() va O'chirish() usullari) faqat serverda o'zgartirishingiz mumkin. Elementlar sonini (Find () va Count () usullari) mijozda ham, serverda ham qidirishingiz va olishingiz mumkin.

Shakl buyruqlari bilan ishlashga misol tariqasida ishlov beruvchini chaqiradigan “ChangeHistory...” sarlavhali yangi ChangeHistory buyrug'ini yarataylik. Displey tarixi(). Shakl ochilganda yaratish sodir bo'ladi.

&Serverda
Jarayon WhenCreatingOnServer(muvaffaqiyatsizlik, standart ishlov berish)
Jamoa = Jamoalar. qo'shish( "O'zgarishlar tarixi");
Jamoa . Harakat =;
Jamoa . Sarlavha = "O'zgarishlar tarixi ...";
Jarayonning oxiri
&OnClient
Jarayon Connectable_Display History(Buyruq)
// buyruq harakatlari
Jarayonning oxiri

Buyruqlar ishlovchisi formada joylashgan bo'lishi va &OnClient kompilyatsiya direktivasiga ega bo'lishi kerak.

Shakl tafsilotlarini o'zgartirish

Shakl detallari tarkibini o'qish funksiya tomonidan amalga oshiriladi Tafsilotlarni oling(< Путь >) FormAttributes tipidagi massivni qaytarish. Funksiya parametri asosiy atributga (satr sifatida) yo'lni belgilaydi. Agar parametr o'tkazib yuborilsa yoki bo'sh qator ko'rsatilgan bo'lsa, yuqori darajadagi tafsilotlar qaytariladi.

Tafsilotlarni o'zgartirish usul yordamida amalga oshiriladi Tafsilotlarni o'zgartirish(<Qo'shilgan tafsilotlar>, <Olib tashlanadigan tafsilotlar>) ob'ekt Boshqariladigan shakl. Parametrlarga Qo'shilgan tafsilotlar Va Olib tashlanadigan tafsilotlar Form atributlari tipidagi elementlarga ega massivlar uzatiladi.

Diqqat!

Tafsilotlar tarkibini o'zgartirish jarayoni juda ko'p resurs talab qiladi. Shakl aslida qayta yaratilmoqda. Shu munosabat bilan shakl detallari bilan ishlash ommaviy rejimda amalga oshiriladi.

Keling, xaridor nomi bilan yangi forma atributini yaratamiz:


AddedDetails = Yangi massiv;
Qo'shilgan tafsilotlar. Qo'shish (yangi shakl atributlari(“Xaridor”, Yangi turdagi tavsif (“DirectoryLink. Kontragentlar”), “Mijoz”));

// Tafsilotlar tarkibidagi o'zgarishlar
);

Shakl elementlarini o'zgartirish

Ob'ekt elementlarining tarkibini nazorat qilish Boshqariladigan shakl kolleksiyasi bor Elementlar. To'plamda bir nechta usullar mavjud:

    Kiritmoq (< Имя>, < ТипЭлемента>, < Родитель>, < Элемент >)

    Qo'shish (< Имя>, < ТипЭлемента>, < Родитель >)

    Miqdori ()

    Toping (< Имя >)

    Ko'chirish(< Элемент>, < Родитель>, < МестоРасположения >)

    Oʻchirish (< Элемент >)

Items to'plami mijozda ham, serverda ham mavjud. To'plamni o'zgartirish (Usullarni kiritish () , Qo'shish () , Ko'chirish () va O'chirish () ) faqat serverda mavjud. Elementlar sonini (Find () va Count () usullari) mijozda ham, serverda ham qidirishingiz va olishingiz mumkin. To'plam elementlari quyidagilar bo'lishi mumkin:

  • FormGroup;
  • Shakllar jadvali;
  • FormField;
  • Shakl tugmasi.

Shakl elementlariga hodisa ishlov beruvchilarini dasturiy ravishda belgilashingiz mumkin. Usul ushbu maqsadlar uchun mo'ljallangan SetAction(< ИмяСобытия>, < Действие >) .

Keling, buyruqlar, detallar va forma elementlari bilan ishlashning eng keng tarqalgan misollarini ko'rib chiqaylik.

Buyruq va unga bog'langan tugmani qo'shish:

// Buyruq yarating
Jamoa = Jamoalar. qo'shish( "O'zgarishlar tarixi");
Jamoa . Harakat = "Plug-in_Display History"; // Shakl ko'rsatilgan nomga ega protsedurani o'z ichiga olishi kerak
Jamoa . Sarlavha = "O'zgarishlar tarixi ...";
// Tugma yarating va uni buyruq bilan bog'lang
Element = Elementlar. qo'shish( "O'zgarishlar tarixi", Type("FormButton" ));
Element.Buyruqning nomi = "O'zgarishlar tarixi";

Atribut va tegishli kiritish maydonini qo'shish:

// Qo'shilgan tafsilotlarning tavsifi
AddedDetails = Yangi massiv;
Qo'shilgan tafsilotlar. Qo'shish(Yangi shakl rekvizitlari (“Xaridor”, Yangi tur tavsifi ( "DirectoryLink. Qarama-qarshi tomonlar"), "Mijoz" ));
// Tafsilotlar tarkibini o'zgartirish
Tafsilotlarni o'zgartirish (qo'shilgan ma'lumotlar);
// Kirish maydonini yaratish va atributga ulanish
Element = Elementlar. Qo'shish("Xaridor" , Turi("FormField" ));
Element . Ko'rish = FormFieldView. Kirish maydoni;
Element . PathToData= "Xaridor" ;

Shakl elementiga hodisa ishlov beruvchisini tayinlash:

Buyurtmachi. SetAction("U o'zgarganda", "Connected_BuyerOnChange");

&OnClient
Jarayon Connected_BuyerOnChange(Element)
// Voqea harakatlari
Jarayonning oxiri

Diqqat!

Usul yordamida koddan hodisa ishlov beruvchilari sifatida o'rnatiladigan protseduralar SetAction(), Connectable_ prefiksini o'rnatish tavsiya etiladi.

Diqqat!

Siz ishlov berishni dasturiy qidiruv va boshqariladigan shaklning tafsilotlari, buyruqlari va elementlarini o'zgartirish misollari bilan yuklab olishingiz mumkin.

Shakl tafsilotlari uning ma'lumotlar bilan bog'lanishini ta'minlaydi. Bunday holda, tafsilotlardan biri (va faqat bittasi) asosiy sifatida belgilanishi mumkin; bu biz shaklni chizayotgan ma'lumotlar turi bo'lishi shart emas. Ammo shaklning harakati asosiy atributning ma'lumotlar turiga bog'liq bo'ladi. Shaklning xatti-harakatlarini o'zgartirishdan tashqari, shakl modulining konteksti ham o'zgaradi. Unda shaklning usullari va xossalari bilan bir qatorda asosiy atributning qiymati bo'lgan ob'ektning usullari va xususiyatlari mavjud bo'ladi. Erkin shakl tipidagi shakllarda asosiy tafsilotlar bo'lmasligi muhimdir. Bunday holda, shaklning harakati faqat foydalanuvchi sozlamalari bilan belgilanadi. Keling, asosiy tafsilotlarga oid savollarni ko'rib chiqaylik.

1C imtihonining 10.05-savol: Professional platformasi. Asosiy forma atributi nima uchun ishlatiladi?

  1. Butun shakl uchun ma'lumotlar manbasini belgilaydi
  2. Asosiy atributda ko'rsatilgan turdagi ma'lumotlar bilan forma bilan ishlash platformasining standart imkoniyatlarini belgilaydi
  3. Mahalliy shakl kontekstidan ob'ekt tafsilotlariga dasturiy ravishda kirish imkoniyatini ta'minlash
  4. Shakl dialog oynasida ob'ekt tafsilotlarini vizuallashtirishni ta'minlaydi
  5. 2 va 3 to'g'ri
  6. 1 va 2 to'g'ri

To'g'ri javob - oltinchi raqam, yuqoriga qarang.


1C imtihonining 10.06-savol: Professional platformasi. Shakl tafsilotlari nima uchun kerak?
  1. Shaklda ko'rsatiladigan, tahrirlanadigan yoki saqlanadigan ma'lumotlar mazmunini tavsiflash uchun
  2. Shaklda ma'lumotlarni ko'rsatish va tahrirlash uchun
  3. 1 va 2 to'g'ri

To'g'ri javob uchinchi - ikkalasi ham.

1C imtihonining 10.07-savol: Professional platformasi. Ixtiyoriy boshqariladigan shaklga asosiy atributlarni belgilash uchun...

  1. Shakl atributlari xususiyatlarida "Asosiy tafsilotlar" katagiga belgi qo'yishingiz kerak
  2. kerakli forma atributini tanlab, shaklning "Ma'lumotlar" xususiyatini to'ldirishingiz kerak

To'g'ri javob ikkinchi:

1C imtihonining 10.08-savol: Professional platformasi. Asosiy ma'lumotlarni o'zboshimchalik bilan oddiy shaklga belgilash uchun...
  1. shaklni asosiy qilish kerak, asosiy tafsilotlar avtomatik ravishda aniqlanadi
  2. Shakl atributlari xususiyatlarida "Asosiy tafsilotlar" katagiga belgi qo'yishingiz kerak
  3. "Tahrirlash" menyusiga, "Asosiy tafsilotlar" ga o'tishingiz va kerakli qiymatni tanlashingiz kerak
  4. kerakli forma atributini tanlab, shaklning "Ma'lumotlar" xususiyatini to'ldirishingiz kerak

To'rtinchi to'g'ri javob:

Asosiy tafsilotlar qalin shrift bilan ta'kidlangan:

1C imtihonining 10.09-savol: Professional platformasi. Agar bitta asosiy forma atributi mavjud bo'lsa, boshqa asosiy atributni qo'shish mumkinmi?
  1. Bu mumkin emas
  2. Bu forma atributi xususiyatiga tegishli qiymatni belgilash orqali mumkin
  3. Bu "Forma" ob'ektiga kirishda faqat dasturiy jihatdan mumkin
  4. Bu mos keladigan shakl xususiyatiga boshqa qiymat qo'shish orqali mumkin

To'g'ri javob birinchi, qat'iy bitta asosiy shart bor, chunki ob'ekt bilan bog'liqlik bir ma'noli bo'lishi kerak.

1C imtihonining 10.113-savol: Professional platformasi. Rasmda keltirilgan shakl tafsilotlaridan qaysi biri asosiy hisoblanadi?

  1. Valyuta kurslari ro'yxati
  2. DirectoryObject
  3. Katalog shakllari asosiy ma'lumotlarga ega emas
  4. Katalog shakllari barcha asosiy ma'lumotlarga ega
Ikkinchi to'g'ri javob qalin bilan yozilgan.

Shakl yorliqda ierarxik tarzda joylashgan turli shakl elementlari orqali boshqariladi Elementlar shakl dizayneri. Eng muhim element shaklning o'zi bo'lib, u elementlar ierarxiyasining yuqori qismida joylashgan va qolgan elementlar unga bo'ysunadi.

Barcha shakl elementlarini besh guruhga bo'lish mumkin: maydonlar, guruhlash elementlari, tugmalar, bezaklar va jadvallar. Maqolalarimda men guruhlarning har birini tahlil qilaman. Ushbu maqolada biz maydon elementining turlaridan birini o'rganishni boshlaymiz - kirish maydoni, lekin bundan oldin shaklga element qo'shishni o'rganamiz.

Shaklga elementlar qo'shish

Bu juda oddiy amalga oshiriladi: elementni tanlashingiz kerak Shakl Shakl dizayn elementlari oynasida "Qo'shish" tugmasini bosing. Shundan so'ng, kerakli element turini tanlashingiz kerak bo'lgan oyna ochiladi

Tanlangandan so'ng, kerakli element oynada paydo bo'ladi Elementlar.

Boshqariladigan shakl elementi Maydon

Keling, boshqariladigan shakl elementini ko'rib chiqaylik Maydon. Ushbu element shaklga ma'lumotlarni kiritish uchun kerak. Va shuningdek, har qanday ma'lumotni ko'rsatish uchun. Ushbu elementni formaga qo'shgandan so'ng, o'ng tomonda forma elementi xususiyatlari palitrasi ochiladi. Hozircha siz ikkita xususiyatga qiziqishingiz kerak - DataPath va View.

DataPath xossasida ishlab chiquvchi shakl elementini kerakli forma atributi bilan bog‘lashi mumkin. Element qo'shilgandan keyin unutmang Kirish maydoni formada u shaklning o'zida ko'rsatilmagan. Bu bizning yangi elementimiz bilan bog'lanmaganligi sababli sodir bo'ldi. Misol uchun, men qayta ishlash formasida har xil ibtidoiy tipdagi bir nechta atributlar va mos yozuvlar turi bilan bitta atribut yaratdim.

Endi yaqinda qo‘shilgan forma elementimizni tafsilotlardan biri bilan bog‘laymiz.Buning uchun elementning PathKData xususiyatidan kerakli atributni tanlang.

Shundan so'ng, DataPath va View xususiyatlari to'ldiriladi va elementning o'zi shakl ko'rinishida ko'rsatiladi.

Element xususiyatiga e'tibor bering Ko'rinish. Bu xususiyat kiritish maydonining funksionalligini belgilaydi. Ushbu xususiyat uchun turli qiymatlarni tanlashingiz mumkin.

Tanlangan qiymatga qarab, funksionallik aniqlanadi. Yuqoridagi raqamlarda tanlangan qiymat - kirish maydoni, ya'ni. biz ushbu kiritish maydoniga istalgan qiymatlarni kiritishimiz mumkin va agar qiymat tanlasak teg maydoni, keyin biz hech narsa kirita olmaymiz.

Ushbu mulk qiymati Ko'rinish Kirish maydonlarini faqat foydalanuvchiga yordam ma'lumotlarini ko'rsatish kerak bo'lganda tanlash qulay.

Endi turi bilan yangi forma elementini qo'shamiz Kirish maydoni va uni rekvizitlar bilan bog'lang TafsilotlarSana bizga allaqachon tanish bo'lgan DataPath xususiyati orqali

Ko'rib turganingizdek, kiritish maydonining ko'rinishi o'zgargan va View xususiyati uchun qiymatlarni tanlash ham o'zgaradi.

Shunday qilib, biz kiritish maydonining funksionalligi atribut turiga bog'liq degan xulosaga keldik.

Turi bilan rekvizitlar uchun Mantiqiy Quyidagi View xususiyati qiymatlari mavjud bo'ladi.

Va mos yozuvlar turiga ega atributlar uchun View xususiyatining boshqa qiymatlari mavjud bo'ladi.

Amaliy misollar yordamida shakl elementlari bilan batafsilroq ishlash "1Cda rivojlanish asoslari: Taksi." kitobida keltirilgan. 12 bosqichda boshqariladigan ilovalarni ishlab chiqish".

Ba'zan 1C da dasturlash tilini o'rganish murakkab va qiyin bo'lib tuyuladi. Aslida, 1C da dasturlash oson. Mening kitoblarim sizga 1C: va "1C: Taksida rivojlanish asoslari" da dasturlashni tez va oson o'zlashtirishga yordam beradi.

"1C da 11 bosqichda dasturlash" kitobim yordamida 1C da dasturlashni o'rganing.

  1. Murakkab texnik shartlar yo'q.
  2. 700 sahifadan ortiq amaliy material.
  3. Har bir vazifa chizma (skrinshot) bilan birga keladi.
  4. Uy vazifasi uchun muammolar to'plami.
  5. Kitob tushunarli va sodda tilda yozilgan - yangi boshlanuvchilar uchun.

Ushbu kitob dasturlashni allaqachon boshlagan va ushbu mavzu bo'yicha muayyan qiyinchiliklarni boshdan kechirayotganlar va uzoq vaqt davomida dasturlash bilan shug'ullanadigan, lekin 1C boshqariladigan shakllar bilan hech qachon ishlamaganlar uchun javob beradi.

  1. Murakkab texnik shartlarsiz;
  2. 600 betdan ortiq amaliy material;
  3. Har bir misol chizma (skrinshot) bilan birga keladi;
  4. Kitob elektron pochta orqali PDF formatida yuboriladi. Har qanday qurilmada ochilishi mumkin!

15% chegirma uchun promo-kod - 48PVXHeYu


Agar ushbu dars sizga biron bir muammoni hal qilishda yordam bergan bo'lsa, sizga yoqqan yoki foydali deb topilgan bo'lsa, unda siz mening loyihamni istalgan miqdorda xayriya qilish orqali qo'llab-quvvatlashingiz mumkin:

Siz qo'lda to'lashingiz mumkin:

Yandex.Money - 410012882996301
Web Money - R955262494655

Mening guruhlarimga qo'shiling.

Va 1C 8.2 muhitida kod tuzilmasi, boshqariladigan shaklga ma'lumotlarni uzatish ob'ekti.

Kirish

Keling, "boshqariladigan shakl" tushunchasining qisqacha tavsifi va 1C platformasining tegishli tushunchalari bilan boshlaylik. Platformani biluvchilar ushbu bo'limni o'tkazib yuborishni xohlashlari mumkin.

2008 yilda 1C platformasining yangi versiyasi: Enterprise 8.2 (keyingi o'rinlarda Boshqariladigan ilova deb yuritiladi) mavjud bo'lib, u interfeys bilan ishlashning butun qatlamini butunlay o'zgartiradi. Bunga buyruqlar interfeysi, shakllar va oyna tizimi kiradi. Shu bilan birga, nafaqat konfiguratsiyada foydalanuvchi interfeysini ishlab chiqish modeli o'zgaradi, balki mijoz ilovasi va server o'rtasidagi funksionallikni ajratish uchun yangi arxitektura ham taklif etiladi.
Boshqariladigan dastur quyidagi turdagi mijozlarni qo'llab-quvvatlaydi:

  • Qalin mijoz (oddiy va boshqariladigan ishga tushirish rejimi)
  • Yupqa mijoz
  • Veb mijoz
Boshqariladigan ilova yangi texnologiya asosida tuzilgan shakllardan foydalanadi. Ular chaqiriladi Boshqariladigan shakllar. O'tishni engillashtirish uchun oldingi shakllar (muntazam shakllar deb ataladigan) ham qo'llab-quvvatlanadi, ammo ularning funksionalligi ishlab chiqilmagan va ular faqat qalin mijozni ishga tushirish rejimida mavjud.
Ishlab chiquvchi uchun boshqariladigan shakllarning asosiy farqlari:
  • Tuzilishning "piksel bo'yicha" tavsifi emas, deklarativ. Shakl ko'rsatilganda elementlarning o'ziga xos joylashuvi tizim tomonidan avtomatik ravishda amalga oshiriladi.
  • Shaklning barcha funksionalligi sifatida tavsiflanadi tafsilotlar Va jamoalar. Tafsilotlar - bu forma ishlaydigan ma'lumotlar va buyruqlar - bajariladigan harakatlar.
  • Shakl serverda ham, mijozda ham ishlaydi.
  • Mijoz kontekstida deyarli barcha dastur turlari mavjud emas va shunga mos ravishda ma'lumotlar bazasidagi ma'lumotlarni o'zgartirish mumkin emas.
  • Har bir usul yoki shakl o'zgaruvchisi uchun u ko'rsatilishi kerak kompilyatsiya direktivasi, bajarilish joyini (mijoz yoki server) va shakl kontekstiga kirishni aniqlash.
Shakl usullarini kompilyatsiya qilish uchun direktivalarni sanab o'tamiz:
  • &OnClient
  • &Serverda
  • &OnServerKontekstsiz
  • &OnClientOnServerKontekstsiz
Keling, yuqoridagilarni misol qilib keltiramiz. Skrinshotda boshqariladigan shakl va uning moduli ishlab chiqish rejimiga misol keltirilgan. Deklarativ tavsif, rekvizitlar, kompilyatsiya direktivalari va boshqalarni toping.

Keyingi barcha muhokamalar illyustratsiyaning o'ng tomoni, modul kodini qanday tuzish va mijoz-serverning samarali o'zaro ta'sirini amalga oshirish imkonini beradigan qanday tamoyillar haqida bo'ladi.

Keling, muammoni aniqlaylik

1C platformasining yangi versiyasi faol qo'llanilganidan beri bir necha yil o'tdi va 1C va uning ko'plab sheriklari tomonidan ko'plab echimlar (konfiguratsiyalar) chiqarildi.
Bu vaqt mobaynida ishlab chiquvchilar shakllarni yaratishda mijoz-server o'zaro ta'siri tamoyillari haqida umumiy tushunchani ishlab chiqdilarmi va yangi arxitektura realliklarida dasturiy modullarni amalga oshirishga yondashuv o'zgarganmi?

Keling, bir xil standart konfiguratsiyaning bir nechta shakllaridagi kod strukturasini (shakl moduli) ko'rib chiqamiz va naqshlarni topishga harakat qilamiz.
Tuzilish deganda ishlab chiquvchi tomonidan guruh usullari va kompilyatsiya direktivalari uchun ajratilgan kod bo'limlari (ko'pincha bu sharhlar bloklari) tushuniladi.
1-misol:
Hodisalarni qayta ishlash bo'limi Usul - mijozda Usul - serverda Usul - mijozda Xizmat ko'rsatish protseduralari va funktsiyalari bo'limi Yordamchi kiritishni boshqarish funktsiyalari
2-misol:
Xizmat ko'rsatish tartib-qoidalari va funktsiyalari To'lov hujjatlari Qadriyatlar Voqealar ishlovchilari
3-misol:
Serverda xizmat ko'rsatish tartib-qoidalari Mijozda xizmat ko'rsatish protseduralari Kontekstsiz serverda xizmat ko'rsatish protseduralari Sarlavha hodisasi ishlov beruvchilari Buyruq hodisasi ishlov beruvchilari
4-misol:
Umumiy maqsadli protseduralar Shakl hodisalari ishlov beruvchilari “Aloqa maʼlumotlari” quyi tizimining protseduralari
Aslida, kod tuzilmasi yo'q yoki yumshoq qilib aytganda, 8.1 shakllaridagiga o'xshaydi:

  • Ma'lumotga ega bo'lmagan so'zlar "Umumiy, Xizmat, Yordamchi".
  • Timid mijoz va server usullarini ajratishga harakat qiladi.
  • Usullar ko'pincha interfeys elementlari bo'yicha guruhlangan "Mahsulotlar jadval qismi bilan ishlash, aloqa ma'lumotlari".
  • Usullar va kod guruhlarini o'zboshimchalik bilan joylashtirish. Masalan, Voqealar boshqaruvchilari bir shaklda tepada, boshqasida pastda, uchinchisida umuman ajratib ko'rsatilmagan bo'lishi mumkin va hokazo.
  • Va bularning barchasi bitta konfiguratsiyada ekanligini unutmasligimiz kerak.
  • Ha, shunday konfiguratsiyalar mavjudki, unda "Umumiy, Xizmat, Yordamchi" so'zlari har doim bir xil joylarda bo'ladi, lekin ...
Nima uchun sizga kod tuzilishi kerak?
  • Xizmatni soddalashtirish.
  • O'rganishni soddalashtiring.
  • Umumiy/muhim/muvaffaqiyatli tamoyillarni qayd etish.
  • ... sizning tanlovingiz
Nega 1C dan mavjud rivojlanish standarti yordam bermaydi?
Keling, boshqariladigan shaklni yozishda tavsiya etiladigan ITS disklarida va turli xil "Ishlab chiquvchilar uchun qo'llanmalar ..." da chop etilgan tamoyillarni ko'rib chiqaylik.
  • Server qo'ng'iroqlari sonini kamaytiring.
  • Serverda maksimal hisoblash.
  • Kontekstli bo'lmagan server qo'ng'iroqlari kontekstli qo'ng'iroqlarga qaraganda tezroq.
  • Mijoz-server aloqasini hisobga olgan holda dastur.
  • va h.k.
Bu mutlaqo to'g'ri bo'lgan shiorlar, lekin ularni qanday amalga oshirish kerak? Qo'ng'iroqlar sonini qanday kamaytirish mumkin, mijoz-server rejimida dasturlash nimani anglatadi?

Dizayn naqshlari yoki avlod donoligi

Mijoz va serverning o'zaro ta'siri o'nlab yillar davomida turli xil dasturiy texnologiyalarda qo'llanilgan. Oldingi bo'limda keltirilgan savollarga javob uzoq vaqtdan beri ma'lum bo'lib, ikkita asosiy tamoyilda jamlangan.
  • Masofaviy Fasad(bundan buyon matnda masofaviy kirish interfeysi deb yuritiladi)
  • Ma'lumotlarni uzatish ob'ekti(keyingi o'rinlarda ma'lumotlarni uzatish ob'ekti deb yuritiladi)
Martin Faulerdan bir so'z, uning ushbu tamoyillarni tavsifi:
  • Masofaviy kirish uchun mo'ljallangan har bir ob'ekt bo'lishi kerak past granülerlik interfeysi, bu muayyan protsedurani bajarish uchun zarur bo'lgan qo'ng'iroqlar sonini kamaytiradi. ... Hisob-faktura va uning barcha bandlarini alohida so‘rash o‘rniga, bitta so‘rovda barcha hisob-faktura elementlarini o‘qib chiqishingiz va yangilashingiz kerak. Bu ob'ektning butun tuzilishiga ta'sir qiladi ... Esda tuting: masofaviy kirish interfeysi domen mantig'ini o'z ichiga olmaydi.
  • ...agar men g'amxo'r ona bo'lganimda, men bolamga: "Hech qachon ma'lumot uzatish ob'ektlarini yozmang!" Aksariyat hollarda ma'lumotlarni uzatish ob'ektlari boshqa narsa emas shishgan maydon to'plami...Bu jirkanch yirtqich hayvonning qiymati faqat imkoniyatda bir qo'ng'iroqda bir nechta ma'lumotlarni tarmoq orqali uzatish- taqsimlangan tizimlar uchun katta ahamiyatga ega bo'lgan texnika.
1C platformasidagi shablonlarga misollar
Boshqariladigan shaklni ishlab chiqishda ishlab chiquvchi uchun mavjud bo'lgan amaliy dasturlash interfeysi ushbu tamoyillarning ko'plab misollarini o'z ichiga oladi.
Masalan, OpenForm() usuli, odatiy "qo'pol" interfeys.
OpeningParameters = Yangi tuzilma ("Parametr1, Parametr2, Parametr3", Qiymat1, Qiymat2, Qiymat3); Shakl = OpenForm(FormName, OpeningParameters);
v8.1 da qabul qilingan uslub bilan solishtiring.
Shakl = GetForm (FormName); Form.Parameter1 = Qiymat1; Form.Parameter2 = Qiymat2; Form.Open();

Boshqariladigan shakl kontekstida ko'plab "Ma'lumotlarni uzatish ob'ektlari" mavjud. Siz tanlashingiz mumkin tizimli Va ishlab chiquvchi tomonidan belgilangan.
Tizimlilar dastur ob'ektini mijozda bir yoki bir nechta shakl ma'lumotlari elementlari shaklida modellashtiradi. Shakl tafsilotlariga murojaat qilmasdan ularni yaratish mumkin emas.

  • DataFormsStructure
  • DataForms Collection
  • DataFormStructureWithCollection
  • DataShapesTree
Tizim ma'lumotlarini uzatish ob'ektlarini dastur turlariga va aksincha konvertatsiya qilish quyidagi usullar yordamida amalga oshiriladi:
  • ValueInFormData()
  • FormDataValue()
  • CopyFormData()
  • ValueInFormAttributes()
  • FormAttributesValue()
Mavjud yechimni moslashtirishda ko'pincha aniq konversiya qo'llaniladi. Usullar FormDataCollection o'rniga ValueTable kabi kiritish parametrlarini kutishi (xususiyatlardan foydalanishi) mumkin yoki usul dastur ob'ekti kontekstida aniqlangan va shakldan to'g'ridan-to'g'ri qo'ng'iroq qilish uchun mavjud bo'lmagan.
Misol 1C v8.1:
// FillUserCache(DepartmentLink) shakli kontekstida mijozda
Misol 1C v8.2:
// forma kontekstida serverda ProcessingObject = Form AttributesValue("Object"); ProcessingObject.FillUserCache(DepartmentRef); ValueVFormAttributes(ProcessingObject, "Ob'ekt");

Tuzilishi ishlab chiquvchi tomonidan belgilanadigan ma'lumotlarni uzatish ob'ektlari mijozda ham, serverda ham mavjud bo'lgan turlarning kichik bir qismidir. Ko'pincha, "qo'pol" interfeys usullarining parametrlari va natijalari sifatida quyidagilar qo'llaniladi:

  • Primitiv tiplar (string, raqam, mantiqiy)
  • Tuzilishi
  • Xat yozish
  • Massiv
  • Ilova ob'ektlariga havolalar (noyob identifikator va matn ko'rinishi)
Misol: usul holatni o'zgartirish uchun buyurtmalar ro'yxatini qabul qiladi va mijozga xatolar tavsifini qaytaradi.
&OnServerWithoutContext Function ServerChangeOrderStatus(Buyurtmalar, NewStatus) Xatolar = Yangi moslik(); // [buyurtma][xato tavsifi] Buyurtmalardan har bir buyurtma uchunTransaction Cycle Start(); DocOb = Order.GetObject(); …. boshqa harakatlar, faqat buyurtma bilan mumkin emas... Istisno CancelTransaction(); Errors.Insert(Buyurtma, ErrorDescription()); EndAttempt; EndCycle; Qaytish xatosi; EndFunction // ServerChangeOrderStatus()

Kodning tuzilishi

Boshqariladigan shakl moduli aks ettirishi kerak bo'lgan asosiy maqsadlar va yechimga yondashuvlar.
  • Mijoz va server kodini aniq ajratish. Shuni unutmaslik kerakki, bajarilish vaqtida bu ikkita o'zaro ta'sir qiluvchi jarayon bo'lib, ularning har biri sezilarli darajada farq qiladi.
  • Masofaviy kirish interfeysining aniq identifikatsiyasi, mijozdan qaysi server usullarini chaqirish mumkin va qaysi biri mumkin emas? Masofaviy interfeys usullarining nomlari "Server" prefiksi bilan boshlanadi. Bu kodni o'qiyotganda boshqaruvning serverga o'tkazilishini darhol ko'rish imkonini beradi va kontekstli yordamdan foydalanishni soddalashtiradi. Rasmiy tavsiyalar (ITS) postfikslar bilan nomlash usullarini taklif qilishini unutmang, masalan, ChangeOrderStatusOnServer(). Biroq, takror aytamizki, barcha server usullarini mijozdan chaqirib bo'lmaydi va shuning uchun kompilyatsiya joyidan ko'ra mantiqiy foydalanish muhimroqdir. Shuning uchun, "Server" prefiksi bilan biz faqat mijoz uchun mavjud bo'lgan usullarni belgilaymiz; misol usulini ServerChangeOrderStatus() deb ataymiz.
  • O'qish qobiliyati. Ta'mga ko'ra, modul serverda shakl yaratish protseduralari va masofaviy kirish usullari bilan boshlanganda buyurtmani qabul qilamiz.
  • Saqlash qobiliyati. Yangi kod qo'shish uchun aniq joy bo'lishi kerak. Muhim nuqta shundaki, konfigurator tomonidan avtomatik ravishda yaratilgan usul shablonlari modul oxiriga qo'shiladi. Shakl elementlari uchun hodisa ishlov beruvchilari ko'pincha avtomatik ravishda yaratilganligi sababli, har bir ishlov beruvchini modulning boshqa joyiga sudrab ketmaslik uchun mos keladigan blok oxirgi joyda joylashgan.
Quyida sanab o'tilgan maqsadlarni amalga oshiradigan modulning asosiy tuzilishi keltirilgan.
  • Grafik variant - ijro etilishning asosiy oqimini aniq ko'rsatadi.
  • Matn varianti strukturani yangi shakl moduliga tezda kiritish uchun shablon dizayniga misoldir.

//////////////////////////////////////////////////////////////////////////////// // <(c) Автор=""Sana=""/> // <Описание> // // ////////////////////////////////////////////// ////////////////////////// // MODUL O'ZGARCHILARI ///////////////// // ///////////////////////////////////////////////////////// ////////// // SERVERDA //******* SERVERDAGI HOQIYoLAR ******* &Serverda yaratilganda server protsedurasi (muvaffaqiyatsizlik, standart ishlov berish) / /Ishlab chiqaruvchining mazmunini kiriting Protseduraning oxiri //******* MASOQDA KIRISH INTERFEYSI ******* //********* SERVERDAGI BIZNES MANTIQI ******* ///////// /////////////////////////////////////////////// /////// //////////////////// // MIJOZ VA SERVERNING UMUMIY USULLARI ////////////// /////// ///////////////////////////////////////////////// ///// //////// // MIJOZ HAQIDA //******* BIZNES MANTIQI MIJOZDA ******* //********** JAMOASI * ****** //********* MIJOLAR HOQADASI ******* //////////////////////// ///// ////////////////////////////////////////// // / / ASOSIY DASTUR OPERATORLARI

Tegishli savollar
Xulosa qilib aytganda, biz mijoz-server o'zaro ta'sirini dasturlashda o'ylash uchun foydali bo'lgan bir nechta sohalarni belgilaymiz.
  • Masofaviy kirish interfeysini amalga oshirish imkoniyatlari. Asinxroniya, tafsilotlar darajasi...
  • Keshlash. 1C muvaffaqiyatsiz arxitektura qarorini qabul qildi, keshlashni faqat umumiy modullarni chaqirish usullari darajasida joriy qildi va boshqarish imkoniyatlarini ta'minlamadi (muvofiqlik vaqti, talab bo'yicha qayta o'rnatish).
  • Yashirin server qo'ng'iroqlari. Texnologik xususiyatlar haqida unutmang, mijozdagi ko'plab "zararsiz" operatsiyalar platformani server bilan bog'lanishga majbur qiladi.