#ObjectScript

0 Seguidores · 104 Postagens

InterSystems ObjectScript é uma linguagem de script que opera com dados, usando qualquer modelo de dados da Plataforma de Dados InterSystems (Objetos, Relacionais, Chave-valor, Documentos, Globais) e, desenvolve a lógica de negócios para aplicações de servidor na Plataforma de Dados InterSystems.

Documentação.

Artigo Heloisa Paiva · Set. 22, 2024 1m read

Rubrica InterSystems FAQ

No SQL, dados NULL e a string vazia ('') são dados diferentes. O método para definir e checar cada uma é como se segue

(1) dado NULL

[SQL] 

insertintotest(a) values(NULL)
select * fromtestwhere a ISNULL

[InterSystems ObjectScript]

setx=##class(User.test).%New()
setx.a=""

(2) String Vazia ('')

[SQL]

insertintotest(a) values('')
select * fromtestwhere a = ''

[InterSystems ObjectScript]

setx=##class(User.test).%New()
setx.a=$C(0)

Para mais informações, por favor veja os seguintes documentos:

NULL e strings vazias [IRIS]
NULL e strings vazias

0
0 0
Artigo Edilson Eberle Carvalho · Set. 17, 2024 6m read

Como estou desenvolvendo uma aplicação para auditoria de arquivo fiscal digital, EFD ICMS IPI, optei por armazenar os dados diretamente em globais. Uma vez que os registros do arquivo EFD são formato txt e tem características semelhantes às linhas de registro de global.

Para poder analisar os itens de saída das Notas Fiscais Eletrônicas, fiz a importação também dos dados destes arquivos, e os armazenei em global. Segue exemplo:

0
0 0
Artigo Heloisa Paiva · Set. 16, 2024 1m read

[FAQ] Preguntas frecuentes de InterSystems

O seguinte código baixa https://www.intersystems.com/assets/intersystems-logo.png e salva o arquivo como c:\temp\test.png.

É necessário definir uma configuração SSL chamada SSLTEST antes de executar esse código

0
0 0
Artigo Heloisa Paiva · Jul. 16, 2024 2m read

Olá!

Recentemente estive investigando uma situação incômoda enquanto editava classes ou rotinas ObjectScript no VSCode. O que acontecia era que, como estava escrevendo as linhas de código na minha classe (por exemplo: a adição de um novo método, mudança da assinatura de classe ou de um bloco de código) isso ocasionava uma rápida revisão da sintaxe, reformatação e compilação - e inevitavelmente (já que eu estava apenas na metade da escrita), isso gerava erros de compilação.

0
0 0
Artigo Heloisa Paiva · Jun. 17, 2024 5m read

Olá Comunidade

Nesse artigo, vou introduzir minha aplicação irisChatGPT construída no LangChain Framework.

Primeiramente, vamos ter uma breve visão geral desse framework.
O mundo inteiro está falando sobre o ChatGPT e como as Large Language Models (LLMs - Grandes modelos de linguagem) se tornaram tão poderosas e tem performado além das expectativas, oferecendo conversas quase humanas. Isso é só o começo de como isso pode ser aplicado em qualquer empresa e qualquer domínio!

0
0 0
Artigo Heloisa Paiva · Jun. 12, 2024 4m read

Olá a todos! 

Trabalho há muitos anos com Excel e, ultimamente, foquei no tratamento de bases de dados.

Realmente minha experiencia com Excel foi para trabalhos financeiros, não tanto analíticos de dados em si, mas em um projeto recente pude trabalhar muito com SQL e me interessei um pouco pelo tema (não sou nenhuma uma especialista, já aviso!)

Me perguntei como poderia unir vários excels em um para, por exemplo, entregá-lo à Análise de dados utilizando a tecnologia InterSystems. Juntei toda a informação em um pequeno artigo. Espero que seja útil e, é claro, estou aberta a correções.

0
0 0
Artigo Heloisa Paiva · Jun. 11, 2024 3m read

Traduzido do Concurso de Artigos da Comunidade Espanhola 

Seguindo o último concurso de programação no OEX (Open EXchange) eu tive algumas observações surpreendentes.
Havia aplicações quase exclusivas baseadas numa combinação de IA (Inteligência Artificial) com módulos Python "pré-cozidas".
Porém, indo mais a fundo, todos os exemplos usaram os mesmos fatores técnicos do IRIS.

Considerando o ponto de vista do IRIS, foi praticamente a mesma coisa seja buscando por textos, ou imagens, ou outro tipo de padrão. Acabou em métodos quase intercambiáveis.

0
0 0
Artigo Danusa Calixto · Abr. 4, 2024 3m read

Olá, Desenvolvedores!

Suponha que você tenha uma classe persistente com dados e queira ter uma IU Angular simples para visualizar os dados e fazer operações CRUD.

Recentemente, @Alberto Fuentes descreveu como desenvolver uma IU Angular para seu aplicativo do InterSystems IRIS usando RESTForms2. 

Neste artigo, quero explicar a você como obter uma IU Angular simples para fazer operações CRUD e visualizar seus dados de classes do InterSystems IRIS automaticamente em menos de 5 minutos.

Vamos lá!

0
0 77
Artigo Heloisa Paiva · Mar. 15, 2024 6m read

Introdução

Nas próximas semanas, meus colegas de trabalho estão planejando começar a usar VSCode para programar com os produtos InterSystems. Entre as várias vantagens disso, eu gostaria de salientar a possibilidade de se conectar com outras tecnologias, como o GitHub, com facilidade. Além disso, o VSCode também oferece uma extensa loja de extensões, onde você pode achar vários recursos adicionais gratuitos que fazem a programação mais rápida e eficiente. Por último e não menos importante, para conquistar os corações de todo desenvolvedor, é Open Source.

0
0 167
Pergunta Daniela R · Mar. 7, 2024

Preciso fazer  o seguinte exercício:

"Crie uma regra/método que solicite 10 números ao usuário e no final apresente-os em tela, ordenados do menor para o maior."

Porém já li e reli a documentação, e não consigo entender como criar regra/método no Caché.

Eu crio conforme a doc, mas não executa nada quando chamo a rotina no terminal.

Alguém pode me ajudar por favor?

Tentei function, procedure e subroutine também.

0
0 74
Anúncio Danusa Calixto · Fev. 21, 2024

Recentemente, percebi que já faz muito tempo que não falo sobre os recursos mais recentes da extensão ObjectScript da InterSystems para Visual Studio Code.

Tenho o prazer de anunciar a versão 2.12.1 da extensão ObjectScript, contendo diversas melhorias que facilitam a vida do desenvolvedor. Alguns destaques são descritos abaixo, incluindo o recurso nº 1 solicitado pelo Global Summit – importação de XML!

Como sempre, encontre a lista completa de modificações no CHANGELOG, incluindo muitas correções de bugs e vulnerabilidades.

 

Interface do usuário mais limpa 

0
0 96
Artigo Danusa Calixto · Fev. 9, 2024 13m read

Talvez você não perceba isso, mas sua conta de login da InterSystems pode ser usada para acessar uma ampla variedade de serviços da InterSystems que ajudam você a aprender e usar o InterSystems IRIS e outras tecnologias da InterSystems de maneira mais eficaz.  Continue lendo para saber mais sobre como descobrir novos conhecimentos técnicos e ferramentas usando sua conta de login da InterSystems.  Além disso, após a leitura, participe da Enquete na parte inferior, para que possamos ver como este artigo foi útil para você!

O que é uma conta de login da InterSystems? 

0
0 129
Artigo Danusa Calixto · jan 11, 2024 3m read

Sejam todos bem-vindos!

Neste breve artigo, quero apresentar um exemplo de uso que vários de vocês que trabalham com o IRIS como back-end para seus web applications devem ter enfrentado mais de uma vez: como enviar um arquivo do front-end para o servidor.

Em geral, a maneira mais simples que encontrei de realizar essa tarefa é transformar o arquivo do front-end para o formato Base64 e fazer uma chamada POST para o servidor anexando o Base64 obtido a uma mensagem JSON onde é indicado o nome do arquivo em um parâmetro e os dados codificados em outro. Algo parecido com isto:

0
0 126
Artigo Danusa Calixto · jan 10, 2024 12m read

Temos um delicioso conjunto de dados com receitas escritas por vários usuários do Reddit, porém, a maioria das informações é texto livre, como o título ou a descrição de um post. Vamos descobrir como carregar o conjunto de dados facilmente, extrair algumas características e analisá-las usando recursos do modelo de linguagem grande da OpenAI no Embedded Python e no framework Langchain.

Carregando o conjunto de dados

Primeiro de tudo, precisamos carregar o conjunto de dados ou podemos só nos conectar a ele?

0
0 103
Artigo Danusa Calixto · Dez. 6, 2023 2m read

Com certeza, você já se deparou com esta situação:

  • Há um bug em um Sistema que você não consegue reproduzir localmente
  • Você precisa executar algumas linhas na instância afetada
  • Você ganha acesso completo ao Portal de Gerenciamento de Sistemas
  • Mas não há terminal, console nem acesso com o Studio, Atelier ou VSCode
  • Como executar algumas linhas para teste ???
0
0 70
Artigo Danusa Calixto · Dez. 4, 2023 1m read

InterSystems FAQ

Ao executar comandos do sistema operacional, use $ZF(-100).

do$ZF(-100,"",program,args) // Execute the Windows command [synchronously].
do$ZF(-100,"/ASYNC",program,args) // Executes a Windows command [asynchronously].

Ao executar comandos do shell do sistema operacional, como mkdir e copy, especifique também /SHELL.

do$zf(-100,"/shell /async","mkdir","c:\temp\x")

Consulte os seguintes documentos para obter detalhes:

Sobre $ZF(-100) [IRIS]
Sobre $ZF(-100)

0
0 74
Anúncio Danusa Calixto · Nov. 29, 2023

Olá Comunidade,

Sabemos que você está esperando ansiosamente esse momento há um ano inteiro (e até recebemos mensagens perguntando se isso está acontecendo 😉)... Bom, o momento chegou!

Junte-se ao Advent of Code 2023 com a InterSystems e participe de nosso concurso de ObjectScript para ter a chance de ganhar prêmios fabulosos!

0
0 67
Artigo Danusa Calixto · Set. 1, 2023 3m read

Olá, desenvolvedores. No momento, estou realizando uma demonstração sobre o desenvolvimento de uma IU front-end fazendo análise de dados e configurando um teste de desempenho com grandes objetos de dados. Portanto, o uso do utilitário Populate pode me ajudar a gerar automaticamente alguns dados de amostra com que eu possa brincar.

Neste post, gostaria de compartilhar minha experiência ao usar o utilitário Populate, incluindo o parâmetro POPSPEC.

0
0 102
Artigo Danusa Calixto · Set. 1, 2023 2m read

Peço desculpas se isso for óbvio para programadores Python, mas, para aqueles que estão saindo do ObjectScript, esta pode ser uma dica útil.

O cenário é o desenvolvimento de alguns comandos do Embedded Python.

Testando se a funcionalidade está sendo confirmada pelo shell:

$SYSTEM.Python.Shell()
 
Python 3.9.5 (default, Mar 14 2023, 06:58:44) [MSC v.1927 64 bit (AMD64)] on win32
Type quit() or Ctrl-D to exit this shell.
>>>

Quando o Python avalia uma expressão no shell, ele imprime o resultado da expressão no terminal.

>>> 1 + 2

3

É bastante fácil avaliar e imprimir valores sem querer

0
0 40
Artigo Danusa Calixto · Set. 1, 2023 4m read

Visão geral

Com o cross-skilling do objectScript do IRIS para o Python, ficam claras algumas diferenças fascinantes na sintaxe.

Uma dessas áreas é como o Python retorna Tuplas de um método com desempacotamento automático.

Efetivamente, isso se apresenta como um método que retorna vários valores. Que invenção incrível :)

out1, out2 = some_function(in1, in2)

O ObjectScript tem uma abordagem diferente com o ByRef e os parâmetros de saída.

Do ##class(some_class).SomeMethod(.inAndOut1, in2, .out2)

Onde:

  • inAndOut1 é o ByRef
  • out2 é a saída
0
0 46
Artigo Flávio Lúcio Naves Júnior · Ago. 16, 2023 3m read

Como observado no artigo anterior, a Native API possui algumas limitações.
Portanto, fiz algumas pesquisas sobre uma interface mais semelhante a um terminal que me forneça acesso como um console ou o terminal IRIS para permitir meu $QUERY em um global e outros comandos úteis que não são suportados/mapeados na NativeAPI para ObjectScript.

As ferramentas básicas estão bem preparadas e disponíveis.

  • Connection() cria uma partição totalmente operacional e estável para mim.
  • Function() permite chamar qualquer rotina ou método de que eu preciso.
  • similar a ClassMethodValue e ClassMethodVoid
2
0 59
Artigo Flávio Lúcio Naves Júnior · Ago. 16, 2023 3m read

Esta pergunta originalmente apareceu nos comentários do post:Download globals from a particular server

Este artigo foi inspirado por uma pergunta recente feita por @Evgeny.Shvarov.
Download globals from a particular server
Não se trata de um código de "clique e execute", mas sim de um rascunho que requer ajustes para atender às suas necessidades específicas. Você precisa adicionar...

1
0 59
Artigo Danusa Calixto · Ago. 7, 2023 1m read

InterSystems FAQ

Se o valor de uma variável local é um OREF ou não, pode ser determinado usando $IsObject(). Seja v a variável que você deseja verificar,

$IsObject(v)=1// v is an OREF$IsObject(v)=0// v is not an OREF$IsObject(v)=-1// v is an OREF but does not point to a valid object

Observe que $IsObject(v) dará um erro UNDEFINED se v for indefinido.

Para evitar erros UNDEFINED, é recomendado o uso do $Get assim:

$IsObject($Get(v))
0
0 96
Artigo Miqueias Santos · Maio 17, 2023 30m read

Veremos a seguir como o InterSystems IRIS aliado com Machine Learning pode transformar para melhor a educação do Brasil e do mundo

. .

O video de apresentação:

Clique na imagem abaixo para ver o video de apresentação. [![Video de Apresentação](https://img.youtube.com/vi/QOY60kRkSnQ/maxresdefault.jpg)](https://www.youtube.com/watch?v=QOY60kRkSnQ) . .

Educação Integrada com InterSystems IRIS

6
2 309