PyP6Xer

 
 

Primavera P6 XER 파일을 위한 오픈 소스 Python 라이브러리

무료 Python API를 통해 종속성 없이 Primavera P6 XER 파일을 파싱, 분석 및 조작합니다.

PyP6Xer란 무엇인가요?

PyP6Xer는 Primavera P6 XER(eXchange ERport) 파일을 파싱, 분석 및 조작하도록 설계된 강력한 오픈 소스 Python 라이브러리입니다. 외부 종속성을 필요로 하지 않고 활동, 자원, 캘린더, WBS 및 관계를 포함한 모든 프로젝트 데이터를 액세스할 수 있는 직관적인 객체 지향 인터페이스를 제공합니다. 이 라이브러리는 포괄적인 일정 분석, 자원 관리 및 획득 가치 계산을 지원하여 건설, 엔지니어링 및 프로젝트 관리 전문가에게 이상적입니다.

PyP6Xer를 사용하면 개발자는 XER 파일을 읽고 구조화된 데이터를 추출하며 핵심 경로 분석을 수행하고 일정 품질을 확인하고 수정된 데이터를 XER 형식으로 다시 내보낼 수 있습니다. 이 라이브러리는 파이썬식 설계 원칙을 따르며 프로젝트, 작업, 자원 및 그 상호 의존성을 액세스하기 위한 깔끔한 API를 제공합니다. 또한 Python 표준 라이브러리만을 사용하여 다른 시스템과의 통합, 맞춤형 보고, 포트폴리오 분석 및 고급 일정 메트릭을 가능하게 하여 이식성과 배포 용이성을 보장합니다.

Previous Next

PyP6Xer 시작하기

pip 명령 pip install PyP6XER을 사용하여 PyPI에서 PyP6Xer를 설치합니다. 또한 PyP6Xer GitHub 저장소에서 소스 코드를 복제하고 pip install -e .을 사용하여 개발 모드로 설치합니다. 이 라이브러리는 Python 3.6 이상이 필요하며 외부 종속성이 전혀 없으며, 최대한의 이식성과 배포 용이성을 위해 오직 Python 표준 라이브러리만을 사용합니다. 설치가 완료되면 직관적인 객체 지향 API를 통해 XER 파일을 파싱하고 프로젝트 데이터를 접근할 수 있습니다.

PIP 명령어로 PyP6Xer 설치

pip install PyP6XER

XER 파일 파싱 및 프로젝트 데이터 접근

PyP6Xer는 개발자가 최소한의 코드로 Primavera P6 XER 파일을 로드하고 구문 분석할 수 있게 합니다. Reader 클래스를 사용하면 XER 파일을 로드하고 프로젝트, 활동, 리소스 및 관계에 깔끔한 객체 지향 인터페이스를 통해 접근할 수 있습니다. 각 요소는 작업 코드, 기간, 상태 코드 등과 같은 속성을 노출합니다. 라이브러리는 프로젝트 컨텍스트에 따라 데이터를 자동으로 필터링하여 대규모 프로젝트 포트폴리오를 효율적으로 탐색할 수 있게 합니다. 이는 복잡한 구문 분석 로직 없이 P6 프로젝트 데이터에 구조화된 접근이 필요한 맞춤형 보고 도구, 데이터 검증 스크립트 및 통합 파이프라인을 구축하는 데 이상적입니다.

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

주요 경로 및 일정 분석

PyP6Xer는 중요 경로 식별 및 일정 품질 분석을 위한 내장 도구를 포함합니다. 개발자는 플로트 값을 계산하고, 총 플로트가 0이거나 음수인 활동을 식별하며, 다중 시작 활동이나 과도하게 긴 기간과 같은 일정 문제를 감지할 수 있습니다. 이 라이브러리는 조기/후기 날짜, 총 플로트, 활동 상태와 같은 주요 일정 속성을 노출하여 포괄적인 일정 건강 검사를 가능하게 합니다. 이 기능은 외부 도구나 수동 데이터 처리를 필요로 하지 않고 일정 무결성을 검증하고, 자원 할당을 최적화하며, 일정 모범 사례 준수를 보장하는 데 프로젝트 관리자를 지원합니다.

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

자원 할당 및 활용도 분석

PyP6Xer는 자원 관리 및 활용 분석에 대한 강력한 지원을 제공합니다. 개발자는 자원 할당에 접근하고, 총 할당 시간을 계산하며, 과다 할당된 자원을 식별하고, 활동 전반에 걸친 자원 비용을 분석할 수 있습니다. 이 라이브러리는 인력, 자재 및 장비 자원을 그들의 요율 및 카테고리와 함께 지원합니다. 이를 통해 포트폴리오 수준의 자원 레벨링, 용량 계획 및 비용 예측이 가능해집니다. 할당 수량과 비용을 집계함으로써 팀은 상세한 자원 보고서를 생성하고, 인력 배분을 최적화하며, 프로젝트 일정이 사용 가능한 자원과 일치하도록 보장할 수 있습니다.

획득 가치 관리 및 성과 지표

PyP6Xer는 목표 비용, 실제 비용, 물리적 완료 비율과 같은 비용 관련 필드를 노출하여 획득 가치 관리(EVM) 계산을 지원합니다. 개발자는 계획 가치(PV), 획득 가치(EV), 실제 비용(AC), 비용 성과 지수(CPI), 일정 성과 지수(SPI) 등 주요 EVM 지표를 계산할 수 있습니다. 이를 통해 자동화된 프로젝트 성과 보고, 추세 분석 및 예측이 가능해집니다. 팀은 이러한 지표를 대시보드에 통합하고, 비용 초과에 대한 알림을 트리거하며, 표준화된 EVM 방법론을 사용해 Python 내에서 포트폴리오 전반에 걸친 프로젝트 건강 상태를 모니터링할 수 있습니다.

 한국인