incrementar de esta manera -->

Iniciado por brenda hg, 14 Febrero 2008, 21:11 PM

0 Miembros y 1 Visitante están viendo este tema.

brenda hg

holas amigos!, necesito un poco de su ayuda =(, me dejaron hacer en visualstudio.net una factura, ia lo hice i todo el programa compila iaa bien xvr  ;D, peroo....
una de las caracteristicas q tiene la factura es q cuando viene x ejm un cliente nuevo, tiene q incrementar el numero de factura verdad??, ia bueno eso tb esta , el inconveniente es q  me piden q se muestre de esta manera x ejm:

Nº DE FACTURA : 0001 , asii de ese modelo. (El q me sale es N' DE FACTURA : 1)
es decir 4 cifras, i obviamente q empezando de la menor 0001,0002,0003,------>i asii sucesivamente, podrian ayudarme con algun codigo, o alguna propiedad q hubiera??, x fa!! les staria muyy agradecida =)
...LA GLORIA SE PUEDE ALCANZAR...!!

elmaro

Es sencillo. Eso te lo muestra un Label, un TextBox o que?

Sea lo que sea, lo que tienes que hacer es darle formato utilizando mascaras como en excel asi:

.ToString("0000")

Y listo.

Espero te sirva, un saludo.

brenda hg

Cita de: elmaro en 15 Febrero 2008, 01:22 AM
Es sencillo. Eso te lo muestra un Label, un TextBox o que?

Sea lo que sea, lo que tienes que hacer es darle formato utilizando mascaras como en excel asi:

.ToString("0000")

Y listo.

Espero te sirva, un saludo.

holas!! nuevamente ,mmm  weno si lo  q  pido q sea mostrado es en un label, pero me puedes explicar el procedimiento con string? , o como lo entendiste x fa!  ;), mientras seguire buscando otra forma O_o o la q  me propones vale!
saludos!
...LA GLORIA SE PUEDE ALCANZAR...!!

43H4FH44H45H4CH49H56H45H

#3
ToString Converts a numeric value chain, in your case
I have to go. Goodbye

-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W

DarkSatriani

es simple. obten el dato, imaginemos que es la factura 50, entonces lo que haces es, varnumero (variable con el numero de factura)
numero = "0000" & varnumero.toString()  (obvio que la variable numero tiene que ser del tipo string)
Only an Extremist.

Hadess_inf

#5
CitarCaso I
Dim a As Integer = 11
Dim cod As String = "0000".Substring(0, 4 - a.ToString.Length) & a
MsgBox(cod)

CitarCaso II
dim da as sqldataadapter
dim con as sqlconnection
dim dtb as data.datatable

function generacodigo() as string
da = new sqldataadapter("select count(*)+1 as [num] from factura",con)
dtb = new data.datatable
da.fill(dtb)
dim num as integer = dtb.rows(0)("num").tostring
dim cod as string = "0000".substring(0, 4 - num.tostring.length) & num
return cod
end function

SUb Form_Load (...)
msgbox generacodigo
end sub

CitarCaso III
dim da as sqldataadapter
dim con as sqlconnection
dim dtb as data.datatable

function generacodigo() as string
da = new sqldataadapter("select * from factura",con)
dtb = new data.datatable
da.fill(dtb)
dim num as integer = dtb.rows.count + 1
dim cod as string = "0000".substring(0, 4 - num.tostring.length) & num
return cod
end function

SUb Form_Load (...)
msgbox generacodigo
end sub

PD: Recordar que el 4 de color rojo, representa el tamaño del codigo, en este caso el codigo es de 4 digitos, si fuese mayor o menor se debera cambiar ese valor.

PD: Recordar que puedes poner digitos alfanumericos, podria ser FA0001, y si ese fuese el caso el valor que se indica de color Rojo, tendria que ser del tamaño de tu cadena.

PD: Recordar tambien que la consulta puede cambiar, segun lo que desees, mientras que en el primer caso cuentas cuantos registros hay para luego filtrar unicamente el campo num(dtb.rows(0)("num").tostring), en el segundo muestras todos para luego contarlos con el dtb.rows.count. Particularmente prefiero usar la primera opcion.

Debido a que es un ejemplo deberas configurar tu cadena de conexion para la variable con, la declaracion e instanciar las mismas. Tampoco olvides agregar la libreria (imports System.Data.SqlClient).

Saludos, espero que te sirva.