View source | Discuss this page | Page history | Printable version   

Modules:Analytics Generation Cubes/fr

Étendre la Génération de Cubes

Il est possible de définir un Cube en tant que Modèle, comme expliqué dans la Documentation, et utiliser ensuite ce Modèle pour générer les Cubes en cours pour les différentes sociétés. Ceci est dû au fait que les Définitions de Cubes peuvent dépendre des données Société.

En générant un Cube basé sur un Modèle, il est possible de remplacer certaines expressions par les données Société en cours. Par exemple, par défaut l'expression @ad_client_id@ est remplacé par le Client Id en cours.

Mais dans certains scénarios cela ne suffit pas. C'est pourquoi il est possible d'étendre le traitement qui génère les Cubes pour prendre en compte certains besoins.

Un exemple de cette fonctionnalité peut être trouvé dans les Rapports Financiers Multi-Dimensionnels.

Exemple

Un Module va étendre la génération des Cubes afin d'ajouter un autre paramètre à remplacer, dans ce cas le paramètre @first_invoice_id@ sera remplacé par l'Id de la première facture créée pour une Société.

public class GeneratePAndLCubeFromTemplate extends GenerateFinancialCubesFromTemplate {
 
  private static final Logger log = Logger.getLogger(GeneratePAndLCubeFromTemplate.class);
 
  @Override
  public Set<String> getCubeTemplatesToGenerate() {
    Set<String> set = new HashSet<String>();
    set.add("1E3B7EA7D12340618952D742E9B69EC2");
    return set;
  }
 
  @Override
  public void processCube(JSONObject request, JSONObject params, CubeDefinition cube,
      CubeDefinition cubeTemplate, Client client) throws OBException {
    super.processCube(request, params, cube, cubeTemplate, client);
    cube.setSqlfilter(cube.getSqlfilter().replace("@first_invoice_id@ ", getFirstInvoiceId(client)));
  }
 
}

Retrieved from "http://wiki.openbravo.com/wiki/Modules:Analytics_Generation_Cubes/fr"

This page has been accessed 1,285 times. This page was last modified on 23 April 2014, at 13:44. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.