Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Проблема чтения данных с WebService в Grid с помощью ExtJS (https://javascript.ru/forum/extjs/5240-problema-chteniya-dannykh-s-webservice-v-grid-s-pomoshhyu-extjs.html)

Fenya_616 29.09.2009 13:35

Проблема чтения данных с WebService в Grid с помощью ExtJS
 
Люди добрые, помогите кто сможет. Сижу уже месяц не могу разобраться.У меня следущий код...

WebService:

//=========================================================================================
    // Returns dataset from ANY table 
    //=========================================================================================
    [WebMethod(Description = "Cycle: Returns rows from this table")]
    //public DataSet SelectCycle(int id, string table_name)
    public XmlDocument SelectCycleXml()
    {
        int id = 0;
        String table_name = "faculty";


        SqlConnection con = new SqlConnection();
        con.ConnectionString = connectionStringASUU;
        string usp_name = "";
        switch (table_name)
        {
            case "cycle_type":
                usp_name = "usp_SelectCycle_Type";
                break;
            case "cycle":
                usp_name = "usp_SelectCycle";
                break;
            case "faculty":
                usp_name = "usp_SelectFaculty";
                break;
            case "OKR":
                usp_name = "usp_SelectOKR";
                break;
            case "department":
                usp_name = "usp_SelectDepartment";
                break;
            case "direction":
                usp_name = "usp_SelectDirection";
                break;
            case "speciality":
                usp_name = "usp_SelectSpeciality";
                break;
            case "contingent":
                usp_name = "usp_SelectContingent";
                break;
            case "study_plan":
                usp_name = "usp_SelectStudy_plan";
                break;
            case "work_study_plan":
                usp_name = "usp_SelectWork_study_plan";
                break;
            case "study_plan_detail":
                usp_name = "usp_SelectStudy_plan_detail";
                break;
            case "discipline":
                usp_name = "usp_SelectDiscipline";
                break;
        }

        SqlCommand cmd = new SqlCommand(usp_name, con);

        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.Add(new SqlParameter("@id", SqlDbType.Int));
        cmd.Parameters["@id"].Value = id;
        cmd.Parameters.Add(new SqlParameter("@ok", SqlDbType.SmallInt));
        cmd.Parameters["@ok"].Direction = ParameterDirection.Output;

        try
        {
            con.Open();
            XmlDocument xmlDoc = new XmlDocument();
            DataSet ds = new DataSet();
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            da.Fill(ds, "Results");

            xmlDoc.LoadXml(ds.GetXml());
            return xmlDoc;

            
           // return ds;
        }
        finally
        {
            con.Close();
        }
    }


ExtJS:
var xmlread =  new Ext.data.XmlReader({ 
        totalRecords: 'NewDataSet',
            record: 'Results',
            id: 'id'
        }, ['id','full_name','short_name','info'])


var xmlProxy = new Ext.data.HttpProxy(        
        {
        // for resding xml data from WebService
         method: 'POST',
         url: 'http://localhost/virtualtest1/Service.asmx/SelectCycleXml'
      
})
               
             


var ds = new Ext.data.Store({

    proxy: xmlProxy ,         
    reader: xmlread

});


Ext.onReady(function(){
// data grid
var grid = new Ext.grid.GridPanel({
    renderTo: document.body,
    frame:true,
    title: 'Faculty grid',
    height:200,
    width:500,
    store: ds,
        columns: [
                {header: "ID number", dataIndex: 'id'},
                {header: "FULL NAME", dataIndex: 'full_name'},
                {header: "SHORT NAME", dataIndex: 'short_name'},
                {header: "ADDITIONAL INFORMATION", dataIndex: 'info'}
        ]
    });
    
    
});



После выполнения я получаю пустой грид...
Помогите, скажите где ошибка или чего нехватает :help:

Kolyaj 29.09.2009 14:12

А давайте-ка лучше ссылку на проблемную страницу. Ибо запустить ваш код тут врядли кто сможет, а гадание на кофейной гуще мало кому интересно.

Fenya_616 29.09.2009 15:32

Простите но не могу. Прикол в том что я сам написал сервис(на своем локальном компютере) и теперь пытаюсь обработать с помощью ExtJS...
Проблема в том что я не знаю где ошибка в сервисе или скрипте. Сервис работает отлично, если использовать обычные язык(vb.net, c#),а при работе с extjs возникла проблема... немогу получить записи из базы данных...

Kolyaj 29.09.2009 15:33

Посмотрите firebug'ом, то ли возвращает сервис, что нужно.

Fenya_616 29.09.2009 16:58

Посмотрел и обалдел... :blink:
Выдает 403 Forbidden... Может ли это бить связано с тем, что я создал сервис на IIS. Кароче порты совсем разные: веб-узел 80, а проект 1057...


Часовой пояс GMT +3, время: 18:03.