問題タブ [syncsort]
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.
mainframe - 2 つのファイルを比較し、「一致」ファイルと「不一致」ファイルに書き込みます
それぞれの長さが 5200 バイトの 2 つの入力ファイルがあります。両方のファイルを比較するために 7 バイトのキーが使用されます。一致する場合は、「一致する」ファイルに書き込む必要がありますが、一致するファイルに書き込むときに、 からのいくつかのフィールドinfile1
と からの他のすべてのフィールドが必要infile2
です。
一致しない場合は、no match
ファイルに書き込みます。
でそれを行うことは可能sort
ですか?COBOLプログラムを使用して簡単に実行できることは知っていますが、.NETで知りたいだけですSORT/ICETOOL/Easytrieve Plus (EZTPA00)
。
numeric - SYNCSORTを使用して、特定の符号値でPacked Decimalフィールドをフォーマットするにはどうすればよいですか?
SYNCSORTを使用して、すべてのPackedDecimalフィールドを負の符号値に強制したいと思います。重要な要件は、2番目のニブルが16進数の「D」でなければならないことです。私にはうまくいく方法がありますが、それはあまりにも複雑に思えます。KISSの原則に沿って、誰かがより良い方法を持っていることを望んでいます。おそらく最後の4ビットにビットマスクを使用していますか?これが私が思いついたコードです。もっと良い方法はありますか?
mainframe - JCL-SYNCSORT を使用して PD ユリウス日付を (現在のユリウス日付-7) と比較する方法は?
以下のような要件があります。
入力ファイルには、23 番目の位置 (位置 23、長さ 4) から始まるパック 10 進数のユリウス日があります。
入力ユリウス日が (現在のユリウス日 - 7 日) 未満の場合、レコードを出力 File1 に書き込みます。
それ以外の場合は、レコードを出力 File2 に書き込みます。
SyncSort のみでこの要件の解決策を教えてもらえますか?
mainframe - テーブル列がDB2テーブルのINTEGER形式である場合、アンロード結果をパック10進形式で取得するにはどうすればよいですか?
以下に説明するクエリが1つあります....、
誰かがアンロード中にパック10進数でテーブル値を変換する方法を教えてもらえますか、それを取得する別の方法を提案してください。
例:1。ユリウス日(YYYYDDD)をアンロードします[アンロード後、これは16進形式になります]。2.現在のユリウス日+7日と比較します。SORT FIELDS = COPY OUTFIL FILES = 1、INCLUDE =(1,4、PD、LT、DATE3P + 7)OUTFIL FILES = 2、SAVE
よろしくお願いします、RajasekharJannu。
jcl - Syncsortを使用してレコード数を取得するにはどうすればよいですか?
私の要件は、JCL-Syncsortを使用して同じレコード数を取得することです。
MY入力ファイルには、58〜60の位置にパックされた10進値が含まれています。01から05の範囲の入力の場合、レコード数を取得する必要があります。
実際、PD値をZDに変換して、C'01'やC'05'と比較してみました。
結果が出ませんでした。
例:58-60の入力ファイルデータ(Comp-3形式の3バイト)
07.2
05.2
04.0
45.7
02.4
出力は次のようになります。
RF値| カウント
02.41
04.01
誰かがこれを達成する方法を教えてもらえますか?
sorting - このSyncsortコードが何をするのか説明してください。
以下のコードは、DD名で私の仕事に含まれているprocにありましたsort.controls
。このステップは、ソートプログラムSyncsortを使用して実行されました。START
以下のコードは、並べ替えに使用するフィールドの開始位置と、並べ替えに使用するフィールドLENGTH
の長さを示していることがわかります。しかし、私は何であるか理解できません ID TYPECODE=1
。誰かがこれを説明できますか?
mainframe - バイナリ値でレコードを追加
FB の長さが 80 のファイルがあります。1
位置 80 の値の場合、位置 81 に固定値の数値を追加したい='Y'
この追加された値はS9(9) BINARY
、コピーブックから見たときに想定されます。
追加されたフィールドはSUM FIELDS
、別のステップで使用されます。
カードをどのようにコーディングしSORT SYSIN
ますか?
mainframe - JCL を使用して DSN に先月の日付からの年を含める
「データセット名の前の月-年の JCL」の質問に似たリクエストがあります。その質問への答えは、日付の知識を前提とした ALTER ステートメントを使用しました。DSN に年を追加する JCL がありますが、1 月には前年が必要です。これは SYNCSORT または DFSORT の助けを借りて可能だと思いますが、これらの経験はありません。任意の支援をいただければ幸いです。
現在の JCL は次のとおりです。
unsigned - SyncSort を使用してデータを署名なしのパック形式に変換するにはどうすればよいですか?
数値データ (入力時に文字として格納される) をパックされた符号付きまたはパックされた符号なしの形式に変換する必要があります。「PD」形式を使用してパック/署名に変換できますが、署名されていないパック データを取得するのに苦労しています。
たとえば、14723 のような ZD 番号を次のように変換する必要があります。
042
173
PDを使用して、これを取得します(これで問題ありません):
0173
042C
助言がありますか?このショップには COBOL がなく、これらのデータ変換を処理するために SyncSort に依存しています。SyncSort に「PK」オプションが表示されませんが、以前に見落としていたものがあります。
mainframe - SYNCSORT JCL で XSUM を使用中に最後のエントリが必要
以下のようなデータがあります。
これは実際のデータではありませんが、実際のデータはこれに似ています。また、データは各フィールド間に 2 つのスペースがあるファイルに含まれます。入力または出力にデータベースは関与しません。わかりやすくするために表形式を使用しています。
ファイルでは、データは次のようになります。
ここで、SYNCSORT を使用して重複を排除する必要があります。XSUM を使用してこれを行うことができますが、次のデータが得られます。
しかし、私は必要です:
データの最後のセットにはRobert
、出力での最後の出現があり、前のセットには最初の出現があります。
では、XSUM を使用してこれを達成する方法はありますか?