SDKs de lenguajes

Usa Majorsilence Reporting
desde cualquier lenguaje

Los wrappers de Python, PHP y Ruby te permiten renderizar informes RDL a PDF, Excel, CSV, HTML y más, sin escribir ningún código .NET. Cada lenguaje incluye tres modos de integración para adaptarse a tus restricciones de despliegue.


Modos de integración

Cada binding de lenguaje incluye tres clases que cubren distintos escenarios de despliegue:

Modo Cómo funciona Cuándo usarlo
Report Lanza dotnet RdlCmd.dll como un proceso hijo a través del shell del sistema. Requiere que el runtime de .NET esté instalado en el servidor. Configuración más sencilla: útil para desarrollo o cuando .NET ya está instalado en la máquina.
ReportAot Lanza un binario autocontenido compilado con AOT (RdlCmd). No requiere en absoluto el runtime de .NET: el binario incluye todo. Despliegues de producción donde no puedes instalar el runtime de .NET. Copia el binario junto a tu aplicación.
ReportNative Carga librdlnative.so en proceso mediante FFI nativo (ctypes / PHP FFI / Fiddle). No se genera ningún proceso hijo. Menor latencia, mayor rendimiento. Necesario para renderizado en memoria sin escribir archivos temporales (por ahora, solo en Python).

Comparación de funciones

FunciónPythonPHPRubyRust
Versión mínima del lenguaje3.10+8.1+3.0+1.65+
Gestor de paquetespipComposeraún sin gemaún sin crate
Dependencias en tiempo de ejecuciónningunaningunaningunalibloading
Modo subproceso (dotnet)
Modo binario AOT
Modo FFI nativo✓ único
Conjuntos de datos en memoria con add_data()solo nativosolo nativosolo nativo
Búfer real en memoria (sin archivo temporal)✓ nativo
Handle de librería seguro para hilosrespaldado por Arc
Formatos xlsx_table, tifb, mhtAOT + nativoAOT + nativoAOT + nativotodos los modos

Formatos de exportación admitidos

Los tres bindings de lenguaje admiten las mismas cadenas de formato principales, pasadas a export() / export_to_memory():

Cadena de formatoSalidaDisponible en
pdfPDFTodos los modos
csvTexto CSVTodos los modos
xlsxLibro de ExcelTodos los modos
xmlDatos XMLTodos los modos
rtfRich Text FormatTodos los modos
tifImagen TIFF (color)Todos los modos
htmlHTMLTodos los modos
xlsx_tableExcel (estilo tabla)Solo AOT + Nativo (Python/PHP/Ruby); todos los modos (Rust)
tifbImagen TIFF (blanco y negro)Solo AOT + Nativo (Python/PHP/Ruby); todos los modos (Rust)
mhtArchivo web MHTMLSolo AOT + Nativo (Python/PHP/Ruby); todos los modos (Rust)