提示框弹出、内容写好、点保存,界面没有任何反应,或者弹一句英文错误——通达信公式保存失败这件事,原因集中在三个可枚举的方向:写入权限、文件路径、文件占用。按这个顺序查,比反复重装客户端有效。
下面按三类失败的分辨方法、权限设置、路径问题、文件占用、名称与长度限制、重启后消失的情形与一份排查顺序展开。文中目录名与文件名按通达信 PC 版的常见结构描述,不同版本与券商定制版对数据的组织方式存在差异,请以你所用客户端实际目录为准。
一、先分清是哪一类失败
保存动作分两个阶段:先在界面上确认内容,再把内容写入本地数据文件。两个阶段失败的提示不同,排查方向也不同。
| 现象 | 卡在哪一步 | 主要方向 |
|---|---|---|
| 点保存后无提示,编辑框不关闭 | 界面校验 | 公式名称或算式内容不符合规则 |
| 弹出提示,编辑框保留 | 写入 | 权限、路径、文件占用 |
| 提示已保存,重启后公式不见 | 写入到了别处 | 数据目录指向与多账号目录 |
第三行最容易被误判成「丢失」。它的实质是保存动作确实完成了,只是写进了另一个位置,而这个位置不是重启后加载的那一个。判断方法在后文单独展开。
通达信公式保存失败提示里的文案,各版本措辞不统一,同一类原因在不同版本上可能给出不同的英文句子。所以不要靠背提示文本来定位,先按发生的时间点归类:保存动作之前被拦下、保存动作中被拒绝、保存动作完成但结果没生效,三类各自对应一处机制。
二、权限:客户端装在系统盘时
客户端安装在系统盘的常规目录下时,程序目录默认只允许管理员写入。以普通账号运行客户端,读取正常、写入被拒,表现就是公式能看、能算,但保存失败。
处理方式有两条。一是以管理员身份运行客户端,让写入动作获得权限;二是把客户端安装到用户目录下,避开系统盘的程序目录权限限制。两种方式都能解决写入被拒,区别在于前者每次启动都需要确认,后者一次解决。
三、路径:数据目录指向哪里
自编公式的数据位于客户端安装目录下的 T0002 文件夹内,自编公式的记录集中在其中的 PriGS.dat 这类数据文件里,同目录下的 gs_bak 是客户端自己维护的一份公式数据备份。
{ 公式数据常见位置(按 PC 版常见结构整理) }
安装目录\T0002\ 自编公式与指标数据目录
安装目录\T0002\PriGS.dat 自编公式数据文件
安装目录\T0002\gs_bak\ 客户端维护的公式数据备份
安装目录\T0002\blocknew\ 板块相关数据
保存失败与路径有关的情形有两种。一是数据目录被整体移动或重命名,客户端配置里记录的仍是旧路径,写入时找不到目标位置。二是目录所在磁盘写满,写入动作无法完成,而提示文案可能与权限问题看上去差不多。
核对方法很直接:打开客户端安装目录,确认 T0002 存在且可写,再看这个分区剩余空间是否大于文件本身的大小。两步都能在文件管理器里完成,不需要进公式管理器。
四、占用:文件正被别的进程使用
公式数据文件在同一时间只应被一个客户端实例写入。开了多个客户端窗口、或者上一个客户端进程还没有完全退出时,文件被占用,保存动作拿不到写入权。
- 同时开多个客户端实例。第二个实例能读数据,但保存时会失败。
- 上一次退出不彻底。任务管理器里仍能看到进程,此时目录下的数据文件处于占用状态。
- 同步盘或杀毒软件正在扫描该目录。扫描期间文件被短暂锁定,写入动作被拒绝。
对应的处理顺序是:先在任务管理器里确认客户端进程已经全部结束,再把数据目录从同步盘的同步范围内移出,最后再试一次保存。把数据目录放在同步盘上还有一个隐性代价:两台机器同时写入时两边互相覆盖,公式内容会出现难以追溯的变动。若确实需要多台机器共用同一套公式,改用导出文件手工搬运,比让同步盘去合并二进制数据文件更可控。
五、名称与长度两类限制
除了上面三类,还有两种情形会在点保存的瞬间被拦下。
- 公式名称不合法。名称里带空格、中文标点或特殊符号时,部分版本会拒绝保存而不给出明确的提示文案。改用字母与数字组合最稳妥。
- 算式长度超限。公式内容有长度上限,把大段说明写进算式里会把长度占满。说明应该写在公式管理器的描述栏,而不是算式里。
同目录下还有一个容易被忽略的细节:公式名称的显示名与调用名可以不同。编辑框里看到的名称是用于显示的,实际写入记录时还会有一个用于调用的标识。显示名改了而调用名没改,保存动作本身不会失败,但事后按调用名去找这条公式时会找不到。通达信公式保存失败虽然主要表现为提示或静默拒绝,名称层面的出入也会让人误以为没有保存成功。
六、保存成功但重启后不见
这一类与写入无关,问题出在「写到了哪里」。常见原因是客户端以多账号目录方式运行:安装目录下可能存在若干以账号命名的子目录,每个目录各有一套公式数据。当前会话写入的目录,与重启后加载的目录不一致,公式就看起来消失了。
确认办法是查看安装目录下的子目录列表,找出其中的公式数据文件,比较它们的修改时间。修改时间最新的那一个,就是刚才保存动作真正写入的位置。把这一层级关系记下来,之后每次核对都以实际生效的目录为准。
七、排查顺序
- 看提示类型:无提示属于名称或长度问题,有提示属于权限、路径或占用问题。
- 确认客户端进程是否全部结束,是否同时开了多个实例。
- 打开安装目录,确认公式数据目录存在、所在分区有剩余空间。
- 确认数据目录不在同步盘的同步范围内,也没有被安全软件持续扫描。
- 需要写入权限时,改用管理员身份运行,而不是放宽整个程序目录的权限。
- 保存成功后退出客户端再重启一次,确认公式仍在,排除写入位置不一致。
通达信公式保存失败的三类原因互相独立,排查时不要合并动作——一次只改一个条件,改完立刻重试,才能知道是哪一项起作用。公式数据的备份方式与恢复周期,见 跨平台对比与公式转换 一栏;自编公式应该放在哪个目录,见 公式安装与导入 一栏;其它类型提示的排查顺序,见 报错与卡顿排查 一栏。
文中目录名、文件名与提示类型按通达信 PC 版的常见结构描述;不同版本与券商定制版在数据目录布局、权限处理与提示文案上存在差异,具体请以你所用客户端的实际界面与帮助文档为准。本文只讨论文件与操作层面的机制,不构成任何投资建议。
