Знайте, Intuit, лекция програма за работа с директории, обработка, прости доклади
Сега за кода. Ние сме в допълнение към клиента SozdatElementSpravochnika процедура команда. сървърът ще се нуждаят от процедура или функция. и която се занимава с изграждането на обекта. Обърнете се към обекта за определена директория SpravochnikMenedzher различни начини. Да предположим, че ние знаем предварително как да ни води на работа (например, това - номенклатурна препратка). За повикване на метод на SozdatElement на наръчник. имаме нужда от такава структура:
В този случай, се случва следното. Чрез обект SpravochnikiMenedzher (директории), ние получат достъп до обекта за директорията SpravochnikMenedzher номенклатура и изпълнява неговия метод SozdatElement. Този метод връща обект от тип нас SpravochnikObekt (достъп него чрез променлива NovyyElement).
В този случай, името на директорията на потребителя, се уточнява. ние не го знаем предварително. В този случай, ако името на директорията за по-горе структура ще бъде, преди да получите достъп управителя на директория, написани на един вид променлива, можем да използваме такава структура (в този случай, името на директорията се съхранява в низ променлива ImyaSpravochnika):
Операторът [...]. който се използва в тази конструкция, с точката, той замества структура и здраво посочва името на директорията.
След като имаме променлива от тип SpravochnikObekt. ние можем да конфигурирате необходимите качества на даден елемент от указателя (в нашия случай - името) и пишат елемент. Ето как получения код изглежда така:
Моля, имайте предвид, че ние сме в сървъра процедура поканата на подробностите образуват директно - те са на разположение на сървъра и на клиента, тъй като функцията. в което те се наричат - е функция. декларирана с директивата по подразбиране NaServere. Ако бяхме в подобна ситуация сме се опитали да се възползват от сървъра контекст функция (Директива NaServereBezKonteksta) - вижте контекста на формата (подробностите), ние не можеше. Вместо да се използват стандартни механизми за обмен на данни със сървъра (сървъра и процедурата за повикване, данни на сървъра се предава от клиента за състоянието на формата), ние ще трябва да организират прехвърлянето на данните ръчно чрез параметрите на метода. Сървър-контекст функция ще намали количеството данни, изпратени от клиент-сървър и обратно. Но тя, в същото време, е в състояние да изпълнява същите действия с основата както на функцията. обявена ключовата дума NaServere.
Ето какви са резултатите от този код, фиг. 5.10.
Фиг. 5.10. Създаване на нова директория елемент
функция SozdatElementSpravochnikaNaServere създава нов елемент изпълва му име имущество. след това го пише и връща кода на нов елемент. Кодът се генерира автоматично от системата. Ако се вгледате в EdinitsyIzmereniya водач - има наистина нов елемент ще бъде създаден с посоченото име на контакт.
Ние продължаваме нашия пример програма за работа с директории. Трябва да осъзнаем, Автоматично маркиране на всички елементи (но не и групи) ръчно преместване. Създаване на нов отбор PometitNaUdalenieVseElementySpravochnika. След като създадете процедурата. свързан с тази команда и процедурата за сървър, за извършване на работата с базата данни. Имахме код като този:
Процедурата PometitNaUdalenie () за първи път се възлага променлива SchetchikPomechenyh 0 - да го използвате броим броя на елементите, маркирани за изтриване директория. Както името на директорията, ние използваме вече познатите от предишната процедура ImyaSpravochnika подпори. Дизайн Позоваването [ImyaSpravochnika] ни позволява да получите достъп до вида на обекта SpravochnikMenedzher за дадена директория. Този обект има Изберете метод (). Метод Изберете (), за да се образува ръководство за предмети за подбор определени условия. Ние, в този случай, условията не са определени, т.е. извадката съдържа цялата група елементи и справка - методът връща стойност от тип SpravochnikVyborka. указател SpravochnikVyborka не съдържа елементи от този тип обект може да се разглежда като начин за достъп до елементите, начина им изброяване. Когато се говори за проба обходни елементи е динамичен, данните се четат от частите на база данни, която позволява ефективно използване на този механизъм, дори и за големи директории, тъй като всички елементи са включени в извадката (съответстващи на условията за вземане на проби), не са заредени в паметта.
Vyborka.Sleduyuschy команда (). На първо място, тя връща стойността True (в нашия случай, това води до стартиране на следващата итерация на цикъла) на пробата е избран, ако следващия елемент, на второ място, получава следващата проба елемент. Достъп до този елемент се осъществява чрез същия вид проба променлива SpravochnikVyborka. За директория обект елемент ние използваме метод Vyborka.PoluchitObekt () - връща обект от тип SpravochnikObekt. с които можем да продължим да работим. А именно, ние проверяваме дали намерената т групата, ако не - използват метода на типа обект, за UstanovitPometkuUdaleniya SpravochnikObekt. Този метод се един параметър. което следва на първо място в списъка с параметри, а именно - да се определи премахването на маркиране трябва да се настрои на True (както е в нашия случай) за премахване - в False.
След инсталацията бележи отстраняване SchetchikPomechennyh ние увеличаваме брояча и да преминете към следващата итерация на цикъла. Когато сортирането на проби цикъл е завършен, се появява съобщение, за броя на елементите, маркирани за изтриване в директорията, чието име се съдържа в необходимата ImyaSpravochnika.
Помислете за пример. В дадената директория да намерите елемент с посоченото име (или докладват, че даден елемент с такова име в директорията, не присъства), промяна на главни и малки букви в името, така че се капитализират всички писма, и информира потребителя на кода посочване на стари и нови имена.
Обичайният начин за добавяне на обработка на формуляри на нов екип, който да посочите име директорията и името на желания елемент се използват същите подробности и ImyaSpravochnika NaimenovanieElementa. реорганизира контрол на форма, Фиг. 5.11.