Sīkāka informācija par 1. veidlapu 8.3. Pārvaldītās veidlapas informācija (1Cv8). Metodes lietojumprogrammu objektu datu konvertēšanai formas datos

Veidlapas informācija

Veidlapas informācijas kopa apraksta veidlapā parādīto, rediģēto vai saglabāto datu sastāvu. Tajā pašā laikā pašas veidlapas detaļas nenodrošina iespēju attēlot un rediģēt datus. Veidlapas elementi (skatiet šīs nodaļas sadaļu “Veidlapas elementi”), kas saistīti ar veidlapas informāciju, tiek izmantoti attēlošanai un rediģēšanai. Visas veidlapas informācijas kopa tiks saukta par veidlapas datiem.

Svarīgs! Jāatceras, ka atšķirībā no parastajām formām visi dati kontrolēta forma jāapraksta detaļu veidā. Veidlapas moduļu mainīgos nav atļauts izmantot kā datu avotus veidlapas elementiem.

Ir iespējams piešķirt Veidlapas pamatinformācija, t.i., atribūti, kas noteiks formas standarta funkcionalitāti (veidlapas paplašinājums). Jāatceras, ka veidlapai var būt tikai viens galvenais atribūts.

Veidlapas paplašinājums– tie ir ManagedForm objekta papildu rekvizīti, metodes un formas parametri, kas raksturīgi objektam, kas ir formas galvenais elements.

Veidlapas izstrādes procesa laikā varat skaidri iestatīt iespēju skatīt un rediģēt konkrētu veidlapas informāciju lomu izteiksmē, izmantojot rekvizītus Skatīt un rediģēt (sīkāku informāciju skatiet sadaļas "Redaktori" sadaļā "Uz lomu veidlapas iestatījumi". ” nodaļa). Turklāt konkrēta atribūta pieejamību pašā formā var konfigurēt, izmantojot funkcionālās opcijas (sīkāku informāciju par funkcionālajām opcijām var atrast nodaļā “Konfigurācijas interfeisa pārvaldība”).

Veidlapas atribūta īpašums Saglabātie dati ir norāde, ka interaktīvas detaļu maiņas rezultātā tiks mēģināts bloķēt veidlapas datus rediģēšanai, kā arī automātiska uzstādīšana modificētas formas zīme.

Datu veidi pieejami pārvaldītā formā

Pārvaldītā veidlapa atšķiras no parastās arī ar to datu veidiem, ar kuriem tā darbojas. Ja parastā forma darbojas ar lielāko daļu veidu, ko nodrošina 1C: Enterprise (ieskaitot tipus DirectoryObject, DocumentObject utt.), tad pārvaldītajā formā var izdalīt šādas tipu kategorijas:

  • Veidlapā tieši izmantotie veidi ir tie veidi, kas pastāv plānā un Web klienta pusē (piemēram, Number, DirectoryLink.Products, GraphicScheme, TabularDocument);
  • veidi, kas tiks pārveidoti par īpašiem datu tipiem — pārvaldīto veidlapu datu tipi. Šādi veidi tiek parādīti veidlapas detaļu sarakstā iekavās, piemēram (DirectoryObject.Products);
  • dinamiskais saraksts (sīkāku informāciju skatiet šīs nodaļas sadaļā “Dinamiskais saraksts”).

Lietojumprogrammu objektu konvertēšana veidlapas datos

Daži lietojumprogrammu veidi (piemēram, DirectoryObject utt.) neeksistē plānā un tīmekļa klienta pusē (sīkāku informāciju skatiet sadaļā Pārvaldītās lietojumprogrammas koncepcija). Tāpēc, lai attēlotu šādus lietojumprogrammu veidus formā, platforma ir ieviesusi īpašus datu tipus, kas paredzēti darbam pārvaldītajās formās. Šī pārvaldītās lietojumprogrammas funkcija rada nepieciešamību pārveidot lietojumprogrammu objektus datu formā (un otrādi).

Tiek izmantoti šādi datu veidi:

  • Form DataStructure – satur patvaļīga tipa rekvizītu kopu. Rekvizīti var būt citas struktūras, kolekcijas vai struktūras ar kolekcijām. Šis tips ir attēlots, piemēram, formā DirectoryObject.
  • FormDataCollection ir drukātu vērtību saraksts, kas līdzīgs masīvam. Kolekcijas elementam var piekļūt, izmantojot indeksu vai identifikatoru. Dažos gadījumos piekļuve ar ID var nebūt pieejama. Tas ir saistīts ar lietojumprogrammas objekta veidu, ko pārstāv šī kolekcija. Identifikators var būt jebkurš vesels skaitlis. Šis tips ir attēlots, piemēram, formā tabulas sadaļa.
  • Form DataStructureWithCollection ir objekts, kas vienlaikus tiek attēlots kā struktūra un kolekcija. To var uzskatīt par jebkuru no šīm vienībām. Šis tips apzīmē, piemēram, ierakstu kopu formā.
  • Form DataTree – objekts, kas paredzēts hierarhisku datu glabāšanai.

Lietojumprogrammas objektu attēlo viens vai vairāki formas datu elementi. IN vispārējs skats Veidlapas datu hierarhija un sastāvs ir atkarīgs no pārvaldītās formas lietojumprogrammu objektu sarežģītības un savstarpējās savienojamības.

Piemēram, dokuments, kurā ir tabulas daļa, tiks attēlots ar FormDataStructure tipa objektu (pats dokuments), kuram ir pakārtots FormDataCollection tipa objekts (dokumenta tabulas daļa).

Svarīgs! Izstrādājot konfigurāciju, ir svarīgi atcerēties, ka lietojumprogrammu objekti ir pieejami tikai serverī, savukārt veidlapu datu objektus var izmantot gan serverī, gan klientā.

Datu pārsūtīšana starp pārvaldītās formas klienta un servera daļām

Faktiski mēs varam teikt, ka veidlapas dati ir vienots dažādu lietojumprogrammu objektu datu attēlojums, ar kuriem forma darbojas vienmērīgi un kuri atrodas gan serverī, gan klientā. Tas nozīmē, ka veidlapā ir noteikta lietojumprogrammas objektu datu “projicēšana” savu datu tipu veidā un, ja nepieciešams, tiek veikta starp tiem konvertēšana. Taču, ja konfigurācijas izstrādātājs ievieš savu datu apstrādes algoritmu, tad datu konvertēšana (no specializētajiem tipiem uz lietojumprogrammu tipiem un otrādi) viņam jāveic neatkarīgi.

Rediģējot veidlapas detaļas specializētā redaktorā (sīkāku informāciju skatīt nodaļas “Redaktori” sadaļā “Veidlapas detaļas”), iespējams ietekmēt datu pārsūtīšanu starp klientu un serveri, kamēr forma darbojas. Šim nolūkam tiek izmantota informācijas redaktora kolonna. Vienmēr lietojiet. Šī īpašuma ietekme atšķiras trīs veidu atribūtiem:

  • Atribūtiem, kas pakārtoti dinamiskam sarakstam (kolonna dinamiskais saraksts):
    • property enabled – atribūts vienmēr tiek nolasīts no datu bāzes un iekļauts formas datos;
    • rekvizīts ir atspējots - atribūts tiek nolasīts no datu bāzes un iekļauts veidlapas datos tikai tad, kad tas ir redzams Šis brīdis formas elements, kas saistīts ar atribūtu vai tam pakārtoto atribūtu.
  • Kustību kolekcijai pakārtotajiem rekvizītiem:
    • rekvizīts ir iespējots – dokumentu kustības tiek nolasītas no datu bāzes un būs klāt veidlapas datos;
    • rekvizīts ir atspējots - dokumentu kustības netiks nolasītas no datu bāzes un netiks iekļautas veidlapas datos (ja nav formas elementa, kas atsaucas uz dokumentu pārvietošanu).
  • Cita veidlapas informācija:
    • rekvizīts ir iespējots – atribūts būs klāt formas datos neatkarīgi no tā, vai ir vai nav vismaz viens formas elements, kas ir saistīts ar atribūtu vai tā pakārtoto atribūtu;
    • rekvizīts ir atspējots - atribūts formas datos būs tikai tad, ja ar atribūtu vai tā pakārtoto atribūtu ir saistīts formas elements. Atšķirībā no dinamiskā saraksta atribūtiem, ar atribūtu saistītā elementa redzamībai šeit nav nozīmes.

Piezīme. Jāatceras, ka vecāka atribūtam iestatītais rekvizīts ietekmē visus pakārtotos atribūtus. Piemēram, ja rekvizīts Use vienmēr tiek notīrīts dokumenta tabulas daļai, tad sistēma uzskata, ka šis rekvizīts tiek notīrīts arī visām pakārtotajām detaļām (neskatoties uz rekvizīta faktisko stāvokli).

Metodes lietojumprogrammu objektu datu konvertēšanai formas datos

Lai lietojumprogrammu objektus pārvērstu veidlapas datos un atpakaļ, ir globālu metožu kopa:

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

Svarīgs! Metodes, kas darbojas ar lietojumprogrammu objektiem, ir pieejamas tikai servera procedūrās. Vērtību kopēšanas metode starp veidlapas datiem ir pieejama serverī un klientā, jo tai nav nepieciešami lietojumprogrammu objekti kā parametri.

Pārvēršot veidlapas datus lietojumprogrammas objektā, jāņem vērā to saderība.

  • ValueInFormData() – pārvērš lietojumprogrammas tipa objektu formas datos;
  • FormDataInValue() – pārvērš veidlapas datus lietojumprogrammas tipa objektā;
  • CopyFormData() – kopē veidlapas datus, kuriem ir saderīga struktūra. Atgriež True, ja kopēšana bija veiksmīga, vai False, ja objekta struktūra nav saderīga.

Piezīme. Veicot standarta darbības (veidlapas atvēršana, standarta Write komandas izpilde u.c.) formā ar galvenajām detaļām, konvertēšana tiek veikta automātiski.

Sniegsim piemēru, kā izmantot datu transformāciju savos algoritmos.

&OnServerProcedure, kad CreateOnServer (kļūme, standarta apstrāde)

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

Procedūras beigas

&OnClient rakstīšanas procedūra()

WriteOnServer();

Procedūras beigas

&OnServer procedūra WriteOnServer()

ObjectProduct = FormDataValue(Object, Type("DirectoryObject.Products")); ObjectItem.Write();

Procedūras beigas

Objektam ManagedForm serverī ir pieejamas arī metodes:

  • ValueВFormAttribute() – pārvērš lietojumprogrammas tipa objektu norādītajā formas atribūtā.
  • FormAttributeVValue() – pārvērš formas datu atribūtu par lietojumprogrammas tipa objektu.

Šo metožu izmantošana parasti ir ērtāka, jo tajās ir, piemēram, informācija par veidlapas informācijas veidu. Turklāt metode Form AttributesValue() nosaka atbilstību starp formas datiem un objektu, kas tiek izmantots ziņojumu ģenerēšanai. Vairāk par to varat lasīt sadaļā “Pakalpojumu navigācijas iespējas”.

Sniegsim šo metožu izmantošanas piemēru.

&OnServer procedūra RecalculateOnServer()

// Pārvērš atribūtu Object par lietojumprogrammas objektu. Dokuments = Form AttributesValue("Objekts"); // Veic pārrēķinu, izmantojot dokumentu modulī definēto metodi. Document.Recalculate(); // Pārvērš lietojumprogrammas objektu atpakaļ par rekvizītu. ValueВFormAttributes (dokuments, “Objekts”);

Procedūras beigas

Programmatūras interfeiss

FormDataTree

  • FindById
  • GetItems

Apraksts:

Paredzēts, lai modelētu koku pārvaldītās formas datos.

Šo objektu var serializēt uz/no XDTO. XDTO tipam atbilstošs šo objektu ir definēts nosaukumvietā. XDTO tipa nosaukums:

GetItems

Sintakse:

GetItems ()

Atgriešanas vērtība:

Tips: Form DataCollection of Tree Elements.

Apraksts:

Iegūst augstākā līmeņa koku elementu kolekciju.

Pieejamība: klients, serveris, plāns klients, tīmekļa klients.

FindById

Sintakse:

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

Iespējas:

<Идентификатор>(obligāti)

Veids: numurs. Koka elementa identifikators.

Atgriešanas vērtība:

Tips: FormDataTreeElement.

Apraksts:

Iegūst kolekcijas elementu pēc ID.

Pieejamība: klients, serveris, plāns klients, tīmekļa klients.

FormDataTreeItem

Īpašības:

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

  • GetId (GetId)
  • GetParent
  • GetItems
  • Īpašums

Apraksts:

Veidlapas datu koka elements.

FormDataTreeItemCollection

Kolekcijas elementi: DataFormTreeElement

Objektam ir iespējams šķērsot kolekciju, izmantojot operatoru Katram... No... Cikls. Caurskatā tiek atlasīti kolekcijas elementi. Ir iespējams piekļūt kolekcijas elementam, izmantojot [...] operatoru. Elementa indekss tiek nodots kā arguments.

  • Ievietot
  • Pievienot
  • Indekss (IndexOf)
  • Skaitīt
  • Skaidrs
  • gūt
  • Kustēties
  • Dzēst

Apraksts:

Koka elementu kolekcija.

Pieejamība: klients, serveris, plāns klients, tīmekļa klients.

Skatīt arī:

  • FormDataTreeElement, GetElements metode
  • DataFormTree, metode GetItems

Iezīmes darbam ar vērtību koku

Koka atjauninājums

Ir problēma kritieni platformas, atjauninot koku.

Ja kāds mezgls kokā ir izvērsts un izvēlēts pakārtots mezgls, tad koku atjauninot ar funkciju ValueInFormData platforma nokrīt.

Risinājums: pirms atjaunināšanas ir jānotīra koks.

Piemēram:

&Servera procedūrā ClearTree(elements) Katram elementam no elementiem Loop ClearTree(element.GetElements()); EndCycle; elementi.Clear(); Procedūras beigas

&Servera procedūrā Aizpildiet jēdzienu koku() dConcepts = srProperties.Build Concept Tree(OnDate, Meta.CurrentIB()); ClearTree(ConceptTree.GetItems()); ValueInFormData(dConcepts, ConceptTree); Procedūras beigas

&OnClient procedūra OnDateOnChange(Element) Fill ConceptTree(); Procedūras beigas

Lietotāja darbs ar uzziņu grāmatām un dokumentiem 1C sastāv no veidlapas lauku aizpildīšanas.

1C informācija ir direktoriju un dokumentu lauki, kas tiek parādīti veidlapā, lai lietotājs to varētu aizpildīt.

Sīkāk apskatīsim 1C detaļu tēmu.

Kas ir 1C detaļas

Katrs direktorijs un 1C dokuments sastāv no lauku kopas. Šādus laukus sauc par 1C detaļām (1C programmētājam).

Konfiguratorā 1C konfigurācijas kokā atveriet jebkuru direktoriju vai dokumentu, un jūs redzēsit zaru Detaļas. Šis ir direktoriju informācijas (lauku) saraksts.

Paskatieties, kā tās pašas 1C detaļas izskatās 1C direktorija veidlapā.

Katram 1C atribūtam ir īpašības, kas norāda, kāda veida vērtība tiek saglabāta atribūtā (virkne, numurs utt.) un kā lietotājs ar to strādās.

Ar peles labo pogu noklikšķiniet uz jebkura 1C atribūta un noklikšķiniet uz Rekvizīti. Labajā pusē esošajā logā tiks atvērts atlasītā atribūta rekvizītu saraksts.

Galvenās 1C detaļu īpašības:

Standarta 1C detaļas

Kā pamanījāt, direktorija veidlapā ir informācija par 1C, kas nav norādīta konfiguratorā: grupa, nosaukums, BIC.

Direktoriju saraksta veidlapā ir arī 1C informācija, kas nav sarakstā: dzēšanas atzīme.

Tās ir standarta 1C detaļas. Kas tas ir? Ikvienam ir noklusējuma 1C detaļu kopa. Katalogiem tas ir, piemēram, kods un nosaukums. Dokumentiem tas ir datums un numurs.

Standarta 1C informāciju var skatīt šādi:

  • Dodieties uz 1C objekta (direktorijas vai dokumenta) redaktoru, veicot dubultklikšķi uz tā ar peli
  • Atvērtajā redaktorā atlasiet cilni Dati
  • Šeit jūs varat konfigurēt standarta informāciju direktorija kodu un nosaukumu
  • Noklikšķiniet uz pogas 1C standarta informācija, lai skatītu pilnu sarakstu.

Vispārīga informācija par 1C

Sākot ar versiju 1C 8.2.14, 1C ir parādījies jauns 1C objekts — vispārīga 1C informācija. Izmantojot to, varat pievienot rekvizītu (lauku), kas vienlaikus būs daudzos direktorijos un dokumentos.

Vispārējo 1C atribūtu īpašības:

  • Automātiskā lietošana — pievieno vispārīgu 1C informāciju visiem direktorijiem un dokumentiem vienlaikus
  • Sastāvs — ļauj pievienot vispārīgu 1C informāciju tikai nepieciešamajiem direktorijiem un dokumentiem (pēc tam automātiskā izmantošana ir iestatīta uz Nelietot).

Kā pievienot 1C informāciju

Ar peles labo pogu noklikšķiniet uz vajadzīgā direktorija filiāles 1C informācija un atlasiet Pievienot.

Mums ir jāievada atribūta 1C nosaukums, piemēram, “Office Address” un sinonīms “Biroja adrese”. Atstājiet noklusējuma veidu kā Virkne, bet atzīmējiet izvēles rūtiņu Neierobežots garums.

Tādā pašā veidā pievienosim vēl vienu atribūtu 1C, tikai mēs atlasīsim Būla veidu un nosauksim to “Darbs nedēļas nogalēs”.

Kā parādīt informāciju 1C veidlapā (1C biezs klients)

Izvērsīsim tā paša direktorija filiāli Veidlapas. Lai atvērtu formu, atlasiet elementa formu un veiciet dubultklikšķi uz tās ar peli.

Velciet formas malu ar peli un izstiepiet to (pēc izvēles).

Konfiguratora panelī noklikšķiniet uz pogas Datu izvietojums. Varat arī izmantot izvēlni Forma/Datu izvietojums.

Jūs redzat, ka mūsu informācija nav parādīta veidlapā. Pārbaudiet tos. Un arī izvēles rūtiņas Ievietot etiķetes un Novietot automātiski.

Kā parādīt informāciju veidlapā 1C (1C plānais klients)

Izvērsīsim tā paša direktorija filiāli Veidlapas. Izvēlieties elementa formu un veiciet dubultklikšķi uz tā ar peli.

Cilnē Detaļas izvērsiet rindu Objekts. Jūs redzēsit sarakstu ar informāciju, kas iepriekš tika pievienota direktorijam.

Tagad vienkārši velciet vajadzīgo atribūtu no labā loga uz kreiso, un tas parādīsies veidlapā.

Veidlapas 1C informācija

Biezajā klientā veidlapai ir savas detaļas. Tie atrodas cilnē Detaļas.

Šī informācija netiek saglabāta datu bāzē, bet to var izmantot veidlapā laukiem, kas nepieciešami darbam ar veidlapu.

Piemēram, jūs pievienojāt veidlapai atzīmi. Noklikšķinot uz tā, veidlapā kaut kas notiek. Izvēles rūtiņas nozīme jums nav svarīga (jums tas nav jāpieraksta) - to izmanto tikai, lai pārslēgtu veidlapu, strādājot ar to. Šajā gadījumā kā datus neizmantojat direktorija atribūtu, bet gan formas atribūtu.

Periodiskas detaļas 1C

1C versijā 7.7 bija periodiska informācija. To nozīme ir šāda: rekvizītu nozīme dažādos datumos ir atšķirīga. Piemēram, vērtība 1. septembrī ir viena, bet 1. oktobrī – cita. Tie paši rekvizīti.

1C 8 nav periodiskas informācijas. Tas tiek īstenots šādi:

Veidlapas detaļas nodrošina tās saistību ar datiem. Šajā gadījumā vienu (un tikai vienu) no detaļām var noteikt kā galveno; tas var nebūt datu tips, uz kuru mēs zīmējam veidlapu. Bet veidlapas darbība būs atkarīga no galvenā atribūta datu veida. Papildus veidlapas uzvedības maiņai mainās arī veidlapas moduļa konteksts. Līdz ar formas metodēm un īpašībām tajā kļūst pieejamas arī objekta metodes un īpašības, kas ir galvenā atribūta vērtība. Ir svarīgi, lai brīvās formas veidlapām nebūtu pamata detaļu. Šajā gadījumā veidlapas darbību nosaka tikai lietotāja iestatījumi. Apskatīsim jautājumus par pamata detaļām.

1.C eksāmena 10.05. jautājums: Platform Professional. Kam tiek izmantots galvenais formas atribūts?

  1. Definē datu avotu veidlapai kopumā
  2. Definē platformas standarta iespējas darbam ar veidlapu ar galvenajā atribūtā norādītā tipa datiem
  3. Nodrošināt iespēju programmatiski piekļūt objekta informācijai no lokālās veidlapas konteksta
  4. Veidlapas dialoglodziņā nodrošina objekta detaļu vizualizāciju
  5. 2 un 3 ir pareizi
  6. 1 un 2 ir pareizi

Pareizā atbilde ir numurs sestais, skatīt iepriekš.


1.C eksāmena 10.06. jautājums: Platform Professional. Kam nepieciešama veidlapas informācija?
  1. Lai aprakstītu veidlapā parādīto, rediģēto vai saglabāto datu saturu
  2. Lai parādītu un rediģētu datus formā
  3. 1 un 2 ir pareizi

Pareizā atbilde ir trešā – abi.

1.C eksāmena 10.07. jautājums: Platform Professional. Lai piešķirtu pamata atribūtus patvaļīgai kontrolētai formai...

  1. Veidlapas atribūtu rekvizītos ir jāatzīmē izvēles rūtiņa Pamatinformācija
  2. ir jāaizpilda veidlapas rekvizīts “Dati”, izvēloties nepieciešamo formas atribūtu

Pareizā atbilde ir otrā:

1.C eksāmena 10.08. jautājums: Platform Professional. Neatkarīgi no tā, kas ir patvaļīgs regulāra forma piešķirt pamata informāciju...
  1. veidlapa ir jāpadara par galveno, galvenās detaļas tiek noteiktas automātiski
  2. Veidlapas atribūtu rekvizītos ir jāatzīmē izvēles rūtiņa Pamatinformācija
  3. jums jādodas uz izvēlni "Rediģēt", "Pamata informācija" un atlasiet vajadzīgo vērtību
  4. ir jāaizpilda veidlapas rekvizīts “Dati”, izvēloties nepieciešamo formas atribūtu

Ceturtā pareizā atbilde ir:

Galvenās detaļas ir izceltas treknrakstā:

1.C eksāmena 10.09. jautājums: Platform Professional. Ja ir viens galvenās formas atribūts, vai ir iespējams pievienot citu galveno atribūtu?
  1. Tas ir neiespējami
  2. Tas ir iespējams, formas atribūta rekvizītam piešķirot atbilstošu vērtību
  3. Tas ir iespējams tikai programmatiski, piekļūstot objektam "Veidlapa".
  4. Tas ir iespējams, pievienojot citu vērtību atbilstošajam formas rekvizītam

Pareizā atbilde ir pirmā, ir stingri viens galvenais nosacījums, jo saiknei ar objektu jābūt nepārprotamai.

1.C eksāmena 10.113. jautājums: Platform Professional. Kura no attēlā redzamajām veidlapas detaļām ir galvenā?

  1. Valūtu kursu saraksts
  2. DirectoryObject
  3. Direktoriju veidlapās nav pamata informācijas
  4. Direktoriju veidlapās ir visa pamata informācija
Otrā pareizā atbilde ir treknrakstā.