extjs 4 ग्रिड में पेजिंग काम नहीं कर रहा है




extjs4 (2)

प्रति पृष्ठ आइटम 10 पर सेट कर दिए गए हैं और मैंने सामने वाले हिस्से में डॉक किए गए आइटम्स में xtype के रूप में पेजिंग टूलबार बनाया है।

ओरेकल क्वेरी में कोई प्रारंभ और सीमा पैरामीटर नहीं है। मैं ओरेकल डेटाबेस से रिकॉर्ड कैसे लाऊँ?

कृपया सहायता कीजिए!

यहां मेरा कोड है:

 Ext.Loader.setConfig({enabled: true});
Ext.Loader.setPath('Ext.ux', 'ux/');

Ext.require(['*']);

 Ext.onReady(function()
 {
     var itemsPerPage = 10;
     var store=Ext.create('Ext.data.Store',
       {
           autoload: true,
           autosync: true,
           pageSize: itemsPerPage,
           data: [],
           fields:
                   [
                        {name: 'firstname', id:'firstname'},
                        {name: 'email', id:'email'},
                        {name: 'mobileno', id:'mobileno'}
                   ]
       });  

     var panel = Ext.create('Ext.grid.Panel',
       {
            layout: 'fit',
            store:store,
            id: 'grid1',
            dockedItems:
                    [
                        {
                            xtype: 'pagingtoolbar',
                            store:store,
                            dock:'bottom',
                            displayInfo:true
                        }
                    ],
            renderTo: Ext.getBody(),
                        columns:
                    [
                        {
                            header:'Firstname',
                            id:'firstname',
                            dataIndex:'firstname',
                            //autoSizeColumn : true,
                            flex: 1, 
                            editor: {
                                        xtype: 'textarea'
                                    }
                        },
                        {
                            header:'Action',
                            id:'action',
                            align:'center',
                            xtype:'actioncolumn',
                            autoSizeColumn : true,
                            //flex: 1, 
                            sortable:false,

                            items:
                                    [
                                        {
                                            icon:'images/view_icon.gif',
                                            tooltip:'View',
                                            handler: function(grid,rowIndex,colIndex)
                                            {
                                                var rec= grid.getStore().getAt(rowIndex);
                                                var email=rec.get('email');
                                                location.href="RegistrationFormGridView.jsp?email="+email;
                                            }
                                        },
                                        {
                                            icon:'images/edit_icon.gif',
                                            tooltip:'Edit',
                                            handler: function(grid,rowIndex,colIndex,e)
                                            {
                                                var rec= grid.getStore().getAt(rowIndex);
                                                var email = rec.get('email');
                                                location.href="GetRecords.jsp?email="+email; 
//                                                alert(JSON.stringify(rec.get('email')));
//                                                window.location='GetFormData?key1='+email;                                               
                                            }
                                        },
                                        {
                                            icon:'images/icons/cancel.png',
                                            tooltip:'Delete',
                                            handler: function(grid,rowIndex,colIndex)
                                            {   
                                                var rec= grid.getStore().getAt(rowIndex);
                                                var email = rec.get('email');
                                                Ext.Ajax.request(
                                                {
                                                    url:'./deleteRecords',
                                                    params:{email:email},
                                                    method:'GET',

                                                    success: function(response)
                                                    {
                                                        Ext.Msg.alert("successfully deleted" +" " + response.status);
                                                        window.location.reload();
                                                    },
                                                    failure: function(response)
                                                    {
                                                        Ext.Msg.alert("failed" + response.status);
                                                    }
                                                });
                                            }
                                        }
                                    ]
                        }
                    ],

                   listeners: 
                    {
                        afterrender:function()
                         {
                             Ext.Ajax.request(
                           {
                               params:{email:email},
                               url:'./RetrieveRecords',
                               success: function(response)
                               {  
                                   data = [];
                                   data = Ext.JSON.decode(response.responseText);
                                   Ext.getCmp('grid1').getStore().loadData(data);
                               },
                               failure: function(response)
                               {
                               }
                           });
                         }
                    }           
       });
 });

आपको सर्वर साइड पर पेजिंग को संभालना होगा, एक्सटेंशन जेएस केवल आपको पेजिंग के लिए आवश्यक एनकेसीरी चीज प्रदान करता है।

अगले या पिछले पर हर क्लिक के लिए, एक्सटेंशन जेएस स्वचालित रूप से दो मापदंडों को शुरू और सीमाएं भेजते हैं, जहां पृष्ठ के अंतिम पुनःसंदेश की शुरुआत और सीमा (आइटम पीपरपृष्ठ) है, प्रति पृष्ठ रिकॉर्ड की संख्या।

उदाहरण के लिए मान लें कि आपके पास 100 रिकॉर्ड हैं और आपने ग्रिड में पेजिंग लागू की है और प्रति पृष्ठ आइटम 10 हैं

इंटिटल से शुरू करें = 0 और सीमा 10 होगी, यदि आप अगले पर क्लिक करेंगे और 11 की शुरुआत करेंगे और सीमा 10 हो जाएगी। यदि आप पिछले शुरुआत पर क्लिक करेंगे तो 0 हो जाएगी और सीमा 10 होगी

इन दो मापदंडों का उपयोग करके आपको अभिलेख लोड करने और रिकॉर्ड को जवाब के रूप में भेजने के लिए अपनी क्वेरी तैयार करनी होगी।


आप यह भी कर सकते हैं कि डेटाबेस से सभी रिकॉर्ड प्राप्त करें और इसे सरणी में रखें। इसके बाद आप ऑरेंज पर रिकॉर्ड प्राप्त करने के लिए प्रारंभ और समाप्ति बिंदु सेट कर सकते हैं।