Nova postagem

Pesquisar

Artigo
· 13min atrás 3min de leitura

Convertendo Consultas Hierárquicas do Oracle para o InterSystems IRIS: Gerando Intervalos de Datas

Se você está migrando do Oracle para o InterSystems IRIS — como muitos dos meus clientes — pode se deparar com padrões específicos de SQL do Oracle que precisam ser adaptados.

Veja esse examplo:

SELECT (TO_DATE('2023-05-12','YYYY-MM-DD') - LEVEL + 1) AS gap_date
FROM dual
CONNECT BY LEVEL <= (TO_DATE('2023-05-12','YYYY-MM-DD') - TO_DATE('2023-05-02','YYYY-MM-DD') + 1);

No Oracle:

  • LEVEL é uma pseudo-coluna usada em consultas hierárquicas (com CONNECT BY). Ela começa em 1 e incrementa de 1 em 1.
  • CONNECT BY LEVEL <= (...) define quantas linhas a consulta deve gerar.
  • A diferença entre as duas datas, somada a 1, resulta em 11 — então a consulta gera 11 linhas, contando de 12 de maio de 2023 para 2 de maio de 2023.

Detalhamento do resultado:

LEVEL = 1  → 2023-05-12
LEVEL = 2  → 2023-05-11
...
LEVEL = 11 → 2023-05-02

Agora a questão é: Como fazer isso no InterSystems IRIS, que não possui CONNECT BY?

Uma solução é implementar uma consulta no estilo SQL usando ObjectScript, simulando esse comportamento. Abaixo está um exemplo de definição CREATE QUERY que aceita uma data inicial (STARTDATE) e um número de dias (DAYS), e retorna a lista decrescente de datas.


✅ InterSystems IRIS: Implementando uma consulta de intervalo de datas

CREATE QUERY GET_GAP_DATE(IN STARTDATE DATE, IN DAYS INT)
  RESULTS (GAP_DATE DATE)
  PROCEDURE
  LANGUAGE OBJECTSCRIPT

  Execute(INOUT QHandle BINARY(255), IN STARTDATE DATE, IN DAYS INT)
  {
    SET QHandle("start") = STARTDATE
    SET QHandle("days")  = DAYS
    SET QHandle("level") = 1
    RETURN $$$OK
  }

  Fetch(INOUT QHandle BINARY(255), INOUT Row %List, INOUT AtEnd INT)
  {
    IF (QHandle("level") > QHandle("days")) {
      SET Row = ""
      SET AtEnd = 1
    } ELSE {
      SET Row = $ListBuild(QHandle("start") - QHandle("level") + 1)
      SET QHandle("level") = QHandle("level") + 1
    }
    RETURN $$$OK
  }

  Close(INOUT QHandle BINARY(255))
  {
    KILL QHandle
    QUIT $$$OK
  }

Você pode executar esse CREATE QUERY no IRIS System Management Portal, ou por ferramentas como DBeaver ou um notebook Python/Jupyter via JDBC/ODBC.


🧪 Examplo de uso:

Para gerar o mesmo resultado da consulta Oracle acima, use:

SELECT * FROM GET_GAP_DATE(
  TO_DATE('2023-05-12', 'YYYY-MM-DD'),
  TO_DATE('2023-05-12', 'YYYY-MM-DD') - TO_DATE('2023-05-02', 'YYYY-MM-DD') + 1
);

Isso vai gerar:

GAP_DATE
----------
2023-05-12
2023-05-11
...
2023-05-02
(11 rows)

🔁 Uso avançado: junção com outras tabelas

Você também pode utilizar essa consulta como subconsulta ou em JOINs:

SELECT * 
FROM GET_GAP_DATE(TO_DATE('2023-05-12', 'YYYY-MM-DD'), 11) 
CROSS JOIN dual;

Isso permite integrar intervalos de datas em workflows SQL mais complexos.


Espero que isso ajude quem estiver lidando com cenários de migração de Oracle para IRIS! Se você já criou soluções alternativas ou tiver sugestões de melhorias, adoraria ouvir suas ideias.

Discussão (0)1
Entre ou crie uma conta para continuar
Anúncio
· 3 hr atrás

4.ª Edición del Concurso de Ideas de InterSystems

Hola Comunidad,

¡Estamos encantados de invitar a todos los miembros de nuestra Comunidad de Desarrolladores (tanto empleados de InterSystems como externos) a participar en nuestro próximo concurso!

💡 4.ª Edición del Concurso de Ideas de InterSystems 💡

Estamos en busca de tus ideas innovadoras para mejorar InterSystems IRIS y los productos y servicios relacionados. Te animamos a proponer sugerencias basadas en casos de uso reales, destacando los beneficios tangibles que tu idea aportará a otros usuarios y cómo mejorará la experiencia de los desarrolladores con la tecnología de InterSystems.

📅 Duración: del 9 de junio al 6 de julio de 2025

🏆 ¡Premios para las mejores ideas y un sorteo aleatorio!

🎁 Regalos para todos: Se entregará un regalo especial a cada autor cuya idea sea aceptada en el concurso.

>> ENVIAD UNA IDEA <<

Una idea deberá contar con lo siguiente para ser aceptada:

  • Debe ser creada durante el período del Concurso de Ideas por un usuario registrado en el portal de InterSystems Ideas (podéis iniciar sesión mediante InterSystems SSO);
  • no debe formar parte de ideas ya existentes – solo se permiten ideas nuevas;
  • no debe describir funcionalidades ya existentes de InterSystems IRIS ni de productos o servicios relacionados;
  • debe publicarse en inglés;
  • debe estar escrita por una persona, no generada por inteligencia artificial;
  • debe ser aceptada como significativa por los expertos de InterSystems;
  • ❗debe seguir la siguiente estructura:
    • 1️⃣ Descripción de la idea
    • 2️⃣ ¿Quién es el público objetivo?
    • 3️⃣ ¿Qué problema resuelve?
    • 4️⃣ ¿Cómo impacta en la eficiencia, estabilidad, confiabilidad, etc., del producto?
    • 5️⃣ Proporciona un caso de uso o escenario específico que ilustre cómo se podría utilizar esta idea en la práctica.

Todas las ideas están sujetas a moderación. Es posible que se solicite una aclaración sobre la idea enviada. Las ideas que cumplan con los requisitos recibirán un estado especial de "Concurso de Ideas".

¿Quién puede participar?

Invitamos a TODOS a unirse a nuestro nuevo Concurso de Ideas.
Tanto empleados de InterSystems como personas externas pueden participar y enviar sus ideas.


Premios

1. Regalo por participación – los autores de todas las ideas aceptadas recibirán:

🎁 Soporte de aluminio para dispositivos multimedia

2. Premio del jurado – los expertos de InterSystems seleccionarán las mejores ideas. Los ganadores recibirán:

🥇 1.º lugar – Máquina de espresso y cappuccino Stilosa Barista
🥈 2.º lugarOsmo Mobile 7
🥉 3.º lugar – Mini proyector inteligente XGODY Gimbal 3

3. Premio al azar – una idea seleccionada aleatoriamente recibirá:

🏅 Mini proyector inteligente XGODY Gimbal 3

Nota: Los empleados de InterSystems solo pueden recibir el regalo por participación. Los premios del jurado y el premio aleatorio están reservados exclusivamente para miembros de la Comunidad de Desarrolladores que no trabajen en InterSystems.


Fechas importantes:

⚠️ Envío de ideas: del 9 al 29 de junio
✅ Votación de ideas: del 30 de junio al 6 de julio
🎉 Anuncio de ganadores: 7 de julio

¡Buena suerte! 🍀


Nota: Todos los premios están sujetos a disponibilidad y opciones de envío. Algunos artículos pueden no estar disponibles para envíos internacionales a determinados países; en ese caso, se ofrecerá una alternativa equivalente. Te informaremos si un premio no está disponible y te propondremos un reemplazo posible. Los premios no pueden enviarse a residentes de Crimea, Rusia, Bielorrusia, Irán, Corea del Norte, Siria u otros países embargados por EE. UU.

Discussão (0)1
Entre ou crie uma conta para continuar
Anúncio
· 3 hr atrás

Ganadores cuarto concurso de artículos técnicos en español

¡Hola desarrolladores!

El Cuarto Concurso de Artículos Técnicos ha terminado. ¡Gracias a todos los participantes!

🤩 Habéis aportado 10 ARTÍCULOS INCREÍBLES, y ya podemos anunciar los ganadores.

   

Un fuerte aplauso para estos desarrolladores y sus artículos:

🏆 Nominación de los expertos - los ganadores han sido elegidos por un jurado especialmente formado para el concurso:

🥇 1er puesto: Carlos Castro con ¡POLICIA POLICIA! ¡¡Hay un intruso!! (Notificaciones Telegram y manejo URLs OAUTH2)

🥈 2º puesto: Miguelio con Persistencia de sesión Oauth con token OpenID en cookie

🥉 3er puesto:  Alessandra Carena con Diseñar e implementar APIs REST en InterSystems IRIS a partir de especificaciones OpenAPI

🏆 Nominación de la Comunidad - artículo que recibió el mayor número de likes:

🥇 1er puesto: Katherine Durán con Uso de SQL Dinámico vs SQL Embebido en InterSystems IRIS y Plan de ejecución

Nos pondremos en contacto con vosotros para gestionar los premios. 

¡Enhorabuena a todos!  Ganadores o no, la contribución de todos es imprescindible para seguir creciendo. 

Nos vemos pronto, con más concursos, más novedades y más diversión. 💪

Discussão (0)1
Entre ou crie uma conta para continuar
Pergunta
· 7 hr atrás

How do I install IntegratedML in IRIS container

I'm having trouble installing IntegratedML in an IRIS 2025.1 container, which I need for a demo. I tried running the following command:

python3 -m pip install --index-url https://registry.intersystems.com/pypi/simple --no-cache-dir --target /usr/irissys/mgr/python intersystems-iris-automl

 

Unfortunately I get the following error:


Looking in indexes: https://registry.intersystems.com/pypi/simple
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fe0d095d820>, 'Connection to registry.intersystems.com timed out. (connect timeout=15)')': /pypi/simple/intersystems-iris-automl/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fe0d084e900>, 'Connection to registry.intersystems.com timed out. (connect timeout=15)')': /pypi/simple/intersystems-iris-automl/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fe0d084eb10>, 'Connection to registry.intersystems.com timed out. (connect timeout=15)')': /pypi/simple/intersystems-iris-automl/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fe0d084ed20>, 'Connection to registry.intersystems.com timed out. (connect timeout=15)')': /pypi/simple/intersystems-iris-automl/


I also tried pinging the registry, and it seems the container is unable to reach it:

ping -c 3 registry.intersystems.com
PING ha2-ne-icr.iscinternal.com (172.17.254.152) 56(84) bytes of data.

--- ha2-ne-icr.iscinternal.com ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2117ms

 

Am I doing something wrong? Is it possible to install IntegratedML in the container, and if so, how should I go about it?
 

Discussão (1)1
Entre ou crie uma conta para continuar
Artigo
· 8 hr atrás 4min de leitura

Best Porta Potty Options for Events in Tulare

 

A community fair, outdoor wedding, concert, or festival in Tulare—if you’re planning an event like these, you definitely need to think of sanitation as an essential. A lack of clean and convenient restrooms might soon become a real problem for the attendees. This is where mobile restrooms step in, as they provide an easier and cleaner way of sanitation. However, all portable toilets are not the same, and opting for the right type can greatly affect the event's outcome.

First off, let’s-geography together the best options among porta potty rentals in Tulare events, what points to consider before renting, and how to make your guests' visit a great success.

 

Why Porta Potties Are a Must for Events

The flexibility that portable restrooms offer full-scale public events to home-focused outdoor festivities is unmatched. The city of Tulare, being a mix of urban and rural, hosts quite a diversified list of events all year round. However, it doesn’t really matter if the location is scenic or not if your guests have to run to the farthest corner for a clean facility.

Porta potties are the most inexpensive, require the least time to install, have great customer acceptance and are made to handle large crowds - basically a must-have in every outdoor event that is considered successful. The use of such facilities can also ensure health codes of the local community and compliance with the ADA’s (Americans with Disabilities Act) accessibility requirements.

Key Factors to Consider Before Choosing

Before you book your rentals, consider the following:

  • Number of Guests: A good rule of thumb is one unit per 50–100 people for events lasting a few hours. Larger or longer events will need more. 
  • Duration of Event: For multi-day events, you'll want to schedule regular servicing to keep units clean and stocked. 
  • Type of Event: Formal events may require upscale restrooms, while casual gatherings might be fine with standard units. 
  • Accessibility Needs: Make sure to include at least one ADA-compliant unit to accommodate all attendees.

Top Porta Potty Options for Events in Tulare

Here are some of the most commonly requested units and why they might be right for your event:

Standard Porta Potty Units

These are the most commonly hired models. Since they are equipped with a toilet, a urinal, and a hand sanitizer, they are beneficial for:

  • going to local fairs 
  • attending sporting events 
  • construction boils

Why go for them? They are cost-effective, easy to deploy, and suitable for general-purpose use.

Deluxe Flushing Units

If you want to offer your guests a bit more comfort, deluxe units come with a flushing toilet, handwashing station, and interior lighting.

Best for:

  • Corporate functions 
  • Outdoor weddings 
  • Private parties

ADA-Compliant Restrooms

These large units are built for people with either permanent or temporary disabilities and are equipped with handrails, smooth entryways, and spacious areas enough for wheelchairs or the people responsible for them. 

Use in the main hall: For the purpose of following ADA standards and as a symbol of inclusivity the disposal should be essential to every public event.

Luxury Restroom Trailers

All high-class events always want a luxury trailer to complement the comfort. When there are real sinks, the temperature, the lighting, and sometimes the music, one would even prefer such a restroom to a house.

Suitable for:

  • Very Important Person (VIP) gatherings 
  • Well-appointed receptions outside 
  • Several days of expos or trade shows 

Handwashing and Sanitizing Stations

No, they are not portable toilets, but this equipment is of great essence, particularly after the pandemic. These stations come as separate units and provide soap, water, and/or hand sanitizer for the protection of the people.

Best for: Food festivals, places for children, or any location with a focus on the cleanliness of the event.

Planning Tips for a Smooth Porta Potty Experience

  • Place: Cluster toilets should be near but not actually in the dining area but short travel distance is important to relative to the event center.
  • Clear Notices: Take advantage of the clear signs so that all your guests, including those who require special facilities for handicaps, could be easily directed.
  • Operational Calendar: For an extended outreach, make arrangements for regular inspection for refilling toilet paper and recondition of the toilets.
  • Preparedness according to the weather: In the case of your function being held in Tulare when the weather is hot, ensure preparation for sun-proof structures or machines having outlets for air circulation can be a nice notion.

Conclusion

Clean, functional, and well-kept restrooms at events are not only a matter of politeness but also a necessity. Providing primary facilities and services at the right position enables the party organizers to deliver better services and better guest experiences regardless if it is a friends' gathering or a larger event wherein a festival crowd has gathered.

Who would service a variety of different formats, inquiry professional advice, and be on hand for logistical help? Surely only Rent A Toilet, the chief provider of portable toilet units in Tulare!

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