Reportes básicos
Un reporte básico es el más simple de todos: no recibe parámetros ni tiene origen de datos, solo el diseño que armaste en el diseñador web. Con una llamada GET lo obtienes en PDF desde cualquier lenguaje.
Antes de empezar
.rexp.
El endpoint
Devuelve el PDF como archivo binario con código 200. Cualquier otro código
significa que la llamada falló: revisa la API Key y el nombre del reporte.
| Parámetro | Descripción |
|---|---|
apiKey Obligatorio |
La clave de tu cuenta. Recuerda codificarla en la URL. |
reportName Obligatorio |
El nombre con el que guardaste el reporte en el diseñador,
sin espacios y sin la extensión .rexp.
|
GetBasicReportPDF por
GetBasicReportView y obtendrás la vista previa del reporte.
Ejemplos
El mismo llamado en cuatro entornos. Copia el que uses y reemplaza las dos constantes del principio.
// Define los parámetros necesarios
const apiKey = "yourApiKeyHere";
const reportName = "yourReportNameHere"; // sin espacios y sin la extensión .rexp
// Construye la URL del endpoint
const url = `https://design.quickreport.net/report/GetBasicReportPDF`
+ `?apiKey=${encodeURIComponent(apiKey)}`
+ `&reportName=${encodeURIComponent(reportName)}`;
// Realiza la solicitud GET
fetch(url, { method: "GET" })
.then(response => {
if (!response.ok) {
throw new Error("Error al obtener el reporte PDF");
}
return response.blob(); // Obtén el archivo PDF como un blob
})
.then(blob => {
// Crea un enlace para descargar el PDF
const objectUrl = window.URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = objectUrl;
a.download = `${reportName}.pdf`;
document.body.appendChild(a);
a.click();
a.remove();
window.URL.revokeObjectURL(objectUrl); // Limpia el objeto URL
})
.catch(error => {
console.error("Error:", error);
});
[HttpGet]
public async Task<IActionResult> CallGetReportPDF()
{
// Define los parámetros necesarios
string apiKey = "yourApiKeyHere";
string reportName = "yourReportNameHere"; // sin espacios y sin la extensión .rexp
// Construye la URL del endpoint
string baseUrl = "https://design.quickreport.net";
string url = $"{baseUrl}/Report/GetBasicReportPDF?apiKey={apiKey}&reportName={reportName}";
// Crea un cliente HttpClient
var client = _httpClientFactory.CreateClient();
try
{
var response = await client.GetAsync(url);
if (response.IsSuccessStatusCode)
{
// Obtén el contenido como un archivo PDF
var pdfStream = await response.Content.ReadAsStreamAsync();
return new FileStreamResult(pdfStream, "application/pdf")
{
FileDownloadName = $"{reportName}.pdf"
};
}
return BadRequest($"Error al obtener el reporte: {response.StatusCode}");
}
catch (Exception ex)
{
return StatusCode(500, $"Error interno: {ex.Message}");
}
}
<?php
// Define la URL del endpoint y los parámetros
$baseUrl = "https://design.quickreport.net";
$apiKey = "yourApiKeyHere";
$reportName = "yourReportNameHere"; // sin espacios y sin la extensión .rexp
// Construye la URL completa
$url = $baseUrl . "/Report/GetBasicReportPDF"
. "?apiKey=" . urlencode($apiKey)
. "&reportName=" . urlencode($reportName);
// Inicializa cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$response = curl_exec($ch);
if (curl_errno($ch)) {
echo "Error: " . curl_error($ch);
} else {
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpCode == 200) {
// Guarda el archivo PDF en el disco
$filePath = $reportName . ".pdf";
file_put_contents($filePath, $response);
echo "Reporte descargado exitosamente: " . $filePath;
} else {
echo "Error al obtener el reporte. Código HTTP: " . $httpCode;
}
}
curl_close($ch);
curl -X GET \
"https://design.quickreport.net/report/GetBasicReportPDF?apiKey=yourApiKeyHere&reportName=yourReportNameHere" \
-o yourReportNameHere.pdf
El nombre del reporte no debe contener espacios ni la extensión .rexp.
Verlo en acción
Cómo crear un reporte básico en el diseñador web Video corto que recorre el diseñador de principio a fin.Siguiente paso
Cuando tu reporte necesite leer datos reales, elige el origen que te sirva.