¿Cómo ingresar y pasar datos desde List Box?Hola,
Me gustaría proporcionar una lista de parámetros o variables del nivel de la ventana (por ejemplo, copiada de Excel) y pasar esta lista (por ejemplo, haciendo clic en Aceptar) para crear otra lista para una consulta SQL. ¿Puedo hacer eso con algún tipo de cuadro de lista (algo como en la imagen de abajo)? ¿Qué otros métodos podrían usarse para hacer eso? Atentamente.

ScriptingRe: ¿Cómo ingresar y pasar datos desde List Box?Un par de preguntas / ideas para empezar:
- ¿Quiere que el usuario seleccione los números de serie interesantes de la lista creada previamente? Podrías usar el cuadro de lista
- ¿Le gustaría que el usuario pudiera copiar y pegar números de serie desde algún lugar que se convertirán en consultas SQL? Puede utilizar el cuadro de edición de texto con una función de análisis.
- ¿Posiblemente ambos de arriba? Lo más probable es que intente evitar esto, ya que si el usuario estuviera copiando y pegando valores desde algún lugar, puede hacer la selección que ya está allí, lo que quiere que se incluya.
- ¿Quieres usar modal?
Verifique el índice de secuencias de comandos para: modal (cómo construir una ventana modal), cuadro de lista, cuadro de edición de texto, elementos de Concat (cómo convertir la lista JMP en una cadena)
Ejemplo rápido con List Box que establecerá el valor del cuadro de texto debajo del botón OK e imprimirá los valores seleccionados como una lista para registrar cuando se presione OK:
Names Default To Here(1);
serialList = {"a1", "b2", "c3", "d4"};
win2 = New Window("Example",
V List Box(
lb = List Box(serialList, width(200), nlines(6)),
Button Box("OK", Show(lb << get selected); tb << Set Text(char(lb << get selected))),
tb = Text Box("");
)
);

Re: ¿Cómo ingresar y pasar datos desde List Box?Hola,
gracias por las sugerencias. Me gustaría poder copiar números de serie de algún lugar y luego pasarlos más usando la función de análisis, por lo que la opción 2 y junto con la ventana modal. Lo intentaré con el cuadro de edición de texto.
Atentamente
Re: ¿Cómo ingresar y pasar datos desde List Box?A continuación se muestra un ejemplo. Cree la función (parsePaste en el ejemplo) para manejar la entrada y hacer las modificaciones que desee: eliminar duplicados, reemplazar cambios de fila con algo, eliminar separadores duplicados ... Después de presionar OK, esto devolverá una cadena, luego puede modificar la cadena devuelta para que se ajuste a su SQL (Words () y Concat Items () como ejemplos).
Names Default To Here(1);
parsePaste = function({tempStr}, {Default Local},
tempStr = Regex(tempStr, "\r\n", ",", GLOBALREPLACE); //replace row changes with ,
tempStr = Substitute(tempStr, ",,", ","); //replace double ,, with one ,
tempStr = Regex(tempStr, ",$", "", GLOBALREPLACE); //remove , if last character
return(tempStr);
);
win2 = New Window("Example", << Modal,
V List Box(
Text Box("Add Serialnumbers:"),
teb = Text Edit Box("", << set width(200), << set nlines(3),
<< Set Function(Function({this},
this << set text(parsePaste(this << get text));
))
),
H List Box(
Button Box("OK", listStr = teb << get text),
Button Box("Cancel")
)
)
);
show(listStr);
temp = Words(listStr, ",");
temp = "'" || Concat Items(temp, "','") ||"'";
show(temp);