PyP6Xer

 
 

Open Source Python-bibliotheek voor Primavera P6 XER-bestanden

Parseer, Analyseer & Manipuleer Primavera P6 XER-bestanden zonder afhankelijkheden via gratis Python-API.

Wat is PyP6Xer?

PyP6Xer is een krachtige open‑source Python‑bibliotheek ontworpen voor het parseren, analyseren en manipuleren van Primavera P6 XER (eXchange ERport) bestanden. Het biedt een intuïtieve, objectgeoriënteerde interface om toegang te krijgen tot alle projectgegevens, inclusief activiteiten, resources, kalenders, WBS en relaties, zonder externe afhankelijkheden. De bibliotheek ondersteunt uitgebreide planningsanalyse, resourcebeheer en earned value‑berekeningen, waardoor het ideaal is voor professionals in de bouw, techniek en projectmanagement.

Met PyP6Xer kunnen ontwikkelaars XER‑bestanden lezen, gestructureerde gegevens extraheren, kritieke padanalyse uitvoeren, de kwaliteit van de planning controleren en gewijzigde gegevens exporteren naar XER‑formaat. De bibliotheek volgt Pythonic‑ontwerpprincipes en biedt schone API's voor het benaderen van projecten, taken, resources en hun onderlinge afhankelijkheden. Het maakt integratie met andere systemen, aangepaste rapportage, portefeuileanalyse en geavanceerde planningsmetriek mogelijk, uitsluitend met de standaardbibliotheek van Python, wat portabiliteit en eenvoudige implementatie garandeert.

Previous Next

Aan de slag met PyP6Xer

Installeer PyP6Xer van PyPI met pip via de opdracht pip install PyP6XER. Als alternatief kun je de broncode klonen van de PyP6Xer GitHub repository en deze in ontwikkelingsmodus installeren met pip install -e .. De bibliotheek vereist Python 3.6 of hoger en heeft geen externe afhankelijkheden, en maakt uitsluitend gebruik van de standaardbibliotheek van Python voor maximale draagbaarheid en eenvoudige implementatie. Zodra het geïnstalleerd is, kun je beginnen met het parseren van XER‑bestanden en het benaderen van projectgegevens via de intuïtieve objectgeoriënteerde API.

Installeer PyP6Xer via PIP-commando

pip install PyP6XER

Parse XER-bestanden & toegang tot projectgegevens

PyP6Xer stelt ontwikkelaars in staat om Primavera P6 XER-bestanden te laden en te parseren met minimale code. Met de Reader-klasse kun je een XER-bestand laden en toegang krijgen tot projecten, activiteiten, resources en relaties via een schone objectgeoriënteerde interface. Elk element biedt attributen zoals taakcodes, duur, statuscodes en meer. De bibliotheek filtert gegevens automatisch op projectcontext, waardoor efficiënte navigatie door grote projectportefeuilles mogelijk is. Dit maakt het ideaal voor het bouwen van aangepaste rapportagetools, datavalidatiescripts en integratiepijplijnen die gestructureerde toegang tot P6-projectgegevens vereisen zonder complexe parse‑logica.

Hoe laad en krijg je projectgegevens via de Python API?

from xerparser.reader import Reader

# Load an XER file
xer = Reader("project.xer")

# Access projects and activities
for project in xer.projects:
    print(f"Project: {project.proj_short_name}")
    for activity in project.activities:
        print(f"  {activity.task_code}: {activity.task_name}")
        print(f"  Duration: {activity.duration} days")

Kritieke pad & planningsanalyse

PyP6Xer bevat ingebouwde tools voor het identificeren van het kritieke pad en de analyse van de planningkwaliteit. Ontwikkelaars kunnen floatwaarden berekenen, activiteiten met nul of negatieve totale float identificeren en planningsproblemen detecteren, zoals meerdere startactiviteiten of te lange duur. De bibliotheek maakt belangrijke planningsattributen zichtbaar, zoals vroege/late data, totale float en activiteitsstatus, waardoor uitgebreide controles van de planninggezondheid mogelijk zijn. Deze functionaliteit ondersteunt projectmanagers bij het valideren van de integriteit van de planning, het optimaliseren van de toewijzing van middelen en het waarborgen van naleving van best practices voor planning, zonder dat externe tools of handmatige gegevensverwerking nodig zijn.

Hoe kritieke padactiviteiten via Python te identificeren?

# Find critical activities
critical_activities = []
for activity in xer.activities:
    if activity.total_float_hr_cnt is not None and activity.total_float_hr_cnt <= 0:
        critical_activities.append(activity)

print(f"Critical Path: {len(critical_activities)} activities")
for activity in critical_activities:
    print(f"  {activity.task_code}: {activity.task_name}")

Resource‑toewijzing & benuttingsanalyse

PyP6Xer biedt robuuste ondersteuning voor resourcebeheer en benuttingsanalyse. Ontwikkelaars kunnen toegang krijgen tot resource‑toewijzingen, het totale aantal toegewezen uren berekenen, overbelaste resources identificeren en de kosten van resources over activiteiten analyseren. De bibliotheek ondersteunt arbeids-, materiaal- en uitrustingsresources, samen met hun tarieven en categorieën. Dit maakt resource‑leveling op portefeuilleniveau, capaciteitsplanning en kostenvoorspelling mogelijk. Door toewijzingshoeveelheden en kosten te aggregeren, kunnen teams gedetailleerde resource‑rapporten genereren, de verdeling van de arbeidskracht optimaliseren en ervoor zorgen dat projecttijdlijnen overeenkomen met de beschikbare resources.

Earned Value Management & prestatiemetingen

PyP6Xer ondersteunt berekeningen voor earned value management (EVM) door kostengerelateerde velden bloot te stellen, zoals doelkosten, werkelijke kosten en percentages van fysieke voltooiing. Ontwikkelaars kunnen belangrijke EVM-metrics berekenen, waaronder Planned Value (PV), Earned Value (EV), Actual Cost (AC), Cost Performance Index (CPI) en Schedule Performance Index (SPI). Dit maakt geautomatiseerde rapportage van projectprestaties, trendanalyse en prognoses mogelijk. Teams kunnen deze metrics integreren in dashboards, waarschuwingen activeren bij kostenoverschrijdingen en de projectgezondheid over portefeuilles monitoren met gestandaardiseerde EVM-methodologieën direct binnen Python.

 Dutch