PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV 2024 → cargar una tabla con query...
cargar una tabla con query...
Débuté par Manuel, 19 sep. 2008 09:34 - 5 réponses
Posté le 19 septembre 2008 - 09:34
compañeros (as)

tengo un control tabla para ver los registros de una base de datos

el problema es que necesito hacerlo por medio del codigo del cliente.

si lo hago asi funciona bien

mdatos1 is Data Source
HExecuteSQLQuery(mdatos1,
"SELECT ORDEN,FECHAO,DES,TOTAL,TIPO,CODIGO FROM ordenes WHERE CODIGO = ' 5072' ")

Table1..BrowsedFile = mdatos1

pero necesito que el cliente indique el codigo si creo una variable para almacenar el valor

m is string
m = DCUENTA

mdatos1 is Data Source
HExecuteSQLQuery(mdatos1,
"SELECT ORDEN,FECHAO,DES,TOTAL,TIPO,CODIGO FROM ordenes WHERE CODIGO = m ")

Table1..BrowsedFile = mdatos1

no presenta nada, pero m si tiene el valor correcto.

alguna idea

Gracias
Posté le 19 septembre 2008 - 11:48
Hola Manuel,

Hay un problema con esta línea:

HExecuteSQLQuery(mdatos1,

"SELECT ORDEN,FECHAO,DES,TOTAL,TIPO,CODIGO FROM ordenes WHERE CODIGO = m ")

La variabla m no esta evaluada porqué esta incluada en la cadena.

Aqui hay que utilisar concatenacíon.

"SELECT ORDEN,FECHAO,DES,TOTAL,TIPO,CODIGO FROM ordenes WHERE CODIGO = ' + m + " ' "

--
Pat
http://megustawindev.free.fr
Posté le 19 septembre 2008 - 19:26
cuando le doy click al boton para el filtro sale este error


Error at line 12 of Click of Button2 (server) process.
Unable to initialize 'Table1' control. Hyper File Error:
=============================
mdatos1 object not found.
=============================
mdatos1 object not found.


Rubén Sánchez Peña me indico que mejor usuara un query, lo cree y funciona perfecto el problema sigue con la condiciono le muestro el sql

SELECT
ordenes.CIA AS CIA,
ordenes.ORDEN AS ORDEN,
ordenes.TIPO AS TIPO,
ordenes.CODIGO AS CODIGO,
ordenes.FECHAO AS FECHAO,
ordenes.VENDE AS VENDE,
ordenes.DES AS DES,
ordenes.TOTAL AS TOTAL
FROM
ordenes
WHERE
ordenes.CODIGO = {mdato}
ORDER BY
CIA ASC


Según entiendo dato tendría el valor del código del cliente, lo cargo así

mdato is string
mdato = Tab1.SuperControl1.DCUENTA

Dcuenta es un edit control y si esta encantando el cliente correcto

Luego creo un botón y corro el query así

bordenes.CODIGO = mdato

el nombre del query es bordenes

el codigo del cliente caracter de 10 digitos trate se quitarle los espacios en blanco para que fuera mas exacto pero solo lo puedo hacer en la varieble mdato usando nospace() pero en el query no permite hacerlo, de hecho el campo tipo es numerico de 1 donde 1 son facturas tipo 1 y 2 facturas tipo 2, necesito que diga que tipo de factura es, pero solo puedo indicar 1 ó 2 nose como hacerlo.



Gracias
Posté le 20 septembre 2008 - 15:14
Hola Manuel. Si ya tienes definida la Query con parámetros asociada al
control Table solo tienes que ejecutar un

<NombreQuery>.<NombreParametro> = <valor>
TableDisplay(<NombreTable>)

cuando quieras volver a refrescar el contenido de la tabla.


Rubén Sánchez Peña


"Manuel" <soporte@kronoscr.com> escribió en el mensaje de noticias
news:d1e655f4ff7752f8d5ed40c49ecc160a@news.pcsoft...

cuando le doy click al boton para el filtro sale este error


Error at line 12 of Click of Button2 (server) process.
Unable to initialize 'Table1' control. Hyper File Error:
=============================
mdatos1 object not found.
=============================
mdatos1 object not found.


Rubén Sánchez Peña me indico que mejor usuara un query, lo cree y funciona
perfecto el problema sigue con la condiciono le muestro el sql

SELECT
ordenes.CIA AS CIA,
ordenes.ORDEN AS ORDEN,
ordenes.TIPO AS TIPO,
ordenes.CODIGO AS CODIGO,
ordenes.FECHAO AS FECHAO,
ordenes.VENDE AS VENDE,
ordenes.DES AS DES,
ordenes.TOTAL AS TOTAL
FROM
ordenes
WHERE
ordenes.CODIGO = {mdato}
ORDER BY
CIA ASC


Según entiendo dato tendría el valor del código del cliente, lo cargo así

mdato is string
mdato = Tab1.SuperControl1.DCUENTA

Dcuenta es un edit control y si esta encantando el cliente correcto

Luego creo un botón y corro el query así

bordenes.CODIGO = mdato

el nombre del query es bordenes

el codigo del cliente caracter de 10 digitos trate se quitarle los
espacios en blanco para que fuera mas exacto pero solo lo puedo hacer en
la varieble mdato usando nospace() pero en el query no permite hacerlo, de
hecho el campo tipo es numerico de 1 donde 1 son facturas tipo 1 y 2
facturas tipo 2, necesito que diga que tipo de factura es, pero solo puedo
indicar 1 ó 2 nose como hacerlo.



Gracias

Posté le 21 septembre 2008 - 10:24
ok

muchas gracias
Posté le 25 septembre 2009 - 08:54
Hola Rubén

TIENES RAZON SI ACTUALIZA PERO SOLO LAS TABLAS QUE NO ESTAN DE MODO AJAX PERO SI EL AJAX MODE ESTA ACTIVO.. EN ESE CASO NO LO ACTUALIZA.. QUE ME DICES A ESO RUBEN..

Rubén Sánchez Peña wrote in news message <48d4b46f@news.pcsoft.fr>:


Hola Manuel. Si ya tienes definida la Query con parámetros asociada al
control Table solo tienes que ejecutar un

<NombreQuery>.<NombreParametro> = <valor>
TableDisplay(<NombreTable>)

cuando quieras volver a refrescar el contenido de la tabla.


Rubén Sánchez Peña


"Manuel" <soporte@kronoscr.com> escribió en el mensaje de noticias
news:d1e655f4ff7752f8d5ed40c49ecc160a@news.pcsoft...

cuando le doy click al boton para el filtro sale este error


Error at line 12 of Click of Button2 (server) process.
Unable to initialize 'Table1' control. Hyper File Error:
=============================
mdatos1 object not found.
=============================
mdatos1 object not found.


Rubén Sánchez Peña me indico que mejor usuara un query, lo cree y funciona
perfecto el problema sigue con la condiciono le muestro el sql

SELECT
ordenes.CIA AS CIA,
ordenes.ORDEN AS ORDEN,
ordenes.TIPO AS TIPO,
ordenes.CODIGO AS CODIGO,
ordenes.FECHAO AS FECHAO,
ordenes.VENDE AS VENDE,
ordenes.DES AS DES,
ordenes.TOTAL AS TOTAL
FROM
ordenes
WHERE
ordenes.CODIGO = {mdato}
ORDER BY
CIA ASC


Según entiendo dato tendría el valor del código del cliente, lo cargo así

mdato is string
mdato = Tab1.SuperControl1.DCUENTA

Dcuenta es un edit control y si esta encantando el cliente correcto

Luego creo un botón y corro el query así

bordenes.CODIGO = mdato

el nombre del query es bordenes

el codigo del cliente caracter de 10 digitos trate se quitarle los
espacios en blanco para que fuera mas exacto pero solo lo puedo hacer en
la varieble mdato usando nospace() pero en el query no permite hacerlo, de
hecho el campo tipo es numerico de 1 donde 1 son facturas tipo 1 y 2
facturas tipo 2, necesito que diga que tipo de factura es, pero solo puedo
indicar 1 ó 2 nose como hacerlo.



Gracias