Consulta ado_value

26 views
Skip to first unread message

avazq...@gmail.com

unread,
Oct 8, 2025, 2:32:27 PMOct 8
to ado-h...@googlegroups.com

Buenas.


Quizás porque soy muy malo programando, muchas veces para rellenar campos hago varias veces seguidas ado_value(‘select …’)

Luego me surge otro campo y copio y modifico la línea, con lo que tengo hasta 3 o 4 consultas ado_value.

David, ves la posibilidad de convertir/devolver el ado value en un array con tantos ítems como campos se seleccionen?

 

Ejemplo:

 

              oRsTmp:formapago:=val(ado_value('select pago from clientes where id='+str(aselecciona[1,1],8)))

              oRsTmp:tarifaventa:=ado_value('select tarifa from clientes where id='+str(aselecciona[1,1],8))

              oRsTmp:reten_ipsi:=ado_value('select reten_ipsi from clientes where id='+str(aselecciona[1,1],8))

 

Si se pudiera sustituir por

              aClien:= ado_value('select pago, tarifa, reten_ipsi from clientes where id='+str(aselecciona[1,1],8))

y a continuación

oRsTmp:formapago:=aClien[1]

oRsTmp:tarifaventa:=aClient[2]

oRsTmp:reten_ipsi:=aClient[3]

 

me ahorraría dos consultas.

 

Seguramente me dirás que lo podía hacer con

oRsClien:=ado(‘select pago, tarifa, reten_ipsi from clientes where id='+str(aselecciona[1,1],8))

oRsTmp:formapago:=oRsClient:pago

oRsTmp:tarifaventa:= oRsClient:tarifa

oRsTmp:reten_ipsi:= oRsClient:reten_ipsi

 

sólo pregunto si lo ves factible y ventajoso o no.

 

Saludos y gracias como siempre.

 

Antonio Vázquez

avazq...@gmail.com

 

David Field

unread,
Oct 9, 2025, 7:29:58 PMOct 9
to ADO Harbour
Hola Antonio,

Lo que quieres ya lo hace GetRows()
aClien:= GetRows('select pago, tarifa, reten_ipsi from clientes where id='+str(aselecciona[1,1],8), .T.)

aClien[1,1] = pago,
aClien[1,2] = tarifa,
etc

o puedes crear tu propia función que te regrese el array, las herramientas y el cómo funciona ADO_Value están ahí.

Saludos,
David Field

avazq...@gmail.com

unread,
Oct 14, 2025, 7:02:10 AMOct 14
to ado-h...@googlegroups.com

Perfecto.
Muchas gracias, David.
Un abrazo

 

 

Antonio Vázquez

avazq...@gmail.com

--
Has recibido este mensaje porque estás suscrito al grupo "ADO Harbour" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a ado-harbour...@googlegroups.com.
Para ver este debate, visita https://groups.google.com/d/msgid/ado-harbour/f3e1be22-903d-45c3-93eb-6b6f255247dcn%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages