ASP.NET y DataGrid, Ayuda por favor!!, Es urgente

buti
23 de Enero del 2004
Hola, tengo un datagrid enlazado a una consulta sql, en el que solo muestro una serie de campos de la tabla en la que consulta, mediante la propiedad AutoGenerateColumn="false", el problema es que cuando se visualizan los registros, me muestra los campos (que yo especifico) del primer registro de la consulta seguido de todos los campos de ese mismo registro, pasa a otra linea de la tabla y asi con todos los registros de la consulta.

Aqui teneis el codigo por si alguien tiene tiempo y ganas... GRACIAS DE TODAS FORMAS.

Un saludo.

===== CODIGO FUENTE ======

<%@ Page Debug="true" language="vb" %>
<%@ import namespace="system.data.sqlClient" %>

<script runat="server">
sub page_load
if not page.isPostback then
tabla.visible=true
end if
end sub

Sub CustomValidator_ServerValidate(s as object, e as ServerValidateEventArgs)
dim fecha,c,d as string
dim i as integer

fecha=e.Value
c=mid(fecha,1,1)
d=mid(fecha,2,1)
e.IsValid=true
if (c="0") or (c="1") or (c="2") then ' Miramos el dia
if (d<>"0") and (d<>"1") and (d<>"2") and (d<>"3") and (d<>"4") and (d<>"5") and (d<>"6") and (d<>"7") and (d<>"8") and (d<>"9")
e.IsValid=false
end if
else if (c="3") then
if (d<>"0") and (d<>"1") then
e.IsValid=false
end if
end if
c=mid(fecha,3,1)
if(c<>"/") then
e.IsValid=false
end if
c=mid(fecha,4,1)
if (c="0") then ' Miramos el mes
d=mid(fecha,5,1)
if (d<>"0") and (d<>"1") and (d<>"2") and (d<>"3") and (d<>"4") and (d<>"5") and (d<>"6") and (d<>"7") and (d<>"8") and (d<>"9")
e.IsValid=false
end if
else if (c="1") then
d=mid(fecha,5,1)
if (d<>"0") and (d<>"1") and (d<>"2") then
e.IsValid=false
end if
else
e.IsValid=false
end if
c=mid(fecha,6,1)
if(c<>"/") then
e.IsValid=false
end if
for i=7 to 10
c=mid(fecha,i,1)
if (c<>"0") and (c<>"1") and (c<>"2") and (c<>"3") and (c<>"4") and (c<>"5") and (c<>"6") and (c<>"7") and (c<>"8") and (c<>"9")
e.IsValid=false
end if
next
end sub

sub buscar_click(s as object, e as eventargs)
dim conex as sqlConnection
dim comando as sqlCommand
dim dr as sqlDataReader
dim usu_bbdd,pwd_bbdd,nombre_bbdd,host_bbdd as string
dim cad,sql as string
dim fecha as string

if isvalid then
usu_bbdd="sa"
pwd_bbdd="clave"
nombre_bbdd="RRHH_Solicitudes"
host_bbdd="192.168.10.3"
cad="Server='" & host_bbdd & "';database='" & nombre_bbdd & "';User Id='" & usu_bbdd & "';Password='" & pwd_bbdd & "'"

fecha=fec_solicitud.text
conex=new sqlConnection(cad)

try
conex.open()
sql="select * from int_sol_anticipo where fec_solicitud>='" & fecha & "'"
comando=new sqlCommand(sql,conex)
tabla.datasource=comando.executeReader()
tabla.DataBind()
conex.close()
catch fallo as exception
response.write("ERROR: " & fallo.message & "<br>")
end try


end if
end sub

sub Accion(s as object, e as datagridCommandEventArgs)
dim registro as datagridItem
if e.CommandName="desglose" then
registro=tabla.SelectedItem
cache.item("solicitud")=tabla.items(0)
response.redirect("http://localhost/Sergio/Formularios%20ASP/frmDesGasAnticipos.aspx")
end if
end sub

</script>

<html>
<head>
<link rel=stylesheet type="text/css" title="estilos" href="httlp://localhost/Sergio/Hoja%20de%20estilo/stilos.css">
</head>
<body>
FORMULARIO DE CONSULTA DE PETICIONES DE AUTORIZACIONES<BR>

<form runat="server">
<asp:validationSummary runat="server" showsummary="false" showmessagebox="true" headertext="Los siguientes campos faltan o son incorrectos:"/>
<asp:label id="fec" text="Fecha de solicitud: " runat="server"/>
<asp:textbox id="fec_solicitud" runat="server"/>
<asp:requiredFieldValidator text="*" runat="server" controlToValidate="fec_solicitud" display="dynamic" errorMessage="Fecha de solicitud"/>
<asp:CustomValidator runat="server" controlTovalidate="fec_solicitud" display="dynamic" OnServerValidate="CustomValidator_ServerValidate" errorMessage="Fecha incorrecta (formato: dd/mm/aaaa)"/>
<br><br>
<asp:button id="buscar" text="Buscar" onclick="buscar_click" runat="server"/><br><br>

<asp:Datagrid id="tabla" OnItemCommand="Accion" showheader="true" enableViewState="false" autogenerateColums="false" runat="server">
<Columns>
<asp:BoundColumn DataField="num_solicitud" HeaderText="Numero solicitud"/>
<asp:BoundColumn Datafield="fec_solicitud" HeaderText="Fecha"/>
<asp:BoundColumn Datafield="cod_pers" HeaderText="NIF" />
<asp:BoundColumn Datafield="nombre" HeaderText="Nombre" />
<asp:BoundColumn Datafield="departamento" HeaderText="Departamento"/>
<asp:BoundColumn Datafield="programa" HeaderText="Programa"/>
<asp:BoundColumn Datafield="proyecto" HeaderText="Proyecto"/>
<asp:BoundColumn Datafield="des_viaje" HeaderText="Descripcion de viaje"/>
<asp:BoundColumn Datafield="fec_desde" HeaderText="Fecha de inicio"/>
<asp:BoundColumn Datafield="fec_hasta" HeaderText="Fecha de finalizacion"/>
<asp:BoundColumn Datafield="imp_total" HeaderText="Importe Total"/>
<asp:BoundColumn Datafield="imp_anticipo" HeaderText="Importe de anticipo de fondos"/>
<asp:BoundColumn Datafield="est_solicitud" HeaderText="Estado de solicitud"/>
<asp:boundcolumn Datafield="des_est_solicitud" HeaderText="Descripcion estado"/>
<asp:ButtonColumn text="Consultar desgloses" CommandName="desglose" ButtonType="PushButton"/>
</Columns>
</asp:Datagrid><br>
</form>
</body>
</html>

buti
23 de Enero del 2004
YA LO HE SOLUCIONADO. GRACIAS DE TODOS MODOS