问题标签 [openedge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1019 浏览

rdbms - 有没有办法以只读访问权限连接到共享 OpenEdge RDBMS?

我们的新安全策略要求限制开发人员对生产数据库的数据访问。由于多种原因,设置 -RO 参数不起作用(摘自“启动命令和参数参考” http://documentation.progress.com/output/OpenEdge102b/pdfs/dpspr/dpspr.pdf

1)“如果您在其他用户更新数据库时使用-RO参数,您可能会看到无效数据,例如陈旧数据或指向已删除记录的索引条目。”

2)“只读会话本质上是单用户会话。只读用户不共享数据库资源(数据库缓冲区、锁表、索引游标)。”

3)“当只读会话启动时,它不会检查数据库是否存在锁定文件。此外,只读用户打开数据库文件,但不会打开日志或前映像文件。因此,只读用户活动不会出现在日志文件中。”

我们希望能够从 OpenEdge Architect 访问生产数据库中的数据,但不能编辑数据。是否可以?

0 投票
2 回答
3091 浏览

progress-4gl - 使用 SQL / JDBC 在 OpenEdge 10.2B 中正确实现自动递增主键

我想使用 JDBC 适配器模仿 OpenEdge 中许多数据库具有的自动递增主键功能(即在执行 INSERT 时不必指定主键值)。到目前为止,我已经非常接近我需要的东西,除了能够访问数据库在从 INSERT 返回时生成的主键值的部分(咳咳,所以可能不是那么接近;))。

我当前的解决方案使用表 PK 默认值、触发器和序列的组合来实现它:

这允许我运行这样的插入语句:

并且新行会自动从数据库触发器中获取一个 ID。那部分工作正常。

我现在真正需要的是设置的 ID 的值;直接获取值,或者包含刚刚插入的行的 ResultSet(然后可以展开以查看 ID)。我知道OraclePostgres都支持用于插入的 RETURNING 子句,这通常是如何处理的。但是,对于 OpenEdge,我没有看到类似的东西。

CURRVAL我可以在 10.2B SQL 开发手册中找到的唯一相关部分是在第 5-10 节中,其中显示了在执行INSERTthat uses之后如何访问序列的NEXTVALINSERT但是,这很危险,因为如果跨多个 JDBC 会话(竞争条件和诸如此类)为该表执行大量 s,我可以获得其他人的 ID 。

到目前为止,我能想到的唯一选择是编写一个专门用于包装/执行INSERT操作的存储过程,它具有生成的 ID 的输出参数。但是,这对于我正在处理的工作来说是不可行的,它必须使用普通的 SQLINSERT语句,而且看起来有点生硬和脆弱(例如,如何处理可以在INSERT,如果架构发生变化怎么办?)。

此外,这一切的重点是不必在 INSERT 中引用主键,所以请不要告诉我users_seq.NEXTVAL在我的INSERT声明中使用。:-)

0 投票
1 回答
9771 浏览

progress-4gl - 正在格式化日期时间字段-4gl

我想格式化一个日期时间字段,但我不知道语法。我希望它显示如下:“mm:dd:yy hh:mm am”。

0 投票
0 回答
1670 浏览

openedge - Progress SQL Explorer 工具未启动

我已经在我的 Windows XP PC 上安装了 Progress 9.1e 客户端。

我只是无法从快捷方式运行“SQL Explorer Tool”。没有错误信息。没有什么!我也从命令行的快捷方式运行了命令。

"C:\Program Files\Progress\bin\jvmStartw.exe" -f "C:\Program Files\Progress\sqlexp.prm"

还是没有输出。该命令似乎以 0 (ECHO %ERRORLEVEL%) 结束并存在。

这在我安装它的另一台 PC 上运行良好。

我也尝试过重新安装它。

请问有什么想法!?

谢谢。

0 投票
1 回答
2147 浏览

progress-4gl - 生成随机字母的函数

如果有任何用于获取随机“字母”的内置函数

像我们用来生成随机数的 RANDOM(low,high) 一样?

对于我的打字导师,我想生成一些句子(不需要有意义)。

所以我需要一些函数来生成字母,这样我就可以从中生成单词。

(逻辑上的改变也将被接受。但我更喜欢这种逻辑。)

谢谢

0 投票
3 回答
7265 浏览

progress-4gl - 将字符值从字符数组变量复制到字符(字符串)变量

这是我的问题

现在我想将此字符串复制到我的“MyArray”。所以它应该如下

MyArray[1]=h ,MyArray[2]=a ,M​​yArray[3]=i ,MyArray[4]="" ,MyArray[5]=t ,MyArray[6]=h 等等...

那么该怎么做呢?

0 投票
1 回答
1356 浏览

progress-4gl - 使用 pstimer 运行事件

我想以 60 秒的固定间隔执行一个函数、一个过程或一个块。我必须为此使用PS计时器吗?让它成为我的障碍

//myEditor 是我在框架中的编辑器小部件。//我的字符串是我将用来显示的字符串

我想每 60 秒重复一次。这样每次它都应该显示我在编辑器中输入的任何内容。?如何使用 PSTimer 或不使用它来做到这一点?

0 投票
2 回答
9783 浏览

progress-4gl - 从progress4gl的文本文件中读取输入字符串

我有一个包含一些文本的 .txt 文件。我想读取这个文件并将其存储到一个字符串中。有没有可用的功能?或者怎么做?请帮忙

0 投票
3 回答
10102 浏览

progress-4gl - 在逗号分隔的项目列表上运行循环 4GL

在 char 变量中循环以逗号分隔的列表的最佳方法是什么,这样在这个例子中我会得到一个然后是两个然后是三个然后是四个。

0 投票
1 回答
3051 浏览

progress-4gl - 使用 Progress 10.2b 如何让滚动条正常工作

在我的进度应用程序中使用浏览器时,滚动条永远无法正常工作。它会显示我只能向下滚动一点,然后继续前进。这是一个正在进行的错误还是我可以做些什么来解决这个问题?

当我使用这样的浏览器时,我将滚动条拉到底部,然后单击滚动条上的向下箭头,仍然有行(即使滚动条位于屏幕底部)。