Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Potrebno lakse resenje ...

[es] :: .NET :: Potrebno lakse resenje ...

[ Pregleda: 864 | Odgovora: 6 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mladenvasic
Mladen Vasic
Doboj

Član broj: 50512
Poruke: 124
*.teol.net.



Profil

icon Potrebno lakse resenje ...07.05.2006. u 14:53

Imam jedno pitanje:

Ima li ko lakse resenje za sledeci kod:
Code:
this->treeView->BeginUpdate();

        this->treeView->Nodes->Add(gcnew TreeNode("Ime firme"));
        this->treeView->Nodes[0]->ImageIndex = 4;
        this->treeView->Nodes[0]->SelectedImageIndex = 4;
        this->treeView->Nodes[0]->Nodes->Add(gcnew TreeNode("Radnici"));
        this->treeView->Nodes[0]->Nodes[0]->ImageIndex = 0;
        this->treeView->Nodes[0]->Nodes[0]->SelectedImageIndex = 0;
        ArrayList^ arr = gcnew ArrayList;
        arr->Add("stanje");
        arr->Add("u/i");
        arr->Add("vrijeme");
        IEnumerator^ mEnum = arr->GetEnumerator();
        while (mEnum->MoveNext())
        {
            String^ tree = safe_cast<String^>(mEnum->Current);
            this->treeView->Nodes[0]->Nodes[0]->Nodes->Add(gcnew TreeNode(tree));
            this->treeView->Nodes[0]->Nodes[0]->Nodes[arr->IndexOf(mEnum->Current)]->ImageIndex = 1;
            this->treeView->Nodes[0]->Nodes[0]->Nodes[arr->IndexOf(mEnum->Current)]->SelectedImageIndex = 1;
        }
        this->treeView->Nodes[0]->Nodes->Add(gcnew TreeNode("Gosti"));
        this->treeView->Nodes[0]->Nodes[1]->ImageIndex = 2;
        this->treeView->Nodes[0]->Nodes[1]->SelectedImageIndex = 2;
        arr->Clear();
        arr->Add("stanje");
        arr->Add("evidencija");
        mEnum = arr->GetEnumerator();
        while (mEnum->MoveNext())
        {
            String^ tree = safe_cast<String^>(mEnum->Current);
            this->treeView->Nodes[0]->Nodes[1]->Nodes->Add(gcnew TreeNode(tree));
            this->treeView->Nodes[0]->Nodes[1]->Nodes[arr->IndexOf(mEnum->Current)]->ImageIndex = 1;
            this->treeView->Nodes[0]->Nodes[1]->Nodes[arr->IndexOf(mEnum->Current)]->SelectedImageIndex = 1;
        }
        arr->Clear();

        this->treeView->Nodes[0]->Nodes->Add(gcnew TreeNode("Organizacija"));
        this->treeView->Nodes[0]->Nodes[2]->ImageIndex = 3;
        this->treeView->Nodes[0]->Nodes[2]->SelectedImageIndex = 3;
        
        String^ command = "select * from sektor";
        SqlConnection^ connection = gcnew SqlConnection(connectionString);
        //dataAdapter = gcnew SqlDataAdapter();
        dataAdapter->SelectCommand = gcnew SqlCommand(command,connection);
        dataAdapter->Fill(m_ds->Tables["sektor"]);
        
        command = "select * from sekcija";
        dataAdapter->SelectCommand = gcnew SqlCommand(command,connection);
        dataAdapter->Fill(m_ds->Tables["sekcija"]);

        command = "select * from radnajedinica";
        dataAdapter->SelectCommand = gcnew SqlCommand(command,connection);
        dataAdapter->Fill(m_ds->Tables["radnajedinica"]);
        
        array<DataRow^>^ x_row = m_ds->Tables["sektor"]->Select();
        int i;
        for (i=0;i<x_row->Length;i++)
        {
             String^ tree = safe_cast<String^>(x_row[i]["opis"]);
             this->treeView->Nodes[0]->Nodes[2]->Nodes->Add(gcnew TreeNode(tree));
             this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->ImageIndex = 3;
             this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->SelectedImageIndex = 3;

             array<DataRow^>^ y_row = m_ds->Tables["sekcija"]->Select("sektor = '" +
                 x_row[i]["sifra"] +"'");
             int j;
             for (j=0;j<y_row->Length;j++)
             {
                 String^ tree = safe_cast<String^>(y_row[j]["opis"]);
                 this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->Nodes->Add(gcnew TreeNode(tree));
                 this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->Nodes[j]->ImageIndex = 3;
                 this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->Nodes[j]->SelectedImageIndex = 3;
             
                 array<DataRow^>^ z_row = m_ds->Tables["radnajedinica"]->Select("sekcija = '" +
                     y_row[j]["sifra"] +"'");
                 int k;
                 for (k=0;k<z_row->Length;k++)
                 {
                      String^ tree = safe_cast<String^>(z_row[k]["sifra"]);
                      this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->Nodes[j]->Nodes->Add(gcnew TreeNode(tree));
                      this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->Nodes[j]->Nodes[k]->ImageIndex = 1;
                      this->treeView->Nodes[0]->Nodes[2]->Nodes[i]->Nodes[j]->Nodes[k]->SelectedImageIndex = 1;
                 }
                 delete []z_row;
             }
             delete []y_row;
        
        }
        delete []x_row;
        m_ds->Tables["radnajedinica"];
        m_ds->Tables["sektor"];
        m_ds->Tables["sekcija"];

    
        this->treeView->EndUpdate();
        this->treeView->Nodes[0]->Expand();
        this->treeView->Nodes[0]->Nodes[0]->Expand();
07.05.2006. u 14:53 

NrmMyth
Split, Kaštela

Član broj: 63456
Poruke: 839
*.cmu.carnet.hr.



Profil

icon Re: Potrebno lakse resenje ...07.05.2006. u 15:33
A sta je to???
Ti stvarno mislis da ce ti to netko besplatno pokusat shvatiti...
07.05.2006. u 15:33 

spartak
Beograd

Član broj: 5625
Poruke: 631
*.beotel.net.

Sajt: getafirstlife.com


Profil

icon Re: Potrebno lakse resenje ...07.05.2006. u 16:59
Ok, vrlo je jasno da kolega ima sektore i u okviru njih radne jedinice cije podatke dovlaci iz baze i puni treeview.

Isto tako mi izgleda dovoljno jednostavno. Sta bi pojednostavljivao ovde i zasto?
07.05.2006. u 16:59 

mladenvasic
Mladen Vasic
Doboj

Član broj: 50512
Poruke: 124
*.teol.net.



Profil

icon Re: Potrebno lakse resenje ...07.05.2006. u 18:31
Citat:
NrmMyth: A sta je to???
Ti stvarno mislis da ce ti to netko besplatno pokusat shvatiti...

Pa dobro !!! Ako punjenje obicnog TreeView-a treba da se plati nije problem, samo reci kako da ti urucim novac ;-)


Citat:
spartak: Ok, vrlo je jasno da kolega ima sektore i u okviru njih radne jedinice cije podatke dovlaci iz baze i puni treeview.

Isto tako mi izgleda dovoljno jednostavno. Sta bi pojednostavljivao ovde i zasto?

Mislio sam sto se tice performansi, mozda postoji bolje resenje. Da li postoji mogucnst da se trodimenzionalni niz napuni podacima iz baze (iz 3 razlicite tabele) pa da se oni kriste u petljama.
Isto tako, pristup bazi ... mozda neki drugi nacin ???
07.05.2006. u 18:31 

spartak
Beograd

Član broj: 5625
Poruke: 631
195.252.85.*

Sajt: getafirstlife.com


Profil

icon Re: Potrebno lakse resenje ...07.05.2006. u 19:24
Pravo da ti kazem ne stizem da se udubim mnogo, ali evo ti na prvu ruku sta mi je zapalo za oko.

Prvo u vezi punjenja DataSet iz baze. Imaju li ti podaci nekakvu medjusobnu vezu po kljucevima, hijerarhiji? Kako ovde punis drvo, za svaki sektor ponovo sve radne jedinice iste ili?

Drugo ne znam da li postoji neki poseban razlog da tumbas podatke iz ds u nizove pa da punis drvo. Kroz tabelu u ds mozes da prolazis u okviru for petlje i dodajes vrednosti direktno. To bih refleksno tako odradio.

Kazem ti, opet je na brzaka.
07.05.2006. u 19:24 

Deep|Blue
Srce Srbije

Član broj: 631
Poruke: 948
*.dial.b92.net.

ICQ: 101830817


Profil

icon Re: Potrebno lakse resenje ...07.05.2006. u 23:30
2 predloga iz vb-a

1. Ne znam za C, al u vb-u pored dataadaptera, podatke mozes da preuzmes i preko datareadera. Jeste malo vise kucanja, al veruj mi da je drasticno brze. Cak i pri velikim kolicinama podataka. Vredi se malo potruditi oko toga

2. Dal ti je potrebno da ucitavas celo stablo odjednom. Dosta ovisi od vrste programa i sta korisnik radi s njim, al cesto korisnik uopste ne otvara veci deo stabla, tako da nema potrebe da se ucitava kompletno, vec kako rasiri neku granu tako je i popunis podacima.

At this moment, I'm probably swimming in a deep blue sea!
07.05.2006. u 23:30 

spartak
Beograd

Član broj: 5625
Poruke: 631
*.beotel.net.

Sajt: getafirstlife.com


Profil

icon Re: Potrebno lakse resenje ...08.05.2006. u 13:08
@Deep|Blue

I zbog tvojeg pod 1 i pod 2 sam ga pitao sta se tu u stvari desava od biznis logike. Ja iskreno ne mogu da zamislim da moze da ima sektora i radnih jedinica u celoj privredi neke zemlje da bi primetio razliku izmedju punjenja sa da i dr, da li da puni celo drvo ili deo po deo ako zatreba.

Koliko planiras nivoa grananja drvo da ima uopste, i do koliko od prilike svorova po nivou moze biti? To bi izmedju ostalog trebalo da ti bude parametar u odlucivanju kako da pristupis.
08.05.2006. u 13:08 

[es] :: .NET :: Potrebno lakse resenje ...

[ Pregleda: 864 | Odgovora: 6 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.