Améliorations diverses
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
// URL de base de l'API v1. En local : http://localhost:4000/api/v1
|
||||
// En production : https://votre-domaine/api/v1
|
||||
"http://localhost:4000/api/v1"
|
||||
@@ -0,0 +1,2 @@
|
||||
// Clé API générée dans l'app : Mon compte > Clés API > Nouvelle clé
|
||||
"clk_live_VOTRE_CLE_API"
|
||||
@@ -0,0 +1,14 @@
|
||||
let
|
||||
// Pour filtrer sur une année, remplacez null par [annee = "2026"]
|
||||
Source = fnApiGet("/dashboard", null),
|
||||
VersLignes = (enregistrement as record, nomSection as text) =>
|
||||
Table.AddColumn(Record.ToTable(enregistrement), "Section", each nomSection),
|
||||
Combine = Table.Combine({
|
||||
VersLignes(Source[investissements], "Investissements"),
|
||||
VersLignes(Source[interets], "Interets"),
|
||||
VersLignes(Source[cash], "Cash")
|
||||
}),
|
||||
Reordonne = Table.ReorderColumns(Combine, {"Section", "Name", "Value"}),
|
||||
Resultat = Table.RenameColumns(Reordonne, {{"Name", "Indicateur"}, {"Value", "Valeur"}})
|
||||
in
|
||||
Resultat
|
||||
@@ -0,0 +1,5 @@
|
||||
let
|
||||
Source = fnApiGet("/depots-retraits", null),
|
||||
Resultat = Table.FromRecords(Source)
|
||||
in
|
||||
Resultat
|
||||
@@ -0,0 +1,7 @@
|
||||
let
|
||||
// Pour filtrer par statut, remplacez null par [statut = "rembourse"]
|
||||
// Statuts possibles : en_cours, rembourse, en_retard, procedure, cloture
|
||||
Source = fnApiGet("/investissements", null),
|
||||
Resultat = Table.FromRecords(Source)
|
||||
in
|
||||
Resultat
|
||||
@@ -0,0 +1,6 @@
|
||||
let
|
||||
Source = fnApiGet("/investisseur", null),
|
||||
// Clé "Famille et entreprises" -> liste ; clé mono-investisseur -> objet unique
|
||||
Resultat = if Value.Is(Source, type list) then Table.FromRecords(Source) else Table.FromRecords({Source})
|
||||
in
|
||||
Resultat
|
||||
@@ -0,0 +1,6 @@
|
||||
let
|
||||
// Pour filtrer par période, remplacez null par [date_debut = "2026-01-01", date_fin = "2026-12-31"]
|
||||
Source = fnApiGet("/remboursements", null),
|
||||
Resultat = Table.FromRecords(Source)
|
||||
in
|
||||
Resultat
|
||||
@@ -0,0 +1,19 @@
|
||||
(chemin as text, optional parametres as nullable record) as any =>
|
||||
let
|
||||
parametresBruts = if parametres = null then [] else parametres,
|
||||
champsUtiles = List.Select(
|
||||
Record.FieldNames(parametresBruts),
|
||||
each Record.Field(parametresBruts, _) <> null and Record.Field(parametresBruts, _) <> ""
|
||||
),
|
||||
parametresNettoyes = Record.SelectFields(parametresBruts, champsUtiles),
|
||||
reponse = Web.Contents(
|
||||
ApiBaseUrl,
|
||||
[
|
||||
RelativePath = chemin,
|
||||
Headers = [#"X-API-Key" = ApiKey, #"Accept" = "application/json"],
|
||||
Query = parametresNettoyes
|
||||
]
|
||||
),
|
||||
resultat = Json.Document(reponse)
|
||||
in
|
||||
resultat
|
||||
@@ -0,0 +1,5 @@
|
||||
// Astuce avancée : sur la table Investissements, colonne personnalisée
|
||||
// "= fnDetailInvestissement([id])" pour ramener le détail + les remboursements
|
||||
// de chaque prêt (Ajout de colonne > Colonne personnalisée).
|
||||
(id as number) as record =>
|
||||
fnApiGet("/investissements/" & Text.From(id), null)
|
||||
Reference in New Issue
Block a user