<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Hola,
Busqué mucho en este foro y encontré muchas piezas de rompecabezas, pero ahora estoy atascado debido a la falta de tiempo y conocimiento sobre JSL.
Tengo un DataTable (DT1) con 40 columnas
y un DT2 con especificaciones (Nombre, LSL, Objetivo, USL) para 20 de las 40 columnas de DT1.
Quiero asignar estas especificaciones de DT2 a DT1.
El guión debería decir:
tomar la primera columna de DT1,
comparar la cadena a las filas de la columna 1 en DT2
si encuentra una coincidencia -> asigne especificaciones, si no, tome la siguiente columna de DT1 ...
...hasta el fin
Intenté modificar el script (ver ejemplo adjunto) pero no tuve éxito.
Muchas gracias de antemano !
Su código tiene un error lógico. Para tu segundo bucle tenías dt2, pero debería haber sido dt1.
Además, no usaría j como variable porque es una función en JSL.
Esto funciona:
dt1 = Tabla de datos ( "baseExemple.jmp" ) ;
dt2 = Tabla de datos ( "limites.jmp" ) ;
por ( yo = 1 , yo <= N filas ( dt2 ) , yo ++,
por ( k = 1 , k <= N Col ( dt1 ) , k ++, // Cambiar dt2 a dt1
Tabla de datos actual ( dt1 ) ;
Newvar = Carbonizarse ( Nombre de columna ( k ) ) ;
Show ( Newvar ) ;
Si ( Columna ( dt2 , "Nombre" ) [ yo ] == Newvar ,
Evaluar (
Sustituir (
Expr (
Columna ( dt1 , k ) << Establecer propiedad (
"Límites de especificaciones" ,
{ LSL ( myLSL ) , USL ( myUSL ) , Objetivo ( mi objetivo )}
)
) ,
Expr ( myLSL ) , Columna ( dt2 , "LSL" ) [ yo ] ,
Expr ( myUSL ) , Columna ( dt2 , "USL" ) [ yo ] ,
Expr ( mi objetivo ) , Columna ( dt2 , "Objetivo" ) [ yo ]
)
) ;
) ;
) ;
) ;