Inplannen en versturen
Het genereren van een rapport en het versturen per e-mail vastleggen — frequentie, ontvangers, formaat en parameters — en wat te doen wanneer de planning niet ver genoeg gaat.
Een ontworpen rapport is een rapport dat iemand moet gaan ophalen. De planningen lossen het meest voorkomende geval op zonder ook maar één regel code: "de commerciële pipeline gaat elke maandag om 8 uur naar de directie".
"Dit rapport per e-mail versturen, vanzelf, op het geplande tijdstip." Dat is het, en verder niets — wat meer nodig heeft, doet u met een script, en deze pagina legt uit wanneer.
We blijven bij het rapport Oportunidades por conta van de app Klantenbeheer, met de planning Pipeline de segunda-feira.
De planningen van een rapport
De planningen leven in het rapport zelf: open het rapport en kijk onderaan de linkerkolom, in de sectie Planningen. Elke regel is een vastgelegde verzending, met de samenvatting onder de naam — het tijdstip, de tijdzone, het formaat en naar wie hij gaat.

Een uitgeschakelde planning wordt gemarkeerd als uit. De pictogrammen rechts van elke regel bewerken en verwijderen.
In een rapport dat er nog geen heeft, toont de lijst "Geen planningen." en rest er niets dan de eerste aanmaken:

Een planning aanmaken
- Open het rapport en klik op de + van de sectie Planningen (of op de knop Planning toevoegen, onderaan de lijst).
- Vul de fiche in.
- Klik op Opslaan.
Wanneer
| Veld | Opmerkingen |
|---|---|
| Naam | Identificeert de planning. Onder die naam verschijnt zij in de geschiedenis. |
| Frequentie | Dagelijks, wekelijks of maandelijks. |
| Om | Het tijdstip van de verzending. |
| Dagen (dagelijkse frequentie) | Alle, Werkdagen of Weekend. |
| Dag van de week (wekelijkse frequentie) | Van Ma tot Zo. |
| Dag van de maand (maandelijkse frequentie) | Van 1 tot 31. |
| Tijdzone | Standaard Europe/Lisbon. In deze tijdzone wordt het tijdstip gelezen. |
Nota
Bij een maandelijkse frequentie "draait hij in maanden zonder die dag niet" — dag 31 slaat februari, april, juni, september en november over. Gebruik voor "de laatste dag van de maand" een script.
Wat
| Veld | Opmerkingen |
|---|---|
| Formaat | PDF of Excel. |
| Parameters | Eén veld per parameter die het rapport declareert. Met deze waarden loopt het. |
| Actief | Uitgeschakeld blijft de planning vastgelegd maar gaat zij niet af. |
In het voorbeeld is de parameter Fase ingevuld met Proposta en blijft
Fecho a partir de leeg — hetzelfde rapport bedient meerdere planningen,
elk met een eigen uitsnede.
Voor wie
Er zijn drie manieren om de bestemming aan te geven, en ze kunnen alle drie tegelijk worden gebruikt:
| Veld | Opmerkingen |
|---|---|
| Aan | "E-mailadressen gescheiden door komma's." Voor wie geen account in de app heeft. |
| Gebruikers | "Gebruikers van de app. Het gaat naar het e-mailadres op hun record; wie er geen heeft, valt af." |
| Rollen | "Alle gebruikers met deze rol. De rol kiezen in plaats van het adres houdt de planning kloppend wanneer er iemand komt of gaat." |
Dica
Kies liever Rollen. Een planning die zegt "gaat naar wie de rol
direcao heeft" blijft kloppen wanneer de directie van samenstelling
verandert; een met de hand geschreven lijst met adressen is de volgende dag
verouderd en niemand die het merkt.
De e-mail
Onderwerp is de onderwerpregel van de e-mail; leeg gebruikt hij de naam van het rapport. Bericht opent een eigen editor voor de inhoud:

Het rapport gaat als bijlage mee, in het gekozen formaat, met de naam van het document. De inhoud is alleen het bericht dat het vergezelt.
Wat er op het geplande tijdstip gebeurt
- Het rapport wordt op de server gegenereerd, met de parameters van de planning.
- Het bestand wordt aan een e-mail gehangen en verstuurd via het e-mailkanaal van de app.
- Er wordt vastgelegd wat er gebeurd is: het gegenereerde bestand en hoeveel ontvangers het hebben geaccepteerd.
Gaat er iets mis — het rapport mislukt, het e-mailkanaal is niet ingesteld, een ontvanger heeft geen adres — dan wordt dat vastgelegd en gaat de planner verder. Eén mislukte verzending blokkeert de andere niet.
Atenção
De verzending heeft een actief e-mailkanaal met volledige SMTP nodig in Instellingen van de app → Meldingen. Zonder dat wordt het rapport wel gegenereerd en mislukt de verzending in stilte in de geschiedenis. Stuur een Test versturen vanuit die instellingen voordat u op een planning vertrouwt.
Een planning zonder ontvangers verstuurt ook niets — er wordt "geen ontvangers" vastgelegd en er gebeurt niets.
Wanneer een planning niet ver genoeg gaat
De snelweg bedient het gewone geval. U hebt een Python-script nodig wanneer u wilt:
- alleen versturen als er rijen zijn ("stuur het achterstandsoverzicht niet als er geen achterstanden zijn");
- één e-mail per klant, elk met een eigen uitsnede;
- het bestand ergens anders bewaren in plaats van het te versturen;
- het document midden in een groter proces genereren.
De SDK van de scripts doet precies dat:
from api_manager import reports, notify
r = reports.render("Oportunidades por conta", {"fase": "Proposta"})
notify.email(
"Pipeline van de week",
to=["direccao@exemplo.pt"],
attachments=[{"filename": r["filename"], "content": r["base64"]}],
)
reports.render(...) krijgt de naam of de identificatie van het rapport,
de parameters die het declareert en het formaat ("pdf", standaard,
of "xlsx"), en geeft het bestand terug, klaar om op te slaan of als bijlage
mee te sturen. Vanaf dan is de planning die van het script — met alle
opties die de Planningen van de scripts hebben,
inclusief het inhalen van wat is gemist.
Een rapport op andere plekken genereren
Behalve via de planningen en de scripts kan een rapport gegenereerd worden:
| Vanwaar | Hoe |
|---|---|
| Een scherm van de app | In een TypeScript-gebeurtenis, met de SDK van de schermen — het opent de PDF voor de gebruiker of geeft de bytes terug zodat u ze een andere bestemming geeft. |
| Een workflow | De stap E-mail hangt er een rapport aan, gegenereerd op het moment van versturen voor het record van die uitvoering. Zie Stappen, beslissingen en wachtstanden. |
| Het ontwerp | De knoppen Voorbeeld en Excel, om te controleren terwijl u ontwerpt. |
In alle gevallen loopt het rapport met de rechten van wie erom vraagt: een gebruiker ziet in het document alleen de records die hij ook op de schermen zou zien. Het bereik van de gegevens wordt op de server toegepast, ook in de rapporten.
Veelgestelde vragen
De planning staat actief en ik heb niets ontvangen. Controleer in deze volgorde: het e-mailkanaal van de app is actief en getest; de planning heeft ontvangers; de ontvangers hebben een e-mailadres op hun record; het rapport loopt zonder fout (gebruik Voorbeeld met dezelfde parameters).
Het tijdstip klopt maar hij kwam een uur later aan.
De Tijdzone van de planning is bepalend, niet die van de server en niet
die van wie leest. Controleer of zij op Europe/Lisbon staat (of op de
tijdzone die u wilt).
Kan ik hetzelfde rapport op twee verschillende tijdstippen versturen? Ja — maak twee planningen aan in hetzelfde rapport, elk met een eigen naam, tijdstip, ontvangers en parameters.
Ik heb per ongeluk een planning verwijderd. Er is geen weg terug. Maak haar opnieuw aan: een planning is niet meer dan een fiche met een tijdstip en ontvangers, en dat kost een minuut.
