Power Builder - Update por código con la clausula Where IN

   
Vista:
Imágen de perfil de Antonio

Update por código con la clausula Where IN

Publicado por Antonio (1114 intervenciones) el 12/11/2015 20:34:03
Un saludo a todos:

necesito hacer un update por código teniendo la clausula where IN.

Por ejemplo:

UPDATE nombre_tabla
set campo =: sValorVariable
where pedido in ('1234','4356','67789);

La cuestión es que los valores 1234,4356,67789, los guardo en una variable de arreglo:

string sPedidos[3]

sPedidos[1] = '1234'
sPedidos[2] = 4356'
sPedidos[3] = 67789'

y después debo guardarlos con el update

UPDATE nombre_tabla
set campo =: sValorVariable
where pedido in (sPedidos);

pero me manda un error aún cuando en el script presiono Ctrl + L solo para verificar que este bien, el mensaje que indica es que no es soportado.

¿Alguien sabe o tiene un método de como hacerlo?... lo requiero hacer por código, sin utilizar DataWindow.

Gracias,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Update por código con la clausula Where IN

Publicado por Leopoldo Taylhardat (690 intervenciones) el 16/11/2015 21:58:24
Saludos...

No puedes mezclar variable de powerbuilder con procesos internos de la base de datos....

En ese caso debes recorrer el arreglo y ejecutar un update a la vez...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
string sPedidos[3]
//sPedidos[1] = '1234'
//sPedidos[2] = 4356'
//sPedidos[3] = 67789'
 
string ls_pedido
integer a, linea=1
for linea = 1 to UpperBound(sPedidos) step 1
ls_pedido=sPedidos[linea]
UPDATE nombre_tabla
set campo =: sValorVariable
where pedido =:ls_pedido;
 
next

Espero que te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar