Shembull i opsioneve funksionale 1c. Ndërtimi i sistemeve të informacionit të shpërndarë, kërkimi, detyrat rutinë, opsionet funksionale. Vetitë e parametrave të opsioneve funksionale

Shembull i opsioneve funksionale 1c. Ndërtimi i sistemeve të informacionit të shpërndarë, kërkimi, detyrat rutinë, opsionet funksionale. Vetitë e parametrave të opsioneve funksionale

Me lëshimin e platformës 1C: Enterprise 8.2, një objekt i ri u shfaq në pemën e konfigurimit - "Opsionet funksionale". Përdoret në mënyrë aktive në të gjitha konfigurimet standarde të bazuara në format e menaxhuara dhe shërben për të thjeshtuar procesin e shfaqjes së detajeve dhe objekteve individuale në ndërfaqe. Për shembull, në konfigurimin tuaj ekziston një modul për shkëmbim me shërbime të jashtme në internet. Ky modul përdor një sërë detajesh në dokumente, regjistra dhe komponentë individualë në nënsisteme. Moduli është opsional dhe jo i nevojshëm për çdo kompani. Është logjike që meqenëse jo të gjithë kanë nevojë për një modul, atëherë nuk është gjithmonë e nevojshme të shfaqen të gjithë elementët/fushat që lidhen me të.

Në versionet më të vjetra të platformës, zgjidhja e problemeve të tilla kërkonte shkrimin e kodit shtesë, i cili duhej të thirrej në të gjitha seksionet e varura. Për shembull, nëse na duhej të fshihnim disa detaje të formularit (në varësi të vlerës së cilësimit), atëherë duhet të thërrisnim kodin përkatës kur hapim formularin. Kjo nuk ishte shumë e përshtatshme dhe në shumicën e rasteve zhvilluesit hoqën dorë nga gjëra të tilla.

Është mirë nëse ju duhet të fshehni vetëm fushat në formën e dokumenteve, por mund të kemi edhe formularë regjistrimi me të cilët është i mundur edhe ndërveprimi i përdoruesit. Shkrimi i një funksioni të kontrollit universal të ekranit është mjaft i vështirë dhe do të kërkojë kohë shtesë, e cila nuk është kurrë e mjaftueshme.

Opsionet funksionale janë krijuar për të zgjidhur këtë dhe shumë vështirësi të tjera që lidhen me shfaqjen e elementeve të ndërfaqes/përbërjes së objekteve të disponueshme në ndërfaqen e përdoruesit. Në këtë shënim, unë nuk do të shqyrtoj shembuj të përdorimit të qëllimit kryesor të opsioneve funksionale, por do të tërheq vëmendjen për përdorimin e tyre në një mënyrë jo standarde. Mund të jetë e njohur për shumë zhvillues të avancuar, por unë arrita në këtë metodë krejtësisht rastësisht. Më saktësisht, është frymëzuar nga praktika e programimit në JavaScript.

Rasti nr. 1: një opsion funksional si mbështjellës mbi objekte të tjera

Tipari i parë jo standard i opsioneve funksionale është aftësia për të krijuar mbështjellës. Le të shohim shembullin më të thjeshtë - konstantet. Për shembull, ju shtoni një konstante të re në një konfigurim me një numër të madh rolesh përdoruesi. Në mënyrë që përdoruesit të kenë akses në vlerën e një konstante, ju duhet të vendosni të drejtat e leximit në rolet e duhura. Nëse të drejtat nuk janë caktuar, atëherë përdoruesit nuk do të jenë në gjendje të marrin vlerën e saj. Nëse ka shumë role dhe ato nuk janë trashëguar nga roli bazë, atëherë do t'ju duhet të kaloni kohë duke kontrolluar kutitë e duhura.

Një opsion funksioni mund ta zgjidhë këtë problem në mënyrë më elegante. Ideja është kjo: krijoni një konstante (për shembull, ). Ne nuk caktojmë të drejta për të. Krijo një opsion funksional me të njëjtin emër dhe tregoje atë në pronë "Magazinimi" tregojnë një konstante "Mundësia e ruajtjes së të dhënave". Vendosëm edhe flamurin "Trajtim i privilegjuar pas marrjes".

Kjo është ajo, tani kudo në kodin ku duhet t'i referoheni një konstante ne shkruajmë si kjo:

Meqenëse e kemi vendosur opsionin në modalitetin e privilegjuar, nuk kemi nevojë të specifikojmë ndonjë të drejtë shtesë për konstantën. Natyrisht, nuk ka nevojë të zbatohet kjo teknikë në të gjitha situatat e imagjinueshme dhe të pakonceptueshme. Mos harroni, ndarja e duhur e të drejtave është çelësi i paqes shpirtërore. Përdoreni trukun vetëm në rastet vërtet të nevojshme.

Rasti nr. 2. Niveli shtesë i abstraksionit

Nuk di si ta quaj më saktë këtë metodë, por në mendjen time tingëllon pikërisht kështu. Le të shohim shembullin e mëparshëm. Ne kemi ende të njëjtën "Aftësia për të ruajtur të dhënat" konstante. Ne punojmë me të duke përdorur opsionin funksional me të njëjtin emër si një mbështjellës.

Tani imagjinoni që ne donim të hiqnim qafe konstanten dhe të kalonim në përdorimin e një drejtorie. Një skenar tipik për zgjidhjen e një problemi të tillë (nëse përdorim vetëm një konstante) do të ishte ekzekutimi i një mjeti kërkimi global për të zbuluar aksesin në konstante. Më lejoni t'ju kujtoj se nëse nuk përdorim një opsion funksional si mbështjellës, atëherë duhet ta trajtojmë konstanten si kjo:

Constants.Ability toSaveData.Get();

Ne i gjejmë të gjitha thirrjet dhe i zëvendësojmë me shtegun për në objektin e ri të ruajtjes. Dakord, kjo është mjaft e papërshtatshme. Nëse kemi përdorur rastin e mëparshëm (duke përdorur një opsion funksional si mbështjellës), atëherë për të "lëvizur" duhet vetëm të shkojmë te vetitë e opsionit funksional dhe të ndryshojmë vetinë "Magazinimi". Për shembull, tregoni atje "Drejtoria" ose "Regjistri i informacionit". Nuk kërkohen lojëra me kërkim global. Kodi për të hyrë në vlerën e një konstante përmes një opsioni funksional do të mbetet i njëjtë:

GetFunctionalOption ("Data SavingAbility");

Qëllimi

Opsionet funksionale i lejojnë zhvilluesit të përshkruajë aftësitë e konfigurimit që mund të aktivizohen ose çaktivizohen shpejt në fazën e zbatimit dhe/ose gjatë funksionimit të sistemit. Për shembull, aftësia për të punuar me vetitë shtesë të produktit mund të ndahet në një opsion të veçantë funksional. Më pas, nëse e çaktivizoni këtë veçori, të gjitha veçoritë e lidhura (me vetitë shtesë të produktit) do të "zhduken" në ndërfaqen e konfigurimit.

Sistemi është në gjendje të marrë automatikisht parasysh gjendjen e cilësimeve të bëra - të fshehë veçoritë me aftësi të kufizuara, duke e bërë ndërfaqen e aplikacionit më të qartë dhe më të kuptueshëm për përdoruesit.

Gjatë zhvillimit, lindin situata kur vlera e një opsioni funksional duhet të varet nga disa parametra, për shembull, jo të gjitha organizatat mbajnë kontabilitetin e monedhës. Për të zbatuar një varësi të tillë, përdorni parametrat e opsioneve funksionale - një objekt që parametrizon opsionet funksionale. Çfarë ndikojnë opsionet funksionale?

Opsionet funksionale mund të kenë një ndikim:

  • në ndërfaqen e përdoruesit – kur çaktivizoni ndonjë opsion funksional, sistemi fsheh të gjithë elementët që lidhen me të në ndërfaqen e përdoruesit. Elementët e mëposhtëm të ndërfaqes preken:
    • ndërfaqja globale e komandës;
    • forma;
    • raportet e zbatuara duke përdorur një sistem të përbërjes së të dhënave.
  • algoritme të shkruara në një gjuhë të integruar - është e mundur që në mënyrë programore të merren (dhe të vendosen) vlerat e opsioneve funksionale dhe t'i përdorin ato në kushte të ndryshme, për shembull, për të zvogëluar sasinë e llogaritjeve.

Ndërfaqja globale e komandës

Efekti i opsioneve funksionale në ndërfaqen e komandës globale është se sistemi fsheh komandat e të gjitha objekteve që lidhen me opsionet e padisponueshme. Për shembull, nëse vlera e opsionit funksional Blerja është False, atëherë do të fshihen komandat për hapjen e seksionit Blerje, krijimin e dokumentit të marrjes së mallit, hapjen e listës së pranimit të mallrave etj.

Nga ana tjetër, opsioni i blerjes mund të marrë parasysh vlerën e një parametri opsioni funksional, për shembull, Organizata. Duke ndryshuar vlerën e këtij parametri duke përdorur metoda të integruara gjuhësore, mund të ndryshoni gjendjen e opsionit funksional, dhe rrjedhimisht dukshmërinë e elementit të ndërfaqes.

Forma

Në një formë të menaxhuar, opsionet funksionale mund të ndikojnë në atributet e formës, komandat dhe (si rezultat) në elementët e tyre të formës së lidhur.

Dukshmëria e fushave dhe tabelave të formularit të menaxhuar varet nga dukshmëria e detajeve të formularit, dhe dukshmëria e butonave varet nga dukshmëria e komandave.

Sistemi i përbërjes së të dhënave

Sistemi i përbërjes së të dhënave përdoret kryesisht për gjenerimin e raporteve. Opsionet funksionale ndikojnë në përbërjen e të dhënave që shfaqen në raport dhe përbërjen e cilësimeve të raportit në dispozicion të përdoruesit. Për shembull, nëse opsioni funksional i Kontabilitetit Valutor është i çaktivizuar, atëherë raporti që shfaq regjistrin e dokumenteve të Pranimit të Mallrave nuk do të ketë kolonat Monedha dhe Shuma e monedhës dhe cilësimet nuk do të kenë aftësinë për të zgjedhur, grupuar, renditur, etj. fushën e monedhës.

Për më shumë informacion rreth ndikimit të opsioneve funksionale në disponueshmërinë e fushave në një raport, shihni seksionin "Opsionet funksionale dhe leja për të parë fushat në një raport" të kapitullit "Raportet e menaxhuara".

Skema e përgjithshme e punës

Mekanizmi i opsioneve funksionale përfshin dy lloje të objekteve të meta të dhënave: Opsioni Funksional dhe Parametri i Opsioneve Funksionale.

Një opsion funksional është një objekt meta të dhënash që ndikon drejtpërdrejt në përbërjen e ndërfaqes së aplikacionit. Duke përdorur objekte të këtij lloji, mund të fshehni elementë që lidhen me funksionalitetin e padisponueshëm. Për shembull, opsioni i kontabilitetit të monedhës mund të heqë drejtorinë e monedhës, fushën e monedhës nga dokumentet dhe kolonën e shumës së monedhës nga raportet. Burimi i vlerës së një opsioni funksional është objekti i meta të dhënave i zgjedhur si veti Storage, për shembull kjo mund të jetë një konstante.

Nëse vlera e një opsioni funksional ruhet në një atribut të drejtorisë ose në një burim të regjistrit të informacionit, kërkohet informacion shtesë që tregon saktësisht se si të zgjidhni vlerën e opsionit. Për këtë qëllim, ofrohet një objekt i veçantë i meta të dhënave - Parametri i opsioneve funksionale.

Mund të themi se parametrat e opsioneve funksionale janë boshtet koordinative të hapësirës së vlerës së opsioneve funksionale. Për më tepër, një parametër i një opsioni funksional mund të përcaktojë vlerën e boshtit koordinativ "të tij" në të njëjtën kohë për shumë opsione funksionale.

Le të shohim një shembull: le të themi se kontabiliteti sasior varet nga njësia brenda organizatës. Në bazën tonë të të dhënave të informacionit ju mund të mbani shënime në emër të organizatave të ndryshme.

Për të ruajtur vlerat e opsioneve funksionale, ne do të krijojmë një regjistër informacioni, ku dimensionet (akset e koordinatave) do të jenë:

  • Organizimi (i llojit të duhur);
  • Ndarja (e llojit të përshtatshëm).

Burimi i regjistrit të informacionit do të jetë vlera e opsionit funksional të kontabilitetit sasior.

Pastaj struktura e përgjithshme e konfigurimit do të duket si kjo:

  • Regjistri i informacionit Kontabiliteti sasior:
    • Organizimi i dimensionit,
    • Divizioni i dimensioneve,
    • Burim sasior i kontabilitetit të tipit Boolean.
  • Parametri i opsioneve funksionale Organizimi. Vetia Përdorimi tregon dimensionin Organizimi i regjistrit të informacionit Kontabiliteti sasior.
  • Parametri i opsioneve funksionale Departamenti. Vetia Përdorimi tregon dimensionin e ndarjes së regjistrit të informacionit të kontabilitetit sasior.
  • Opsioni funksional Kontabiliteti Sasior, vetia Storage, tregon burimin e Kontabilitetit Sasior të regjistrit të informacionit të Kontabilitetit Sasior.

Si rezultat, për të përcaktuar nevojën për të mbajtur kontabilitetin sasior, duhet të tregojmë në çdo rast specifik vlerat e parametrave të opsioneve funksionale (Organizimi dhe Divizioni) dhe të marrim vlerën e opsionit funksional.

Ndërveprimi me objekte të tjera

Opsionet funksionale mund t'u caktohen objekteve të konfigurimit të mëposhtëm:

  • Nënsistemet,
  • Komandat e përgjithshme
  • Konstante,
  • Kriteret e përzgjedhjes,
  • Drejtoria,
  • Dokument,
  • Revistë,
  • Plani kontabël,
  • Plani i llojeve të karakteristikave,
  • Plani i llojeve të llogaritjes,
  • Procesi i biznesit,
  • Detyra,
  • Planet e shkëmbimit,
  • Raportoni,
  • Mjekimi,
  • Regjistri i akumulimit,
  • Regjistri i informacionit
  • Regjistri i kontabilitetit,
  • Regjistri i llogaritjes,
  • Ekipi,
  • Detajet e objektit të meta të dhënave,
  • pjesa tabelare,
  • Detajet e pjesës tabelare,
  • Shenja e kontabilitetit
  • Atributi i kontabilitetit nënkonto,
  • Detajet e adresimit
  • Regjistro matje,
  • Regjistro burimin.

Opsionet funksionale mund të ndikojnë gjithashtu në dukshmërinë e elementeve të formës.

Krijim

Krijimi i një opsioni funksioni

Për të krijuar një opsion funksional, duhet të krijoni një objekt konfigurimi Opsioni Funksional. Kjo mund të bëhet në modalitetin Konfigurator në mënyrën e zakonshme, domethënë, në dritaren e konfigurimit, zgjidhni General, pastaj Opsionet funksionale dhe shtoni një objekt të ri.

Kjo do të krijojë një objekt të konfigurimit të opsionit funksional që mund të përdoret për të caktuar opsione funksionale objekteve të tjera të meta të dhënave.

Përveç emrit, objekti ka një pronë të kërkuar - Magazinim. Në redaktues, ju mund të zgjidhni një nga objektet për të, i cili do të jetë burimi i vlerës së opsionit. Lista e objekteve në dispozicion përfshin:

  • konstante,
  • detajet e drejtorisë,
  • burimet e regjistrit të informacionit.

Nuk ka asnjë kufizim në llojin e burimit të vlerës së opsionit, por vetëm ato opsione funksionale që ruajnë vlerat e tyre në atributet e tipit Boolean janë të përshtatshme për menaxhimin e ndërfaqes. Vlerat e opsioneve funksionale me lloje të tjera janë të disponueshme vetëm për analizë në gjuhën e integruar.

Krijimi i një parametri të opsioneve funksionale

Për të krijuar një Parametër të Opsionit Funksional, duhet të krijoni një objekt konfigurimi me të njëjtin emër. Kjo mund të bëhet në degën e Përgjithshme, artikulli i cilësimeve të opsioneve funksionale.

Përveç emrit, parametri ka një veti të kërkuar të përdorimit. Ai specifikon një grup objektesh, vlerat e të cilave do të përcaktojnë se si duhet zgjedhur vlera e një opsioni funksional. Lista e objekteve të disponueshme përfshin drejtoritë dhe dimensionet e regjistrit të informacionit. Për çdo parametër të opsioneve funksionale në këtë listë, mund të zgjidhni një direktori (nga e gjithë lista e drejtorive) dhe një dimension të çdo regjistri informacioni.

Përdorimi

Caktimi i meta të dhënave për objektet

Një objekt metadata (për shembull, një direktori) mund t'i caktohet një ose më shumë opsioneve funksionale. Për ta bërë këtë, përdorni vetinë e opsioneve funksionale, e cila përmban lidhje me opsionet funksionale të krijuara në konfigurim. Lista e opsioneve të disponueshme është e kufizuar vetëm në ato opsione për të cilat vetisë Storage i është caktuar një objekt, lloji i vlerës së të cilit është Boolean.

Detyrë për të formuar detaje dhe komanda

Objektet që i përkasin formës (Detajet dhe Komandat) mund të përdoren gjithashtu në mekanizmin e opsioneve funksionale.

Kjo mund të bëhet në redaktuesin e formularit duke vendosur vetinë e opsioneve funksionale për objektin e kërkuar.

Gjendja e opsioneve funksionale do të ndikojë në shfaqjen e objekteve të formularit në të njëjtën mënyrë si me objektet e meta të dhënave. Për shembull, në rastin e një komande që çaktivizohet duke përdorur një opsion funksioni, të gjithë butonat e lidhur do të hiqen.

Nëse asnjë opsion funksional nuk i caktohet një atributi ose komande të formës, atëherë atributi i formës ose komanda konsiderohet gjithmonë i dukshëm. Përndryshe, një atribut i formës ose komanda konsiderohet i dukshëm nëse të paktën një nga opsionet funksionale të caktuara për të është i aktivizuar.

Përdorni në një mekanizëm të kufizimit të aksesit të të dhënave

Sipas mekanizmit të kufizimit të aksesit të të dhënave, Opsionet Funksionale mund të përdoren në të njëjtën mënyrë si Opsionet e Sesionit. Lejohet të përdoren vetëm opsione të pavarura nga parametrat, domethënë ato që janë të lidhura me konstante.

Përcaktimi i vlerës së një opsioni funksional

Vlera e opsionit funksional përcaktohet nga objekti që është specifikuar në vetinë Storage. Në rastin e një konstante, përdoret vlera e saj. Për një opsion të lidhur me një atribut të drejtorisë ose një burim të regjistrit të informacionit, vlerat e ruajtura në këto objekte. Për të gjetur një objekt specifik që ruan vlerën e një opsioni funksional, nevojitet informacion shtesë - një grup vlerash për parametrat e opsioneve funksionale.

Nëse një opsion ruhet në një atribut direktoriumi, parametri duhet të përmbajë një lidhje me një element të caktuar drejtorie. Nëse opsioni ruhet në një burim të regjistrit të detajuar, duhet të specifikohen vlerat e të gjitha dimensioneve të regjistrit. Në këtë rast, çdo matje duhet të karakterizohet nga parametri i vet.

Metodat e integruara të gjuhës ju lejojnë të merrni vlerën e një opsioni, si në varësi të parametrave të kaluar ashtu edhe për parametrat e vendosur për ndërfaqen e komandës ose një formë specifike (për më shumë detaje, shihni seksionin "Puna me opsionet funksionale në në gjuhë” të këtij kreu).

Nëse një opsion funksional është i lidhur me një burim periodik të regjistrit të informacionit, atëherë sistemi përdor një pjesë të këtij të fundit për të marrë vlerën e opsionit. Nëse dëshironi të merrni vlerën e opsionit për ndonjë datë tjetër, duhet të specifikoni një vlerë për parametrin e opsioneve funksionale Periudha (Periudha), e cila ka një lloj Data, e cila do të përdoret si datë për marrjen e pjesës. Ky parametër nuk ka nevojë të krijohet në meta të dhëna. Ofrohet automatikisht nga sistemi.

Menaxhimi i vlerave të parametrave të opsioneve funksionale

Vlerat e parametrave vendosen duke përdorur metoda të integruara gjuhësore. Në këtë rast, është e mundur të kufizohet shtrirja e vlerave të parametrave. Parametrat mund të vendosen në të gjithë ndërfaqen e komandës dhe brenda një shembulli të formës specifike.

Puna me opsionet funksionale në gjuhën e integruar

Metodat për të punuar me opsionet funksionale mund të ndahen në dy pjesë:

  • metodat për marrjen e vlerës së opsionit,
  • metodat e punës me parametrat e opsioneve funksionale.

Puna me vlerat e opsioneve funksionale

Metodat e kontekstit global GetFunctionalOption() dhe GetFunctionalInterfaceOption() kthejnë vlerën e opsionit funksional. Dallimi midis tyre është se metoda e parë ju lejon të specifikoni një grup parametrash për opsionet funksionale, dhe metoda e dytë kthen vlerën e një opsioni funksional bazuar në parametrat e specifikuar për ndërfaqen e komandës.

Një formë e menaxhuar ka metodën e vet që kthen vlerën e opsionit për parametrat e specifikuar brenda formularit - GetFormFunctionalOption().

Puna me parametrat e opsioneve funksionale

Metodat për të punuar me parametrat e opsioneve funksionale ju lejojnë të merrni dhe vendosni vlerat e parametrave të opsioneve funksionale për një ndërfaqe komandimi ose një formë specifike. Për të vendosur vlerat e parametrave të opsionit funksional, duhet të telefononi funksionin përkatës (SetInterfaceFunctionalOptionParameters() ose SetFormFunctionalOptionParameters()), duke e kaluar atë si parametër një strukturë, çelësi i së cilës korrespondon me emrin e një prej parametrave të opsionit funksional, dhe vlera e të cilit i përgjigjet vlerës së parametrit. Thirrja e metodave të mësipërme do të përditësojë automatikisht pjesën përkatëse të ndërfaqes.

Parametrat nuk duhet të specifikohen të gjitha menjëherë, ju mund të ndryshoni vlerën e një parametri specifik ose grup parametrash në mënyrë selektive. Por është vendosja në grup e vlerave me një thirrje që është më efektive.

Për të marrë vlerat e parametrave, duhet të thërrisni funksionin përkatës (GetInterfaceFunctionalOptionParameters() ose GetFormFunctionalOptionParameters()), i cili do t'i kthejë parametrat e vendosur në formën e një strukture, ku emri i parametrit do të jetë çelësi.

Mekanizmi i opsioneve funksionaleështë një nga mjetet e zhvillimit. Kjo ju lejon të përcaktoni në konfigurim funksionalitetin që mund ose nuk mund të përdoret gjatë zbatimit, në varësi të nevojave të një organizate të caktuar.

Funksionimi i mekanizmit bazohet në dy objekte të konfigurimit:

  • Opsioni funksional
    Objektet e konfigurimit dhe detajet e tyre mund të shoqërohen me opsionet funksionale të shtuara në një zgjidhje aplikacioni. Për shembull, me opsionin funksional Kontabiliteti i magazinës ju mund të lidhni rekuizitat Stoku dokument Pranimi i mallit. Pastaj, nëse e aktivizoni këtë opsion funksional në modalitetin 1C: Enterprise, fusha Stoku do të shfaqet në të gjitha format e dokumenteve. Nëse e fikni - fushë Stoku nuk do të shfaqet. Lexo më shumë...
  • Parametri i opsionit funksional
    Opsionet funksionale mund të përdoren me parametra. Për shembull, në mënyrë që pamja e një forme specifike të mund të varet nga vlera e parametrit të zgjedhur në formular. Për shembull, nga parametri i opsionit të funksionit Kontabiliteti i monedhës Ndoshta Organizimi. Më pas, varësisht se cila organizatë është përzgjedhur në formular, fusha Monedha e shlyerjeve të ndërsjella do të fshihet ose shfaqet. Lexo më shumë...

Objekti 1c "Opsionet funksionale" - kanë për qëllim të nxjerrin në pah funksionalitetin në një zgjidhje aplikacioni që mund të ndizet (fiket) gjatë zbatimit pa ndryshuar vetë (së bashku me Nënsistemet ato formojnë ndërfaqen e klientit të hollë 1C). Ato janë pjesë e mekanizmit të opsioneve funksionale.

Mekanizmi i opsioneve funksionale përfshin dy objekte të meta të dhënave:

  1. Opsioni funksional;
  2. Parametrat e opsioneve funksionale.

Më shumë detaje

Opsioni funksional përfaqëson një objekt metadata që mund të ndikojë drejtpërdrejt në përbërjen e ndërfaqes së aplikacionit (nëse opsioni funksional e ruan vlerën e tij në një atribut Boolean). Duke përdorur objekte të këtij lloji, mund të fshehni elementë që lidhen me funksionalitetin e padisponueshëm. Për shembull, opsioni i kontabilitetit të monedhës mund të fshehë Monedhat, monedhën nga fusha dhe kolonën e shumës së monedhës nga raportet.

Burimi i vlerës së një opsioni funksional është objekti i meta të dhënave i zgjedhur si veti Storage, për shembull mund të jetë .

Nëse vlera e një opsioni funksional ruhet në një atribut ose burim drejtorie, kërkohet informacion shtesë që tregon saktësisht se si të zgjidhni vlerën e opsionit. Për këtë qëllim, ofrohet një objekt i veçantë i meta të dhënave - Parametrat e opsioneve funksionale.

Mund të themi se parametrat e opsioneve funksionale janë boshtet koordinative të hapësirës së vlerës së opsioneve funksionale. Për më tepër, një parametër i opsioneve funksionale mund të përcaktojë vlerën e boshtit të koordinatave "të tij" në të njëjtën kohë për shumë opsione funksionale.

[kolaps]

Opsionet funksionale mund të kenë një ndikim:

  1. në ndërfaqen e përdoruesit:
    • globale;
    • detaje (duke përfshirë kolonat e detajeve të formularit si p.sh Tabela e vlerave ose ValueTree);
    • komandat e formës;
  2. mbi raportet e zbatuara duke përdorur një sistem të përbërjes së të dhënave;
  3. për algoritmet e shkruara në një gjuhë të integruar - është e mundur të merren vlerat e opsioneve funksionale nga gjuha e integruar dhe t'i përdorni ato në kushte të ndryshme, për shembull, për të zvogëluar sasinë e llogaritjeve (shih, për shembull, ).

KUJDES! Nëse aplikacioni i klientit punon me versionin e skedarit të infobazës nëpërmjet serverit në internet, atëherë ndryshimi i opsionit funksional do të ndryshojë ndërfaqen e përdoruesit vetëm pas rinisjes së serverit në internet (rinisja e aplikacionit të klientit nuk do të ndryshojë ndërfaqen e përdoruesit).

Vetitë e opsioneve funksionale 1C

  • Storage është një fushë në të cilën ju duhet të zgjidhni një objekt të tipit Boolean. Në mënyrë tipike, përdoren konstante.
  • kur merrni - flamuri është përgjegjës për aftësinë për të marrë vlerën e një opsioni funksional në modalitetin e privilegjuar.
  • Përbërja - një listë e objekteve dhe detajeve të objektit, dukshmëria e të cilave ndizet/fiket kur një opsion funksional ndizet/fiket (do të kontrollohet duke përdorur një formë të menaxhuar).

Për shembull, në varësi të kushteve të një zbatimi të veçantë, është e mundur të çaktivizoni kontabilitetin e mallrave sipas magazinës në mënyrë që kur regjistroni dokumente për marrjen e mallrave, fusha Magazina të mos shfaqet në formularin e dokumentit.

Karakteristikat e përdorimit të opsioneve funksionale 1C:

  1. Opsionet funksionale mund të kenë vlera të çdo lloji (jo domosdoshmërisht Boolean).
  2. Kur shtoni një konstante të re për të përdorur një opsion funksioni, sigurohuni që ta përfshini atë në nënsistemin e duhur dhe t'i caktoni atij leje.
  3. Puna me opsionet funksionale është e disponueshme nga gjuha e integruar, falë së cilës zhvilluesi mund të krijojë algoritmet e tij për vlerat e opsioneve funksionale.
  4. Komanda e ndërfaqes së komandës do të përjashtohet nga ndërfaqja e komandës nëse opsioni funksional është i çaktivizuar:
    • një atribut që është një parametër komandues;
    • lloji i parametrit të komandës (nëse lloji i parametrit të komandës është i përbërë, atëherë komanda bëhet e padisponueshme kur të gjitha llojet e parametrave janë të çaktivizuar).

KUJDES! Opsionet funksionale dhe parametrat e tyre nuk ndikojnë në përbërjen e bazës së të dhënave: të gjitha tabelat dhe fushat janë të pranishme në bazën e të dhënave, pavarësisht nga gjendja e opsioneve funksionale.

Ndikimi i opsioneve funksionale në detajet dhe komandat e formularit:

  1. lloji i formës së menaxhuar<Вид>Nje objekt ( Objekti i Drejtorisë, DocumentObject, etj.) do të çaktivizohen nëse objekti përkatës është i çaktivizuar nga opsioni funksional. Analizohen vetëm ato opsione funksionale që nuk kanë parametra.
  2. Atributet bazë të një lloji të formës së menaxhuar Lista Dinamike do të çaktivizohet nëse opsioni funksional çaktivizon objektin e konfigurimit që është specifikuar si tabela kryesore e listës dinamike. Analizohen vetëm ato opsione funksionale që nuk kanë parametra.
  3. Atributi i formës së një lloji referencë çaktivizohet nëse objekti i konfigurimit që formon këtë lloj çaktivizohet nga një opsion funksional. Atributi i formës së një lloji të përbërë çaktivizohet nëse opsionet funksionale çaktivizojnë të gjitha llojet e përbërësve.
  4. Një tabelë formulari do të çaktivizohet nëse shfaq të dhënat e atributeve të formës që çaktivizohen nga një opsion funksional.
  5. Nuk ka lloje në dialogun e përzgjedhjes së tipit (për shembull, për fushat hyrëse të lidhura me atributet e një lloji kompleks) nëse objektet e konfigurimit që formojnë këto lloje janë çaktivizuar nga një opsion funksional. Informacioni rreth llojeve të çaktivizuara nga opsionet funksionale ruhet në memorien specifike në anën e klientit dhe pastrohet pas 20 minutash ose gjatë një thirrjeje metodë UpdateInterface().

KUJDES! Ndryshe nga ndërfaqja e komandës, vlerat e parametrave të opsioneve funksionale vendosen vetëm për një shembull specifik të formularit.

Krijimi i një parametri të opsioneve funksionale

Një parametër i opsionit funksional krijohet duke përdorur objektin e konfigurimit 1C "Parametrat e opsioneve funksionale".

[kolaps]

Kjo mund të bëhet në dritaren e konfigurimit duke shtuar një objekt të ri.

Karakteristikat e parametrave të opsioneve funksionale:

  • Përdorimi - konfiguron një grup objektesh, vlerat e të cilave do të përcaktojnë se si duhet zgjedhur vlera e një opsioni funksional. Lista e objekteve të disponueshme përfshin drejtoritë dhe dimensionet e regjistrit të informacionit. Për çdo parametër të opsioneve funksionale në këtë listë, mund të zgjidhni një direktori (nga e gjithë lista e drejtorive) dhe një dimension të çdo regjistri informacioni.

KUJDES! Nuk mund të përdorni të njëjtin objekt të meta të dhënave në parametra të shumëfishtë opsionesh funksionale.

Opsionet funksionale– kjo është një nga veçoritë e reja të platformës 1C:Enterprise 8.2. Qëllimi i përdorimit të tyre është se ato ju lejojnë të personalizoni ndërfaqen e përdoruesit në përputhje me cilësimet e opsioneve funksionale dhe të vendosni dukshmërinë e detajeve në forma. Për më tepër, zhvilluesi ka mundësinë të zbatojë kodin e programit, ekzekutimi i të cilit varet nga gjendja e opsionit funksional.

Le të krijojmë një opsion funksional që ju lejon të aktivizoni ose çaktivizoni llogaritjet e listës së pagave në konfigurim. Me ndihmën e tij, ne mund të fshehim shpejt ato pjesë të ndërfaqes që kanë të bëjnë me zgjidhjen e problemeve të llogaritjes. Vetë një opsion funksioni nuk ruan asnjë vlerë që e lejon atë të aktivizohet ose çaktivizohet. Në mënyrë tipike, një konstante përdoret për të ruajtur gjendjen e një opsioni funksional, megjithëse mund të lidhet gjithashtu me një objekt tjetër, për shembull, me një atribut të një objekti.

Le të krijojmë një konstante të re dhe ta quajmë atë Kontabiliteti i pagave, lloji - Boolean. Le të përfshijmë konstanten në nënsistem Administrata dhe në formë konstante që të mund ta modifikojmë. Përveç kësaj, në formën e konstantave, ne do të vendosim mbajtësin AfterWrite si më poshtë:

&Në procedurën e klientit AfterRecord(RecordParameters) UpdateInterface(); Përfundimi i procedurës

Kuptimi i përdorimit të komandës UpdateInterface()është të përditësoni dhe rivizatoni ndërfaqen pasi të hyjë në fuqi ndryshimi i konstantës së lidhur me opsionin funksional. Përndryshe, do të duhet të rinisni konfigurimin që ndryshimet të hyjnë në fuqi.

Le të krijojmë një opsion të ri funksional dhe ta quajmë atë Kontabiliteti i pagave, në faqerojtësin bazë, në parametrin Magazinimi Le të tregojmë konstantën e sapo krijuar, Fig. 7.23. Le të përfshijmë një opsion funksional në nënsistem Administrata.


Oriz.

7.23. Tani le të shkojmë te skeda e dritares së cilësimeve të opsioneve funksionale Kompleksi


dhe zgjidhni gjithçka (Fig. 7.24) që lidhet me llogaritjen e listës së pagave. Nëse ndonjë objekt, për shembull, drejtoritë, i përkasin pjesëve të ndryshme të konfigurimit, ne nuk do t'i shënojmë ato, përndryshe, kur opsioni funksional të fiket, ato do të "zhduken" nga ndërfaqja.

Oriz. 7.24. Zgjedhja e nënsistemit 7.24..

Përgatitja e listës së pagave Kontabiliteti i pagave.

në këtë rast nuk çon në përzgjedhjen automatike të të gjitha objekteve të përfshira në nënsistem. Kur zgjedhim, nënkuptojmë vetëm fshehjen ose shfaqjen e një seksioni të ndërfaqes së komandës Duke ekzekutuar sistemin në modalitetin e përdoruesit, ne mund të aktivizojmë ose çaktivizojmë dukshmërinë e objekteve që lidhen me nënsistemin e pagave të konfigurimit tonë, thjesht duke vendosur ose ç'kyçur flamurin e konstantës Më i vështirë

rast përdorimi opsionet funksionale konsistojnë në vendosjen e dukshmërisë së elementeve individuale të formës nëse vlera e opsionit funksional ruhet në atributin e një objekti. Le të bëjmë ndryshime në konfigurim, në veçanti, në drejtori Individët shtoni një atribut të tipit logjik

Ka eksperience ne sherbimin e personelit