Új hozzászólás Aktív témák

  • Homer

    tag

    válasz martonx #1749 üzenetére

    Tulajdonképpen egy "egyszerű" szerszámnyilvántartó progit szeretnék csinálni. A különböző féle szerszámokat egy táblában tartanám nyilván, a jellemzőiket egy másikban. A progival lehetne új szerszámot felvenni, átkönyvelni két tárhely közt, életutat figyelni (azaz mikor lett kikönyvelve és mikor kaptuk vissza). A "gond" az hogy a szerszámok közt van olyan amik egyformák, de meg kell különböztetni őket egymástól. Ezeket a rajzszámuk és egy egyedi azonosító alapján lehet egyértelműen meghatározni, de értelem szerűen a jellemzőik egy másik táblában ugyan azok. Remélem érthető vagyok.
    Nah, és itt jön az amit kérdeztem. Teszem azt az első Form-on megjelennének egy listbox-ban, vagy comboboxban, vagy datagrid-ben, vagy datagridview-ban ha már VB2010 :) - de tulajdonképpen tök mindegy - a jellemzőkben felsorolt szerszámok. Ha valamelyiket kiválasztom, akkor egy új ablakban (hogy miért új ablakban, annak is megvan az oka) egy listbox-ban már csak az ehhez tartozó egyedi azonosítók jelennének meg. Itt kiválasztom a megfelelő egyedit, majd egy könyvel gombon meg kellene adni hogy egyrészt kifelé, vagy befelé történt a könyvelés, egy állaptra vonatkozó típusú érték paramétert kellene megadni, és tulajdonképpen ennyi.
    Ezt a feladatot már többféle módon is megoldottam.
    Legegyszerűbb az volt, amikor a dataset megfelelő tábláit hozzákötöttem a vezérlők datasource tulajdonságaihoz. Itt ott akadtam el amikor egy kapcsolótáblával kellett volna dolgoznom. Tehát mondjuk a második ablakban a szerszám neveit - típus alapján - egy harmadik táblából (PL.: Szerszám neve a jellemzők táblában csak egy kód, amit a harmadik táblából tároltam) kellett volna kiválasztani. Ekkor gondoltam arra, hogy adatkészletből feltöltök egy objektum kollekciót (itt minden objektum már létrehozásakor kikeresi számára a hozá tartozó infókat (név, azonosító, tulajdonságok, állapotinfók...stb), majd ezeket már egyszerűen tologathatom a Formok közt. Így is megcsináltam. Itt tök egyszerű a szerszám beazonosítása ID alapján, és az SQL parancsok is végtelenül leegyszerűsödtek :). A formok közt is már csak egy kis kollekciót kell átadni. Véleményem szerint nem túl elegáns dolog viszont az, hogy feltöltök egy adatkészelet, aztán azt még "átképzem" objektummá, és innen ered a kezdeti kérdésem... Még arra gondoltam hogy egy (-két..-öt?) datareaderrel is meg lehetne oldani ugyan ezt, így még nem próbáltam, de a visszaíráskor akkor megint SQL-ben kellene megírni az utasítsokat, ami (szintén) nem erősségem. Meg hát szerintem még 100 más módon is meg lehetne oldani.

    [ Szerkesztve ]

Új hozzászólás Aktív témák