SSIS - SQL Server Integration Services - transformar valores

 
Vista:

transformar valores

Publicado por alexis (7 intervenciones) el 19/06/2015 16:02:14
buenos dias que tal, estoy intentando utilizar el control Derived Column

deseo reemplazar en dos columnas los siguientes caracteres

sValue = sValue.Replace(Convert.ToChar(9).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(10).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(13).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(32).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(33).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(34).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(36).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(37).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(39).ToString(), "");

sValue = sValue.Replace(Convert.ToChar(45).ToString(), "");

sValue = sValue.Replace("|", "");

sValue = sValue.Replace(" ", "");

sValue = sValue.Replace(",", "");

sValue = sValue.Replace("$", "");

sValue = sValue.Replace("�", "");

sValue = sValue.Replace("€", "");

if (sValue.Trim() == "-")

sValue = "0.00";

if (sValue.Trim() == "")

sValue = "0.00";
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
Imágen de perfil de Alejandro

Utilizando Derived Column para reemplazar caracteres

Publicado por Alejandro (60 intervenciones) el 26/02/2024 20:36:09
¡Buenos días, Alexis!

Para replicar la lógica que estás utilizando en SSIS mediante la tarea "Derived Column", puedes seguir estos pasos:

1. Agrega una tarea "Derived Column":
- Abre tu flujo de datos en SSIS y agrega una tarea "Derived Column".

2. Configura las expresiones:
- En la tarea "Derived Column", agrega columnas derivadas para cada una de las columnas que deseas transformar. Por ejemplo, si estás trabajando con las columnas A y B, crea nuevas columnas derivadas como A_transformada y B_transformada.

3. Usa las expresiones de reemplazo:
- Para cada nueva columna derivada, utiliza las expresiones de reemplazo que estás utilizando en tu código C#. Por ejemplo, para reemplazar el carácter de tabulación, la expresión sería algo como:
1
REPLACE(REPLACE(REPLACE(REPLACE(A, "\t", ""), "\n", ""), "\r", ""), " ", "")
Ajusta esto según las columnas específicas y los reemplazos que necesitas hacer.

4. Manejo de valores específicos:
- Para manejar los casos específicos como cuando el valor es "-", puedes usar una expresión condicional. Por ejemplo:
1
(A_trimmed == "-" || A_trimmed == "") ? "0.00" : A_trimmed
Esto asegurará que si el valor es "-" o está vacío, se reemplace con "0.00".

Recuerda ajustar las expresiones según tus columnas y requisitos específicos. También ten en cuenta que las expresiones de Derived Column en SSIS son similares, pero no idénticas, a las expresiones de C#, así que es posible que necesites hacer algunas adaptaciones.

Espero que esto te guíe en el uso del Derived Column para realizar tus transformaciones.
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