| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- '''
- Génère des factures dans la base Factures à partir des données de Tarification de Analytique
- @author: olivier.massot, févr. 2018
- '''
- import logging
- import sys
- from path import Path
- from core import logconf
- from core.pde import FacturesDb, AnalytiqueDb, CommunDb
- logger = logging.getLogger("analytique2facture")
- logconf.start("analytique2facture", logging.DEBUG)
- # # POUR TESTER, décommenter les lignes suivantes
- ##-----------------------------------------------
- logger.warning("<<<<<<<<<<<<<< Mode TEST >>>>>>>>>>>>>>>>>")
- AnalytiqueDb._path = Path(r"\\h2o\local\4-transversal\BDD\mdb_test\Db_analytique.mdb")
- FacturesDb._path = Path(r"\\h2o\local\4-transversal\BDD\mdb_test\Facture_data.mdb")
- CommunDb._path = Path(r"\\h2o\local\4-transversal\BDD\mdb_test\Commun_Data.mdb")
- ##-----------------------------------------------
- # Connexion à Analytique
- analytique_db = AnalytiqueDb(autocommit=False)
- # Connexion à Controles
- facture_db = FacturesDb(autocommit=False)
- # Connexion à CommunDb
- commun_db = CommunDb(autocommit=False)
- mois_facturation = input("Veuillez renseigner le mois de facturation ('q' pour quitter): ") # Format: voir avec jacky
- if mois_facturation == 'q':
- sys.exit(1)
- sql = """SELECT * FROM tbl_Tarification
- WHERE strStatut='A facturer'
- ORDER BY DblAffaireId, DblTarifId DESC;
- """
- if not analytique_db.exists(sql):
- logger.info("Aucune facture à créer - Opération annulée")
- sys.exit(1)
- # On va créer une facture commune à toutes les interventions 'à facturer' d'une même affaire (cad qui ont un numéro de pièce commun)
- # > Pour chaque facture, on va ajouter une ligne dans tblPieceEntete, et une ligne par intervention dans tblPieceLigne
- # > NB: On ne touche pas aux interventions de cette affaire qui ont déja été facturées
- for tarif in analytique_db.read(sql):
- pass
|