Foros del Web » Programación para mayores de 30 ;) » .NET »

[SOLUCIONADO] Lllenar grid al cargar la pagina Load_Page

Estas en el tema de Lllenar grid al cargar la pagina Load_Page en el foro de .NET en Foros del Web. Hola, Tengo una pagina ASP.NET la cual llena un Gridview atraves de una funcion, actualmente tengo la llamada a laguncion que llena el grid en ...
  #1 (permalink)  
Antiguo 08/05/2013, 14:37
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Lllenar grid al cargar la pagina Load_Page

Hola,
Tengo una pagina ASP.NET la cual llena un Gridview atraves de una funcion, actualmente tengo la llamada a laguncion que llena el grid en el evento de un Button y funciona perfecto, PERO lo que yo quiero es que se cargue en el LOAD de la pagina, si pongo la llamada a la funcion en el LOAD no me lo llena, solo si la pongo en el grid. Pueden decirme que estoy haciendo mal?

Código C#:
Ver original
  1. using System;
  2.  
  3. public partial class _Default : System.Web.UI.Page
  4. {
  5.     RfcDestination prd;
  6.    
  7.     protected void Page_Load(object sender, EventArgs e)
  8.     {
  9.  
  10.      
  11.  
  12.         if (Page.IsPostBack)
  13.              
  14.             prd = RfcDestinationManager.GetDestination("ECDCLNT140");
  15.        
  16.             try
  17.             {
  18.                 RfcDestinationManager.RegisterDestinationConfiguration(new ECCDestinationConfig());
  19.             }
  20.                    
  21.             catch
  22.             {
  23.                
  24.             }
  25.    
  26.             getSAP("8612"); // <-- Evento que llena el grid, pero no funciona, solo en el evento clic
  27.  
  28.     }
  29.  
  30.  
  31.     //Metodo
  32.     public List<BankList> getSAP(String search)
  33.     {
  34.  
  35.         string param = "";
  36.    
  37.         param = search.ToString();
  38.         try
  39.         {
  40.             //RfcDestination prd = RfcDestinationManager.GetDestination("IDES");
  41.            
  42.             BankList objBankList = new BankList();
  43.             List<BankList> objBank = new List<BankList>();
  44.             RfcRepository repo = prd.Repository;
  45.             //IRfcFunction companyBapi = repo.CreateFunction("BAPI_BANK_GETLIST");
  46.             IRfcFunction companyBapi = repo.CreateFunction("Z_GET_EMBARQUES");
  47.             //companyBapi.SetValue("BANK_CTRY", param);
  48.             //companyBapi.SetValue("MAX_ROWS", 100);
  49.             companyBapi.SetValue("CENTRO", param);
  50.             companyBapi.SetValue("REPORTTYPE", "3"); //Session["ReportType"]
  51.                                  
  52.             //companyBapi.SetValue("startdate1", desde);
  53.             //companyBapi.SetValue("startdate2", hasta);
  54.             companyBapi.Invoke(prd);
  55.  
  56.             List<IRfcStructure> irc = new List<IRfcStructure>();
  57.            // IRfcTable detail = companyBapi["BANK_LIST"].GetTable();
  58.             IRfcTable detail = companyBapi["ZIT_EMBARQUES"].GetTable();
  59.             List<string> cnt = new List<string>();
  60.  
  61.             foreach (IRfcStructure ir in detail)
  62.             {
  63.  
  64.                 objBank.Add(new MyBackendConfig().Insert(ir));
  65.              
  66.             }
  67.             repo.ClearTableMetadata();
  68.  
  69.            // objBank = detail.Select(x => new MyBackendConfig()).Insert(x).ToList();
  70.             GridView1.DataSource = objBank;
  71.             DataBind();
  72.             //Response.Write("df" + objBank[0].city);
  73.  
  74.            
  75.            
  76.             return objBank;
  77.                      
  78.  
  79.            
  80.            
  81.        
  82.         }
  83.         catch (Exception ex)
  84.         {
  85.             return null;
  86.         }
  87.        
  88.     }
  89.  
  90.  
  91.  
  92.          
  93.  
  94.     protected void Button1_Click(object sender, EventArgs e)
  95.     {
  96.         getSAP("8612"); // aqui si funciona
  97.  
  98.     }
  99.  
  100. }
  #2 (permalink)  
Antiguo 09/05/2013, 09:12
 
Fecha de Ingreso: junio-2012
Ubicación: Cercado de Lima - Lima - Peru
Mensajes: 27
Antigüedad: 11 años, 10 meses
Puntos: 2
Respuesta: Lllenar grid al cargar la pagina Load_Page

Podrias mostrar el codigo de tu funcion: getSAP()
  #3 (permalink)  
Antiguo 09/05/2013, 09:15
 
Fecha de Ingreso: junio-2012
Ubicación: Cercado de Lima - Lima - Peru
Mensajes: 27
Antigüedad: 11 años, 10 meses
Puntos: 2
Respuesta: Lllenar grid al cargar la pagina Load_Page

Pero ya resolvi tu duda, lo que sucede es que estas listando solo cuando haya un postback en esta parte "if (Page.IsPostBack)" para que liste al abrir la pagina deberias usar un
" if (Page.IsPostBack= false)".

Ahora te recomiendo que en los if siempre cierres y habras "{}" siempre, asi solo haya una linea siguiente, es cuestion de buena practica para darte orientacion a futuras modificaciones.
  #4 (permalink)  
Antiguo 09/05/2013, 14:10
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: Lllenar grid al cargar la pagina Load_Page

Gracias por contestar, como me urgia lo que hize fue mejor llenar los datos y pasarlos a otra pagina en una variable de session:
Código C#:
Ver original
  1. Session["Datos"] = objBank;
Y en la pagina que recibe los datos solo pongo en el Load lo siguiente:
Código C#:
Ver original
  1. GridView1.DataSource = Session["Datos"];
  2.         DataBind();
Obviamente ya no es la misma pagina donde tenia lo del PostBack, simplemente lo pase a otra que no tiene nada en el load mas que esas lineas que cargan los datos en el grid y el databind.
Te dejo el codigo de mi funcion solo para que no te quedes con la curiosidad, muchas gracias :)
Código C#:
Ver original
  1. public List<BankList> getSAP(String search)
  2.     {
  3.  
  4.         string param = "";
  5.  
  6.         param = search.ToString();
  7.         try
  8.         {
  9.      
  10.  
  11.             BankList objBankList = new BankList();
  12.             List<BankList> objBank = new List<BankList>();
  13.             RfcRepository repo = prd.Repository;
  14.             //IRfcFunction companyBapi = repo.CreateFunction("BAPI_BANK_GETLIST");
  15.             IRfcFunction companyBapi = repo.CreateFunction("Z_GET_EMBARQUES");
  16.             //companyBapi.SetValue("BANK_CTRY", param);
  17.             //companyBapi.SetValue("MAX_ROWS", 100);
  18.             companyBapi.SetValue("CENTRO", param);
  19.             companyBapi.SetValue("REPORTTYPE",CmbReportType.SelectedValue);
  20.  
  21.    
  22.             companyBapi.Invoke(prd);
  23.  
  24.             List<IRfcStructure> irc = new List<IRfcStructure>();
  25.      
  26.             IRfcTable detail = companyBapi["ZIT_EMBARQUES"].GetTable();
  27.             List<string> cnt = new List<string>();
  28.  
  29.             foreach (IRfcStructure ir in detail)
  30.             {
  31.  
  32.                 objBank.Add(new MyBackendConfig().Insert(ir));
  33.  
  34.             }
  35.             repo.ClearTableMetadata();
  36.  
  37.          
  38.             Session["Datos"] = objBank;
  39.  
  40.             contador = objBank.Count;
  41.  
  42.  
  43.             return objBank;
  44.  
  45.  
  46.  
  47.         }
  48.         catch (Exception ex)
  49.         {
  50.             return null;
  51.         }
  52.  
  53.     }

Etiquetas: grid
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:03.