Developer express - utisci pri razvoju

Reseed

SQL - korisne skripte — Autor thebata @ 23:51

Ubacio sam jednu ID kolonu da bude Autoincrement, kada je trebalo da počnem da je punim iz početka, sledeća skripta mi je resetovala seed:

DBCC CHECKIDENT(tabela, RESEED, 0) 


Reseed

SQL - korisne skripte — Autor thebata @ 23:51

Ubacio sam jednu ID kolonu da bude Autoincrement, kada je trebalo da počnem da je punim iz početka, sledeća skripta mi je resetovala seed:

DBCC CHECKIDENT(tabela, RESEED, 0) 


Interakcija između dva grida na web formi

Generalna — Autor thebata @ 14:16

Radeći jedan sajt uz pomoć Developer Express komponenti, naišao sam na problem kada je trebalo da postavim 2 grida na jednu stranicu i da se pri promeni fokusa na prvom gridu osvežavaju podaci u drugom. Na forumu sam pronašao sledeće rešenje.

1.u prvom gridu se podesi ClientInstanceName na npr. masterGrid. 

2. U ClientSideEvents u FocusedRowChanged se upiše sledeća metoda :

    function(s, e) {
        if (typeof(detailGrid) != 'undefined')
        detailGrid.PerformCallback(s.GetFocusedRowIndex());
     }

Ova metoda radi CustomCallBack sa parametrom koji predstavlja trenutno fokusirani red u master gridu.

3. u Load događaj stranice se upisuje sledeći kod

    string idtype = Convert.ToString(Session["IDType"]);
    if (idtype != string.Empty)
    {
       dsGroupRights.SelectParameters[0].DefaultValue = idtype;
       dgvRights.DataSourceID = "dsGroupRights";
       dgvRights.DataSource = null;
       dgvRights.DataBind();
     }

 Pri učitavanju stranice se prvo proverava da li postoji podešena vrednost koja se prosleđuje kao parametar. Ukoliko postoji, varijabla iz sesije se postavlja kao vrednost parametra SqlDataSource komponente koji filtrira podatke za drugi grid. 

4. Na CustomCallback događaj drugog grida izvršava se sledeći kod:

object values = dgvGroups.GetRowValues(dgvGroups.FocusedRowIndex, new string[] { "IDType" });

dgvRights.DataSource = null;

dgvRights.DataSourceID = string.Empty;

dsGroupRights.SelectParameters[0].DefaultValue = values.ToString();

Session["IDType"] = values.ToString();

dgvRights.DataSourceID = "dsGroupRights";

dgvRights.PageIndex = 0;

dgvRights.DataBind();

 5. Init događaj u ClientSideEvents drugog grida sadrži sledeći kod:

function(s, e) {

s.PerformCallback(masterGrid.GetFocusedRowIndex());

}

Nisam napomenuo da je i clientInstanceName drugog grida potrebno u ovom slučaju podesiti na detailsGrid