#Modelo de Dados Objeto

0 Seguidores · 6 Postagens

Um modelo de dados orientado a objetos é aquele dado ou código composto por módulos que combinam dados e procedimentos que funcionam nos dados.

Saber mais.

Artigo Heloisa Paiva · Set. 11, 2025 1m read

Um benefício de usar o Doxygenerate é que ele faz mais do que um simples output HTML. Altere o arquivo Doxyfile que informa ao Doxygen o que fazer e você poderá facilmente criar um PDF. Nosso exemplo de aplicação MARINA gerou um PDF de 524 páginas. Aqui está a página 94:

Você pode olhar todas as páginas aqui.

No print acima, note que nós só temos detalhes da superclasse que é parte do app (AuditHistory) A superclasse primeira superclasse, %Library.SerialObject é mostrada desbotada e sem detalhes do que o BankDetails herda dela.

0
0 18
Artigo Heloisa Paiva · Fev. 19, 2025 7m read


Olá!

Este artigo é uma pequena visão geral de uma ferramenta que ajuda a entender classes e sua estrutura dentro dos produtos InterSystems: do IRIS ao Caché, Ensemble e HealthShare.

Em resumo, ela visualiza uma classe ou um pacote inteiro, mostra as relações entre as classes e fornece todas as informações possíveis para desenvolvedores e líderes de equipe sem fazê-los ir ao Studio e examinar o código lá.

Se você está aprendendo os produtos InterSystems, revisando muitos projetos ou apenas interessado em algo novo nas soluções de tecnologia InterSystems - você é mais do que bem-vindo para ler a visão geral do ObjectScript Class Explorer!

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

Armazenamento em coluna é um dos mais novos oferecimentos do InterSystems IRIS. Diferente do armazenamento tradicional baseado em linhas, ele otimiza o processamento das queries ao guardados os dados em colunas ao invés de linhas, permitindo acesso mais rápido e retorno de informações relevantes.

Alguns artigos já foram escritos a respeito de quando ele deve ser usado para dar o melhor impulso ao sistema, como criar tabelas dessa maneira usando SQL.

CREATETABLEtable (column1 type1, column2 type2, column3 type3) WITH STORAGETYPE = COLUMNAR  -- ex 1CREATETABLEtable (column1 type1, column2 type2, column3 type3 WITH STORAGETYPE = COLUMNAR)  -- ex 2

e até testes de performance.

Como tudo o que sabemos, o InterSystems IRIS é uma DBMS (DataBase Management System - sistema de gerencialmento de base de dados) multi-modelo e dá acesso descomplicado ao mesmo registro usando acesso relacional e por objeto. Então a primeira parte está coberta por outros artigos, mas e a última?

1
0 132
Artigo Rochael Ribeiro · Abr. 8, 2024 3m read

Rubrica de perguntas frequentes da InterSystems

As definições de classe criadas pelos usuários são armazenadas em classes de definição de classe. Elas podem ser usadas para obter uma lista de definições de classes a partir de um programa.

Observação: as classes de definição de classe se referem a todas as classes contidas no pacote %Dictionary.

Na amostra de código abaixo, uma lista de definições de classe é obtida usando o método query Summary da classe %Dictionary.ClassDefinitionQuery.

Class ISJ.Utils
{
ClassMethod ClassInfo()
{
    #dim ex As %Exception.AbstractException
    try {
        set currentNS=$NAMESPACE
        while (1) {
            read "Please specify namespace: ",x
            if x'=""  quit
        }
        set $NAMESPACE=x 
        write !!
        Set statement = ##class(%SQL.Statement).%New()
        Do statement.%PrepareClassQuery("%Dictionary.ClassDefinitionQuery","Summary")
        set rs = statement.%Execute()
        while rs.%Next() {
            set name=rs.%Get("Name")
            if name["%" continue            // Skip the class with % in the name
            if $extract(name,1,3)="csp" continue  // skip csp.*
            if $extract(name,1,3)="csr" continue  // skip csr.*
            write name,!
        }
        set $NAMESPACE=currentNS
    }
    catch ex {
        write "Error occured: ",ex.DisplayString(),!
        set $NAMESPACE=$get(currentNS)
    }
}
}

Veja um exemplo de execução a seguir.

Ao executar o método da classe, será preciso especificar um namespace, então especifique o nome do namespace que você deseja referenciar.

USER>do##class(ISJ.Utils).ClassInfo()
Please specify namespace : USER

CSPX.Dashboard.BarChart CSPX.Dashboard.Chart CSPX.Dashboard.ChartSeries CSPX.Dashboard.FuelGauge

<skip>

INFORMATION.SCHEMA.VIEWTABLEUSAGE ISJ.Utils Test.JSONTest Test.Person Test.REST Test.VSCode.REST

USER>

Artigo relacionado: Como obter a lista de rotinas programaticamente

0
0 95
Anúncio Cristiano Silva · Out. 25, 2022

Eu gostaria de anunciar o lançamento de algo realmente bastante interessante - revolucionário na verdade. Isso pode soar exagerado, mas acho que você não viu nada parecido com isso, ou mesmo pensou que fosse possível!

Lançamos um novo módulo JavaScript/Node.js chamado glsdb, mais informações:

https://github.com/robtweed/glsdb

No entanto, para os propósitos deste anúncio aqui, quero apenas focar em uma parte do glsdb: suas APIs que abstraem classes IRIS (ou Caché) como objetos JavaScript equivalentes.

0
0 122