![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Muchas Gracias por responder olbeup, muy buena respuesta,
Pero Creo que me falto algo por especificar en el primer mensaje y es lo siguiente; El sistema tiene una tabla en donde se guardan los numeros de serie de los comprobantes Fiscal, los cuales los autoriza una institucion del Gobierno, estos son guardados en la base de datos con la siguiente estructura: Tabla Numeros de Serie: Num_Inicial Num_Final Ultimo_Num_Utilizado A010010010100000001 A010010010100000050 A010010010100000012 Entonces cuando se hace una nueva factura de ventas al numero que hay almacenado en el campo último número utilizado es al que debo hacerle el incremento en uno(1) para asignar ese nuevo numero a la nueva factura emitida y guardar el nuevo nuevo en el campo último utilizado. Ej: a la Nueva Factura que se emita le corresponderia el número A010010010100000013 que es igual a A010010010100000012+1. Gracias de Antemano Última edición por hondaalberto fecha: 17-02-2011 a las 15:35:37. |
#2
|
||||
|
||||
Lo único que tienes que hacer es crear un nuevo campo que se llama IDFACTURAULTIMA, donde IDFACTURAULTIMA = (IDFACTURA -1), en SQL SERVER hay una variable que se llama @IDENTITY que es el valor de (IDFACTURA) que ha tomado en tu ordenador, independientemente de los demás ordenadores que estén realizando facturas, éste número que te ha dado, lo actualizas en el IDFACTURAULTIMA.
EJ. Lo bueno que tiene SQL SERVER, es que puedes introducir más de una secuencia SQL SERVER. Espero que te sirva. Un saludo. |
#3
|
|||
|
|||
Tengo el mismo problema
segun el nuevo regimen de facturacion tiene que ser asi N°:000-002-01-00000001, el corelativo N°:000-002-01-00000001 donde los primeros 8 digitos no son cambiantes N°:000-002-01- los ultimos 8 si 00000001 no es podido lograr rellenar con ceros ahora de imprimir la factura sale de la siguiente manera N°:000-002-01-1 y asi N°:000-002-01-2, N°:000-002-01-3...N°:000-002-01-100 pero no he podido hacer que se rellene los ceros a la izquierda, necesito me pueda ayudar por favor, tengo una plantilla en xml de la siguiente forma.
SUB: PrintTransactionType ============================= --> <SUB name="PrintTransactionType"> <TABLE> <FONT> "Large" </FONT> <BORDER> tbNone </BORDER> <COLUMNHEADER> <ALIGNMENT> "^" </ALIGNMENT> <WIDTH> PageWidth </WIDTH> <IF> <CONDITION> Transaction.Type = transactionPayout </CONDITION> <THEN> <TEXT> "GASTO"</TEXT> </THEN> <ELSE> <IF> <CONDITION> Transaction.Type = transactionDrop </CONDITION> <THEN> <TEXT> "RETIRO DE EFECTIVO"</TEXT> </THEN> <ELSE> <IF> <CONDITION> Transaction.ReceiptReturnMode = TRUE </CONDITION> <!--REGIMEN DE FACTURACION--> <THEN> <TEXT> "DEVOLUCION"</TEXT> </THEN> <ELSE> <IF> <CONDITION> (Transaction.Type = transactionAccountPayment) </CONDITION> <THEN> <TEXT> "ABONO A CUENTA" </TEXT> </THEN> <ELSE> <IF> <CONDITION> Transaction.Total > 0 </CONDITION> <THEN> <TEXT> Transaction.ReceiptTransactionName </TEXT> </THEN> <ELSE> <TEXT> "ANULAR/DEVOLUCION" </TEXT> </ELSE> </IF> </ELSE> </IF> </ELSE> </IF> </ELSE> </IF> </ELSE> </IF> </COLUMNHEADER> <!--REGIMEN DE FACTURACION--> <IF> <CONDITION> Transaction.Type <> transactionDrop & Transaction.Type <> transactionPayout & Transaction.Type <> transactionNoSale & Transaction.Type <> transactionAccountPayment & Transaction.Type <> transactionQuote & Transaction.Type <> transactionworkorder & Transaction.Type <> transactionlayaway </CONDITION> <THEN> <ROW> Session.Variable9 </ROW> </THEN> <ELSE> <IF> <CONDITION> Transaction.ReceiptReferenceNumber </CONDITION> <THEN> <ROW> Session.Variable9 </ROW> </THEN> <ELSE> <ROW> Transaction.ReceiptTransactionNumber </ROW> </ELSE> </IF> <!--<ROW> Transaction.ReceiptTransactionNumber </ROW>--> </ELSE> </IF> </TABLE> <TABLE> <BORDER> tbNone </BORDER> <COLUMNHEADER> <ALIGNMENT> "<~" </ALIGNMENT> <WIDTH> PageWidth * 0.60 </WIDTH> <TEXT> "" </TEXT> </COLUMNHEADER> <COLUMNHEADER> <ALIGNMENT> "<~" </ALIGNMENT> <WIDTH> PageWidth * 0.50 </WIDTH> <TEXT> "" </TEXT> </COLUMNHEADER> <IF> <CONDITION> Transaction.ReceiptReferenceNumber </CONDITION> <THEN> <ROW> Transaction.ReceiptReferenceNumberCaption </ROW> </THEN> </IF> <ROW>"N°:000-002-01-" Transaction.ReceiptTransactionNumber </ROW> <!--REGIMEN DE FACTURACION--> <IF> <CONDITION> Len(Customer.AccountNumber) </CONDITION> <THEN> <ROW> "RTN:" Customer.AccountNumber </ROW> </THEN> </IF> <ROW> "Cliente:" Customer.Name </ROW> <ROW> "Dirección:" Customer.HomeAddress.Company </ROW> <ROW> "Fecha: " Transaction.Date "|H:"Transaction.Time </ROW> <ROW> "Cajero: " Cashier.Number "|Caja #: " Register.Number </ROW> <SET name="Vendedor" custom="False" description="w" type="vbLong">1</SET> <FOR each="entry"> <IF> <CONDITION> Vendedor = 1 & len(Entry.Salesrep.Name) </CONDITION> <THEN> <ROW> "Vendedor: "Entry.Salesrep.Name "|" "Artículos: " Transaction.TotalQuantity </ROW> <SET name="Vendedor" custom="False" description="w" type="vbLong">2</SET> </THEN> </IF> </FOR> </TABLE> </SUB> <!-- |
#4
|
||||
|
||||
Bienvenido a clubdelphi, como siempre aconsejamos a los nuevos, no olvides leer nuestra guía de estilo, gracias por tu colaboración
![]() Recuerda poner los tags al código fuente, ejemplo: ![]() |
#5
|
|||
|
|||
gracias por responder, no se mucho de programacion, lo que he hecho es tomar camandos de otras plantillas y asi las he modificado a mi conveniencia, necesito me pueda ayudar, creo donde tengo que agregar algun comando es en esta parte de la plantilla si me puede ayudar por favor dandome el ejemplo, se lo agradezco ante mano. ya que a la hora de imprimir la factura sale de esta maneraN°:000-002-01-1 y el que sigue N°:000-002-01-2, N°:000-002-01-3 y lo necesito a si N°:000-002-01-00000001, N°:000-002-01-00000002 ............. N°:000-002-01-00000200......... N°:000-002-01-00001495 lo que necesito que cambie son los ultimos 8 digitos.
<CONDITION> Transaction.ReceiptReferenceNumber </CONDITION> <THEN> <ROW> Transaction.ReceiptReferenceNumberCaption </ROW> </THEN> </IF> <ROW>"N°:000-002-01-" Transaction.ReceiptTransactionNumber </ROW> <!--REGIMEN DE FACTURACION--> |
#6
|
|||
|
|||
Ayuda ceros a la izquierda
gracias por responder, no se mucho de programacion, lo que he hecho es tomar camandos de otras plantillas y asi las he modificado a mi conveniencia, necesito me pueda ayudar, creo donde tengo que agregar algun comando es en esta parte de la plantilla si me puede ayudar por favor dandome el ejemplo, se lo agradezco ante mano. ya que a la hora de imprimir la factura sale de esta maneraN°:000-002-01-1 y el que sigue N°:000-002-01-2, N°:000-002-01-3 y lo necesito a si N°:000-002-01-00000001, N°:000-002-01-00000002 ............. N°:000-002-01-00000200......... N°:000-002-01-00001495 lo que necesito que cambie son los ultimos 8 digitos.
<CONDITION> Transaction.ReceiptReferenceNumber </CONDITION> <THEN> <ROW> Transaction.ReceiptReferenceNumberCaption </ROW> </THEN> </IF> <ROW>"N°:000-002-01-" Transaction.ReceiptTransactionNumber </ROW> <!--REGIMEN DE FACTURACION--> |
#7
|
||||
|
||||
Cita:
En el mensaje #2 viene como poner ceros a la izquierda, si lo primeros números son fijos pues es sencillo. Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber. |
#8
|
|||
|
|||
ceros a la izquierda
gracias por apoyarme
como dije en el foro no se de programacion, los datos que me envio los introduje en el fichero, y me da un mensaje que el archivo no puede ser un fichero de xml. uso el sql server 2005, me hara falta algun dato o puede ayudar a hacer el fichero o como colo segun estos datos <CONDITION> Transaction.ReceiptReferenceNumber </CONDITION> <THEN> <ROW> Transaction.ReceiptReferenceNumberCaption </ROW> </THEN> </IF> <ROW>"N°:000-002-01-" Transaction.ReceiptTransactionNumber </ROW> <!--REGIMEN DE FACTURACION--> como coloco lo que me envio en lo anterior var facturaStr: String; begin with ADOQuery1 do facturaStr := FieldByName('SERIE').AsString + '000-002-' + FormatFloat('00000000', FieldByName('IDFACTURA').AsInteger); end; tengo que cambiar algo donde dice factura? |
#9
|
||||
|
||||
Bienvenido a clubdelphi, como siempre aconsejamos a los nuevos, no olvides leer nuestra guía de estilo, gracias por tu colaboración
![]() Recuerda poner los tags al código fuente, ejemplo: ![]() |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
ncf Numero de comprobante fiscal | jandj | Varios | 2 | 19-12-2012 21:48:04 |
Cómo incrementar fecha meses/dias con SQL/Firebird 2.1 | Tcmn | Firebird e Interbase | 2 | 11-10-2010 20:00:46 |
conocer el numero de licencias en SQL Server | sinalocarlos | MS SQL Server | 2 | 12-01-2007 18:12:52 |
Impresora Fiscal y Delphi 5 como? | guiweb | Varios | 0 | 20-07-2006 18:41:37 |
Inserción de comprobante | Ulises | Providers | 0 | 25-07-2003 04:15:13 |
![]() |
|