cancel
Showing results for 
Search instead for 
Did you mean: 

Relacionar tabla definida por usuario a una tabla de SBO

Former Member
0 Kudos

Cree una tabla definida por usuario donde uso como codigo Slpcode, y quisiera relacionar esa tabla con la de Vendedores OSLP.

Sara D.

Gracias por la ayuda

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Ya pude hacerlo, me quedaria asi

Case When Month(@fechadesde) <= 1 and Month(@fechahasta) >= 1 Then U_Mes1 Else 0 End+

Case When Month(@fechadesde) <= 2 and Month(@fechahasta) >= 2 Then U_Mes2 Else 0 End+

Case When Month(@fechadesde) <= 3 and Month(@fechahasta) >= 3 Then U_Mes3 Else 0 End+

Case When Month(@fechadesde) <= 4 and Month(@fechahasta) >= 4 Then U_Mes4 Else 0 End+

Case When Month(@fechadesde) <= 5 and Month(@fechahasta) >= 5 Then U_Mes5 Else 0 End+

Case When Month(@fechadesde) <= 6 and Month(@fechahasta) >= 6 Then U_Mes6 Else 0 End+

Case When Month(@fechadesde) <= 7 and Month(@fechahasta) >= 7 Then U_Mes7 Else 0 End+

Case When Month(@fechadesde) <= 8 and Month(@fechahasta) >= 8 Then U_Mes8 Else 0 End+

Case When Month(@fechadesde) <= 9 and Month(@fechahasta) >= 9 Then U_Mes9 Else 0 End+

Case When Month(@fechadesde) <= 10 and Month(@fechahasta) >= 10 Then U_Mes10 Else 0 End+

Case When Month(@fechadesde) <= 11 and Month(@fechahasta) >= 11 Then U_Mes11 Else 0 End+

Case When Month(@fechadesde) <= 12 and Month(@fechahasta) >= 12 Then U_Mes12 Else 0 End

Gracias

former_member188440
Active Contributor
0 Kudos

Lo que yo entendi es que quieres hacer el join entre tablas

bastaria con hacer el



select * from  oslp a join [@tablausuario] b on  a.slpcode=b.code

creo que asi serviria

Former Member
0 Kudos

La verdad qeu los dos codigos me funcionaron. Cree mi tabla definida por el usuario y utilice el primer codigo, y en la consulta para crear el reporte utilice el segundo informe.

Pero tengo otro dilema. Cuando cree la tabla, defini los siguientes campos. Code y Name que viene por defecto, y le cree un campo para cada mes, para capturar el presupuesto mensual para cada vendedor.

Ejemplo

Code Name U_mes1 U_mes2 U_mes3 ......... U_mes12

1 Ariadna Pineda 5000 3000 5000 5000

En mi consulta tengo que establecer una columna de Presupuesto por mes basada en esta tabla.

(select

'PRESUPUESTO'=

CASE

WHEN month(getdate()) = 1 THEN U_Mes1

WHEN month(getdate()) = 2 THEN U_Mes2

WHEN month(getdate()) = 3 THEN U_Mes3

WHEN month(getdate()) = 4 THEN U_Mes4

WHEN month(getdate()) = 5 THEN U_Mes5

WHEN month(getdate()) = 6 THEN U_Mes6

WHEN month(getdate()) = 7 THEN U_Mes7

WHEN month(getdate()) = 8 THEN U_Mes8

WHEN month(getdate()) = 9 THEN U_Mes9

WHEN month(getdate()) = 10 THEN U_Mes10

WHEN month(getdate()) = 11 THEN U_Mes11

ELSE U_Mes12

END

FROM [@PRSLP] T4 WHERE T4.Code = T3.SlpCode )

Hasta ahi todo bien. Pero tambien tengo que calcularlo Acumulado, a traves de un rango del periodo de fecha. O sea, qeu si me piden el presupuesto de Enero a Junio, como calculo esto.

Gracias de antemano

former_member188440
Active Contributor
0 Kudos

Supongo que esta consulta, depende de alguna tabla de transacciones, con algun campo docdate, como fecha de contabilizacion etc.

Apoyate de esa tabla con un


and t5.docdate between [%0] and [%1]

algo asi

Former Member
0 Kudos

Lo del rango de periodos lo tngo claro. El punto es como tomar los campos para sumarlos segun el rango, porque tengo la tabla con campo Code (codigo vendedor), name, y un campo para cada mes.

Ejemplo: Si mi rango de periodo es de ejemplo 01/01/2010 a 31/03/2010 aqui se que tendria que hacer un

Sum(U_mes1+ U_mes2+U_mes3) where T0.DocDate between and

pero eso lo sé porque es fijo, pero que sentencia usaria para escoger esos campos si mi rango varia en otros meses.

Espero haberme explicado.

Former Member
0 Kudos

Existe alguna opcion, de qeu yo pueda extraer una posicion del nombre del campo, ejemplo de U_mes1, extraer el 1.

former_member210784
Active Contributor
0 Kudos

Hola.

No sé si entendí bien: ¿Necesitas que en algún campo de la tabla de usuario traiga un campo de la tabla OSLP correspondiente con el SlpCode?. SI es así, puedes lograr esto mediante una Búsqueda Formateada (BF) enlazada al campo de la tabla de usuario y que se actualice cuando cambie el campo Code:


SELECT T0.[SlpName] 
FROM OSLP T0
WHERE T0.SlpCode = $[$Item.Code.Number]

NOTA: Reemplaza Item por el número correspondiente a la tabla de usuario

De esta manera cuando se digite un Código de Vendedor en el campo Code (de la tabla de usuario) el campo donde quede enlazada la BF ttraerá automáticamente el Nombre del Vendedor (según el código de ejemplo de arriba).

Quedo en espera de tus comentarios.

SAludos.