Power Builder - select con variables

   
Vista:

select con variables

Publicado por jose (2 intervenciones) el 31/07/2010 19:47:17
hola al foro

mi inquietud es la siguiente.

tengo que agregar datos de una tabla a otra, pero algunos de ellos son datos de variables.
el siguiente codigo me permitira explicarles mejor.

datetime fecha_desde,fecha_hasta
decimal cod_pass

.. aca ponemos datos para las variables
for i=1 to dw_1.rowcount()
dw_1.scrolltorow(i)

cod_pass =dw_1.getitemdecimal(dw_1.getrow(),1)
fecha_desde =dw_1.getitemdatetime(dw_1.getrow(),4)
fecha_hasta =dw_1.getitemdatetime(dw_1.getrow(),5)
insert into rango (cod_pass,desde,hasta,rubro,titulo) select :cod_pass,:fecha_desde,:fecha_hasta,valor1,valor2 from data2010;

next

ojo valor1 y valor2 son campos de la tabla data2010.

Al ejecutar no inserta ningun valor,

mi pregunta es ,Se puede hacer esto?

gracias por la respuesta.
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

RE:select con variables

Publicado por eduardo.v (34 intervenciones) el 01/08/2010 03:21:16
No puedes hacer un insert select desde power. si quieres hacer algo parecido te recominendo que hagas un store lo pruebes en el analizer (si utilzar sql server) y luego lo invoques desde del power

saludos
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

RE:select con variables

Publicado por JeinnerH (638 intervenciones) el 03/08/2010 16:46:32
Si ya tienes los valores en variables sólo haces:

Select valor1,
valor2
Into :l_valor1,
:l_valor2
From data2010
Where ....

insert into rango
(cod_pass,desde,hasta,rubro,titulo)
Values ( :cod_pass,:fecha_desde,:fecha_hasta,:valor1,:valor2);

Si lo que requieres es hacer específicamente el insert que defines, lo puedes ejecutar utilizando un Dymamic SQL con el EXECUTE IMMEDIATE
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

RE:select con variables

Publicado por eduardo.v (34 intervenciones) el 03/08/2010 19:26:13
Lamentablemente el interprete del SQL que maneja Power no contempla la utilizacion de INSERT SELECT (Inserciones masivas) cuando utilizas SQL dentro de Power ya sea Embebido o por Dynamic SQL solamente puedes utilizar el INSERT para inserciones individuales. Para hacer lo que deseas hacer como te dije al principio puedes crear un store con un cursor que simule tu FOR en Power y mantener mas o menos tu logica o si aun quieres trabajarlo desde Power puedes añadir un nivel mas en el FOR e insertar registro por registro

Saludos
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

RE:select con variables

Publicado por JeinnerH (638 intervenciones) el 03/08/2010 20:08:09
Mmmmm... Estimado Eduardo.

Utilizando PB6.5, realicé la siguiente prueba:
Insert Into tmp_integracion.tmp_empleados
(num_empresa, cod_puesto)
(Select 1, cod_puesto
From PL.PL_Empleados
Where Num_Empresa = 1);

Y funcionó sin problema.

Si hay algo que tiene PB poderso es su compatibilidad con el SQL.

O a qué te refieres exactamente?
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

RE:select con variables

Publicado por eduardo.v (34 intervenciones) el 05/08/2010 19:05:31
Tienes razon jeinner, no tengo un sql server a la mano pero lo probe con el anywhere y si funciona. No se porque tenia esa idea desde hace tiempo, lo que pasa que por orden siempre trato de no incluir sql embebidos en mi codigo de power, todo lo que es manipulacion de datos los manejo siempre por stores. Pero bueno gracias por la aclaracion.

Saludos
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

RE:select con variables

Publicado por JeinnerH (638 intervenciones) el 05/08/2010 21:26:15
Ah... Pura vida Eduardo.

Muchas gracias por la aclaración.

En mi caso todo lo que trabajo lo hago con SQL embebido, porque me evita trabajo de más con los SPs. Claro siempre hay que tener cuidado con usar SQL estandar, para que haya compatibilidad entre SQL Server y Oracle.

Pero si se ve desde el punto de vista del rendimiento debiera ser mejor con SPs. Aunque nunca me ha tocado algún proceso tan pesado que debe recurrir a procedimientos almacenados.

Saludos compañero.
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

RE:select con variables

Publicado por eduardo.v (34 intervenciones) el 05/08/2010 22:26:21
Bueno yo en mis proyectos personales para ser sincero no utilizo stores pues por tema de licencia trabajo sobre access luego si alguien puede obtener una licencia de sql server u oracle la importacion de la DB es sencilla.

Pero cuando trabajo para terceros y participo en proyectos corporativos generalmente no utilizamos sql embebidos en power, mas que nada para mantener el estandar de desarrollo pues manejamos todo lo que es gestion de datos en el DBMS y en algunos casos las reglas de negocio estan en SP o algunas veces en User Objects de Power.

Pero todo son estandares nada mas, no significa que sea la unica manera de hacerlo. El asunto es hacerlo de la manera que sea mas facil de administrar para los desarrolladores y que sea eficiente porsupuesto.
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