Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-06-2006
crack_neon crack_neon is offline
Miembro
 
Registrado: abr 2006
Posts: 28
Poder: 0
crack_neon Va por buen camino
Cool Refrescar Olecontainer

Hola, tengo un problemita que me esta sacando canas ojala me ayudan a no quedar viejo.


El detalle es que uso un olecontainer para abrir una hoja de excel y modificarla y despues pasar los datos a una tabla. Hasta ahi todo esta bien.

El problema es que cuando quiero enviar datos de mi tabla a la hoja excel, los datos son posicionados correctamente (hasta eso) pero el olecontainer no me muestra el excel actualizado, asi que tengo que abrir la hoja en excel y verificar que mis datos ahi están, cosa que no me sirve pues necesito modificar nuevamente los datos desde mi forma y desde mi olecontainer para luego pinchar un boton y volver a guardar en mi tabla.

Ya he buscado como refrescar, pero no encuentro ninguna propiedad que me lo permita. Estoy seguro que habrá alguna, pero les pido porfavor que me orienten nada mas.

Recapitulando, por si no me explique bien. lo que quisiera es algo similar como si refrescaramos un adotable:

ADOTable1.active:=false;
ADOTable1.active:=true;

Ya saben lo que pasa con eso, ¿Pero en un olecontainer como le hago??

ya probe con: olecontainer1.refresh; y tampoco funciona


De antemano gracias. Y un saludo.

Última edición por crack_neon fecha: 20-06-2006 a las 22:58:43.
Responder Con Cita
  #2  
Antiguo 20-06-2006
Avatar de waltergomez
waltergomez waltergomez is offline
Miembro
 
Registrado: may 2006
Posts: 202
Poder: 18
waltergomez Va por buen camino
Probastes con el metodo UpdateObject ?
Saludos,
Responder Con Cita
  #3  
Antiguo 21-06-2006
crack_neon crack_neon is offline
Miembro
 
Registrado: abr 2006
Posts: 28
Poder: 0
crack_neon Va por buen camino
Gracias, lo acabo de probar pero tampoco funciona. he aqui el codigo q uso

Código Delphi [-]
<div align="left">procedure TfrmSelecTermoformado.FormShow(Sender: TObject);
var
  i: integer;
begin
  i:=13;
  if frmCrearCocina.modificarFrentes=true then
     begin

      Excel := CreateOleObject('Excel.Application');
      Excel.Workbooks.Open('C:\Maxi Cocinas\CotizacionMarlik.xls');
       application.MessageBox('manda parametro modificar', 'Atención', mb_YesNo+mb_iconinformation);

       frmCrearCocina.ADQAcumFrentes.first;
       while not frmCrearCocina.ADQAcumFrentes.eof do
          begin
//           Excel.Cells[i,4].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('id_frente').AsString; //Copy(ADQModulos.id_modulo,1,2)
            Excel.Cells[i,1].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('c_frente').Asinteger;
            Excel.Cells[i,2].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('descripcion').AsString;
           Excel.Cells[i,3].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('modelo').AsString;
            Excel.Cells[i,5].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('color').AsString;
            Excel.Cells[i,7].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('altura').AsString;
            Excel.Cells[i,8].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('ancho').AsString;
            Excel.Cells[i,10].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('veta').AsString;
            Excel.Cells[i,11].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('ambos_lados').AsString;
            Excel.Cells[i,'W'].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('c_jaladeras').AsString;
            Excel.Cells[i,'AF'].Value:= frmCrearCocina.ADQAcumFrentes.FieldByName('c_precio_total').AsString ;
            frmCrearCocina.ADQAcumFrentes.next;
            i:=i+1;
          end;
        Excel.quit;
 
      //Refresco el olecontainer para que me muestre los nuevos datos
     olecontainer1.UpdateObject;
 

     end;
end;

 div>
Responder Con Cita
  #4  
Antiguo 21-06-2006
crack_neon crack_neon is offline
Miembro
 
Registrado: abr 2006
Posts: 28
Poder: 0
crack_neon Va por buen camino
Problema resuelto.

Un saludo a todos, como es de costumbre aqui les pongo cual era todo el embrollo del asunto, para poder actualizar los nuevos datos de excel en el olecontainer:


Código Delphi [-]
olecontainer1.DestroyObject;
olecontainer1.CreateObjectFromFile('C:\carpeta\archivo.xls',true);
olecontainer1.Update;






Solo era necesario destruir el objeto y volver a crearlo desde archivo, el update es opcional, pero ahi lo dejo por si las moscas.

Si alguien algun día se pasa 2 dias pensando en el mismo problema, ojala le sirva esta solución.
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
Olecontainer de Excel en Delphi 6 drakan2k3 Servers 2 08-12-2006 20:20:32
Problemas con OleContainer i word alextm75 Varios 0 04-05-2006 17:22:14
OleContainer + HotkeyManager Ronnie Varios 0 02-12-2005 11:17:07
Problemas Con OleContainer mauriciofox OOP 0 13-03-2005 15:52:54
OleContainer altp OOP 2 05-07-2004 18:32:52


La franja horaria es GMT +2. Ahora son las 19:05:16.


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