Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-09-2008
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: may 2008
Ubicación: Bogotá
Posts: 527
Poder: 17
TOPX Va camino a la fama
Yo le entiendo y disculpará mi insistencia, pero creo que sí le sirve. Pues, nada obliga el uso de TTable, siendo que puede hacer algo así:

Código PHP:
  $this->Query1->Open();
  
$this->Query1->Append();
  
//$this->Query1->CampoX = "0";
  
$this->Query1->Post(); 
Sólo estando pendiente de la propiedad TableName.
__________________
"constructive mind, destructive thoughts"
Responder Con Cita
  #2  
Antiguo 04-09-2008
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Cita:
Empezado por TOPX Ver Mensaje
Yo le entiendo y disculpará mi insistencia, pero creo que sí le sirve. Pues, nada obliga el uso de TTable, siendo que puede hacer algo así:

Código PHP:
  $this->Query1->Open();
  
$this->Query1->Append();
  
//$this->Query1->CampoX = "0";
  
$this->Query1->Post(); 
Sólo estando pendiente de la propiedad TableName.
En primer lugar creo que para un Query no puede usarse para editarse, hice la prueba a como tu lo explicas y no jala de esa forma:
Código PHP:
  //Actualizamos Campo
  
$this->ibQryCliente->Edit;
  
$this->ibQryCliente->DIASCRED $this->edDiasCred->Text;
  
$this->ibQryCliente->Post
Marca el Siguiente Error:

Código:
Application raised an exception class EPropertyNotFound with message 'Trying to access non-existant 
property IBQuery->Edit in interbase.inc.php, line 701.'
El error es porque el Query no tiene esa propiedad para editar

Y Ni de esta manera:

Código PHP:
  //Actualizamos Campo quitando ->EDIT
  
$this->ibQryCliente->Fields['DIASCRED'] = $this->edDiasCred->Text;
  
$this->ibQryCliente->Post
Marca el siguiente errror:

Código:
 
Application raised an exception class EPropertyNotFound with message 'Trying to access non-existant property IBQuery->Post in interbase.inc.php, line 701.'
Por lo tanto creo que un Query no sirve para actualizar registros ....
__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King

Última edición por AGAG4 fecha: 04-09-2008 a las 23:48:06. Razón: Corrección
Responder Con Cita
  #3  
Antiguo 04-09-2008
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Mira, tengo un formulario donde muestro los datos de X cliente, por ejemplo:

Código -> Campo donde se capturará el código del cliente

Nombre,
Dirección,
RFC,
Población,

Dias de Credito,
Limite de Credito

Los 2 ultimos campos son editables es decir solo se pueden modificar, tengo un boton que se llama Consultar, dentro de ese boton tengo lo siguiente para buscar el código del cliente:

Código PHP:
 
  
//Armamos Select
  
$Sql='SELECT NUMCLI,NOMCLI,DIRCLI,RFCCLI,CPCLI,POBCLI,
          DIASCRED,LIMITECR FROM CLIENTES'
;
  
$this->ibQryCliente->Sql=$Sql;
  
$this->ibQryCliente->Filter=" NUMCLI >= ".$this->edNumCli->Text.
            and NUMCLI <="
.$this->edNumCli->Text."";
 
  
//Preparamos Query
  
$this->ibQryCliente->Prepare();
  
  
//Reabrimos Query
  
$this->ibQryCliente->close();
  
$this->ibQryCliente->open();
 
  
//Mostramos Datos del Cliente
  
$this->edNomCli->Text $this->ibQryCliente->Fields['NOMCLI'];
  
$this->edDirCli->Text $this->ibQryCliente->Fields['DIRCLI'];
  
$this->edPobCli->Text $this->ibQryCliente->Fields['POBCLI'];
  
$this->edRFCCli->Text $this->ibQryCliente->Fields['RFCCLI'];
  
$this->edCPCli->Text  $this->ibQryCliente->Fields['CPCLI'];
  
$this->edDiasCred->Text      $this->ibQryCliente->Fields['DIASCRED'];
  
$this->edLimiteCredito->Text $this->ibQryCliente->Fields['LIMITECR']; 
Hasta aqui vamos bien, el Query apunta al registro del cliente, ahora modificar los ultimos 2 campos, como puedo decirle al Query que me guarde las modificaciones ????

__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King

Última edición por AGAG4 fecha: 04-09-2008 a las 23:55:53. Razón: Corrección
Responder Con Cita
  #4  
Antiguo 05-09-2008
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Question

Ya probe el siguiente código basandome de un ejemplo del Sr. Andreano y no me jala, no marca error, simplemente no hace nada:

Código PHP:
  $this->ibdbCXC->BeginTrans();

  
$this->ibQryCliente->SQL 
"UPDATE CLIENTES SET DIASCRED =".$this->edDiasCred->Text."   
WHERE  NUMCLI = "
.$this->edNumCli->Text."";

  
$this->ibQryCliente->open();
  
$this->ibQryCliente->close();

  
$this->ibdbCXC->CompleteTrans(); 
Aclaro, el ejemplo del Sr. Andreano usa un Insert into.. para insertar un registro, y no usa el BeginTrans, pero también ya lo probe sin usarlo.
__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King

Última edición por AGAG4 fecha: 05-09-2008 a las 17:55:58. Razón: Corrección
Responder Con Cita
  #5  
Antiguo 08-09-2008
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Ya he investigado en la pagina de codegear, he visto ejemplos de esa pagina, he visto ejemplos que vienen al instalar el Delphi for php y no consigo Modificar un registro de una tabla de firebird 1.5, ya revise la ayuda que trae Delphi PHP y no vienen ejemplos, alguien sabe ????

__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King
Responder Con Cita
  #6  
Antiguo 08-09-2008
Avatar de donald shimoda
donald shimoda donald shimoda is offline
Miembro
 
Registrado: jul 2008
Ubicación: Argentino en Santa Cruz de la Sierra
Posts: 1.083
Poder: 17
donald shimoda Va por buen camino
Cita:
Empezado por AGAG4 Ver Mensaje
Ya probe el siguiente código basandome de un ejemplo del Sr. Andreano y no me jala, no marca error, simplemente no hace nada:

Código PHP:
  $this->ibdbCXC->BeginTrans();

  
$this->ibQryCliente->SQL 
"UPDATE CLIENTES SET DIASCRED =".$this->edDiasCred->Text."   
WHERE  NUMCLI = "
.$this->edNumCli->Text."";

  
$this->ibQryCliente->open();
  
$this->ibQryCliente->close();

  
$this->ibdbCXC->CompleteTrans(); 
Aclaro, el ejemplo del Sr. Andreano usa un Insert into.. para insertar un registro, y no usa el BeginTrans, pero también ya lo probe sin usarlo.
Estas realizando un update, no un insert. Sino existe el registro no hará nada!
__________________
Donald Shimoda [Team RO] - Blogs: Remobjects Pascal
Responder Con Cita
  #7  
Antiguo 08-09-2008
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
He compilado por partes para saber que valor tiene edNumCli->text y tiene el código a buscar para modificar y el edDiasCred->Text también toma el valor a modificar, por lo tanto, no se que pasa ó que me falta por hacer

Y eso de que si no esta el registro no hace nada mi chavo, eso ya lo sé, es por eso que ya he compilado por partes para mostrar los valores que toma....
__________________
"Hemos aprendido a volar como los Pájaros, y a nadar como los Peces, y todavía No aprendemos a vivir como Hermanos". Martin Luther King

Última edición por AGAG4 fecha: 08-09-2008 a las 16:17:19. Razón: Corrección
Responder Con Cita
  #8  
Antiguo 08-09-2008
Avatar de donald shimoda
donald shimoda donald shimoda is offline
Miembro
 
Registrado: jul 2008
Ubicación: Argentino en Santa Cruz de la Sierra
Posts: 1.083
Poder: 17
donald shimoda Va por buen camino
Cita:
Empezado por AGAG4 Ver Mensaje
He compilado por partes para saber que valor tiene edNumCli->text y tiene el código a buscar para modificar y el edDiasCred->Text también toma el valor a modificar, por lo tanto, no se que pasa ó que me falta por hacer

Y eso de que si no esta el registro no hace nada mi chavo, eso ya lo sé, es por eso que ya he compilado por partes para mostrar los valores que toma....
Que bueno que lo sepas, te recomiendo que cuando publiques código publiques el que corresponda con lo que quieres hacer de modo que el que lee pueda ayudarte, no somos adivinos y el código que publicaste no hace lo que quieres que haga, por eso lo comente con el fin de ayudarte por si ahi estaba tu error.

Por otro lado no se para que te complicas tanto, para ver si el SQL esta funcionando coloca una sentencia completa en texto, sin agregado de variables, y prueba con el método execute, una sentencia que no devuelve datos no se abre ni se cierra, eso es para conjuntos de datos.

Por si no queda claro lo que digo:

Código PHP:
 $this->ibdbCXC->BeginTrans();

  
$this->ibQryCliente->SQL 
"INSERT INTO CLIENTES 
   (DIASCRED)
  VALUES
   ('01/01/2008')
 FROM
    CLIENTES"
;

  
$this->ibQryCliente->execute();

  
$this->ibdbCXC->CompleteTrans(); 
Por cierto no tengo Delphi for php a mano, por tanto no lo he probado.

Saludos
__________________
Donald Shimoda [Team RO] - Blogs: Remobjects Pascal

Última edición por donald shimoda fecha: 08-09-2008 a las 17:08:26.
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
Copiar el contenido de un DataSet a otro DataSet Javi2 Varios 82 22-11-2022 09:26:16
Porqué Delphi en lugar de Visual Basic dec Humor 12 01-05-2008 02:22:32
Porque El Club Delphi Esta Hecho En Php ASAPLTDA Debates 13 05-07-2007 09:01:27
Pintar una elipte dada dos coordenadas, sin utilizar la funcion que viene en delphi Richard Gráficos 4 09-05-2004 18:35:51
El Rave que viene con Delphi es una Demo? apicito Impresión 0 04-06-2003 11:33:36


La franja horaria es GMT +2. Ahora son las 04:37:25.


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