Estimados lectores, ha sido una experiencia agradable el
hacer este blog y tener algunos lectores que comparten el gusto por la
programación; actualmente estoy empezando otro proyecto, muy personal, con tecnología web que espero compartir con toda la comunidad de
programadores y necesito recursos porque es algo muy personal y mi situación
financiera no es muy buena.
Si alguien desearía
apoyarme tengo una tarjeta Oxxo Saldazo
con el número: 4766-8408-7508-1593,
cualquier apoyo lo pueden hacer en cualquier tienda Oxxo o en Banamex, les
agradezco y que sus proyectos lleguen a buen fin.
La solución seria hacer un stored procedure en sql-server mas o menos como este:
CREATE PROCEDURE sp_traedatoscliente
as
select clave, RTRIM(nombre) + REPLICATE(' ', 60 - LEN(RTRIM(nombre))) +'|'+ clave AS descrip
from clientes order by Nombre
GO
Notas: primero el nombre se tiene que limpiar de espacios a la derecha, lo cual logramos con el Rtrim. El replicate nos llena de espacios la longitud del campo - la longitud del nombre, en este caso mi campo esta definido de 60 caracteres.
Se supone que trae los datos para rellenar el combo, en visual basic sería mas o menos asi
With cboCliente
.DataPropertyName = "clave"
.HeaderText = "Nombre Cliente"
.DataSource = dtcbocliente 'es una tabla de donde se extraen los datos con el stored
.DisplayMember = "descrip"
.ValueMember = "clave"
.Width = 450
.DropDownWidth = 500
End With
y para que los datos aparezcan alineados y no de la siguiente manera:
Agustín solis |001
Roberto Bolaños |002
David Lizama Ortuño |003
el combo debe tener como fuente un tipo de datos courier que es monoespaciada por lo tanto aparecera alineada.
Espero que les sea de utilidad y si conocen otra forma de hacerlos no duden en enviarme su solucion
No hay comentarios:
Publicar un comentario