Skip to content

Latest commit

 

History

History
61 lines (50 loc) · 2.02 KB

README.md

File metadata and controls

61 lines (50 loc) · 2.02 KB

This is the ObjectScript client for IRIS NativeAPI Command extension
It is not a click-and-run code but a draft that requires
adjustments for your special needs
you have to add

  • your credentials for server access
  • your level of error handling
    First,
    you make a connection to the target SuperServer Port
do ##class(nacl.Client).Connect("192.168.0.99",41773)   

Then you launch your command for remote execution

USER>write ##class(nacl.Client).Do(" quit $now() ")
66698,68259.396554358
USER>write ##class(nacl.Client).Do(" quit $ZV ")
IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2023.2 (Build 227U) Mon Jul 31 2023 18:04:28 EDT   

Prerequisites

Make sure you have git and Docker desktop installed.

On your target server, you need to install
https://github.com/rcemper/native-api-command-line-extension

Installation

Clone/git pull the repo into any local directory

git https://github.com/rcemper/native-api-command-line-client    

Run the IRIS container with your project:

docker-compose up -d --build    

How to Test it

docker-compose exec iris iris session iris    

A simple remote global lister

 gl ; list remote Global
   set global="^dc.MultiD"  ;; adjust as required    
   set a=%rccdb.Function("%ZX","","quit $LB($D("_global_",%rcc),%rcc)")    
   Write !,global," = ",$li(a,2)," $DATA = ",$li(a),!     
   if $li(a)#10 {    
     for {     
      set a=%rccdb.Function("%ZX","","q $LB($q(@$zr),@$ZR)")   
      quit:$li(a)=""    
      write $li(a), " = ", ##class(%Utility).FormatString($li(a,2)),!    
      }    
    }    
 Write "-------done----------",!   

Article in DC