Artigo
· Ago. 16, 2023 2min de leitura

Tradução: Usando a Extensão NativeAPI a partir do Python.

Em meus artigos anteriores, descrevi minha Extensão de Linha de Comando para NativeAPI.
É claro que isso também está disponível para qualquer outro pacote NativeAPI.
Portanto, criei este exemplo em Python como uma demonstração.
O pacote também contém um servidor IRIS em Docker para a demonstração.
É evidente que ele também funciona com qualquer servidor IRIS remoto.
Você só precisa fornecê-lo com minha Extensão de Linha de Comando NativeAPI.

Eu acredito que esta demonstração é fácil de acompanhar e mostra as características essenciais.

  • Primeiro, você instala o pacote e inicia o contêiner.
  • Então você inicia a demonstração.
    docker-compose exec iris python3 src/rcc.py
  • Em seguida, você se conecta ao seu servidor IRIS, os valores padrão referem-se ao servidor IRIS adicionado no contêiner.
    >>> serverIP [127.0.0.1]:
    >>> serverPORT [1972]:
    >>> namespace [USER]:
    >>> username [_SYSTEM]:
    >>> password [SYS]:
    Connected to Instance IRIS on Server 1C09927CAE60 
  • Agora, você acessa o menu da demonstração.
    Select Demo to exercise 
     0 = free ObjectScript
     1 = $ZV from Server
     2 = Actual Time in Server
     3 = TimeZone Offset of Server
     4 = Server ArchitectureVendorModel
     5 = List Global in ZWRITE style
     * = Terminate demo
    >>> take a choice [1]:  
  • E este é o resultado quando você percorre todos os 5 exemplos.
    >>> take a choice [1]:
     IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2023.2 (Build 227U) Mon Jul 31 2023 18:04:28 EDT 
    
    >>> take a choice [1]: 2
     2023-08-15 07:42:16 
    
    >>> take a choice [1]: 3
     0 
    
    >>> take a coice [1]: 4
     x86_64 * Intel * Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz 
    
    >>> take a choice [1]: 0 
    >>> Your ObjectScript [ quit "?"]: quit $ZTS
     66701,27813.678790226 
    
    >>> take a choice [1]: 0 
    >>> Your ObjectScript [ quit "?"]: quit 17/4
     4.250000000000000000 
    
    >>> take a choice [1]: 0 
    >>> Your ObjectScript [ quit "?"]: quit 17/0
     <DIVIDE> 18 x^%ZX 
    
    >>> take a choice [1]: 5 
    >>> Your Global [^dc.MultiD]:
     ^dc.MultiD = 5
     ^dc.MultiD(1) = $lb("Braam,Ted Q.",51353)
     ^dc.MultiD(1,"mJSON") = "{}"
     ^dc.MultiD(2) = $lb("Klingman,Uma C.",62459)
     ^dc.MultiD(2,2,"Multi","a") = 1
     ^dc.MultiD(2,2,"Multi","rob",1) = "rcc"
     ^dc.MultiD(2,2,"Multi","rob",2) = 2222
     ^dc.MultiD(2,"Multi","a") = 1
     ^dc.MultiD(2,"Multi","rob",1) = "rcc"
     ^dc.MultiD(2,"Multi","rob",2) = 2222
     ^dc.MultiD(2,"mJSON") = "{""A"":""ahahah"",""Rob"":""VIP"",""Rob2"":1111,""Rob3"":true}"
     ^dc.MultiD(3) = $lb("Goldman,Kenny H.",45831)
     ^dc.MultiD(3,"mJSON") = "{}"
     ^dc.MultiD(4) = $lb("","")
     ^dc.MultiD(4,"mJSON") = "{""rcc"":122}"
     ^dc.MultiD(5) = $lb("","")
     ^dc.MultiD(5,"mJSON") = "{}"
     **** done ***
    
     >>> take a choice [1]: *
       Thank you for trying the demo

Video

GitHub

Discussão (2)1
Entre ou crie uma conta para continuar