mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
Creados scripts
This commit is contained in:
58
scripts/papeles_impresion/updatePrecioTonelada.py
Normal file
58
scripts/papeles_impresion/updatePrecioTonelada.py
Normal file
@ -0,0 +1,58 @@
|
||||
import pandas as pd
|
||||
import mysql.connector
|
||||
|
||||
"""
|
||||
Script para actualizar la columna 'precio_tonelada' en la tabla 'lg_papel_impresion' desde un archivo Excel.
|
||||
|
||||
- Lee los valores de ID y Precio desde un archivo Excel con cabecera clara.
|
||||
- Conecta a la base de datos y actualiza los precios de tonelada para los IDs especificados.
|
||||
|
||||
Requiere:
|
||||
- Archivo Excel con columnas 'ID' y 'Precio Tonelada'.
|
||||
- Conexión activa a la base de datos MySQL.
|
||||
- Paquetes: pandas, mysql-connector-python
|
||||
|
||||
Autor: IMN
|
||||
Fecha: 07/05/2025
|
||||
"""
|
||||
|
||||
# === CONFIGURACIÓN DE LA BASE DE DATOS ===
|
||||
DB_CONFIG = {
|
||||
"host": "82.223.102.252",
|
||||
"user": "erp-dev",
|
||||
"password": "Txhn75@10",
|
||||
"database": "erp-dev"
|
||||
}
|
||||
|
||||
# === CARGAR DATOS DESDE EXCEL ===
|
||||
df = pd.read_excel("ERP Safekat 2.0 - Papeles Impresion.xlsx")
|
||||
|
||||
# === CONEXIÓN A MYSQL ===
|
||||
conn = mysql.connector.connect(**DB_CONFIG)
|
||||
cursor = conn.cursor()
|
||||
|
||||
# === CONSULTA DE ACTUALIZACIÓN ===
|
||||
update_query = """
|
||||
UPDATE lg_papel_impresion
|
||||
SET precio_tonelada = %s
|
||||
WHERE id = %s
|
||||
"""
|
||||
|
||||
# === PREPARAR DATOS ===
|
||||
data = []
|
||||
for _, row in df.iterrows():
|
||||
try:
|
||||
papel_id = int(row['ID'])
|
||||
precio = float(row['Precio Tonelada'])
|
||||
data.append((precio, papel_id))
|
||||
except (ValueError, TypeError):
|
||||
continue # Ignorar datos inválidos
|
||||
|
||||
# === EJECUTAR ACTUALIZACIONES ===
|
||||
cursor.executemany(update_query, data)
|
||||
conn.commit()
|
||||
print(f"✅ Actualizados {cursor.rowcount} registros en lg_papel_impresion.")
|
||||
|
||||
# === CERRAR CONEXIÓN ===
|
||||
cursor.close()
|
||||
conn.close()
|
||||
Reference in New Issue
Block a user