Como le coloco rango de números a la factura en access

En el formulario factura con su respectivo subformulario facturadetalle, en el formulario factura tengo el campo No-factura., sin embargo por regulación estatal debemos colocar un rango de números a las facturas por ejemplo del numero 2000 al numero 5000 con un prefijo a este rango de una letra como la A.

El problema que tengo es que el campo es numero entero pero no he podido solucionar como introducir la numeración dada por el ente regulador en el campo NoFac, donde me inicia en 1, debiendo iniciar en 2001. Me gustaría colocarlo mediante otro formulario donde tengo Números de facturas.

2 Respuestas

Respuesta
1

Creo que hay una solución bastante simple...
Consiste en crear una consulta "de actualización" de dicho campo, indicándole que sume 2000 al campo No-Factura.

La consulta a realizar es esta (en Código SQL -copia el código tal cual-)

UPDATE [Tabla-Facturas] SET No-Factura= No-Factura + 2000;

Con esto, resuelves el problema del cambio de numeración en cuestion de 1 segundo....  o 2 segundos, como mucho...

Perdón... Se me olvidaba comentar que debes reemplazar el nombre de la  [Tabla-Facturas] por el correspondiente nombre que tengas tu para la tabla de las facturas.

Gracias por tu oportuna respuesta, te complemento mi planteamiento tengo el formulario factura, también he creado una tabla llamada numeración factura, con los campos IdNoFac, Fecharesolucion, Resolución, NoInicial, NoFinal, y prefijo donde he registrado la información con la que me otorgan el rango de números de facturas además del prefijo literal, la letra, con esta información registrada en la tabla, desearía con un formulario actualizar la numeración de las facturas al formulario facturas con el nuevo rango y literal..

Agradezco tu colaboración.

No entiendo muy bien tu planteamiento, pero imagino que lo que ya tienes, es una tabla con la numeración de las facturas ya cambiadas, y pretendes cambiarla en la tabla de facturas... ¿Es así?

Si es así, para poder enlazar dos formularios, necesitas un campo común... Por tanto, el numero de factura no te sirve porque es diferente (o será diferente cuando lo cambies).

En caso de que esto no sea así, te rogaría que coloques aqui una captura de pantalla con las explicaciones oportunas para que te podamos entender mejor...

Respuesta
2

Puedes hacerlo de varias formas. Pongo uno imaginándome como la tienes.

Supongamos que en este momento ya tienes varios registros con los Nº-Factura 1, 2, 3 etc.

A la tabla Facturas añádele un campo texto llamado NFactura

En el encabezado del formulario puedes poner un botón de comando y en sus Propiedades-eventos.al hacer clic crear un procedimiento de evento y entre Private Sub y End Sub poner

DoCmd.GoToRecord , , acFirst
Dim i As Integer
For i = 1 To Form.Recordset.RecordCount
[Nfactura] = (2000 + [No-Factura]) & "-" & "A"
DoCmd.GoToRecord , , acNext
Next

Cuando pulses el botón se irá al primer registro, en el cuadro de texto NFactura te aparecerá 2000 + 1( o el valor que sea)-A

Se irá al siguiente registro y te hará lo propio y así hasta el final. Luego ya puedes borrar el campo numérico No-Factura y poner como clave el campo Nfactura

Después ( lo que yo haría) sería borrar el botón y poner, en el evento Al activar el registro del formulario

If isnull([nfactura] then

nfactura=(2000 + dcount("nfactura","facturas"))&"-"&"A"

Así, cuando vayas a un registro nuevo si Nfactura está en blanco( que lo estará)contará cuantos Nfacturas tienes hechos ya, le sumará 2000 y le añade la A

Gracias por tu oportuna respuesta, te complemento mi planteamiento tengo el formulario factura, también he creado una tabla llamada numeración factura, con los campos IdNoFac, Fecharesolucion, Resolución, NoInicial, NoFinal, y prefijo donde he registrado la información con la que me otorgan el rango de números de facturas además del prefijo literal, la letra, con esta información registrada en la tabla, desearía con un formulario con el cual pueda actualizar la numeración de facturas al formulario facturas con el nuevo rango y literal..

Agradezco tu colaboración.

Marco, creo que lo mejor, si quieres, repito, si quieres, es que me mandes un mensaje(sólo el mensaje) a [email protected] y te mando un ejemplo.

Si lo haces, en el asunto del mensaje pon tu alias MarcoFarfan, ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas