Skip to content

rcemper/native-api-command-line-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

ObjectScript client for IRIS NativeAPI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published