Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-12-2008
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Insertar un dato a una tabla desde fastreport 4

Hola a todos

Alguno de uds. a logrado insertar un dato a una tabla desde fastreport es decir
Imaginemonos que es un informe de cuatro paginas cada vez que la pagina termina el valor que esta incluya al final de la misma debe ser insertada a una tabla

Ej. una factura tiene 4 paginas de impresion , el final se encuentra la base Imponible , el iva , base Iva cero , pues bien esos datos son los que quiero capturar y grabarlos

la segunda opcion . el objeto del reporte trae un evento que indica cuando una pagina termina pero bien como le paso del reporte a este evento los valores para insertarlos que seria lo que ando buscando ..

Gracias por su tiempo e interes a leer este pedido
__________________
IVAND
Responder Con Cita
  #2  
Antiguo 10-12-2008
hecospina hecospina is offline
Miembro
 
Registrado: oct 2007
Posts: 202
Poder: 17
hecospina Va por buen camino
Hola
Ivand
Yo he insertado y modificado registros al dar la vista previa al reporte, pero no es algo que recomiende hacer ya que cada vez que se de la vista previa o impresion el sistema ejecuta el sql de insercion duplicando los registros
Si a pesar de esto te interesa te puedo dar un dato de como hacerlo
Responder Con Cita
  #3  
Antiguo 10-12-2008
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Gracias por tu respuesta , si fueras tan amable en darme una idea te lo agradeceria , la otra manera que estoy intentado es leer una variable desde delphi com el metodo findobject pero me retorna el texto de este campo y seria que me retorne es el valor (en este memo hay una formula de suma)


En espera de tu respuesta te quedo muy agradecido
__________________
IVAND
Responder Con Cita
  #4  
Antiguo 14-12-2008
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Hola hescopina ,

Espero no te incomode pero me podrias guiar un poquito en lo de insertar un datos a una tabla desde fastreport


Gracias
__________________
IVAND
Responder Con Cita
  #5  
Antiguo 17-12-2008
hecospina hecospina is offline
Miembro
 
Registrado: oct 2007
Posts: 202
Poder: 17
hecospina Va por buen camino
Hola IVAND
Que pena la demora pero he estado un poco ocupado y sin internet

Empecemos
te voy a hacer un ejemplo donde se inserta codigo, nombre y valor en una tabla

Primero debes crear la variables de los valores que deseas insertar
Desde la pestaña codigo debes adicionar las siguentes lineas

Código Delphi [-]
Var
codigo:string;
nombre:string;
valor:string;

esto antes del begin

Despues debes crar el ibxquery para la insercion
desde la ventana data o datos adicionas un ibxquery

Código SQL [-]
insert into tabla (codigo,nombre,valor) values (:cod,:nom,:vlr)

alli con el boton parametros asignas a estos parametros el valor de las variables creadas

Por ejemplo

PARAMETRO ------- TIPO DE DATO ------- VARIABLE
COD -------------- STRING-----------------<CODIGO>
NOM--------------- STRING-----------------<NOMBRE>
VLR---------------- CURRENCY--------------<VALOR>

tercero utilizando el evento before print de una banda, en mi caso utilizo un pie de pagina o un pie de grupo, eso depende del reporte

Para asignar el evento debes hace clic en la banda y oprimir la tecla F11, aparece el inspector de objetos y alli la pestaña eventos, haces dobleclic en el beforeprint y adicionas el siguiente codigo

Código SQL [-]
codigo:=memo1.value;
nombre:=memo2.value;
valor:=memo3.value;
ibxquery1.open;

Memo1, memo2 y memo3, son los memos donde se almacena los valores a ser insertados
Ibxquery1 es la instruccion de insercion creada en el segundo paso

Espero te ayude a resolver tu problema

Yo personalmente no lo utilizo por los problemas de duplicidad de datos y violacion a llaves primarias, al realizar una nueva impresion

De nuevo disculpas por la tardanza

Responder Con Cita
  #6  
Antiguo 18-12-2008
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Hola Hescopina , nuevamente gracias por tu tiempo , te cuento que mas o menos era lo que yo habia investigado , solo tengo una pregunta para que los datos que insertas se vean reflejados en la base despues de la impresion como le haces , ahora lo que hago es cerrar el aplicativo y ahi me muestra los cambios recien , es decir que falta un commitretaing desde el fastreport

Aqui te pongo lo que yo he echo


Código Delphi [-]
procedure Memo4OnBeforePrint(Sender: TfrxComponent);
begin
    if Engine.FinalPass then
     Begin                            
      ibx.Close;                    
      IBX.ParamByName('Val').Value:=Get();
      IBX.ExecSQL;
      ibx.Open;                    
    End;              
end;


Lo que ahora no puedo es ver los datos directamente como cuando uno hace commitretaining

Nuevamente gracias por tu tiempo , felicez fiestas
__________________
IVAND
Responder Con Cita
Respuesta



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
Insertar dato en Tabla Paradox Abuelo7 Conexión con bases de datos 11 09-10-2008 23:09:12
Insertar datos en una tabla desde consulta en un SP subzero MS SQL Server 2 05-12-2007 16:18:19
insertar desde una tabla externa sidneyb SQL 3 03-12-2007 13:43:37
insertar datos en una tabla desde fichero XML??? mguixot Conexión con bases de datos 2 17-05-2006 16:18:04
insertar datos en una tabla desde otra Giniromero SQL 5 17-06-2004 19:37:16


La franja horaria es GMT +2. Ahora son las 13:24:24.


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