Skip to main content

Hľadanie hodnôt v DataTable

Autor: 17. mája 2021Výroba a logistika

V tipe si predstavíme metódu Find. Je to veľmi užitočná metóda, a v našom v tíme si nevieme predstaviť, že by sme pracovali bez nej. Metóda hľadá hodnotu v tabuľke, musíme nastaviť počiatočné súradnice odkiaľ a pokiaľ má hľadať (rozmedzie), a to pomocou metódy SetCursor. Ak by sme nenastavili súradnice pomocou SetCursor, tak by nám metóda find hľadala hodnotu v tabuľke vždy od posledného hľadania, čiže by sa nám mohlo stať, že nám bude vyhľadávať nie od začiatku tabuľky ale možno niekde od stredu a podobne. Lepšie bude ak si to ukážeme na príklade:

Pomocou metódy find ideme hľadať string hodnotu „D“ v tabuľke DataTable. Keď tú hodnotu nájdeme, tak zapíšeme hodnotu, ktorá je v rovnakom riadku ale v druhom stĺpci, čiže hodnotu 100 do globálnej premennej Vyrobne_Mnozstvo. Vieme, že našu hodnotu budeme hľadať v prvom stĺpci, a že ju chceme hľadať od prvého riadku. Metóda find má samozrejme väčší význam ak potrebujeme nájsť konkrétnu hodnotu v tabuľke, ktorá ma stovky alebo tisícky riadkov, prípadne aj veľa stĺpcov, samozrejme hodnoty vieme hľadať aj vo viacerých stĺpcoch.

Obsah metódy find:

Význam jednotlivých časti kódu:

datatable.setcursor(1,1) – nastavuje počiatočné súradnice hľadania (1. riadok, 1. stĺpec)

datatable.find({1,1}..{1,*}, nazov_vyrobku) – nájdi hodnotu v danom rozsahu

rozsah hľadania od {1,1} – od prvého stĺpca a prvého riadku

rozsah hľadania do {1,*}, – po prvý stĺpec a X riadkov – všetky riadky stĺpca

nazov_vyrobku – hľadaný string

.cursorY – si nesie hodnotu, v ktorom riadku tabuľky bola nájdená hodnota (číslo riadku)

Rovnako vieme použiť .cursorX – znamená, v ktorom stĺpci bola nájdená hodnota

Výsledok:

Hodnotu „D“ nájde v 6. riadku 1. stĺpca.