l'ancien script JMP13 fonctionnel ne fonctionne plus avec JMP15. Le script modifie les coordonnées du fichier de carte -XY et ni les mises à jour de Graph Builder ni la carte modifiée n'apparaissent créant une nouvelle instance de générateur de graphique. Juste en ouvrant une nouvelle session, une nouvelle carte s'affiche. Il semble qu'une sorte de mise en cache empêche les mises à jour.
Est-il possible de corriger ou de contourner ce problème?
dt2 = open("C:/TEMP/map-Name.jmp");
dt3 = open("C:/TEMP/map-XY.jmp");
dt= open("C:/TEMP/map.jmp");
new window("shift up",
gb = dt << Graph Builder(
Size( 1381, 885 ),
Variables( Shape( :xy ) ),
Elements( Map Shapes( Legend( 6 ) ) )
);
text box("shift up selected columns by 10"),
button box("up",
rws= dt<< Get Selected Rows();
if(nrows(rws),
r=[];
for(j=1, j<=nitems(rws), j++,
sh= dt[rws[j],"X"];
dt << select where(:X == sh);
rw= dt << get selected rows;
r= r |/ rw;
);
for(i=1, i<=nitems(r), i++,
dt[r[i],"bottom"]=dt[r[i],"bottom"] + 10;
dt[r[i],"top"]=dt[r[i],"top"] + 10;
);
rws= r;
values= column(dt,"xy")[rws];
rws= dt2 << get rows where( Contains( values, :Name ) );
shapes= column(dt2,"Shape ID")[rws];
rws = dt3 << get rows where(Contains( shapes, :Name("Shape ID") ) );
sy = column(dt3,"Y1") << get values;
for(i=1, i<=nrows(rws), i++,
sy[rws[i]] = sy[rws[i]] + 10;
);
column(dt3, "Y1") << set values(sy);
dt3<<SAVE></SAVE>