Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-12-2011
hondaalberto hondaalberto is offline
Miembro
 
Registrado: sep 2010
Ubicación: República Dominicana
Posts: 67
Poder: 16
hondaalberto Va por buen camino
La lógica esta buena pero lo que necesito hacer es Tomar el número de Comprobante Fiscal desde la tabla serie y hacer el incremento de la Cadena tomando en cuenta el último utilizado, no digitarlo en un edit, porque la idea es que al momento de registrar la factura de forma automatica tengo que incrementar el Número de comprobante y asignarselo a la nueva factura.
Responder Con Cita
  #2  
Antiguo 23-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Alberto.

Lo ideal sería hacerte un procedimiento almacenado al efecto pero no conozco la sintáxis de SqlServer. Desde Delphi podrías hacer algo como:
Código Delphi [-]
function TForm1.ProxNroComprobante: string;
begin
  with TuQuery do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT NRO_COMPROBANTE FROM TABLA_SERIE'); // supongo la tabla con un registro
    Open;
    Result:= 'A0100100101' +
      StringOfChar('0', 8 - Length(FieldByName('NRO_COMPROBANTE').AsString)) +
      IntToStr(FieldByName('NRO_COMPROBANTE').AsInteger + 1 );
    Close;
  end;
end;
Donde NRO_COMPROBANTE sería el campo de la tabla (TABLA_SERIE) de donde se tóma el número de comprobante fiscal.

Ejemplo de uso:
Código Delphi [-]
   NuevaFactura.AsString:= ProxNroComprobante;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 23-12-2011 a las 18:11:17.
Responder Con Cita
  #3  
Antiguo 23-12-2011
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 15
MartinS Va por buen camino
Cita:
Empezado por hondaalberto Ver Mensaje
La lógica esta buena pero lo que necesito hacer es Tomar el número de Comprobante Fiscal desde la tabla serie y hacer el incremento de la Cadena tomando en cuenta el último utilizado, no digitarlo en un edit, porque la idea es que al momento de registrar la factura de forma automatica tengo que incrementar el Número de comprobante y asignarselo a la nueva factura.
Esta bien Alberto, la idea era que vieras como se podria recortar el numero de factura guardado que contiene letras, convertirlo en entero, sumarle uno y generar un nuevo string con el nuevo numero. Lo que dice ecfisa es correcto pero yo tampoco conozco SQL Server.

El procedimiento tambien lo puedes hacer como una funcion donde le das el numero que tenes guardado y te da el nuevo donde luego se lo pasarias como parametro para el nuevo registro.-
Responder Con Cita
  #4  
Antiguo 24-12-2011
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 23
AzidRain Va camino a la fama
Solo una pregunta que siempre termina por ser un problema cuando guardamos en algun lado la última factura generada: la concurrencia. Para un solo puesto de facturación no hay problema pero de uno a mil la cosa se complica. Lo mejor es desarollar el mecanismo de asignación directamente en el servidor o bien obtener ese último dato justo antes de guardar la factura. En MySQL por ejemplo tengo un campo autoincrementado que me mantiene todo bajo control ya que el programa cliente le pide un folio, este se lo asigna y asi continua con los demás de manera que nunca hay que llevar el control manualmente. O bien que de antemano te conste que la factura tiene el folio deseado en cuyo caso no vale la pena tal control, pero lo que comentas se trata de factura electrónica.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #5  
Antiguo 24-12-2011
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 23
AzidRain Va camino a la fama
Como recomendación, siempre que en el folio convivan letras y números hay que tratar de divirlos hasta donde se pueda, en tu caso bastan 2 campos: serie (char) y folio (longint), tanto por código como por SQL puedes hacer la concatenación para obtener el código completo y te olvidas de conversiones más adelante
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Convertir numero en cadena rex JAVA 7 25-10-2007 03:28:11
Modulo de un numero real Apetelinau Varios 1 11-09-2007 13:47:42
Funcion para buscar cadena dentro de otra cadena y el numero de veces flystar Varios 3 02-07-2007 22:48:08
Como sumar un campo entero y un real Maury Manosalva OOP 2 31-05-2007 19:41:14
Insertar Numero Real en Access Franklim SQL 1 03-04-2004 15:11:40


La franja horaria es GMT +2. Ahora son las 00:36:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi