Cum se setează programatic selecția în lista dinamică

Evaluare: 0/5

Astăzi va vorbi despre modul de configurare programatică selecții în liste dinamice. De fapt, acum directorul listă orice formă sau obiect este o listă dinamică. Noile capabilități ne permit brațul lui, fără programare, pentru a rezolva aproape toate sarcinile de bază. Selecțiile simple configurate parametrii de conexiune sunt scrise direct în lista complexă interogare dinamică. Cu toate acestea, uneori este un control mai ușor și mai eficientă a acestui software de afaceri. Despre ea și să vorbească.

De fapt, nu este nimic complicat aici. Spre deosebire de aplicațiile convenționale, care funcționează cu lista de selecție trebuie să fie dinamic ca si cu gama de date de circuit. Pe de o parte, este hemoragic și neevidența de acțiune, pe alte posibilități infinite.

Permiteți-mi să vă reamintesc: în schema de linie în selecție ar putea crea grupuri care combină elemente atât selectarea logică „AND“, „NU“ și „SAU“. Că „sau“ ne oferă noi oportunități, înainte de toate elementele de selecție pe același nivel și au fost combinate logic „ȘI“. După cum se cunoaște din algebra booleană acestor operatori sunt suficiente pentru a realiza orice funcție ORICE. Deci, avem un instrument complet funcțional. Acum, pentru selectarea, nimic nu este imposibil.

Acum, un mic exemplu practic.

Să presupunem că într-un fel a primit utilizatorul curent, iar solicitarea dvs. va fi o combinație de „starea de activitate curentă“ / „Proiectul“ disponibilă pentru acest utilizator. Apoi, trebuie să-l pună totul în selecție.

Făcând acest lucru va crea un formular pe server. Toate condițiile trebuie să fie conectat la un grup de „SAU“, așa că am crea un grup:

// crea un grup cu tipul OR
otborGruppaILI = Spisok.Otbor.Elementy.Dobavit (tip ( "GruppaElementovOtboraKomponovkiDannyh"));
otborGruppaILI.Ispolzovanie = True;
otborGruppaILI.Predstavlenie = „lista de proiecte / combinatii de stare“;
otborGruppaILI.TipGruppy = TipGruppyElementovOtboraKomponovkiDannyh.GruppaIli;
otborGruppaILI.RezhimOtobrazheniya = RezhimOtobrazheniyaElementaNastroykiKomponovkiDannyh.Obychny;

Trebuie să spun, indiferent de ce nu a afectat RezhimOtobrazheniya. De fapt, ar trebui să afecteze disponibilitatea utilizatorului să modifice selecția specificată, dar utilizatorul nu va vedea și nu știa despre asta pentru orice valoare.

Mai departe în bucla itera prin toate combinațiile disponibile de „Project / status“ pentru utilizatorul curent. Combinațiile trec prin „SAU“, dar foarte condițiile unei combinații sunt unite prin „AND“.

k = 1;
In timp ce vyb.Sleduyuschy () buclă
// pentru fiecare combinație de un dosar și să facă
otborGruppaI = otborGruppaILI.Elementy.Dobavit (tip ( "GruppaElementovOtboraKomponovkiDannyh"));
otborGruppaI.Ispolzovanie = True;
otborGruppaI.Predstavlenie = "proiect Amestec / numărul de stare" + a;
otborGruppaI.TipGruppy = TipGruppyElementovOtboraKomponovkiDannyh.GruppaI;
otborGruppaI.RezhimOtobrazheniya = RezhimOtobrazheniyaElementaNastroykiKomponovkiDannyh.Obychny;
otborStatus = otborGruppaI.Elementy.Dobavit (tip ( "ElementOtboraKomponovkiDannyh"));
otborStatus.LevoeZnachenie = New PoleKomponovkiDannyh ( "TekuscheeSostoyanie");
otborStatus.VidSravneniya = VidSravneniyaKomponovkiDannyh.Ravno;
otborStatus.Ispolzovanie = True;
otborStatus.PravoeZnachenie = vyb.IskhodnoeSostoyanie;
otborStatus.RezhimOtobrazheniya = RezhimOtobrazheniyaElementaNastroykiKomponovkiDannyh.Obychny;
otborProekt = otborGruppaI.Elementy.Dobavit (tip ( "ElementOtboraKomponovkiDannyh"));
otborProekt.LevoeZnachenie = New PoleKomponovkiDannyh ( "Proiectul");
otborProekt.VidSravneniya = VidSravneniyaKomponovkiDannyh.Ravno;
otborProekt.Ispolzovanie = True;
otborProekt.PravoeZnachenie = vyb.Proekt;
otborProekt.RezhimOtobrazheniya = RezhimOtobrazheniyaElementaNastroykiKomponovkiDannyh.Obychny;
KonetsTsikla;

În ciuda indisponibilitatea utilizatorului pentru vizualizarea noastre de selecție, eu încă completați câmpurile „prezentare“ și „RezhimOtobrazheniya“. Nu e neapărat doar de exemplu.

Prin artist bucată de cod este același exact.