Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-11-2004
Phacko Phacko is offline
Miembro
 
Registrado: jul 2004
Posts: 157
Poder: 23
Phacko Va por buen camino
Continuo en lo mismo

Muchas gracias por su ayuda, pero aun sigo con el mismo problema, probe lo que me sugirieron y nada. No he entendido como es que debo hacer referencia a los valores en cada campo, ya trate de la siguiente manera:
NombreComponenteTTableNombredelCampo.Value:=NombreComponenteTTableNombredelCampo.Value*......
por ejemplo: TablaPInicio.Value:=TablaPCantidad.Value*TablaPPrecio.Value;
manda mensaje diciendo que TablaPInicio no esta declarado.

Y de esta otra forma:
TablaP['inicio'].Value:=TablaP['Cantidad'].Value*TablaP['Cantidad'].Value;
Tambien de esta forma:
TablaP['inicio'].AsFloat:=TablaP['Cantidad'].AsFloat*TablaP['Precio'].AsFloat
y en ambos casos manda el siguiente error "Variant does not reference an automation object"

En otra parte del programa donde se capturan los datos de clientes, empleo lo siguiente:
Tabla.FieldByName('Nombre').AsString:=ENombre.Text;
y me trabaja muy bien, trate con esto y nada. Elimine todo del form y comence nuevamente pero sigue lo mismo, estoy que me jalo los pelos, bueno ya me los arranque, que puede ser????.

Gracias por su ayuda, si tuvieran alguna idea de lo que pasa, se los agradesco como no tienen idea, que me lo hagan saber.
Responder Con Cita
  #2  
Antiguo 04-11-2004
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Como bien dices hay 400 formas de acceder a un campo. La que se está usando en este hilo debe seguir una pequeña norma.

das doble clic en la tabla, boton derecho y añadir campos (tener todos los campos ahí es lo que se conoce como "Campos persistentes").

Despues de esto, Si la tabla está en un datamodule llamado DTM y la tabla se llama Table1 y el campo CostoCompra haremos referencia como:

DTM.TAble1CostoCompra.AsXXX


Añadir que si usas Value estarás trabjando con tipos Variants, si pones AsXXXX usarás el tipo concreto que quieras, para este caso, creo conveniente usar AsCurrency o AsFloat

Saludos

Un detalle más, si modificas el nombre de un campo en la base de datos, o bien creas uno nuevo, deberás volver a añadir los campos persistentes para que Delphi se actualice.

Última edición por Lepe fecha: 04-11-2004 a las 11:34:18.
Responder Con Cita
  #3  
Antiguo 04-11-2004
Phacko Phacko is offline
Miembro
 
Registrado: jul 2004
Posts: 157
Poder: 23
Phacko Va por buen camino
De ninguna forma.....

Gracias por su ayuda, pero continuo con el mismo problema.

Estoy haciendo lo que me han indicado en un nuevo proyecto, para evitar vicios que tenga en el proyecto anterior.

Tengo una tabla "Operaciones.db" y un componente TTable "Table1" en la form y un "DBGrid1", los campos de la tabla son: Nombre, Salario, Dias, Neto.

Capturo nombre, salario y dias y nada que se actualiza el campo "Neto" con la operacion de Salario*Dias, lo hago de la siguiente forma:

Table1Neto.AsInteger:=Table1Salario.AsInteger*Table1Dias.AsInteger;

con lo que me da el siguiente error:
[Error] Unit1.pas(46): Undeclared identifier: 'Table1Neto'

Que estoy haciendo mal????

Gracias.
Responder Con Cita
  #4  
Antiguo 04-11-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Pues el error está bien claro, o el componente Ttable, no se llama Table1 o bien el campo en cuestión
no se llama neto.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 05-11-2004
Phacko Phacko is offline
Miembro
 
Registrado: jul 2004
Posts: 157
Poder: 23
Phacko Va por buen camino
Lo he verificado

Gracias Marcos, pero en efecto son sus nombres, de hecho pense en esa posibilidad y después de verificar 2 ocaciones opté por seleccionar copiar y pegar los nombres y adivina... lo mismo, ya no me da error (algo que movi...) pero no pasa nada en la tabla.
Responder Con Cita
  #6  
Antiguo 05-11-2004
Javier Buendia Javier Buendia is offline
Registrado
 
Registrado: jun 2003
Posts: 5
Poder: 0
Javier Buendia Va por buen camino
Mira a ver si el error esta en los campo persistentes

Pues eso que revises los campos persistentes del tTable,
de todas formas el codigo lo tienes que situar en el evento beforepost del tTable

Un Saludo


Cita:
Empezado por Phacko
Gracias por su ayuda, pero continuo con el mismo problema.

Estoy haciendo lo que me han indicado en un nuevo proyecto, para evitar vicios que tenga en el proyecto anterior.

Tengo una tabla "Operaciones.db" y un componente TTable "Table1" en la form y un "DBGrid1", los campos de la tabla son: Nombre, Salario, Dias, Neto.

Capturo nombre, salario y dias y nada que se actualiza el campo "Neto" con la operacion de Salario*Dias, lo hago de la siguiente forma:

Table1Neto.AsInteger:=Table1Salario.AsInteger*Table1Dias.AsInteger;

con lo que me da el siguiente error:
[Error] Unit1.pas(46): Undeclared identifier: 'Table1Neto'

Que estoy haciendo mal????

Gracias.
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


La franja horaria es GMT +2. Ahora son las 14:36:22.


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