Untitled

 avatar
unknown
plain_text
a year ago
5.2 kB
6
Indexable
from docx import Document

# Create a new Document
doc = Document()

# Title
doc.add_heading('Job Hazard Analysis (JHA) for Fall Protection', level=1)

# Job details
details = [
    ("Job Title:", "Fall Protection Implementation"),
    ("Date:", "[Insert Date]"),
    ("Location:", "[Insert Location]"),
    ("Prepared By:", "[Your Name or EE]")
]

for detail in details:
    p = doc.add_paragraph()
    p.add_run(detail[0]).bold = True
    p.add_run(f" {detail[1]}")

doc.add_paragraph()

# Job Steps and Associated Hazards
doc.add_heading('Job Steps and Associated Hazards', level=2)

steps = [
    {
        "step": "Pre-Job Planning and Setup",
        "hazards": [
            "Inadequate identification of fall hazards",
            "Incorrect setup of fall protection equipment"
        ],
        "controls": [
            "Conduct a thorough site inspection to identify fall hazards",
            "Verify all fall protection equipment is rated and appropriate for the task",
            "Develop a fall protection plan, including emergency procedures"
        ]
    },
    {
        "step": "Installing Guardrails and Safety Nets",
        "hazards": [
            "Falling during installation",
            "Equipment failure"
        ],
        "controls": [
            "Use a personal fall arrest system (PFAS) while installing guardrails and nets",
            "Inspect all equipment before use",
            "Ensure guardrails and safety nets meet OSHA standards"
        ]
    },
    {
        "step": "Using Personal Fall Arrest Systems (PFAS)",
        "hazards": [
            "Incorrect use of harnesses and lanyards",
            "Inadequate anchor points"
        ],
        "controls": [
            "Train workers on the correct use of PFAS",
            "Ensure anchor points are capable of supporting at least 5,000 pounds per worker",
            "Conduct regular inspections of PFAS equipment"
        ]
    },
    {
        "step": "Working on Ladders, Scaffolds, and Elevated Platforms",
        "hazards": [
            "Falls from height",
            "Equipment instability"
        ],
        "controls": [
            "Use ladders and scaffolds according to manufacturer guidelines",
            "Secure ladders at the top and bottom to prevent movement",
            "Ensure scaffolds are fully planked and have guardrails"
        ]
    },
    {
        "step": "Performing Tasks at Height",
        "hazards": [
            "Losing balance or slipping",
            "Objects falling from height"
        ],
        "controls": [
            "Maintain three points of contact on ladders",
            "Use tool lanyards to secure tools and equipment",
            "Keep work areas clean and free of tripping hazards"
        ]
    },
    {
        "step": "Emergency Rescue Plan",
        "hazards": [
            "Delayed rescue response",
            "Inadequate rescue equipment"
        ],
        "controls": [
            "Develop a detailed rescue plan and train all workers on it",
            "Ensure rescue equipment is readily available and in good condition",
            "Conduct regular rescue drills to ensure readiness"
        ]
    }
]

for step in steps:
    doc.add_heading(step["step"], level=3)
    doc.add_heading('Hazards:', level=4)
    for hazard in step["hazards"]:
        doc.add_paragraph(hazard, style='List Bullet')
    doc.add_heading('Controls:', level=4)
    for control in step["controls"]:
        doc.add_paragraph(control, style='List Bullet')

doc.add_paragraph()

# PPE Required
doc.add_heading('Personal Protective Equipment (PPE) Required', level=2)
ppe_list = [
    "Full-body harness",
    "Lanyards and lifelines",
    "Hard hat",
    "Safety glasses",
    "Work gloves",
    "Non-slip footwear"
]

for ppe in ppe_list:
    doc.add_paragraph(ppe, style='List Bullet')

doc.add_paragraph()

# Training Requirements
doc.add_heading('Training Requirements', level=2)
training_list = [
    "Fall protection training for all workers",
    "Proper use and inspection of fall protection equipment",
    "Emergency rescue procedures"
]

for training in training_list:
    doc.add_paragraph(training, style='List Bullet')

doc.add_paragraph()

# Emergency Contact Information
doc.add_heading('Emergency Contact Information', level=2)
contacts = [
    ("Site Supervisor:", "[Insert Name] - [Insert Phone Number]"),
    ("Emergency Medical Services:", "[Insert Phone Number]")
]

for contact in contacts:
    p = doc.add_paragraph()
    p.add_run(contact[0]).bold = True
    p.add_run(f" {contact[1]}")

# Review and Approval
doc.add_paragraph()
doc.add_heading('Review and Approval:', level=2)

approvals = [
    ("Prepared By:", "[Your Name or EE]"),
    ("Reviewed By:", "[Insert Name]"),
    ("Approved By:", "[Insert Name]")
]

for approval in approvals:
    p = doc.add_paragraph()
    p.add_run(approval[0]).bold = True
    p.add_run(f" {approval[1]}")

# Save the document
file_path = "/mnt/data/Fall_Protection_JHA.docx"
doc.save(file_path)

file_path
Editor is loading...
Leave a Comment