ferrero-opentext/Python-Version/scripts/shared
DJP c5165db46a Add Global Campaign Reference extraction and storage for A1→A2 workflow
Database Schema:
 Added global_master_campaign_id VARCHAR(50) column
 Added global_master_folder_id VARCHAR(255) column
 Stores relationship between local campaigns and their global masters

Database Module:
 Added extract_global_campaign_reference() method
 Searches inherited_metadata_collections for L7+ - CAMPAIGN containers
 Extracts FERRERO.FIELD.GLOBAL CAMPAIGN REFERENCE field
 Extracts container_id as global_master_folder_id
 Returns dict with both IDs

A1→A2 Script:
 Calls db.extract_global_campaign_reference() for each asset
 Passes global_master_campaign_id to store_master_asset()
 Passes global_master_folder_id to store_master_asset()
 Logs when Global Campaign Reference found

Example Data Stored:
- Local Campaign C000000551 asset
- global_master_campaign_id: C000000068
- global_master_folder_id: 676f2bcde4c7bcf7ef783e97f7495069bf50b6bc

Usage:
This data enables tracking which Global Master a local asset came from.
Can query all local assets for a specific Global Master campaign.
Foundation for future cross-campaign features.

Based on EXTRACTION_GUIDE.md implementation pattern.

Note: B1→B2 workflow NOT updated (those ARE the global masters)

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-04 10:19:50 -05:00
..
__pycache__ Add PROJECT_STATUS_2025-11-03.md and update README - Complete session documentation 2025-11-03 15:13:59 -05:00
__init__.py Start Python automation - Foundation components 2025-10-30 16:38:26 -04:00
box_client.py Fix Box metadata template name - Use correct lowercase name and field names 2025-11-03 14:34:17 -05:00
config_loader.py Start Python automation - Foundation components 2025-10-30 16:38:26 -04:00
dam_client.py Fix B1→B2 workflow - Correct function name and search for Global comm campaigns 2025-11-03 13:47:20 -05:00
database.py Add Global Campaign Reference extraction and storage for A1→A2 workflow 2025-11-04 10:19:50 -05:00
filename_parser.py Complete Python automation implementation - All components built 2025-10-30 16:49:14 -04:00
metadata_extractor_mvp.py Add Box metadata extraction for CreativeX fields in A2→A3 workflow 2025-11-03 14:26:00 -05:00
notifier.py Add B1→B2 email templates and remove webhook from B1→B2 workflow 2025-11-03 14:04:14 -05:00