
    i                     :    S SK Jr  S rS rS rS rS rS rS rg	)
    )get_connectionc            	         Sn  [        5       nU(       d  [        S5      eUR                  5       nUR                  U 5        UR	                  5       nU Vs/ s H  oDS   US   US   US   US   S.PM     snU(       a  UR                  5         $ $ s  snf ! [         a2  n[        S	U 35        / s S
nAW(       a  UR                  5         $ $ S
nAff = f! W(       a  UR                  5         f f = f)z,Obtiene los Breakers desde la base de datos.z
    SELECT
        CZE_BreakersCatalog.Item_breaker, 
        CZE_BreakersCatalog.description, 
        CZE_BreakersCatalog.price, 
        CZE_BreakersCatalog.type,
        CZE_BreakersCatalog.TechnicalSheet
    FROM
        CZE_BreakersCatalog
    4   No se pudo establecer conexión con la base de datosr               )Item_breakerdescriptionpricetypeTechnicalSheetz.[Error inesperado] Error obteniendo breakers: Nr   ConnectionErrorcursorexecutefetchallclose	Exceptionprint)queryconnr   resultsrowes         vC:\Users\victor.barrera\Documents\proyectos\elepV3\Elep\src\Consultas_SQL\Ventas\VentasEUA\DataMaster\DMbreakersSQL.pyget_breakersr      s    	E!"XYYu//# GN  O  GN  @CQAQY\]^Y_svwxsyz  GN  O
 JJL  O >qcBC	JJL 	 JJL sB   AB  B5B B 
CC.C/C CC C.c                     [        5       n UR                  5       nUR                  SU 45        UR                  5       nUU(       a  UR	                  5         $ $ ! U(       a  UR	                  5         f f = f)Nz?SELECT COUNT(*) FROM CZE_BreakersCatalog WHERE Item_breaker = ?)r   r   r   fetchoner   )itemr   r   results       r   item_existsr"   $   s_    DX[_Zab"JJL 4JJL s   4A A3c                 ^   Sn [        5       nU(       d  [        S5      eUR                  5       nUR                  XPXX445        UR	                  5         W(       a  UR                  5         gg! [
         a  n[        SU 35         SnAN6SnAff = f! W(       a  UR                  5         f f = f)z-Inserta un nuevo breaker en la base de datos.z
    INSERT INTO CZE_BreakersCatalog (Item_breaker, description, price, type,TechnicalSheet)
    VALUES (?, ?, ?, ?,?)
    
    r   z-[Error inesperado] Error insertando breaker: Nr   r   r   r   commitr   r   r   )	r    r   r   r   technicalSheetr   r   r   r   s	            r   insert_breakerr'   /   s    E!"XYYu[MN JJL   C=aSABBC JJL *   AA- -
B7B
B 
BB B,c                 ^   Sn [        5       nU(       d  [        S5      eUR                  5       nUR                  XAX#U 45        UR	                  5         W(       a  UR                  5         gg! [
         a  n[        SU 35         SnAN6SnAff = f! W(       a  UR                  5         f f = f))Actualiza un breaker en la base de datos.zl
    UPDATE CZE_BreakersCatalog
    SET description = ?, price = ?, type = ?
    WHERE Item_breaker = ?
    r   /[Error inesperado] Error actualizando breaker: Nr$   )r    r   r   r   r   r   r   r   s           r   update_breakerr,   F   s    E
!"XYYuE>? JJL   E?sCDDE JJL r(   c                 Z   Sn [        5       nU(       d  [        S5      eUR                  5       nUR                  X45        UR	                  5         W(       a  UR                  5         gg! [
         a  n[        SU 35         SnAN6SnAff = f! W(       a  UR                  5         f f = f)z'Elimina un breaker de la base de datos.zD
    DELETE FROM CZE_BreakersCatalog
    WHERE Item_breaker = ?
    r   z-[Error inesperado] Error eliminando breaker: Nr$   )r    r   r   r   r   s        r   delete_breakerr.   [   s    E!"XYYug& JJL   C=aSABBC JJL s*   AA+ +
B5BB BB B*c                      [        5       n U (       d  [        S5      eU R                  5       nUR                  S5        UR	                  5       nU(       d  / U (       a  U R                  5         $ $ U Vs/ s H  o3S   US   S.PM     snU (       a  U R                  5         $ $ s  snf ! [         a2  n[        SU 35        / s S nAW (       a  U R                  5         $ $ S nAff = f! W (       a  U R                  5         f f = f)Nr   z<SELECT Item_breaker, TechnicalSheet FROM CZE_BreakersCatalogr   r   )r
   r   z/[Error inesperado] Error consultando breakers: r   )r   r   r   r   r   s        r   searchitemsr0   o   s    !"XYYUV//# JJL  OVVgsQ3q6BgV JJL  W ?sCD	JJL 	 JJL sH   AB( 0B( 4B#B( #B( (
C$2CC$C' C$$C' 'Dc                 \   Sn [        5       nU(       d  [        S5      eUR                  5       nUR                  X!U 45        UR	                  5         W(       a  UR                  5         gg! [
         a  n[        SU 35         SnAN6SnAff = f! W(       a  UR                  5         f f = f)r*   zZ
    UPDATE CZE_BreakersCatalog
    SET TechnicalSheet = ?
    WHERE Item_breaker = ?
    r   r+   Nr$   )r    r   r   r   r   r   s         r   update_breaker_TechnicalSheetr2      s    E
!"XYYud34 JJL   E?sCDDE JJL s*   AA, ,
B6B	B 	BB B+N)	Consultas_SQL.conexionr   r   r"   r'   r,   r.   r0   r2        r   <module>r6      s-   
 2<	.*(&r5   