PyP6Xer

 
 

Öppen källkod Python-bibliotek för Primavera P6 XER-filer

Parsning, analys och manipulation av Primavera P6 XER-filer utan beroenden via gratis Python-API.

Vad är PyP6Xer?

PyP6Xer är ett kraftfullt open source Python‑bibliotek utformat för att parsra, analysera och manipulera Primavera P6 XER (eXchange ERport)-filer. Det erbjuder ett intuitivt, objektorienterat gränssnitt för att komma åt all projektdata inklusive aktiviteter, resurser, kalendrar, WBS och relationer utan att kräva externa beroenden. Biblioteket stödjer omfattande schemaläggningsanalys, resursförvaltning och beräkningar av earned value, vilket gör det idealiskt för bygg-, ingenjörs- och projektledningsproffs.

Med PyP6Xer kan utvecklare läsa XER‑filer, extrahera strukturerad data, utföra kritisk‑väganalys, kontrollera schemakvalitet och exportera modifierad data tillbaka till XER‑formatet. Biblioteket följer Pythoniska designprinciper och erbjuder rena API:er för åtkomst till projekt, uppgifter, resurser och deras inbördes beroenden. Det möjliggör integration med andra system, anpassade rapporter, portföljanalys och avancerade schemaläggningsmått med endast Pythons standardbibliotek, vilket säkerställer portabilitet och enkel distribution.

Previous Next

Komma igång med PyP6Xer

Installera PyP6Xer från PyPI med pip genom att köra kommandot pip install PyP6XER. Alternativt kan du klona källkoden från PyP6Xer GitHub-arkivet och installera den i utvecklingsläge med pip install -e .. Biblioteket kräver Python 3.6 eller högre och har inga externa beroenden, det förlitar sig enbart på Pythons standardbibliotek för maximal portabilitet och enkel distribution. När det är installerat kan du börja parsning av XER-filer och komma åt projektdata via dess intuitiva objektorienterade API.

Installera PyP6Xer via PIP-kommando

pip install PyP6XER

Analysera XER-filer och komma åt projektdata

PyP6Xer gör det möjligt för utvecklare att ladda och tolka Primavera P6 XER-filer med minimal kod. Med Reader-klassen kan du ladda en XER-fil och komma åt projekt, aktiviteter, resurser och relationer via ett rent objektorienterat gränssnitt. Varje element exponerar attribut som uppgiftskoder, varaktigheter, statuskoder och mer. Biblioteket filtrerar data efter projektkontext automatiskt, vilket möjliggör effektiv navigering i stora projektportföljer. Detta gör det idealiskt för att bygga anpassade rapporteringsverktyg, datavalideringsskript och integrationspipeline som kräver strukturerad åtkomst till P6-projektdatan utan komplex parslogik.

Hur man laddar och får åtkomst till projektdata via 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")

Kritisk väg och schemaläggningsanalys

PyP6Xer inkluderar inbyggda verktyg för identifiering av kritisk väg och analys av schemakvalitet. Utvecklare kan beräkna float‑värden, identifiera aktiviteter med noll eller negativ total float, och upptäcka schemaläggningsproblem såsom flera startaktiviteter eller alltför långa varaktigheter. Biblioteket exponerar viktiga schemaläggningsattribut som tidiga/sena datum, total float och aktivitetsstatus, vilket möjliggör omfattande kontroller av schemats hälsa. Denna funktionalitet stödjer projektledare i att validera schemaintegritet, optimera resursallokering och säkerställa efterlevnad av bästa praxis för schemaläggning utan att kräva externa verktyg eller manuell databehandling.

Hur identifierar man kritiska vägen‑aktiviteter med Python?

# 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}")

Resursallokering och utnyttjandeanalys

PyP6Xer erbjuder robust stöd för resurshantering och utnyttjandeanalys. Utvecklare kan komma åt resursuppdrag, beräkna totala tilldelade timmar, identifiera överallokerade resurser och analysera resurskostnader över aktiviteter. Biblioteket stödjer arbetskraft, material och utrustningsresurser, tillsammans med deras priser och kategorier. Detta möjliggör resurshantering på portföljnivå, kapacitetsplanering och kostnadsprognoser. Genom att samla in uppdragskvantiteter och kostnader kan team generera detaljerade resursrapporter, optimera fördelning av arbetskraft och säkerställa att projektplaner överensstämmer med tillgängliga resurser.

Earned Value Management och prestationsmått

PyP6Xer stödjer beräkningar av earned value management (EVM) genom att exponera kostnadsrelaterade fält såsom målkostnad, faktiska kostnader och fysiska färdigställandeprocent. Utvecklare kan beräkna nyckel‑EVM‑mått inklusive Planned Value (PV), Earned Value (EV), Actual Cost (AC), Cost Performance Index (CPI) och Schedule Performance Index (SPI). Detta möjliggör automatiserad rapportering av projektprestanda, trendanalys och prognostisering. Team kan integrera dessa mått i instrumentpaneler, utlösa varningar för kostnadsöverskridanden och övervaka projektets hälsa över portföljer med standardiserade EVM‑metodiker direkt i Python.

 Svenska