Requêtes JMP et SQLHé les gars, j'ai deux questions connexes qui seraient formidables si je trouvais une solution à:
1. Existe-t-il un moyen pour JMP de modifier un champ dans une requête SQL? Je veux dire que je souhaite exécuter du code JSL qui demandera à un utilisateur la plage de dates (par exemple), il le mettra à jour dans le champ pertinent de ma requête SQL et exécutera cette requête.
2. Est-il possible de créer un code JSL qui demandera à l'utilisateur s'il doit exécuter une requête X ou une requête Y et en fonction de la réponse, il exécutera la requête choisie?
Pour les deux questions, en ce moment, mon code exécute des requêtes qui ont été converties en fichiers BAT (utilisé pour travailler avec des fichiers EXE mais SQL ne le prend plus en charge en standard.
Exemple de bouton Exécuter:
Boîte à boutons ("xx",
open ("\\ VMSPFSFSLC01 \ F28_PLI \ SQL \ FE SQL \ xx.bat")
),
AnalytiqueTableau de donnéesScriptingRe: requêtes JMP et SQLPeut-être voulez-vous jeter un œil à un article récent:
Stratégies et exemples d'acquisition de données à partir d'une source distribuée et complexe ... - Communauté d'utilisateurs JMP
Dans la vidéo, vous trouvez comment cela fonctionne et dans le journal, vous trouvez tous les scripts fonctionnant avec l'exemple de table Big Class.jmp.
Mais à peu près la même chose fonctionne également sur les connexions ODBC pour les bases de données.
Re: requêtes JMP et SQLBonjour Stas
Vous pouvez concaténer vos extraits de code SQL à votre guise. J'ai deux exemples pour vous donner une idée de la façon de résoudre votre problème:
OrderNumber = 12345;
text_block_DB_0 = "select t1.* from DB1 t1";
if(selection_button, // can be a choice of the user
text_block_DB_1 = " and t1.[time]=(select max(t2.[time]) from DB1 t2 where t1.[SN] = t2.[SN])"; // get the laste entry of a serial number dependend of time)
,
text_block_DB_1 = ""; // gives all SN
)
dt = Open Database(__DSN_String,text_block_DB_0 || " where t1.[Order] = " || char(OrderNumber) || text_block_DB_1);
OrderNumber = 12345;
text_block_DB_0 = "select t1.* from DB1 t1 where t1.[Order] = *insert_order_number* ";
if(selection_button,
text_block_DB_1 = " and t1.[time]=(select max(t2.[time]) from DB1 t2 where t1.[SN] = t2.[SN])";
,
text_block_DB_1 = "";
)
dt = Open Database(__DSN_String,substitute(text_block_DB_0,"*insert_order_number*", char(OrderNumber)) || text_block_DB_1);