我怀疑我无意中将自己的帖子标记为不合适。 请把那倒过来。
链接发布: (如何访问JSL中的“系统偏好设置”,特别是日期格式设置)
通过史蒂夫·特里
https://community.jmp.com/t5/Discussions/How-to-access-System-Preferences-in-JSL-specifically-the-date/mp/280619#M54365
我到处搜索,没有找到从JSL中获取系统偏好设置的任何简单方法。 我正在Mac(JMP 14和15)上进行开发,但也想知道如何在Windows上进行操作。  我最近的是 https://community.jmp.com/t5/Discussions/Manage-the-display-language-with-JSL-or-freezing-english/td-p/236566 “ target =” _ self“>讨论有关如何获取语言代码的信息:
 
系统服务(获取语言代码);
系统服务听起来很有趣,但是我找不到任何文档。 我正在寻找一种通用的解决方案,但立即对查找日期格式感兴趣(根据“系统偏好设置”➔“语言和地区”➔“高级...”中的设置)。 ➔日期➔短),如下所示:
 
默认情况下,> Short 日期分隔符通常设置为斜杠,但我在上图中将其修改为破折号。 更改此设置后,我发现的一个具体问题是,它会影响输入格式功能的有效参数。  例如,以下语句将生成运行时错误:
 
col<<输入格式(“ y / m / dh:m:s”);
因此代码必须改为:
col<<输入Format(“ ymd h:m:s”);
,如果用户将其“系统偏好设置”设置为斜杠,则反之为true。  此外,使用 Format 函数,如果给出了错误的日期字符串,则不会出现运行时错误,但相关的datetime列将忽略格式设置,则数据将以其原始的,难以理解的形式保留。
 
因此,有效参数的集合取决于用户的设置,并且代码必须首先,请阅读此设置以确定要使用的格式。
 
作为一种解决方法,我能够从系统Unix命令收集设置信息并据此进行解析:< / p>
&nbsp;
//实现Unix命令:// $默认读取com.apple.mail DateCellWidthCache | grep Mdyy清除Log(); //从包含日期格式字符串的“默认值”中读取系统偏好设置。 sDefaults =运行程序(Executable(“ / usr / bin / defaults”),Options({“” read“,” com.apple.mail“,” DateCellWidthCache“}),Read Function(” text“))); //写入(sDefaults); ss1 = Munger(sDefaults,1,“ M / d / yy”); //检查斜线样式。 ss2 = Munger(sDefaults,1,“ Md-yy”); //检查破折号样式。 显示(ss1,ss2);写(“ \!n”); If(ss1&gt; 0,Write(“使用斜线。\!n”);,/ *否则* / ss2&gt; 0,Write(“使用破折号。\!n”);,/ * else * /写入(“ *** ERROR:无法识别的日期分隔符。\!n”); Write(“默认读取com.apple.mail DateCellWidthCache:\!n”); Write(sDefaults););
但是,这似乎有点笨拙,我想有一种更简单的方法。 显然,JMP引擎可以读取此设置,因为它基于此设置在“列属性”对话框中显示了非常不同的时间格式集,如下所示(此处仅显示破折号):
&nbsp;
因此,我的问题是:是否有一种简单的方法来获取任意的系统偏好设置值(特别是日期格式)是通过使用系统服务&nbsp;或其他一些功能?
&nbsp;
该消息有0条回复