Power Builder - concatenar con ceros

   
Vista:

concatenar con ceros

Publicado por katherine (206 intervenciones) el 05/12/2015 03:47:12
Hola, alguien me puede ayudar...

Dentro de un dw_1, tengo un compute_1 en donde recupero valores como por decir (0001, 0003, 0008, 0012, 0125, etc) y en otro campo tengo el código del producto,

Ahora deseo concatenar el código del producto mas el compute_1,
Este código lo hace

cod_bien + compute_1

pero cuando se concatena por ejemplo el código 12121212 + el compute_1 cuyo valor es 0001, termina de la siguiente manera:

121212121 mas no como debería de ser 121212120001, es decir del compute_1 le quita los ceros que se le anteponen al 1

como podría ser para que lo haga de la forma que deseo (121212120001)....

Gracias ojala me ayuden
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

concatenar con ceros

Publicado por Leopoldo Taylhardat (690 intervenciones) el 05/12/2015 16:36:49
Saludos...

Debes convertir a texto para concatenar los caracteres, porque si no te toma valores numèricos y los suma...

en el select... el compute...

como no se la columna del compute_1 lo pongo igual...
ls columna resultado en el ejemplo lo pongo con el nombre de valor...

cast(cod_bien as char(8))+ cast(compute_1 as char(4)) as valor

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

concatenar con ceros

Publicado por Leopoldo Taylhardat (690 intervenciones) el 05/12/2015 16:59:01
disculpa...

creo que tendrás que agregar los ceros como cadena antes de la conversión...

cast(cod_bien as char(8))+ left('0000', 4 - length(cast(compute_1 as varchar(4)))) +cast(compute_1 as varchar(4)) as valor

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

concatenar con ceros

Publicado por katherine (206 intervenciones) el 05/12/2015 23:11:51
Hola Leopoldo Taylhardat gracias por tu respuesta.

No encuentro por ningún lado el select del compute...

Mira en el compute_1 estoy contando cuantas veces se repiten los códigos de determinados productos, por eso es que va a repetir varios 0001, 0002, 0003, 0005, 0006, ...etc

Entonces en un compute_2 deseo concatenar el cod_bien (código del bien) mas el compute_1 en donde estoy sacando cuantos de ese código se están repitiendo ok.

Tu me entregas este código

cast(cod_bien as char(8))+ left('0000', 4 - length(cast(compute_1 as varchar(4)))) +cast(compute_1 as varchar(4)) as valor

pero al pegarlo en el compute expression me pide cerrar parentesis ME DICE ()' exprected to clase expression after function.)

otra cosa as valor??? a que te refieres ...
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

concatenar con ceros

Publicado por katherine (206 intervenciones) el 06/12/2015 14:51:05
Ok, Ok, al final lo logre colocando un compute_3 y le he pegado el siguiente codigo.

cod_bien + string(compute_1 , left( "0000", 4))

ahora si lo agrega como deseo, gracias Leopoldo Taylhardat por tu aporte, me ha servido
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

concatenar con ceros

Publicado por Leopoldo Taylhardat (690 intervenciones) el 07/12/2015 21:37:17
Saludos..

Me alegra...

no sabia el tipo de dato de cod_bien y era texto... por lo tanto no había que convertirlo...
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