From b799efef756a517f11aefe0fe700dbb37efea85a Mon Sep 17 00:00:00 2001 From: Fanilo-Nantenaina Date: Wed, 17 Dec 2025 11:27:19 +0300 Subject: [PATCH] refactor(sage_connector): remove redundant section comments and clean up code --- sage_connector.py | 46 +--------------------------------------------- 1 file changed, 1 insertion(+), 45 deletions(-) diff --git a/sage_connector.py b/sage_connector.py index bfc59e9..02dd5c2 100644 --- a/sage_connector.py +++ b/sage_connector.py @@ -8860,9 +8860,6 @@ class SageConnector: with self._get_sql_connection() as conn: cursor = conn.cursor() - # ======================================== - # ÉTAPE 1 : DÉTECTER LES COLONNES DISPONIBLES - # ======================================== logger.info("[SQL] Détection des colonnes de F_FAMILLE...") # Requête de test pour récupérer les métadonnées @@ -8871,9 +8868,6 @@ class SageConnector: logger.info(f"[SQL] Colonnes trouvées : {len(colonnes_disponibles)}") - # ======================================== - # ÉTAPE 2 : DÉFINIR LES COLONNES PRIORITAIRES - # ======================================== colonnes_souhaitees = [ "FA_CodeFamille", "FA_Intitule", @@ -8898,9 +8892,6 @@ class SageConnector: logger.info(f"[SQL] Colonnes sélectionnées : {len(colonnes_a_lire)}") - # ======================================== - # ÉTAPE 3 : CONSTRUIRE LA REQUÊTE AVEC FILTRE TYPE - # ======================================== colonnes_str = ", ".join(colonnes_a_lire) query = f""" @@ -8911,7 +8902,6 @@ class SageConnector: params = [] - # ✅ CRITIQUE : Filtrer par type (défaut = seulement Détail) if "FA_Type" in colonnes_disponibles: if not inclure_totaux: query += " AND FA_Type = 0" # ✅ Seulement Détail @@ -8940,15 +8930,9 @@ class SageConnector: elif "FA_CodeFamille" in colonnes_a_lire: query += " ORDER BY FA_CodeFamille" - # ======================================== - # ÉTAPE 4 : EXÉCUTER LA REQUÊTE - # ======================================== cursor.execute(query, params) rows = cursor.fetchall() - # ======================================== - # ÉTAPE 5 : CONSTRUCTION DE LA LISTE - # ======================================== familles = [] for row in rows: @@ -8963,10 +8947,6 @@ class SageConnector: famille[colonne] = valeur - # ======================================== - # CHAMPS CALCULÉS & ALIAS - # ======================================== - # Alias if "FA_CodeFamille" in famille: famille["code"] = famille["FA_CodeFamille"] @@ -8986,7 +8966,7 @@ class SageConnector: famille["est_total"] = False # Autres champs - famille["unite_vente"] = famille.get("FA_UniteVen", "") + famille["unite_vente"] = str(famille.get("FA_UniteVen", "")) famille["coef"] = ( float(famille.get("FA_Coef", 0.0)) if famille.get("FA_Coef") is not None @@ -9022,9 +9002,6 @@ class SageConnector: code_recherche = code.upper().strip() - # ======================================== - # ÉTAPE 1 : VÉRIFICATION SQL (RAPIDE) - # ======================================== famille_existe_sql = False famille_code_exact = None famille_type_sql = None @@ -9078,9 +9055,6 @@ class SageConnector: logger.warning(f" [SQL] Erreur : {e}") # Continuer quand même avec COM - # ======================================== - # ÉTAPE 2 : CHARGEMENT VIA COM (SCANNER) - # ======================================== if not famille_code_exact: famille_code_exact = code_recherche @@ -9140,9 +9114,6 @@ class SageConnector: logger.error(f" [COM] Erreur scanner : {e}") raise RuntimeError(f"Erreur chargement famille : {str(e)}") - # ======================================== - # ÉTAPE 3 : EXTRACTION COMPLÈTE - # ======================================== logger.info("[FAMILLE] Extraction des informations...") famille_obj.Read() @@ -9252,9 +9223,6 @@ class SageConnector: except: resultat["compte_vente"] = "" - # ======================================== - # INFORMATIONS TECHNIQUES - # ======================================== # Index de lecture resultat["index_com"] = index_trouve @@ -9275,9 +9243,6 @@ class SageConnector: except: resultat["date_modification"] = "" - # ======================================== - # STATISTIQUES (NOMBRE D'ARTICLES) - # ======================================== # Compter les articles de cette famille via SQL try: with self._get_sql_connection() as conn: @@ -9338,9 +9303,6 @@ class SageConnector: pass try: - # ======================================== - # ÉTAPE 1 : CRÉER LE DOCUMENT - # ======================================== factory = self.cial.FactoryDocumentStock persist = factory.CreateType(180) # 180 = Entrée doc = win32com.client.CastTo(persist, "IBODocumentStock3") @@ -9366,9 +9328,6 @@ class SageConnector: f"[STOCK] Document créé : {getattr(doc, 'DO_Piece', '?')}" ) - # ======================================== - # ÉTAPE 2 : FACTORY LIGNES - # ======================================== try: factory_lignes = doc.FactoryDocumentLigne logger.info(f"[STOCK] Factory lignes : FactoryDocumentLigne") @@ -9381,9 +9340,6 @@ class SageConnector: factory_article = self.cial.FactoryArticle stocks_mis_a_jour = [] - # ======================================== - # ÉTAPE 3 : TRAITER CHAQUE LIGNE - # ======================================== for idx, ligne_data in enumerate(entree_data["lignes"], 1): article_ref = ligne_data["article_ref"].upper() quantite = ligne_data["quantite"]