Extra Params for GridPanel

  1. #1

    Extra Params for GridPanel

    Hi,
    My store :

      
               <Store>
                     <ext:Store ID = "GridSup" runat = "server" >
                      <Reader>
                        <ext:JsonReader IDProperty = "ID">
                         <Fields>
                           <ext:RecordField Name = "item_code" />
                           <ext:RecordField name = "descrip"  />
                           <ext:RecordField name = "Lead" />
                         </Fields>
                        </ext:JsonReader>
                      </Reader>
                    </ext:Store>
                   </Store>

      
              <Buttons>
                  <ext:Button ID="btnSave" runat="server" Icon="Disk" Cls = "grid" Text="Submit" OnClientClick="javascript:return validate();" >
                     <DirectEvents> 
                        <Click OnEvent = "btnSave_Click" > 
                          <ExtraParams>
                            <ext:Parameter Name = "ItemCode"  Value = "#{GridItems}.getRowsValues({selectedOnly: false}).item_code" Mode = "Raw" />
                            <ext:Parameter Name = "Descrip"  Value = "#{GridItems}.getRowsValues({selectedOnly: false}).descrip" Mode = "Raw" />
                            <ext:Parameter Name = "LeadTime"  Value = "#{GridItems}.getRowsValues({selectedOnly: false}).s" Mode = "Raw" />
                          </ExtraParams>
                        </Click>
                     </DirectEvents>
                  </ext:Button>
                 </Buttons>
    The above code shows an error...

    How can i use this extra params value in server side
    If I am using the below code, gets all the columns value.....
      
              <ext:Parameter Name = "ItemCode"  Value = "#{GridItems}.getRowsValues({selectedOnly: false})" Mode = "Raw" />
    In server side,
      
                Dim lsItem As String = e.ExtraParams.Item("ItemCode")
                Dim lsDescrip As String = e.ExtraParams("Descrip")
                Dim lsLeadTime As String = e.ExtraParams("LeadTime")
    How to get a particular columns value - I need to get this value in a for loop...


    Thanks in advance.....
    Last edited by Anburaja; Oct 13, 2012 at 4:42 AM.
  2. #2
    Hi,

    It gets all the columns value......How can i get the values (one by one) in server side
  3. #3

    Get values

    Quote Originally Posted by Anburaja View Post
    Hi,

    It gets all the columns value......How can i get the values (one by one) in server side
    make sure item_code is a ColumnId in your GridItems - <ext:Column ColumnID="item_code" DataIndex="item_code"></ext:Column>

    Haven't tried this, but below might work:

    Client-Side
    for(i = 0; i < GridItems.store.getCount(); i++)
    {
    var item_code = GridItems.getRowsValues({ selectedOnly: false })[i].item_code;
    }

    Are you sure you don't want the selected row on your grid? If so then add a selectionmodel to your griditems:

    <SelectionModel>
    <ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true" MoveEditorOnEnter="false">
    <DirectEvents>
    <RowSelect OnEvent="GridItems_RowSelect" Delay="1" Buffer="250">
    <ExtraParams>
    <ext:Parameter Name="item_code" Value="record.data.item_code" Mode="Raw" Encode="true" />
    </ExtraParams>
    </RowSelect>
    </DirectEvents>
    </ext:RowSelectionModel>
    </SelectionModel>

    Server-side
    Protected Sub GridItems_RowSelect(ByVal sender As Object, ByVal e As DirectEventArgs)
    Dim item_code As string = e.ExtraParams("item_code")
    End Sub
  4. #4

    For a selected row without making separate extra-params

    // Client-side
    var gridRowData = Ext.encode(GridItems.getRowsValues({ selectedOnly: true }));
    Ext.net.DirectMethods.GridItems_DM(gridRowData);

    ' Server-side
    Imports Newtonsoft.Json
    Imports Newtonsoft.Json.Linq

    <Ext.Net.DirectMethod()> _
    Public Sub GridItems_DM(ByVal gridRowData As String)
    Dim itemRec = New With {.item_code = Nothing, .Descrip = Nothing, etc ...}

    For Each j As JObject In JSON.Deserialize(gridRowData)
    ' Deserialize JObject to Anonymous type
    Dim _anonObj = JsonConvert.DeserializeAnonymousType(j.ToString, itemRec)

    ' Now the anonymous type (_anonObj) has the properties of itemRec with the values from the client-side gridpanel
    Next
    End Sub
    Last edited by healingnations; Oct 18, 2012 at 7:21 AM.

Similar Threads

  1. [CLOSED] Passing an Extra param with a gridpanel dragdrop
    By DougMcDonald in forum 1.x Legacy Premium Help
    Replies: 3
    Last Post: Aug 21, 2012, 5:53 PM
  2. [CLOSED] Store SubmitData Extra Params not working
    By alexkay in forum 1.x Legacy Premium Help
    Replies: 3
    Last Post: Nov 12, 2010, 7:21 PM
  3. groupid in extra params??
    By Cr@iG in forum 1.x Help
    Replies: 6
    Last Post: Mar 08, 2010, 5:28 AM
  4. [CLOSED] extra row on bottom of gridpanel
    By LeeTheGreek in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Nov 08, 2009, 11:14 PM
  5. [CLOSED] How To: Proxy Extra Params
    By Immobilmente in forum 1.x Legacy Premium Help
    Replies: 2
    Last Post: May 19, 2009, 6:46 AM

Posting Permissions