jaimesantosweb/laravelmicrostrategyintegration

一个API,连接到MicrostrategyLibrary API以获取报表结果

dev-main 2024-03-17 21:58 UTC

This package is auto-updated.

Last update: 2024-09-17 23:10:09 UTC


README

一个API,用于连接到Microstrategy Library API以获取报表结果。

版本说明

这仍然是lib,API的一个不完整版本。在请求出现问题时,错误返回尚未100%开发,并且在getInstanceNoPrompt和getReport函数中,报告的头和度量指标尚未返回。

安装

要在您的Laravel项目中安装此库,您可以运行以下Composer命令

composer require JaimeSantosWeb/laravelmicrostrategyintegration

安装后,您需要配置认证凭据。

为此,发布配置文件

php artisan vendor:publish --tag=laravelmicrostrategyintegration

然后更改生成的文件 /config/strategy.php 中的端点

安装后,您可以在您的 .env 环境文件中配置认证凭据。

使用示例

以下是如何在您的Laravel项目中使用此库的一些示例

use App\LaravelMicrostrategyIntegration\Controllers\StrategyController;

带提示

<?php

namespace App\Http\Controllers;

use App\LaravelMicrostrategyIntegration\Controllers\StrategyController;

class SUACLASSE 
{
    
        $reportId="<<Report ID>>";
        $projectID="<<Project ID>>"
        $prompt = file_get_contents('prompts/prompt.json', FILE_USE_INCLUDE_PATH);

        $strategy = new StrategyController($projectID);
        $strategy->Sauth($usuario,$senha);
        $instanceID= $strategy->getInstance($reportId);
        $strategy->sendPrompt($reportId,$instanceID,$prompt);
        $instanceID= $strategy->getReport($reportId, $instanceID);
        $strategy->logout();

       
        return view('welcome', compact('instanceID'));

}

不带提示

<?php

namespace App\Http\Controllers;

use App\LaravelMicrostrategyIntegration\Controllers\StrategyController;

class SUACLASSE 
{
    
        $reportId="<<Report ID>>";
        $projectID="<<Project ID>>"
        $prompt = file_get_contents('prompts/prompt.json', FILE_USE_INCLUDE_PATH);

        $strategy = new StrategyController($projectID);
        $strategy->Sauth($usuario,$senha);
        $instanceID= $strategy->getInstanceNoPrompt($reportId);
        $strategy->logout();

       
        return view('welcome', compact('instanceID'));

}

配置

在使用此库之前,请确保在您的 .env 文件中配置以下环境变量

  • ** MICROSTRATEGY_API_USERNAME=seu_usuario
  • ** MICROSTRATEGY_API_PASSWORD=sua_senha
  • ** MICROSTRATEGY_PROJECT_ID=seu_projeto_id

将your_username,your_password和your_project_id的值替换为您Microstrategy API实例中的相应值。这样,您可以在项目中使用它们。

简化数据读取

强烈建议在处理任何实例之前将数据转换为JSON格式。为此,将函数的返回值编码为JSON

json_encode($instanceID)

依赖

此库依赖于以下库和Laravel版本

  • ** PHP >= 8.1
  • ** Laravel Framework >= 10.10
  • ** GuzzleHTTP >= 7.2