Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07/11/2011, 12:16
Avatar de stuart_david3
stuart_david3
 
Fecha de Ingreso: agosto-2011
Mensajes: 215
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: Generar un gridview en base a otro!!!

Ok, creo que ya lo solucioné gracias a Dios, solo agregue is registros en un DataGrid :p, el código es el siguiente...

Sólo dos preguntas. Cómo podría abir en una nueva ventana mi DataGrid al seleccionarlo?? Y cómo valido un if para mandar un mensaje de error cuándo el resultado de la consulta del DataGrid es nulo??...

Código ASP:
Ver original
  1. <%@ Page language="VB" %>
  2. <%@ Import Namespace="System.Data" %>
  3. <%@ Import Namespace="System.Data.SqlClient" %>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  5.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  6.  
  7. <script runat="server">
  8.  
  9.   Sub CustomersGridView_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
  10.  
  11.     Dim row As GridViewRow = CustomersGridView.SelectedRow
  12.  
  13.         Dim cadena As String = row.Cells(1).Text
  14.         Label2.Text = "Has seleccionado a " & cadena & "."
  15.         Dim MyConnection As SqlConnection = New SqlConnection("server=myhost;database=mydb;User ID=myuser;Password=mypass;Trusted_Connection=no")
  16.         Dim MyCommand As SqlCommand = New SqlCommand("SELECT rpe as RPE_del_Empleado, convert(varchar,fe_inic,103) as Fecha_de_la_Incidencia, cl_incid AS Tipo_de_Incidencia FROM b_asiste WHERE cl_incid='026' AND rpe='" & cadena & "' GROUP BY rpe, cl_incid, fe_inic", MyConnection)
  17.  
  18.         MyConnection.Open()
  19.  
  20.         Dim dr As SqlDataReader = MyCommand.ExecuteReader()
  21.  
  22.         MyDataGrid.DataSource = dr
  23.         MyDataGrid.DataBind()
  24.     End Sub
  25.  
  26.     Sub CustomersGridView_SelectedIndexChanging(ByVal sender As Object, ByVal e As GridViewSelectEventArgs)
  27.  
  28.         Dim row As GridViewRow = CustomersGridView.Rows(e.NewSelectedIndex)
  29.  
  30.         If row.Cells(1).Text = "ANATR" Then
  31.  
  32.             e.Cancel = True
  33.             Label2.Text = "You cannot select " + row.Cells(1).Text & "."
  34.  
  35.         End If
  36.  
  37.     End Sub
  38.  
  39. </script>
  40.  
  41. <html xmlns="http://www.w3.org/1999/xhtml" >
  42.   <head id="Head1" runat="server">
  43.     <title>GridView Select Example</title>
  44. </head>
  45. <body>
  46.     <form id="form1" runat="server">
  47.  
  48.      <h3>GridView Select Example</h3>
  49.  
  50.      <asp:gridview id="CustomersGridView"
  51.        datasourceid="CustomersSource"
  52.        autogeneratecolumns="False"
  53.        autogenerateselectbutton="True"
  54.        allowpaging="True"
  55.        selectedindex="1"
  56.        onselectedindexchanged="CustomersGridView_SelectedIndexChanged"
  57.        onselectedindexchanging="CustomersGridView_SelectedIndexChanging"  
  58.        runat="server" DataKeyNames="rpe" BackColor="LightGoldenrodYellow"
  59.          BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black"
  60.          GridLines="None">
  61.  
  62.          <AlternatingRowStyle BackColor="PaleGoldenrod" />
  63.  
  64.          <Columns>
  65.              <asp:BoundField DataField="rpe"
  66.                  HeaderText="RPE del Empleado"
  67.                  InsertVisible="False" ReadOnly="True"
  68.                  SortExpression="b_contra.fe_repro" />
  69.              <asp:BoundField DataField="nombre"
  70.                  HeaderText="Nombre del Empleado"
  71.                  SortExpression="c_zonas.nombre" />
  72.              <asp:BoundField DataField="Edad"
  73.                  HeaderText="Edad del Empleado"
  74.                  SortExpression="fe_inic" />
  75.                  <asp:BoundField DataField="nombrezona"
  76.                  HeaderText="Nombre de la Zona"
  77.                  SortExpression="fe_inic" />
  78.                  <asp:BoundField DataField="area"
  79.                  HeaderText="Area en que labora"
  80.                  SortExpression="fe_inic" />
  81.                  <asp:BoundField DataField="puesto"
  82.                  HeaderText="Puesto"
  83.                  SortExpression="fe_inic" />
  84.                  <asp:BoundField DataField="fe_natra"
  85.                  HeaderText="Fecha de Nacimiento"
  86.                  SortExpression="fe_inic" />
  87.                  <asp:BoundField DataField="fe_antre"
  88.                  HeaderText="Fecha de Antigüedad Reconocida"
  89.                  SortExpression="fe_inic" />
  90.                  <asp:BoundField DataField="fe_ingre"
  91.                  HeaderText="Fecha de Ingreso"
  92.                  SortExpression="fe_inic" />
  93.                  <asp:BoundField DataField="ubicacion"
  94.                  HeaderText="Ubicación"
  95.                  SortExpression="fe_inic" />
  96.                  <asp:BoundField DataField="nides"
  97.                  HeaderText="nides"
  98.                  SortExpression="fe_inic" />
  99.                  <asp:BoundField DataField="nire"
  100.                  HeaderText="nire"
  101.                  SortExpression="fe_inic" />
  102.                  <asp:BoundField DataField="fe"
  103.                  HeaderText="Fecha Probable de Jubilación"
  104.                  SortExpression="fe_inic" />
  105.                  <asp:BoundField DataField="anyjub"
  106.                  HeaderText="Años Transcurridos Desde la jubilación"
  107.                  SortExpression="fe_inic" />
  108.                  <asp:BoundField DataField="fepos"
  109.                  HeaderText="Fecha Probable Para Jubilación"
  110.                  SortExpression="fe_inic" />
  111.          </Columns>
  112.  
  113.          <FooterStyle BackColor="Tan" />
  114.          <HeaderStyle BackColor="Tan" Font-Bold="True" />
  115.          <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue"
  116.              HorizontalAlign="Center" />
  117.  
  118.        <selectedrowstyle backcolor="DarkSlateBlue"
  119.          forecolor="GhostWhite"/>  
  120.  
  121.          <SortedAscendingCellStyle BackColor="#FAFAE7" />
  122.          <SortedAscendingHeaderStyle BackColor="#DAC09E" />
  123.          <SortedDescendingCellStyle BackColor="#E1DB9C" />
  124.          <SortedDescendingHeaderStyle BackColor="#C2A47B" />
  125.  
  126.      </asp:gridview>
  127.  
  128.       <br/>
  129.  
  130.          <asp:label id="Label2"
  131.         forecolor="Red"
  132.         runat="server"/>
  133.  
  134.       <asp:sqldatasource id="CustomersSource"
  135.         selectcommand="SELECT MAX(b_contra.fe_repro), MAX(c_zonas.nombre) AS nombrezona, MAX(c_puesto.puesto) AS puesto, MAX(c_a_resp.dscarea) AS area, b_traba1.rpe, MAX(b_traba1.nombre) AS nombre, b_traba1.fe_antre, b_traba1.fe_ingre, b_traba3.fe_natra, CONVERT (INT,(DATEDIFF (dd, b_traba3.fe_natra, GETDATE()) - DATEDIFF (yy, b_traba3.fe_natra, GETDATE()) / 4.25) / 365) AS Edad, MAX(b_traba1.sexotrab) AS sexo, MAX(c_ubica.ubicapza) AS ubicacion, MAX(b_traba1.cl_nides) AS nides, MAX(b_traba1.if_nire2) AS nire, fe, CASE WHEN fe<GETDATE() THEN GETDATE() ELSE null END AS fepos, CONVERT (INT,(DATEDIFF (dd, GETDATE(), fe) - DATEDIFF (yy, GETDATE(), fe) / 4.25) / 365) AS anyjub FROM (SELECT fe_antre, CASE WHEN b_traba1.sexotrab='M' THEN DATEADD(yy, 30, b_traba1.fe_antre) ELSE DATEADD(yy, 25, b_traba1.fe_antre) END AS fe FROM b_traba1) AS t1, b_traba1, b_traba3, c_zonas, c_a_resp, c_ubica, c_puesto, b_contra WHERE (DATEDIFF(yy, b_traba1.fe_antre, GETDATE()) > 25) AND (DATEDIFF(yy, b_traba3.fe_natra, GETDATE()) > 55) AND b_traba1.cl_sitla IS NULL AND c_zonas.descr=b_traba1.cl_zona AND c_a_resp.area=b_traba1.area AND b_traba1.rpe=b_traba3.rpe AND b_traba1.rpe=b_contra.rpe AND c_puesto.cl_puest=b_contra.cl_puest AND b_traba1.fe_antre=t1.fe_antre AND b_traba1.cl_ubica=c_ubica.cl_ubica GROUP BY b_traba1.rpe, b_traba1.fe_antre, b_traba1.fe_ingre, b_traba3.fe_natra, fe"
  136.         connectionstring="server=myhost;database=mydb;User ID=myuser;Password=mypass;Trusted_Connection=no"
  137.         runat="server"/>
  138.     <ASP:DataGrid id="MyDataGrid" runat="server"
  139.     Width="700px"
  140.     BackColor="LightGoldenrodYellow"
  141.     BorderColor="Tan"
  142.     CellPadding=2
  143.     Font-Name="Verdana"
  144.     Font-Size="8pt"
  145.     HeaderStyle-BackColor="#aaaadd"
  146.     EnableViewState="False" BorderWidth="1px" Font-Names="Verdana"
  147.          ForeColor="Black" GridLines="None"
  148.   >
  149.         <AlternatingItemStyle BackColor="PaleGoldenrod" />
  150.         <FooterStyle BackColor="Tan" />
  151. <HeaderStyle BackColor="Tan" Font-Bold="True"></HeaderStyle>
  152.         <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue"
  153.             HorizontalAlign="Center" />
  154.         <SelectedItemStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" />
  155.      </asp:DataGrid>
  156.     </form>
  157.    
  158.   </body>
  159. </html>

Última edición por stuart_david3; 07/11/2011 a las 12:49