問題タブ [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 についてはそのようなものは見当たりません。

10.2B SQL 開発マニュアルで見つけた唯一の関連部分はセクション 5-10 で、を使用CURRVALする を実行した後にシーケンスのにアクセスする方法を示しています。ただし、複数の JDBC セッション (競合状態など) でそのテーブルに対して大量の s が発生している場合、他人の ID を取得する可能性があるため、これは危険です。INSERTNEXTVALINSERT

これまでに思いついた唯一の代替手段はINSERT、生成される ID の出力パラメーターを持つ、操作をラップ/実行するためのストアド プロシージャを作成することです。しかし、それはプレーンな SQL ステートメントを使用する必要がある私が取り組んでいるものには適していません。INSERTまた、少しハックで脆いようです (たとえばINSERT、スキーマが変更された場合はどうなりますか?)。

users_seq.NEXTVALまた、これの要点は、INSERT で主キーを参照する必要がないことです。そのため、INSERTステートメントで使用するように言わないでください。:-)

0 投票する
1 に答える
9771 参照

progress-4gl - 進行中の日時フィールドのフォーマット-4gl

日時フィールドをフォーマットしたいのですが、構文がわかりません。「mm:dd:yy hh:mm am」のように表示したい。

0 投票する
0 に答える
1670 参照

openedge - 進行状況 SQL エクスプローラー ツールが起動しない

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、MyArray [3] = i、MyArray [4] = ""、MyArray [5] = t、MyArray [6]=hなど...

それで、それをどのように行うのですか?

0 投票する
1 に答える
1356 参照

progress-4gl - pstimer を使用してイベントを実行する

関数、プロシージャ、またはブロックを 60 秒間隔で実行したいと考えています。そのためにPSタイマーを使用する必要がありますか?これを私のブロックにしましょう

//myEditor は、フレーム内の私のエディター ウィジェットです。//My String は、表示に使用する文字列です

これを60秒ごとに繰り返したい..毎回、エディター内に入力したものを表示する必要があります.? PSTimerを使用して、または使用せずにこれを行うにはどうすればよいですか?

0 投票する
2 に答える
9783 参照

progress-4gl - 進行中のテキストファイルからの入力文字列の読み取り4gl

テキストを含む.txtファイルがあります。このファイルを読み取って文字列に保存したいと思います。そのための機能はありますか?またはそれを行う方法は?助けてください

0 投票する
3 に答える
10102 参照

progress-4gl - アイテムのコンマ区切りリストでループを実行すると、4GLが進行します。

この例では、1つ、2つ、3つ、4つになるように、char変数のコンマ区切りリストをループする最良の方法は何ですか。

0 投票する
1 に答える
3051 参照

progress-4gl - Progress 10.2b を使用して、スクロール バーを正しく動作させるにはどうすればよいですか

プログレス アプリケーションでブラウザを使用すると、スクロール バーが正しく機能しません。少ししか下にスクロールできないことが示されますが、その後は続けます。これは進行中のバグですか、それともこの問題を解決するために私にできることはありますか?

このようなブラウザーを使用する場合、スクロール バーを一番下まで引き下げてから、スクロール バーの下向き矢印をクリックすると、まだ行が表示されます (スクロール バーが画面の一番下にあっても)。