查找

文章
· 一月 2 阅读大约需 2 分钟

[Dica rápida] Como criar um agente de IA usando a documentação da InterSystems no Teams

Olá a todos.

Vou dar uma dica rápida sobre como implementar um agente de IA para realizar buscas na documentação da InterSystems integrado ao Teams.

Sim, eu sei que a página da documentação tem seu próprio buscador de IA e que ele é bastante eficaz, mas dessa forma teríamos um acesso mais rápido, especialmente se o Teams for a ferramenta corporativa da sua empresa.

Também é possível criar outro agente de IA para realizar buscas nos artigos publicados na comunidade de desenvolvedores (que também possui seu buscador de IA integrado).

Passo 1

Selecione a opção "Copilot"

Passo 2

Selecione a opção "Create agent".

Se vocês não virem essa opção inicialmente, clique no botão que aparece no canto superior esquerdo.

Passo 3

Selecione a opção Configure, para não utilizar modelos já existentes.

Damos um nome ao nosso agente de IA, por exemplo, "Intersystems Docs", e uma descrição. Podemos modificar o ícone do nosso agente para torná-lo mais personalizado.

Na seção "Instructions", adicionamos as seguintes entradas:

- O agente deve buscar informações no site da InterSystems.
- Fornecer respostas precisas e relevantes com base nas informações encontradas.
- Manter um tom profissional e claro em todas as interações.
- Não fornecer informações que não estejam verificadas ou que não constem no site da InterSystems.
- Orientar o usuário para recursos adicionais, se necessário.

Adicionamos a URL da documentação da InterSystems

https://docs.intersystems.com

Nota: Se vocês quiserem criar um agente que consulte a comunidade de desenvolvedores, usem o seguinte link:

https://community.intersystems.com

Ou adicionar ambos para que a busca seja mais completa.

Passo 4

Podemos adicionar sugestões de prompts.

Title Message
Buscar informações Você pode buscar informações sobre [tema] no site da InterSystems?
Guia de recursos Você pode me guiar para os recursos disponíveis sobre [tema] no site da InterSystems?
Detalhes específicos Preciso de detalhes específicos sobre [tema] no site da InterSystems.
Últimas atualizações Quais são as últimas atualizações sobre [tema] no site da InterSystems?

Clicamos no botão "Create" e pronto… já podemos usar nosso agente de IA.

Vamos consultar qualquer coisa usando nosso novo agente; podemos fazer isso em qualquer idioma, pois ele já possui a tradução incluída.

Espero que seja muito útil para vocês, assim como foi para mim.

讨论 (0)1
登录或注册以继续
问题
· 一月 2

Using /api/atellier/v1 to make REST SQL Calls - Locking it Down

There is a Master Table within IRIS that I am populating from Epic but want to share it with our Enterprise Application Development Team (Web). As a test I was able to use _SYSTEM from postman to execute the following.

POST /api/atelier/v1/xxxx/action/query HTTP/1.1
Host: xxxxxxxx
Content-Type: application/json
Authorization: ••••••
Cookie: CSPSESSIONID-SP-443-UP-api-atelier-=00f0000000000AKyLjBfUvU$MpFD8UT8y$EoNKNw1ixZeXN4_Q; CSPWSERVERID=hzZAT5rb
Content-Length: 86

{"query": "SELECT * FROM osuwmc_Epic_Clarity.DepartmentMaster WHERE ID = '300000000'"}

if I create another user specific for this, how can I lock it down in a way that they could only query specific tables through the REST POST call?

7 条新评论
讨论 (7)2
登录或注册以继续
公告
· 一月 2

Cap sur 2026 !

Toute l'équipe InterSystems France vous souhaite une très belle année 2026, pleine d’élan, d’innovation et de succès !

Merci à toutes celles et ceux, clients, partenaires, collaborateurs, qui ont contribué à faire de 2025 une année riche en projets ambitieux et collaborations.

Ensemble, continuons à transformer, innover et faire bouger les lignes en 2026.

Nous sommes déjà prêts à vous accompagner pour relever vos futurs défis ! 🤝

讨论 (0)1
登录或注册以继续
文章
· 一月 2 阅读大约需 3 分钟

Exportando dados de configuração de Interoperabilidade para CSV

Ao trabalhar com a Interoperabilidade da InterSystems (Iris / Health Connect / Ensemble), os dados de configuração costumam estar distribuídos entre vários itens de produção: serviços, processos, operações, adaptadores e suas configurações.

Uma necessidade operacional ou de segurança comum é responder a perguntas como:

  • Quais interfaces fazem referência a caminhos do sistema de arquivos?
  • Onde estão configurados diretórios, compartilhamentos de rede ou caminhos absolutos?
  • É possível auditar ou documentar rapidamente essas informações em todas as minhas produções?

A utilidade ObjectScript abaixo resolve exatamente esse problema, exportando as configurações selecionadas para um arquivo CSV.

Este script:

  1. Percorre todos os namespaces existentes
  2. Consulta todos os itens de configuração de Interoperabilidade (Ens_Config.Item) em todos os namespaces
  3. Itera pelas Configurações de cada item
  4. Extrai caminhos de sistema de arquivos/URLs (valores que contêm :, /, ou \)
  5. Grava os resultados em um arquivo CSV, agrupados por Categoria
  6. Produz uma saída adequada para auditoria, que pode ser aberta no Excel ou compartilhada com as equipes de operações/segurança

Casos de uso comuns

Você deve usar esta ferramenta quando precisar:

  • 🔍 Auditar o uso do sistema de arquivos em todas as produções
  • 🛡 Revisar a exposição de segurança (caminhos locais, compartilhamentos de rede, conexões de banco de dados)
  • 📄 Documentar a configuração para migrações, atualizações ou planejamento de recuperação de desastres (DR)
  • 🔄 Comparar ambientes(DEV vs TEST vs PROD)
  • 🧹 Limpar paths legados ou não utilizados

Isso é especialmente útil em grandes instâncias com várias produções que utilizam muitas interfaces e adaptadores.

Formato de saída

O CSV gerado contém as seguintes colunas:

Namespace, Category, Item Name, Class Name, Property Name, Value

Alem disso:

  • Os itens de configuração são agrupados por Categoria
  • Apenas os caminhos de configurações relevantes são exportados — você pode alterar facilmente a lógica para exportar usando o nome da configuração (como "DSN" para conexões SQL) ou qualquer outro valor de configuração
  • Fácil de filtrar e analisar no Excel
  • Execute a ferramenta a partir do terminal e forneça o parâmetro com o caminho completo e o nome do CSV

por exemplo:

> do ##class(Test.Properties).GetData("c:\temp\loop.csv")

Exemplo de CSV gerado:

 

Notas e Dicas

  • 🧪Teste primeiro em um ambiente que não seja PROD se você não tiver certeza sobre as permissões
  • 📂 Certifique-se de que o diretório de destino existe e que é gravável pelo IRIS/Health Connect
  • 🔎 Você pode facilmente estender a lógica para:
    • Exportar propriedades adicionais
    • Filtrar por categoria ou classe
    • Mascarar valores sensíveis (senhas)
    • Alterar a lógica para dados relevantes

Se você estender ou melhorar a ferramenta, sinta-se à vontade para compartilhar suas melhorias com a comunidade.

讨论 (0)1
登录或注册以继续
文章
· 一月 2 阅读大约需 5 分钟

API nativa para Demos ObjectScript

A demo é baseada nas descrições brutas das classes.
As classes de dados utilizadas são Address, Person, Employee e Company.
Para uma demonstração mais atraente, foi adicionado um método JSONtoString por ID.

Após a instalação com o ZPM, basta executar pelo Terminal

USER>do ##class(ONAPI.demo).Run()
Adjust Parameters
host[127.0.0.1]:
port[1972]:
namespace[USER]:
user[_SYSTEM]:
pwd[SYS]:
timeout[5]:
****** connected ********

Em seguida, você recebe uma lista de possíveis ações de demonstração.
Nenhuma entrada significa nenhuma ação.
O menu fica em loop até você sair.

Populate Person by:100
     100
Populate Company by:10
     10
Populate Employee by:50
     50
Show Person by ID:3
{
  "Name":"O'Donnell,Mark I.",
  "SSN":"871-87-4555",
  "DOB":"1934-05-24",
  "Home":{
    "Street":"3012 Elm Drive",
    "City":"Ukiah",
    "State":"IN",
    "Zip":"11758"
  },
  "Office":{
    "Street":"1326 Maple Street",
    "City":"Jackson",
    "State":"MD",
    "Zip":"61987"
  },
  "FavoriteColors":[
    "Green"
  ],
  "Age":91
}
Show Company by ID:3
{
  "Name":"TeleData Gmbh.",
  "Mission":"Experts in innovative nano-connectivity for social networks.",
  "TaxID":"E4116",
  "Revenue":33297336,
  "Employees":[
    {
      "Name":"Larson,Dave G.",
      "SSN":"761-57-3123",
      "DOB":"2011-09-28",
      "Home":{
        "Street":"6346 Second Street",
        "City":"Chicago",
        "State":"NJ",
        "Zip":"16814"
      },
      "Office":{
        "Street":"6702 Clinton Drive",
        "City":"Tampa",
        "State":"CT",
        "Zip":"91275"
      },
      "Spouse":{
        "Name":"Willeke,Rhonda A.",
        "SSN":"434-63-3541",
        "DOB":"1974-02-15",
        "Home":{
          "Street":"1910 Oak Blvd",
          "City":"St Louis",
          "State":"ND",
          "Zip":"62884"
        },
        "Office":{
          "Street":"5148 Ash Court",
          "City":"St Louis",
          "State":"DE",
          "Zip":"36764"
        },
        "FavoriteColors":[
          "White",
          "Yellow"
        ],
        "Age":51
      },
      "FavoriteColors":[
        "Black"
      ],
      "Age":14,
      "Title":"Product Specialist",
      "Salary":28870
    },
    {
      "Name":"Quincy,Mo V.",
      "SSN":"345-36-6735",
      "DOB":"1945-05-14",
      "Home":{
        "Street":"399 Oak Court",
        "City":"Youngstown",
        "State":"LA",
        "Zip":"75634"
      },
      "Office":{
        "Street":"6307 Clinton Avenue",
        "City":"Oak Creek",
        "State":"NH",
        "Zip":"85911"
      },
      "Spouse":{
        "Name":"Iacobelli,Barb E.",
        "SSN":"951-91-9488",
        "DOB":"2020-09-04",
        "Home":{
          "Street":"8413 Elm Blvd",
          "City":"Denver",
          "State":"ID",
          "Zip":"91025"
        },
        "Office":{
          "Street":"4276 Oak Court",
          "City":"Oak Creek",
          "State":"ID",
          "Zip":"20879"
        },
        "Age":5
      },
      "FavoriteColors":[
        "Blue"
      ],
      "Age":80,
      "Title":"Global Sales Rep.",
      "Salary":89381
    }
  ]
}
Show Employee by ID:103
{
  "Name":"Larson,Dave G.",
  "SSN":"761-57-3123",
  "DOB":"2011-09-28",
  "Home":{
    "Street":"6346 Second Street",
    "City":"Chicago",
    "State":"NJ",
    "Zip":"16814"
  },
  "Office":{
    "Street":"6702 Clinton Drive",
    "City":"Tampa",
    "State":"CT",
    "Zip":"91275"
  },
  "Spouse":{
    "Name":"Willeke,Rhonda A.",
    "SSN":"434-63-3541",
    "DOB":"1974-02-15",
    "Home":{
      "Street":"1910 Oak Blvd",
      "City":"St Louis",
      "State":"ND",
      "Zip":"62884"
    },
    "Office":{
      "Street":"5148 Ash Court",
      "City":"St Louis",
      "State":"DE",
      "Zip":"36764"
    },
    "FavoriteColors":[
      "White",
      "Yellow"
    ],
    "Age":51
  },
  "FavoriteColors":[
    "Black"
  ],
  "Age":14,
  "Title":"Product Specialist",
  "Salary":28870
}
Show Global PersonD by ID:4
     $Data()=1
     Value=$lb("","Eastman,Mary C.","887-18-3730",44711,$lb("3889 Ash Blvd","Washington","TX",67862),$lb("5709 Oak Blvd","Chicago","IL",30845),"","")

Index list for Person & Employee (n,y):y
     $Employee
     $Person
     NameIDX
     SSNKey
     ZipCode
Exit Demo (n,y,*):y
****** done ********
 
USER>

GitHub

讨论 (0)1
登录或注册以继续