記事
· 2022年12月7日 1m read
ObjectScript クックブック

開発者の皆さん、こんにちは!

InterSystems全製品のサーバ側コードで利用できる「ObjectScript」の基本の使い方から、困ったときのヒント集、エラーの読み方など、日本語ドキュメントの逆引きになるようなページを目指して、「ObjectScriptクックブック」を作成しました!

- ObjectScriptの基本の「き」

Hello Worldの出力から始めたい方に最適です。

2024/3/25更新:8. デバッグ方法 を追加しました。ぜひご参照ください。

- CookBook(こんなときどうする?集)

ObjectScriptの記述に困ったときに読んでいただけるヒント集です。コミュニティに寄せられたご質問をどんどん掲載していきます。

- ObjectScriptでエラーが発生したら

ObjectScriptのプログラムでエラーが発生したときのエラーメッセージの読み方から、エラー情報の取得方法などを解説しています。

4 1
0 266

これは InterSystems FAQ サイトの記事です。

以下のような情報収集ツールがあります。

1) 性能評価の為のツール

GLOSTAT グローバルアクセスのカウンター情報
mgstat グローバルアクセスのカウンター情報を連続してファイルに記録する
JOBEXAM 問題のあるプロセスをモニターする
SystemCheck または Buttons

内部情報の収集

使用方法詳細は以下の記事もご参照ください。

2 0
0 227

バージョン 2023.3(InterSystems IRIS for Health)の新機能は、FHIR プロファイル基準の検証を実行する機能です。

(*)

この記事では、この機能の基本的な概要を説明します。

FHIR が重要な場合は、この新機能を絶対にお試しになることをお勧めします。このままお読みください。

2 0
1 27

2024.1 の開発者プレビュープログラムの一環として、2番目の開発者プレビューを公開いたします。リリースされる製品は InterSystems IRIS®, InterSystems IRIS® for HealthTM, HealthShare® Health Connect になります。

1 0
0 26

これは InterSystems FAQ サイトの記事です。

このエラーが発生する原因としては、アプリケーションの中で既に他のプロセスからロック対象リソースがロックされていて、何らかの理由でそのロックが解放されていないケースが考えられます。

他のプロセスがロックしている兆候がない場合は、ロックテーブルの空き領域が不足しているケースが想定されます。
その場合は、メッセージログ(コンソールログ)に LOCK TABLE FULL のメッセージが出力されます。

トランザクション処理を行なっている場合には、ロック解放の延期が影響しているケースも考えられます。
トランザクションとロック解放の延期については、以下のドキュメントをご参照下さい。

1 0
0 540

2024.1 の開発者プレビュープログラムの一環として、3番目の開発者プレビューを公開いたします。リリースされる製品は InterSystems IRIS®, InterSystems IRIS® for HealthTM, HealthShare® Health Connect になります。

1 0
0 27

Config.Configurationクラス、SYS.Databaseクラスのメソッドを使用して、ネームスペース・データベースの作成及び登録をターミナルから実行することができます。

以下はデータベースファル/CacheDB/AAA/cache.datを作成し、構成ファイル(cache.cpf)にデータベース AAA、及び、ネームスペースAAAの登録を行う一連の実行例です。 *実行は、%SYSネームスペースで行って下さい。*

1 3
0 514

これは InterSystems FAQ サイトの記事です。

ルーチン(*.mac)の場合

ソースプログラムのコンパイル後に生成される *.obj のみをエクスポート/インポートすることでソースの隠蔽化を実現できます。

コマンド実行例は、EX1Sample.mac と EX2Sample.mac のコンパイルで生成される EX1Sample.obj と EX2Sample.obj をエクスポート対象に指定し、第2引数のファイルにエクスポートしています。

別ネームスペースに移動したあと、エクスポートした XML ファイルを利用してインポートを実行しています。

1 0
0 206

これは InterSystems FAQ サイトの記事です。

ユーザ定義エラーとして使用したいエラーコードと対応するメッセージを記述したXMLを用意します。

なお、エラーコードは負の整数で設定してください。

<?xml version="1.0" encoding="UTF-8" ?> 
<MsgFile Language="ja">
  <MsgDomain Domain="UserErrors">
    <Message Id="-111" Name="MyError">エラーが発生しました</Message> 
    <Message Id="-222" Name="MyError2">エラーが発生しました2</Message> 
  </MsgDomain>
</MsgFile>

XML ファイルが作成できたら使用したいネームスペースにロードします。

1 0
0 113

2021年12月13日 - 勧告: Apache Log4j2ライブラリの脆弱性がインターシステムズ製品に与える影響

インターシステムズは現在、Apache Log4j2に関するセキュリティ脆弱性の影響を調査しています。

1 1
0 132

インターシステムズは、InterSystems IRIS Data Platform、InterSystems IRIS for Health、HealthShare Health Connect、InterSystems IRIS Studio 2023.1 リリースを一般提供開始(GA)したことを発表しました。

2023.1 は、拡張メンテナンス(EM)リリースです。2023.1では、多くのアップデートと機能拡張が追加されました。

1 0
0 82

これは InterSystems FAQ サイトの記事です。

ダイナミックオブジェクトから JSON 文字列を生成するときに使用する %ToJSON() の引数にストリームオブジェクトを指定することでエラーを回避できます。

コード例は以下の通りです。

USER>set temp=##class(%Stream.TmpCharacter).%New()

USER>set jsonobj={}

USER>set jsonobj.pro1=["a","b","c","d"]

USER>set jsonobj.pro2=["あ","い","う","え"]

USER>do jsonobj.%ToJSON(temp)

USER>write temp.Size
51
USER>write temp.Read()
{"pro1":["a","b","c","d"],"pro2":["あ","い","う","え"]}

詳細はドキュメントもご参照下さい。

1 3
0 359

これは InterSystems FAQ サイトの記事です。

注意:本番環境では実行しないでください。テスト環境でご利用ください。

開発時にプロダクションに残っているキューを一括でクリアしたり、プロダクションに関連した一次的な情報をすべて消去したい場合、以下メソッドを利用して実行中のプロダクション情報をリセットできます。

1 0
0 90


こんにちは!

この記事では、IRIS から Caché、Ensemble、HealthShare など、InterSystems の製品で使用されるクラスやその構造を理解するのに役立つツールの概要を簡単にまとめています。

つまり、そのツールはクラスやパッケージ全体を視覚化し、クラス間の相対関係を示し、ディベロッパーやチームリーダーに必要な情報をすべて提供してくれるので、わざわざ Studio に移動してコードを調べる必要が省けます。

InterSystems の製品について情報を集めている方からたくさんのプロジェクトをレビューしている方、または単純に InterSystems Technology ソリューションの新機能に興味がある方まで、ObjectScript Class Explorer の概要をぜひお読みください!

1 0
0 262

これは InterSystems FAQ サイトの記事です。

※データベースファイルとは、IRIS.DAT、および、CACHE.DATのことを指します。

Caché/Ensemble 2018.1.4、IRIS 2019.1.2/2020.1.0 以降のバージョンより、データベースファイル のサイズの縮小に、データベースの「圧縮」と「未使用領域の削除」機能をあわせて使用できます。

1 0
0 838

これは InterSystems FAQ サイトの記事です。

各タイムアウト値の意味は以下の通りです。

(1) [サーバ応答タイムアウト]

この設定時間内に、IRIS/Caché での処理(ルーチンやクエリの実行)が終わらない場合は、ブラウザ側にエラーを返します。

例) この値が60秒の時に、ルーチン/メソッド/クエリ実行に 90秒 かかる場合にはエラーになります。

(2) [キューイングされたリクエストのタイムアウト]

CSP/REST で設定する IRIS/Caché サーバごとに、CSP/REST を同時実行できるプロセス数を制限できます。

1 0
0 562
記事
· 2021年8月30日 2m read
クエリをチューニングする方法

これは InterSystems FAQ サイトの記事です。

InterSystems 製品には、テーブルのコンテンツに関する統計を収集し、クエリの最適化に役立てる「テーブルチューニング機能」があります。

設定方法は、以下のドキュメントをご参照ください。

ターミナルでは次のコマンドを実行します。

Do $system.SQL.TuneTable("<テーブル名>",0,1)

また、以下の資料もご参照ください。

1) パフォーマンス調査の基礎知識として必要なグローバル構造の解説やSQLの動作の仕組みからクエリプランの見方の解説

インターシステムズ・シンポジア2011の資料

2) パフォーマンスチューニングの例(P13~)

インターシステムズ・シンポジア2012の資料

3) ビットマップ・インデックスの圧縮やオプティマイザ・ヒントなど、Caché SQLのパフォーマンスを最大限に引き出すための情報について

インターシステムズ・シンポジア2014の資料

4) パフォーマンスに困ったときにどこに着目し、どのツールで調べていくか、お客様から日々ご相談をいただくカスタマーサポートから、解決に向かうアプローチの「イロハ」をご紹介するビデオ

動画:Performance 101

5) 開発者コミュティのパフォーマンス関連情報(performanceタグ)

performanceタグ

1 0
0 245

この度、InterSystems IRIS Data PlatformInterSystems IRIS for HealthHealthShare Health Connect、および InterSystems IRIS Studio の 2022.3 をリリースしました。

2022.3 は、継続的デリバリー(CD)リリースです。2022.3では、SQL管理、クラウド統合、KafkaおよびJMSアダプタ、SQL Loaderなどの分野にて、多くのアップデートや機能強化が実施されました。 新たにFHIR SQL BuilderとColumnar Storageの機能が含まれていますが、いずれもまだ実験的な機能です(本番用ではなく、アクティブなEarly Access Programが実施されています)。

1 0
0 97

インターシステムズは、接続性に関する 2 つの問題を修正しました。これらの不具合とその修正はそれぞれ独立しています。

この警告は、2つの問題の修正を含む ポイントリリース があるため、両方に対処する内容になります。

どちらの問題も、以下の製品のバージョン2019.1.42020.1.4のみに影響します:

1 0
0 49

これは InterSystems FAQ サイトの記事です。

Excelのマクロ機能を使ってVBAからREST/JSON経由でアクセスすることが可能です。

REST/JSONを使用したInterSystems製品との連携の簡単なサンプルを以下のGitHubサイトから入手できます。

VBAマクロサンプル

マクロサンプルは Solution/activityreport.xlsm をご覧ください。

サンプルは、コンテナを利用しています。READMEに記載の方法でコンテナを開始し、Solution/activityreport.xlsm の「データ取得」ボタンをクリックすると以下の結果が得られます。

1 0
0 243

2024.1 の開発者プレビュープログラムの一環として、最初の開発者プレビューを公開いたします。リリースされる製品は InterSystems IRIS®, InterSystems IRIS® for HealthTM, HealthShare® Health Connect になります。

1 0
0 42

これは InterSystems FAQ サイトの記事です。

Java のガベージコレクションは、使用しなくなったメモリ上のオブジェクトを自動開放するしくみですが、InterSystems data platform(以下IRISと表記)のガベージコレクションは、意味が異なります。

IRIS では、ディスク上の大量のデータノードを 1 コマンド(killコマンド)で削除する機能があります。

通常、データ容量が増えれば、それに伴い、削除に必要な時間が増加しますが、そうすると、そのkillコマンドを発行したプロセスが、削除が終わるのを待つ時間が増加することになってしまいます。

その様な事象の発生を避けるため、IRIS では、ユーザプロセスが大量のデータを削除する kill コマンドを発行した際に、その場で削除に必要な全ての処理を行うのではなく、削除が必要な開始の場所だけを示して、次の処理に進むようになっています。

0 0
0 84

これは InterSystems FAQ サイトの記事です。

クラスに定義されたプロパティの情報については、以下システムクラスを利用して情報を取得できます。

%Dictionary.ClassDefinetion

0 0
0 234

これは InterSystems FAQ サイトの記事です。

バージョンアップ後、ルーチンを再コンパイルする必要はありませんが、バージョンアップで %SYS が上書きされるため、%SYS 内のユーザ作成 INT 形式および OBJ 形式ルーチン(*.INT,*.OBJ)が削除されますので、注意が必要です。

MAC形式(.MAC)と以下の名前の INT 形式および OBJ 形式ルーチンについては削除されません。

  • %Z*.INT, %z*.INT, Z*.INT,z*.INT
  • %Z*.OBJ, %z*.OBJ, Z*.OBJ,z*.OBJ

なお、クラス/CSP はアップグレード後にコンパイルが必要となります。

ただし、メンテナンスリリースへのアップグレードの場合は、コンパイルは不要です。詳細は、以下ドキュメントをご参照ください。

0 0
0 112

キーワード: Jupyterノートブック、TensorFlow GPU、Keras、ディープラーニング、MLP、HealthShare

1. 目的

前回の「パート1」では、ディープラーニングデモ環境をセットアップしました。今回「パート2」では、それを使ってできることをテストします。

私と同年代の人の中には、古典的なMLP(多層パーセプトロン)モデルから始めた人がたくさんいます。 直感的であるため、概念的に取り組みやすいからです。

それでは、AI/NNコミュニティの誰もが使用してきた標準的なデモデータを使って、Kerasの「ディープラーニングMLP」を試してみましょう。 いわゆる「教師あり学習」の一種です。 これを実行するのがどんなに簡単かをKerasレベルで見ることにします。

後で、その歴史と、なぜ「ディープラーニング」と呼ばれているのかについて触れることができます。流行語ともいえるこの分野は、実際に最近20年間で進化してきたものです。

0 0
0 111

これは、2022.3の開発者プレビュープログラムのリリース第2弾です。 2022.3では、新たな FHIR SQL Builder や、改良された Columnar Storage Oracle Linux 9
のサポート(このプレビューには入っていません)など新機能や、多くのアップデート、機能強化が行われています。

プレビューリリースは、隔週で更新される予定で、準備が整い次第、機能を追加していく予定です。 製品改善のため、開発者コミュニティを通じてフィードバックをお寄せください

この開発者プレビューリリースのビルド番号は 2022.3.0.545.0 です。

0 0
0 124

これは InterSystems FAQ サイトの記事です

復旧を優先される場合を除き 【トラブル発生状態のまま】弊社サポートセンターまでご連絡ください。

その際、専用ツールを利用して情報収集いただくことで(所要時間約 5分)、サポートセンターによる状況確認がスムーズに行えます。

ツール使用方法については、PDF または以下ビデオでご紹介しています。

0 0
0 131