Sentencia SQL en Uniface 10.4: Guía para Desarrolladores

Aprende a usar la sentencia sql de Uniface 10.4, compara SQL con IO estándar, explora ejemplos prácticos y buenas prácticas para integraciones avanzadas y desarrollo eficiente.

28 sept 2025 • 3 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Nota sobre la autoría del contenido: este artículo se ha reescrito y traducido al español a partir de la documentación oficial de Uniface 10.4 y adaptado para desarrolladores y equipos técnicos interesados en integraciones avanzadas y buenas prácticas de desarrollo.

Qué es Uniface
Uniface es una plataforma 4GL orientada al desarrollo de aplicaciones empresariales multiplataforma creada por Rocket Software. Incluye ProcScript como lenguaje para definir la lógica de las aplicaciones y ofrece mecanismos de acceso a datos tanto a través de I O estándar de Uniface como mediante la sentencia sql para ejecutar consultas SQL en bruto contra bases de datos soportadas como Oracle, SQL Server, MySQL y otras.

Sintaxis básica de la sentencia sql
La forma general es sencilla: sql{/data {/fieldname}} {/print} DMLStatement, PathString. DMLStatement representa la consulta SQL hasta 32KB y PathString identifica la conexión a la base de datos sin el signo de dólar. Los calificadores opcionales modifican el formato del resultado.

Calificadores principales
/data devuelve resultados estructurados como una lista Uniface anidada donde cada fila es un ítem y cada columna es un subítem, ideal para procesado programático. /fieldname agrega la primera fila con los nombres de columna cuando se usa junto con /data. /print devuelve un formato legible con columnas y espacios en blanco similar a una salida de SQL workbench.

Ejemplos prácticos
Validación de existencia de un valor en trigger loseFocus
trigger loseFocus if ($fieldendmod != 0) sql select invnum from invoices where invnum = %%invnum%%, ora if ($status > 0) message Invoice number already exists return (-1) endif endif end
Listas de valores dinámicas usando sql/data
function getCountryList sql/data select country_code, country_name from countries order by country_name, def forlist vRecord in $result getitem vCode, vRecord, 1 getitem vName, vRecord, 2 putitem/id pCountryList, vCode, vName endfor end

Valores de retorno y variables del sistema
$status indica el resultado de la operación con códigos comunes igual 0 numero de registros encontrados o afectados, -1 ruta inválida o inexistente, -3 error de E O o declaración DML vacía, -9 máximo de conexiones alcanzado, -11 registro bloqueado, -31 sentencia SQL excede 32KB. $result contiene los resultados: sin calificadores suele contener la primera columna de la última fila; con calificadores contiene la estructura o la salida formateada según corresponda.

Buenas prácticas y recomendaciones
Priorizar la portabilidad utilizando las operaciones I O estándar de Uniface cuando sea posible para facilitar migraciones entre bases de datos. Evitar incluir COMMIT o ROLLBACK dentro de las sentencias SQL ya que Uniface gestiona las transacciones internamente. Tener precaución con los tipos Long en Oracle, la sentencia sql puede truncar a 42 bytes; para campos Long usar recuperación de entidades estándar. Siempre comprobar $status después de operaciones SQL y leer $procerror para obtener detalles en caso de fallo.

Cuándo usar sql frente a I O estándar de Uniface
Usar sql cuando se necesiten joins complejos entre muchas tablas, funciones agregadas o específicas del motor, operaciones masivas que resulten ineficientes con I O estándar o cuando se requiera aprovechar funciones propias de la base de datos. Mantener las operaciones CRUD simples y la entrada por formularios con retrieve y store de Uniface para mantener portabilidad y mantenibilidad.

Sobre Q2BSTUDIO
Q2BSTUDIO es una empresa de desarrollo de software especializada en aplicaciones a medida y software a medida para empresas de diversos sectores. Ofrecemos soluciones avanzadas en inteligencia artificial, servicios cloud aws y azure, ciberseguridad, servicios de inteligencia de negocio y desarrollo de agentes IA y power bi. Si buscas crear una aplicación a medida escalable y multiplataforma visita nuestras soluciones de desarrollo de aplicaciones y software a medida y si quieres potenciar tu empresa con IA revisa nuestros servicios de inteligencia artificial para empresas.

Conclusión
La sentencia sql en Uniface 10.4 ofrece el poder de ejecutar SQL en bruto cuando se necesita mayor control o eficiencia en operaciones complejas. Empléala con criterio, gestiona correctamente errores y transacciones y combina lo mejor de Uniface con capacidades nativas de la base de datos para obtener soluciones robustas. Para proyectos que requieren integración de IA, ciberseguridad, servicios cloud o inteligencia de negocio, Q2BSTUDIO puede acompañarte en todo el ciclo de desarrollo.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.