Cum se obține rândurile selectate prin selecție, cartea de cunoștințe

Cum să obțineți rândurile câmpurilor de tabel selectate prin selectare.


Cuvinte cheie: selecție, câmp tabular, formular drop-down


Așa că trebuia să primesc lista liniilor unui câmp de tabel selectate de utilizator prin selecție, pe care apoi le-au șters. Mi sa cerut să construiesc o interogare echivalentă, dar mi sa părut prea complicată.
Ca urmare, sa născut o soluție simplă. Se bazează pe faptul că trebuie să treacă toate rândurile sursei de date a câmpului de masă și, la rândul său, linia curentă pentru a seta linia curentă a sursei de date. Dacă șirul din selecție va fi setat ca cel curent, altfel nu va fi instalat. Asta e tot. Vedeți codul.

Lucrează pe ideea nu numai pentru registre, ci și pentru alte câmpuri de masă.

Cursul de discuții, în urma căruia am ajuns la un astfel de algoritm aici:
v8: Tuplyu - cum se obține lista selectată în tabel

O altă opțiune, nu a mea, este Query Builder:

În formele controlate, totul este mai simplu, deși în locuri nu este atât de evident.

Există o metodă a tabelului de linie de control. care returnează adevărat pentru un șir care satisface condițiile de selecție specificate în formular. Non-evidentitatea aici este că în parametrii acestei metode este necesar să treci identificatorul șirului, deși SP spune să treacă șirul. Ei bine, există și această metodă pe client, iar prelucrarea liniilor se efectuează ca regulă pe server.

Ideea este următoarea: pe client, vom forma o serie de indici de rând care satisfac selecția specificată și o vom transmite serverului, unde vom forma din nou matricea liniilor. le încărcăm în tabelul valorilor cu care lucrăm.

Toate procedurile sunt localizate în modulul formei controlabile. Table Forms - elemente de recuzită a formei tabelului de valori. pe formular există un tabel cu același nume asociat cu această recuzită


P.S. Aveam nevoie de formulare gestionate în 8.3.6. Poate că va funcționa pentru obișnuit. Acolo, câmpul de tabel are, de asemenea, metoda CheckString și nu aveți nevoie să distribuiți client-server.

Articole similare